summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2019-12-05 09:50:18 -0500
committerAlexey Bataev <a.bataev@hotmail.com>2019-12-05 10:12:20 -0500
commit853961f21a6d07352204eb4820a93eab87ba0057 (patch)
treed56b143f2777a2c546dce860f4d52a6349ac711f /clang/lib/Sema
parentb29916cec3f45e5fb5efff5104acf142f348c724 (diff)
downloadbcm5719-llvm-853961f21a6d07352204eb4820a93eab87ba0057.tar.gz
bcm5719-llvm-853961f21a6d07352204eb4820a93eab87ba0057.zip
[OPENMP50]Add support for if clause for simd part in master taskloop simd directive.
According to OpenMP 5.0, the if clause can be applied to simd subdirective in the combined directives.
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/SemaOpenMP.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaOpenMP.cpp b/clang/lib/Sema/SemaOpenMP.cpp
index 2523d7edc3e..cacb81000ff 100644
--- a/clang/lib/Sema/SemaOpenMP.cpp
+++ b/clang/lib/Sema/SemaOpenMP.cpp
@@ -4660,6 +4660,8 @@ StmtResult Sema::ActOnOpenMPExecutableDirective(
Res = ActOnOpenMPMasterTaskLoopSimdDirective(
ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA);
AllowedNameModifiers.push_back(OMPD_taskloop);
+ if (LangOpts.OpenMP >= 50)
+ AllowedNameModifiers.push_back(OMPD_simd);
break;
case OMPD_parallel_master_taskloop:
Res = ActOnOpenMPParallelMasterTaskLoopDirective(
@@ -10688,6 +10690,7 @@ static OpenMPDirectiveKind getOpenMPCaptureRegionForClause(
CaptureRegion = OMPD_parallel;
break;
case OMPD_taskloop_simd:
+ case OMPD_master_taskloop_simd:
if (OpenMPVersion <= 45)
break;
if (NameModifier == OMPD_unknown || NameModifier == OMPD_simd)
@@ -10707,7 +10710,6 @@ static OpenMPDirectiveKind getOpenMPCaptureRegionForClause(
case OMPD_task:
case OMPD_taskloop:
case OMPD_master_taskloop:
- case OMPD_master_taskloop_simd:
case OMPD_target_data:
case OMPD_simd:
case OMPD_for_simd:
OpenPOWER on IntegriCloud