llvm-project/flang/lib/Semantics
sameeran joshi 4a51691a85 [Flang][OpenACC] Fix for branching out issue in OpenACC parallel construct.
From OpenACC 3.0 Standards document
	840 • A program may not branch into or out of an OpenACC parallel construct.
	Exits are allowed provided it does not cause an exit outside the parallel region.

	Test case exits out of the inner do loop, but it is still inside the parallel region.
	Patch tries to extract labels from block attached to a construct,
	If the exit is to a label not in the collected list then flags an error.

Reviewed By: tskeith

Differential Revision: https://reviews.llvm.org/D87906
2020-10-19 21:46:47 +05:30
..
CMakeLists.txt [flang][directives] Use TableGen information for clause classes in parse-tree 2020-08-11 10:44:14 -04:00
assignment.cpp [flang] Semantic checks for bad usage of whole assumed-size arrays 2020-10-07 14:42:36 -07:00
assignment.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
attr.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
canonicalize-acc.cpp [flang][openacc] Add check for tile clause restriction 2020-08-27 22:13:46 -04:00
canonicalize-acc.h [flang][openacc] Semantic checks for OpenACC 3.0 clauses validity 2020-07-14 20:44:35 -04:00
canonicalize-do.cpp [flang][NFC] Get formatting in sync with latest clang-format 2020-07-01 16:51:46 -07:00
canonicalize-do.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
canonicalize-omp.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
canonicalize-omp.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-acc-structure.cpp [Flang][OpenACC] Fix for branching out issue in OpenACC parallel construct. 2020-10-19 21:46:47 +05:30
check-acc-structure.h [flang][directives] Use TableGen information for clause classes in parse-tree 2020-08-11 10:44:14 -04:00
check-allocate.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-allocate.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-arithmeticif.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-arithmeticif.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-call.cpp [flang] Failed call to CHECK() for call to ASSOCIATED(NULL()) 2020-10-16 07:12:57 -07:00
check-call.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-case.cpp [flang] Fix integer CASE constant typing 2020-09-01 10:59:35 -07:00
check-case.h [flang] Semantics for SELECT CASE 2020-03-27 12:02:11 -07:00
check-coarray.cpp [flang] Support for image selectors 2020-07-08 07:31:54 -07:00
check-coarray.h [flang] Support for image selectors 2020-07-08 07:31:54 -07:00
check-data.cpp [flang] Handle DATA initialization of EQUIVALENCE'd objects 2020-08-07 16:39:23 -07:00
check-data.h [flang] Handle DATA initialization of EQUIVALENCE'd objects 2020-08-07 16:39:23 -07:00
check-deallocate.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-deallocate.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-declarations.cpp [flang] Disallow pointer constants 2020-10-16 12:31:42 -07:00
check-declarations.h [flang] Check shape conformance on initializers 2020-08-31 16:27:06 -07:00
check-directive-structure.h [flang] Fix compilation warning in check-directive-structure.h 2020-08-05 18:03:41 -07:00
check-do-forall.cpp [Flang][OpenACC] Fix for branching out issue in OpenACC parallel construct. 2020-10-19 21:46:47 +05:30
check-do-forall.h [flang] Fix crash on erroneous expressions 2020-06-05 08:46:43 -07:00
check-if-stmt.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-if-stmt.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-io.cpp [flang] Semantic checks for bad usage of whole assumed-size arrays 2020-10-07 14:42:36 -07:00
check-io.h [flang] Check that various variables referenced in I/O statements may be defined 2020-08-25 12:06:18 -07:00
check-namelist.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-namelist.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-nullify.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-nullify.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-omp-structure.cpp [Flang][OpenMP] Fix issue in only a single nowait clause can appear on a sections directive. 2020-10-14 16:22:57 +05:30
check-omp-structure.h [Flang][OpenMP] Rework parser changes for OpenMP atomic construct. 2020-10-14 14:19:49 +05:30
check-purity.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-purity.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-return.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-return.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-select-rank.cpp [flang]Semantics for SELECT RANK. 2020-05-08 08:52:31 +05:30
check-select-rank.h [flang]Semantics for SELECT RANK. 2020-05-08 08:52:31 +05:30
check-select-type.cpp [FLANG] Fix issues in SELECT TYPE construct when intrinsic type specification is specified in TYPE GUARD statement. 2020-08-03 09:24:42 +05:30
check-select-type.h [flang] Semantics for SELECT TYPE 2020-06-12 00:12:24 +05:30
check-stop.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-stop.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
compute-offsets.cpp [flang] Don't attempt to compute element size if no DynamicType 2020-08-24 18:20:24 -07:00
compute-offsets.h [flang] Compute sizes and offsets for symbols 2020-04-23 14:54:34 -07:00
data-to-inits.cpp [flang] Implement shape analysis of TRANSFER intrinsic function result 2020-08-13 09:56:24 -07:00
data-to-inits.h [flang] Handle DATA initialization of EQUIVALENCE'd objects 2020-08-07 16:39:23 -07:00
expression.cpp [flang] Failed call to CHECK() for call to ASSOCIATED(NULL()) 2020-10-16 07:12:57 -07:00
mod-file.cpp [flang] Semantic analysis for FINAL subroutines 2020-09-30 15:46:15 -07:00
mod-file.h [flang] Semantic analysis for FINAL subroutines 2020-09-30 15:46:15 -07:00
pointer-assignment.cpp [flang] Failed call to CHECK() for call to ASSOCIATED(NULL()) 2020-10-16 07:12:57 -07:00
pointer-assignment.h [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
program-tree.cpp [flang] Parse global compiler directives 2020-08-25 11:41:11 -07:00
program-tree.h [flang] Parse global compiler directives 2020-08-25 11:41:11 -07:00
resolve-directives.cpp [flang]Add Semantic Checks for OpenMP Allocate Clause 2020-09-09 12:06:21 +01:00
resolve-directives.h [flang][NFC] Extract name resolution for OpenACC & OpenMP into new file 2020-07-28 16:38:36 -07:00
resolve-labels.cpp [flang] Add name match checks for interface procedures 2020-10-19 07:51:17 -07:00
resolve-labels.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
resolve-names-utils.cpp [flang] Fix check for distinguishable operators/assignments 2020-09-10 07:22:55 -07:00
resolve-names-utils.h [flang] Fix check for distinguishable operators/assignments 2020-09-10 07:22:55 -07:00
resolve-names.cpp [flang] Semantic analysis for FINAL subroutines 2020-09-30 15:46:15 -07:00
resolve-names.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
rewrite-parse-tree.cpp [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
rewrite-parse-tree.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
scope.cpp [flang] Fix build issue with BUILD_SHARED_LIBS=ON 2020-09-11 16:14:00 +01:00
semantics.cpp [flang] Support multiple CookedSource instances 2020-09-02 10:34:23 -07:00
symbol.cpp [flang] Semantic analysis for FINAL subroutines 2020-09-30 15:46:15 -07:00
tools.cpp [Flang][OpenACC] Fix for branching out issue in OpenACC parallel construct. 2020-10-19 21:46:47 +05:30
type.cpp [flang] Check shape conformance on initializers 2020-08-31 16:27:06 -07:00
unparse-with-symbols.cpp [flang][openacc] Basic name resolution infrastructure for OpenACC construct 2020-07-26 20:01:35 -04:00