diff options
| author | cchen <cchen@cray.com> | 2019-12-04 14:36:07 -0500 |
|---|---|---|
| committer | Alexey Bataev <a.bataev@hotmail.com> | 2019-12-04 14:53:17 -0500 |
| commit | 713dab21e27c987b9114547ce7136bac2e775de9 (patch) | |
| tree | 696ff853d8c9db4fab6b73fbfcab6de0c4185d0d /clang/lib/Parse/ParseOpenMP.cpp | |
| parent | 9e978bb01ceae8eaa415d8951cc96803e68b73fb (diff) | |
| download | bcm5719-llvm-713dab21e27c987b9114547ce7136bac2e775de9.tar.gz bcm5719-llvm-713dab21e27c987b9114547ce7136bac2e775de9.zip | |
[OpenMP50] Add parallel master construct, by Chi Chun Chen.
Reviewers: ABataev, jdoerfert
Reviewed By: ABataev
Subscribers: jholewinski, guansong, arphaman, jfb, cfe-commits, sandoval, dreachem
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70726
Diffstat (limited to 'clang/lib/Parse/ParseOpenMP.cpp')
| -rw-r--r-- | clang/lib/Parse/ParseOpenMP.cpp | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/clang/lib/Parse/ParseOpenMP.cpp b/clang/lib/Parse/ParseOpenMP.cpp index 3cf338008aa..d25058e17ff 100644 --- a/clang/lib/Parse/ParseOpenMP.cpp +++ b/clang/lib/Parse/ParseOpenMP.cpp @@ -44,7 +44,6 @@ enum OpenMPDirectiveKindEx { OMPD_target_teams_distribute_parallel, OMPD_mapper, OMPD_variant, - OMPD_parallel_master, }; class DeclDirectiveListParserHelper final { @@ -1558,6 +1557,7 @@ Parser::DeclGroupPtrTy Parser::ParseOpenMPDeclarativeDirectiveWithExtDecl( case OMPD_parallel_for: case OMPD_parallel_for_simd: case OMPD_parallel_sections: + case OMPD_parallel_master: case OMPD_atomic: case OMPD_target: case OMPD_teams: @@ -1625,20 +1625,20 @@ Parser::DeclGroupPtrTy Parser::ParseOpenMPDeclarativeDirectiveWithExtDecl( /// executable-directive: /// annot_pragma_openmp 'parallel' | 'simd' | 'for' | 'sections' | /// 'section' | 'single' | 'master' | 'critical' [ '(' <name> ')' ] | -/// 'parallel for' | 'parallel sections' | 'task' | 'taskyield' | -/// 'barrier' | 'taskwait' | 'flush' | 'ordered' | 'atomic' | -/// 'for simd' | 'parallel for simd' | 'target' | 'target data' | -/// 'taskgroup' | 'teams' | 'taskloop' | 'taskloop simd' | 'master -/// taskloop' | 'master taskloop simd' | 'parallel master taskloop' | -/// 'parallel master taskloop simd' | 'distribute' | 'target enter data' -/// | 'target exit data' | 'target parallel' | 'target parallel for' | -/// 'target update' | 'distribute parallel for' | 'distribute paralle -/// for simd' | 'distribute simd' | 'target parallel for simd' | 'target -/// simd' | 'teams distribute' | 'teams distribute simd' | 'teams -/// distribute parallel for simd' | 'teams distribute parallel for' | -/// 'target teams' | 'target teams distribute' | 'target teams -/// distribute parallel for' | 'target teams distribute parallel for -/// simd' | 'target teams distribute simd' {clause} +/// 'parallel for' | 'parallel sections' | 'parallel master' | 'task' | +/// 'taskyield' | 'barrier' | 'taskwait' | 'flush' | 'ordered' | +/// 'atomic' | 'for simd' | 'parallel for simd' | 'target' | 'target +/// data' | 'taskgroup' | 'teams' | 'taskloop' | 'taskloop simd' | +/// 'master taskloop' | 'master taskloop simd' | 'parallel master +/// taskloop' | 'parallel master taskloop simd' | 'distribute' | 'target +/// enter data' | 'target exit data' | 'target parallel' | 'target +/// parallel for' | 'target update' | 'distribute parallel for' | +/// 'distribute paralle for simd' | 'distribute simd' | 'target parallel +/// for simd' | 'target simd' | 'teams distribute' | 'teams distribute +/// simd' | 'teams distribute parallel for simd' | 'teams distribute +/// parallel for' | 'target teams' | 'target teams distribute' | 'target +/// teams distribute parallel for' | 'target teams distribute parallel +/// for simd' | 'target teams distribute simd' {clause} /// annot_pragma_openmp_end /// StmtResult @@ -1803,6 +1803,7 @@ Parser::ParseOpenMPDeclarativeOrExecutableDirective(ParsedStmtContext StmtCtx) { case OMPD_parallel_for: case OMPD_parallel_for_simd: case OMPD_parallel_sections: + case OMPD_parallel_master: case OMPD_task: case OMPD_ordered: case OMPD_atomic: |

