|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init |
|
| #
f2b7f18e |
| 26-Jul-2022 |
Shraiysh Vaishay <[email protected]> |
Revert "[flang][OpenMP] Lowering support for default clause"
This reverts commit 05e6fce84fd39d150195b8928561f2c90c71e538.
|
| #
05e6fce8 |
| 26-Jul-2022 |
Nimish Mishra <[email protected]> |
[flang][OpenMP] Lowering support for default clause
This patch adds lowering support for default clause.
1. During symbol resolution in semantics, should the enclosing context have a default data s
[flang][OpenMP] Lowering support for default clause
This patch adds lowering support for default clause.
1. During symbol resolution in semantics, should the enclosing context have a default data sharing clause defined and a `parser::Name` is not attached to an explicit data sharing clause, the `semantics::Symbol::Flag::OmpPrivate` flag (in case of `default(private)`) and `semantics::Symbol::Flag::OmpFirstprivate` flag (in case of `default(firstprivate)`) is added to the symbol.
2. During lowering, all symbols having either `semantics::Symbol::Flag::OmpPrivate` or `semantics::Symbol::Flag::OmpFirstprivate` flag are collected and privatised appropriately.
Co-authored-by: Peixin Qiao <[email protected]>
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D123930
show more ...
|
| #
5cbe39ef |
| 11-Jul-2022 |
Nimish Mishra <[email protected]> |
[flang][OpenMP] Allow default(none) to access variables with PARAMETER attribute
This patch fixes https://github.com/flang-compiler/f18-llvm-project/issues/1351. Concretely, data-sharing attributes
[flang][OpenMP] Allow default(none) to access variables with PARAMETER attribute
This patch fixes https://github.com/flang-compiler/f18-llvm-project/issues/1351. Concretely, data-sharing attributes on PARAMETER data used in a block with DEFAULT(NONE) should be ignored.
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D129444
show more ...
|
| #
27afb362 |
| 24-Jun-2022 |
Peixin-Qiao <[email protected]> |
[flang][OpenMP] Initial support the lowering of copyin clause
This supports the lowering of copyin clause initially. The pointer, allocatable, common block, polymorphic varaibles will be supported l
[flang][OpenMP] Initial support the lowering of copyin clause
This supports the lowering of copyin clause initially. The pointer, allocatable, common block, polymorphic varaibles will be supported later.
This also includes the following changes:
1. Resolve the COPYIN clause and make the entity as host associated.
2. Fix collectSymbolSet by adding one option to control collecting the symbol itself or ultimate symbol of it so that it can be used explicitly differentiate the host and associated variables in host-association.
3. Add one helper function `lookupOneLevelUpSymbol` to differentiate the usage of host and associated variables explicitly. The previous lowering of firstprivate depends on the order of `createHostAssociateVarClone` and `lookupSymbol` of host symbol. With this fix, this dependence is removed.
4. Reuse `copyHostAssociateVar` for copying operation of COPYIN clause.
Reviewed By: kiranchandramohan, NimishMishra
Differential Revision: https://reviews.llvm.org/D127468
show more ...
|
|
Revision tags: llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1 |
|
| #
cd03e96f |
| 23-Mar-2022 |
Peter Klausler <[email protected]> |
[flang] Add & use a better visit() (take 2)
Adds flang/include/flang/Common/log2-visit.h, which defines a Fortran::common::visit() template function that is a drop-in replacement for std::visit().
[flang] Add & use a better visit() (take 2)
Adds flang/include/flang/Common/log2-visit.h, which defines a Fortran::common::visit() template function that is a drop-in replacement for std::visit(). Modifies most use sites in the front-end and runtime to use common::visit().
The C++ standard mandates that std::visit() have O(1) execution time, which forces implementations to build dispatch tables. This new common::visit() is O(log2 N) in the number of alternatives in a variant<>, but that N tends to be small and so this change produces a fairly significant improvement in compiler build memory requirements, a 5-10% improvement in compiler build time, and a small improvement in compiler execution time.
Building with -DFLANG_USE_STD_VISIT causes common::visit() to be an alias for std::visit().
Calls to common::visit() with multiple variant arguments are referred to std::visit(), pending further work.
This change is enabled only for GCC builds with GCC >= 9; an earlier attempt (D122441) ran into bugs in some versions of clang and was reverted rather than simply disabled; and it is not well tested with MSVC. In non-GCC and older GCC builds, common::visit() is simply an alias for std::visit().
show more ...
|
| #
7e225423 |
| 15-Apr-2022 |
Peter Klausler <[email protected]> |
[flang] Finer control over error recovery with GetExpr()
Prior to this patch, the semantics utility GetExpr() will crash unconditionally if it encounters a typed expression in the parse tree that ha
[flang] Finer control over error recovery with GetExpr()
Prior to this patch, the semantics utility GetExpr() will crash unconditionally if it encounters a typed expression in the parse tree that has not been set by expression semantics. This is the right behavior when called from lowering, by which time it is known that the program had no fatal user errors, since it signifies a fatal internal error. However, prior to lowering, in the statement semantics checking code, a more nuanced test should be used before crashing -- specifically, we should not crash in the face of a missing typed expression when in error recovery mode.
Getting this right requires GetExpr() and its helper class to have access to the semantics context, so that it can check AnyFatalErrors() before crashing. So this patch touches nearly all of its call sites.
Differential Revision: https://reviews.llvm.org/D123873
show more ...
|
| #
0000030b |
| 03-Apr-2022 |
Kiran Chandramohan <[email protected]> |
Revert "[Flang][OpenMP] Add semantic check for OpenMP Private, Firstprivate and Lastprivate clauses."
This reverts commit a2ca6bbda6160c1b474fffd6204bcac9456c7eb1.
D93213 performs some checks to en
Revert "[Flang][OpenMP] Add semantic check for OpenMP Private, Firstprivate and Lastprivate clauses."
This reverts commit a2ca6bbda6160c1b474fffd6204bcac9456c7eb1.
D93213 performs some checks to ensure that variables that appear in statement functions are not in privatisation clauses. The point at which this check is currently performed, there can be misparses that cause more constructs to be identified as statement functions. This can lead to various kinds of errors, hence reverting.
This revert hopefully fixes: https://github.com/llvm/llvm-project/issues/54477 https://github.com/llvm/llvm-project/issues/54161 https://github.com/llvm/llvm-project/issues/54163
Reviewed By: shraiysh
Differential Revision: https://reviews.llvm.org/D122650
show more ...
|
| #
4ca111d4 |
| 28-Mar-2022 |
Andrzej Warzynski <[email protected]> |
Revert "[flang] Add & use a better visit()"
This reverts commit 2ab9990c9eb79682a4d4b183dfbc7612d3e55328. It has caused multiple build failures: * https://lab.llvm.org/buildbot/#/builders/177/build
Revert "[flang] Add & use a better visit()"
This reverts commit 2ab9990c9eb79682a4d4b183dfbc7612d3e55328. It has caused multiple build failures: * https://lab.llvm.org/buildbot/#/builders/177/builds/4346 * https://lab.llvm.org/buildbot/#/builders/180/builds/3803 * https://lab.llvm.org/buildbot/#/builders/175/builds/10419 * https://lab.llvm.org/buildbot/#/builders/191/builds/4318 * https://lab.llvm.org/buildbot/#/builders/173/builds/4274 * https://lab.llvm.org/buildbot/#/builders/181/builds/4297
All these bots failed with a time-out: ``` command timed out: 1200 seconds without output running [b'ninja', b'-j', b'32'], attempting to kill ``` I'm guessing that that's due to template instantiations failing at some point (https://reviews.llvm.org/D122441 introduced a custom implementation of std::visit). Everything seems fine when either: * building on X86 with GCC or Clang (tested with GCC 9.3 and Clang 12) * building on AArch64 with GCC (tested with GCC 11)
show more ...
|
| #
2ab9990c |
| 23-Mar-2022 |
Peter Klausler <[email protected]> |
[flang] Add & use a better visit()
Adds flang/include/flang/Common/visit.h, which defines a Fortran::common::visit() template function that is a drop-in replacement for std::visit(). Modifies most
[flang] Add & use a better visit()
Adds flang/include/flang/Common/visit.h, which defines a Fortran::common::visit() template function that is a drop-in replacement for std::visit(). Modifies most use sites in the front-end and runtime to use common::visit().
The C++ standard mandates that std::visit() have O(1) execution time, which forces implementations to build dispatch tables. This new common::visit() is O(log2 N) in the number of alternatives in a variant<>, but that N tends to be small and so this change produces a fairly significant improvement in compiler build memory requirements, a 5-10% improvement in compiler build time, and a small improvement in compiler execution time.
Building with -DFLANG_USE_STD_VISIT causes common::visit() to be an alias for std::visit().
Calls to common::visit() with multiple variant arguments are referred to std::visit(), pending further work.
Differential Revision: https://reviews.llvm.org/D122441
show more ...
|
| #
ebec5e5c |
| 22-Mar-2022 |
Shraiysh Vaishay <[email protected]> |
[flang][OpenMP] Lowering critical construct
This patch adds translation from PFT to FIR for critical construct.
This is part of the upstreaming effort from the fir-dev branch in [1]. [1] https://gi
[flang][OpenMP] Lowering critical construct
This patch adds translation from PFT to FIR for critical construct.
This is part of the upstreaming effort from the fir-dev branch in [1]. [1] https://github.com/flang-compiler/f18-llvm-project
Co-authored-by: kiranchandramohan <[email protected]>
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D122218
show more ...
|
|
Revision tags: llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
| #
fe2d053c |
| 12-Oct-2021 |
Nimish Mishra <[email protected]> |
Added OpenMP 5.0 specification based semantic checks for CRITICAL construct name resolution
As reported in https://bugs.llvm.org/show_bug.cgi?id=48145, name resolution for omp critical construct was
Added OpenMP 5.0 specification based semantic checks for CRITICAL construct name resolution
As reported in https://bugs.llvm.org/show_bug.cgi?id=48145, name resolution for omp critical construct was failing. This patch adds functionality to help that name resolution as well as implementation to catch name mismatches.
The following semantic restrictions are therefore handled here:
- If a name is specified on a critical directive, the same name must also be specified on the end critical directive
- If no name appears on the critical directive, no name can appear on the end critical directive
- If a name appears on either the start critical directive or the end critical directive
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D110502
show more ...
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4 |
|
| #
6fb01a94 |
| 17-Sep-2021 |
PeixinQiao <[email protected]> |
[flang][OpenMP] Add semantic checks for ordered construct
This patch implements the following semantic checks according to OpenMP Version 5.1 Ordered construct restriction:
``` At most one threads
[flang][OpenMP] Add semantic checks for ordered construct
This patch implements the following semantic checks according to OpenMP Version 5.1 Ordered construct restriction:
``` At most one threads clause can appear on an ordered construct; At most one simd clause can appear on an ordered construct; At most one depend(source) clause can appear on an ordered construct; Either depend(sink:vec) clauses or depend(source) clauses may appear on an ordered construct, but not both. ```
This patch also implements the following semantic checks according to the syntax and descriptions in OpenMP Version 5.1 Ordered construct:
``` The dependence types of sink or source are only allowed on an ordered construct. The depend(*) clauses are not allowed when ordered construct is a block construct with an ordered region. The threads or simd clauses are not allowed when the ordered construct is a standalone construct with no ordered region. ```
Co-authored-by: Sameeran Joshi <[email protected]>
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D108512
show more ...
|
|
Revision tags: llvmorg-13.0.0-rc3 |
|
| #
b9a8f34d |
| 13-Sep-2021 |
Arnamoy Bhattacharyya <[email protected]> |
[flang][OpenMP] Add parsing support for nontemporal clause.
This patch adds parsing support for the nontemporal clause. Also adds a couple of test cases.
Reviewed By: clementval
Differential Revi
[flang][OpenMP] Add parsing support for nontemporal clause.
This patch adds parsing support for the nontemporal clause. Also adds a couple of test cases.
Reviewed By: clementval
Differential Revision: https://reviews.llvm.org/D106896
show more ...
|
|
Revision tags: llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1 |
|
| #
77ebfba6 |
| 02-Aug-2021 |
Chirag Khandelwal <[email protected]> |
[Flang][Openmp] Upgrade TASKGROUP construct to 5.0.
In OMP 5.0 specification clause-list with * task_reduction * allocate were allowed on taskgroup construct.
Fix XFAIL - omp-taskloop01.f90.
Revie
[Flang][Openmp] Upgrade TASKGROUP construct to 5.0.
In OMP 5.0 specification clause-list with * task_reduction * allocate were allowed on taskgroup construct.
Fix XFAIL - omp-taskloop01.f90.
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D93373
show more ...
|
|
Revision tags: llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2 |
|
| #
45cd405d |
| 11-Jun-2021 |
Diana Picus <[email protected]> |
[flang] Add clang-tidy check for braces around if
Flang diverges from the llvm coding style in that it requires braces around the bodies of if/while/etc statements, even when the body is a single st
[flang] Add clang-tidy check for braces around if
Flang diverges from the llvm coding style in that it requires braces around the bodies of if/while/etc statements, even when the body is a single statement.
This commit adds the readability-braces-around-statements check to flang's clang-tidy config file. Hopefully the premerge bots will pick it up and report violations in Phabricator.
We also explicitly disable the check in the directories corresponding to the Lower and Optimizer libraries, which rely heavily on mlir and llvm and therefore follow their coding style. Likewise for the tools directory.
We also fix any outstanding violations in the runtime and in lib/Semantics.
Differential Revision: https://reviews.llvm.org/D104100
show more ...
|
| #
6b8bf949 |
| 01-Jun-2021 |
Valentin Clement <[email protected]> |
[flang][openacc] Enforce restriction on attach and detach variables
Each var argument to an attach or detach clause must be a Fortran variable or array with the pointer or allocatable attribute. Thi
[flang][openacc] Enforce restriction on attach and detach variables
Each var argument to an attach or detach clause must be a Fortran variable or array with the pointer or allocatable attribute. This patch enforce this restruction.
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D103279
show more ...
|
| #
aae7eb80 |
| 27-May-2021 |
Isaac Perry <[email protected]> |
[Flang][Openmp] Fortran specific semantic checks for Allocate directive
This patch adds the following Fortran specific semantic checks for the OpenMP Allocate directive. 1) A type parameter inquiry
[Flang][Openmp] Fortran specific semantic checks for Allocate directive
This patch adds the following Fortran specific semantic checks for the OpenMP Allocate directive. 1) A type parameter inquiry cannot appear in an ALLOCATE directive. 2) List items specified in the ALLOCATE directive must not have the ALLOCATABLE attribute unless the directive is associated with an ALLOCATE statement.
Co-authored-by: Irina Dobrescu <[email protected]>
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D102061
show more ...
|
|
Revision tags: llvmorg-12.0.1-rc1 |
|
| #
123ae425 |
| 22-Apr-2021 |
Irina Dobrescu <[email protected]> |
[flang][openmp] Add General Semantic Checks for Allocate Directive
This patch adds semantic checks for the General Restrictions of the Allocate Directive.
Since the requires directive is not yet im
[flang][openmp] Add General Semantic Checks for Allocate Directive
This patch adds semantic checks for the General Restrictions of the Allocate Directive.
Since the requires directive is not yet implemented in Flang, the restriction: ``` allocate directives that appear in a target region must specify an allocator clause unless a requires directive with the dynamic_allocators clause is present in the same compilation unit ``` will need to be updated at a later time.
A different patch will be made with the Fortran specific restrictions of this directive.
I have used the code from https://reviews.llvm.org/D89395 for the CheckObjectListStructure function.
Co-authored-by: Isaac Perry <[email protected]>
Reviewed By: clementval, kiranchandramohan
Differential Revision: https://reviews.llvm.org/D91159
show more ...
|
|
Revision tags: llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4 |
|
| #
0d8331c0 |
| 18-Mar-2021 |
peter klausler <[email protected]> |
[flang] Refine symbol sorting
Replace semantics::SymbolSet with alternatives that clarify whether the set should order its contents by source position or not. This matters because positionally-orde
[flang] Refine symbol sorting
Replace semantics::SymbolSet with alternatives that clarify whether the set should order its contents by source position or not. This matters because positionally-ordered sets must not be used for Symbols that might be subjected to name replacement during name resolution, and address-ordered sets must not be used (without sorting) in circumstances where the order of their contents affects the output of the compiler.
All set<> and map<> instances in the compiler that are keyed by Symbols now have explicit Compare types in their template instantiations. Symbol::operator< is no more.
Differential Revision: https://reviews.llvm.org/D98878
show more ...
|
| #
96716e67 |
| 12-Mar-2021 |
Yashaswini <[email protected]> |
Add Semantic check for Flang OpenMP 4.5 - 2.15.3.6 Reduction clause Implementation of Reduction clause restriction checks.
Files:
flang/lib/Semantics/check-directive-structure.h flang/lib/Semantics
Add Semantic check for Flang OpenMP 4.5 - 2.15.3.6 Reduction clause Implementation of Reduction clause restriction checks.
Files:
flang/lib/Semantics/check-directive-structure.h flang/lib/Semantics/check-omp-structure.cpp flang/lib/Semantics/check-omp-structure.h flang/lib/Semantics/resolve-directives.cpp
Testcases:
flang/test/Semantics/omp-reduction01.f90 flang/test/Semantics/omp-reduction02.f90 flang/test/Semantics/omp-reduction03.f90 flang/test/Semantics/omp-reduction04.f90 flang/test/Semantics/omp-reduction05.f90 flang/test/Semantics/omp-reduction06.f90 flang/test/Semantics/omp-reduction07.f90 flang/test/Semantics/omp-reduction08.f90 flang/test/Semantics/omp-reduction09.f90 flang/test/Semantics/omp-reduction10.f90 flang/test/Semantics/omp-symbol08.f90
Reviewed by: Kiran Chandramohan @kiranchandramohan and Valentin Clement @clementval.
Differential Revision: https://reviews.llvm.org/D90697
show more ...
|
|
Revision tags: llvmorg-12.0.0-rc3 |
|
| #
a89a3c2c |
| 08-Mar-2021 |
Yashaswini <[email protected]> |
Add Semantic check for Flang OpenMP 4.5 - 2.7.1 Do Loop restrictions for Threadprivate. Implementation of Do loop threadprivate check.
Files:
resolve-directives.cpp
Testcases:
omp-do04-positiveca
Add Semantic check for Flang OpenMP 4.5 - 2.7.1 Do Loop restrictions for Threadprivate. Implementation of Do loop threadprivate check.
Files:
resolve-directives.cpp
Testcases:
omp-do04-positivecase.f90 omp-do04.f90
Reviewed by: Kiran Chandramohan @kiranchandramohan
Differential Revision: https://reviews.llvm.org/D96686
show more ...
|
|
Revision tags: llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3 |
|
| #
75ef78ff |
| 30-Jan-2021 |
Praveen <[email protected]> |
[Flang][OpenMP] Add semantic checks for OpenMP clauses.
Semantic checks for the following OpenMP 4.5 clauses.
1. 2.15.4.2 - Copyprivate clause 2. 2.15.3.4 - Firstprivate clause 3. 2.15.3.5 - Lastpr
[Flang][OpenMP] Add semantic checks for OpenMP clauses.
Semantic checks for the following OpenMP 4.5 clauses.
1. 2.15.4.2 - Copyprivate clause 2. 2.15.3.4 - Firstprivate clause 3. 2.15.3.5 - Lastprivate clause
Add related test cases and resolve test cases marked as XFAIL.
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D91920
show more ...
|
| #
20e3a6cb |
| 15-Feb-2021 |
Yashaswini <[email protected]> |
Add Semantic check for Flang OpenMP 4.5 - 2.7.1 Do Loop restrictions. Implementation of Do loop iteration variable check, Do while loop check, Do loop cycle restrictions. Also to check whether the o
Add Semantic check for Flang OpenMP 4.5 - 2.7.1 Do Loop restrictions. Implementation of Do loop iteration variable check, Do while loop check, Do loop cycle restrictions. Also to check whether the ordered clause is present on the loop construct if any ordered region ever binds to a loop region arising from the loop construct.
Files:
check-omp-structure.h check-omp-structure.cpp resolve-directives.cpp
Testcases:
omp-do06-positivecases.f90 omp-do06.f90 omp-do08.f90 omp-do09.f90 omp-do10.f90 omp-do11.f90 omp-do12.f90 omp-do13.f90 omp-do14.f90 omp-do15.f90 omp-do16.f90 omp-do17.f90
Reviewed by: Kiran Chandramohan @kiranchandramohan , Valentin Clement @clementval
Differential Revision: https://reviews.llvm.org/D92732
show more ...
|
| #
5bc6e753 |
| 03-Feb-2021 |
Praveen <[email protected]> |
[Flang][OpenMP] Add semantic checks for invalid branches into or out of OpenMP constructs
OpenMP 4.5 - Check invalid branches into OpenMP strucutred blocks. Check invalid branches leavi
[Flang][OpenMP] Add semantic checks for invalid branches into or out of OpenMP constructs
OpenMP 4.5 - Check invalid branches into OpenMP strucutred blocks. Check invalid branches leaving OpenMP structured blocks.
Test cases : omp-do-cycle.f90, omp-invalid-branch.f90
Resolve related test cases marked as XFAIL
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D92735
show more ...
|
|
Revision tags: llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1 |
|
| #
b73736a4 |
| 07-Jan-2021 |
Valentin Clement <[email protected]> |
[flang][openacc] Enforce delcare directive restriction
Add semantic check for most of the restrictions for the declare directive.
Reviewed By: kiranktp
Differential Revision: https://reviews.llvm.
[flang][openacc] Enforce delcare directive restriction
Add semantic check for most of the restrictions for the declare directive.
Reviewed By: kiranktp
Differential Revision: https://reviews.llvm.org/D92741
show more ...
|