diff options
author | Kwok Cheung Yeung <kcy@codesourcery.com> | 2024-01-03 14:34:39 +0000 |
---|---|---|
committer | Kwok Cheung Yeung <kcy@codesourcery.com> | 2024-01-03 15:15:17 +0000 |
commit | a56a693a74dd3bee71b1266b09dbd753694ace94 (patch) | |
tree | 30d2e3f7b9d2e6c796676aaf68e236543166473f | |
parent | 6ae84729940acff598e1a7f49d7b381025082ceb (diff) | |
download | gcc-a56a693a74dd3bee71b1266b09dbd753694ace94.zip gcc-a56a693a74dd3bee71b1266b09dbd753694ace94.tar.gz gcc-a56a693a74dd3bee71b1266b09dbd753694ace94.tar.bz2 |
openmp: Adjust position of OMP_CLAUSE_INDIRECT in OpenMP clauses
Move OMP_CLAUSE_INDIRECT so that it is outside of the range checked by
OMP_CLAUSE_SIZE and OMP_CLAUSE_DECL.
2024-01-03 Kwok Cheung Yeung <kcy@codesourcery.com>
gcc/c/
* c-parser.cc (c_parser_omp_clause_name): Move handling of indirect
clause to correspond to alphabetical order.
gcc/cp/
* parser.cc (cp_parser_omp_clause_name): Move handling of indirect
clause to correspond to alphabetical order.
gcc/
* tree-core.h (enum omp_clause_code): Move OMP_CLAUSE_INDIRECT to before
OMP_CLAUSE__SIMDUID_.
* tree.cc (omp_clause_num_ops): Update position of entry for
OMP_CLAUSE_INDIRECT to correspond with omp_clause_code.
(omp_clause_code_name): Likewise.
-rw-r--r-- | gcc/c/c-parser.cc | 4 | ||||
-rw-r--r-- | gcc/cp/parser.cc | 4 | ||||
-rw-r--r-- | gcc/tree-core.h | 6 | ||||
-rw-r--r-- | gcc/tree.cc | 4 |
4 files changed, 9 insertions, 9 deletions
diff --git a/gcc/c/c-parser.cc b/gcc/c/c-parser.cc index 64e4360..e7b74fb 100644 --- a/gcc/c/c-parser.cc +++ b/gcc/c/c-parser.cc @@ -14899,10 +14899,10 @@ c_parser_omp_clause_name (c_parser *parser) result = PRAGMA_OMP_CLAUSE_IN_REDUCTION; else if (!strcmp ("inbranch", p)) result = PRAGMA_OMP_CLAUSE_INBRANCH; - else if (!strcmp ("indirect", p)) - result = PRAGMA_OMP_CLAUSE_INDIRECT; else if (!strcmp ("independent", p)) result = PRAGMA_OACC_CLAUSE_INDEPENDENT; + else if (!strcmp ("indirect", p)) + result = PRAGMA_OMP_CLAUSE_INDIRECT; else if (!strcmp ("is_device_ptr", p)) result = PRAGMA_OMP_CLAUSE_IS_DEVICE_PTR; break; diff --git a/gcc/cp/parser.cc b/gcc/cp/parser.cc index 1a6b539..37536fa 100644 --- a/gcc/cp/parser.cc +++ b/gcc/cp/parser.cc @@ -37645,10 +37645,10 @@ cp_parser_omp_clause_name (cp_parser *parser) result = PRAGMA_OMP_CLAUSE_IN_REDUCTION; else if (!strcmp ("inbranch", p)) result = PRAGMA_OMP_CLAUSE_INBRANCH; - else if (!strcmp ("indirect", p)) - result = PRAGMA_OMP_CLAUSE_INDIRECT; else if (!strcmp ("independent", p)) result = PRAGMA_OACC_CLAUSE_INDEPENDENT; + else if (!strcmp ("indirect", p)) + result = PRAGMA_OMP_CLAUSE_INDIRECT; else if (!strcmp ("is_device_ptr", p)) result = PRAGMA_OMP_CLAUSE_IS_DEVICE_PTR; break; diff --git a/gcc/tree-core.h b/gcc/tree-core.h index d1c7136..8a89462 100644 --- a/gcc/tree-core.h +++ b/gcc/tree-core.h @@ -350,9 +350,6 @@ enum omp_clause_code { /* OpenMP clause: doacross ({source,sink}:vec). */ OMP_CLAUSE_DOACROSS, - /* OpenMP clause: indirect [(constant-integer-expression)]. */ - OMP_CLAUSE_INDIRECT, - /* Internal structure to hold OpenACC cache directive's variable-list. #pragma acc cache (variable-list). */ OMP_CLAUSE__CACHE_, @@ -497,6 +494,9 @@ enum omp_clause_code { /* OpenMP clause: filter (integer-expression). */ OMP_CLAUSE_FILTER, + /* OpenMP clause: indirect [(constant-integer-expression)]. */ + OMP_CLAUSE_INDIRECT, + /* Internally used only clause, holding SIMD uid. */ OMP_CLAUSE__SIMDUID_, diff --git a/gcc/tree.cc b/gcc/tree.cc index 82eff2b..8aee3ef 100644 --- a/gcc/tree.cc +++ b/gcc/tree.cc @@ -269,7 +269,6 @@ unsigned const char omp_clause_num_ops[] = 2, /* OMP_CLAUSE_MAP */ 1, /* OMP_CLAUSE_HAS_DEVICE_ADDR */ 1, /* OMP_CLAUSE_DOACROSS */ - 1, /* OMP_CLAUSE_INDIRECT */ 2, /* OMP_CLAUSE__CACHE_ */ 2, /* OMP_CLAUSE_GANG */ 1, /* OMP_CLAUSE_ASYNC */ @@ -316,6 +315,7 @@ unsigned const char omp_clause_num_ops[] = 0, /* OMP_CLAUSE_ORDER */ 0, /* OMP_CLAUSE_BIND */ 1, /* OMP_CLAUSE_FILTER */ + 1, /* OMP_CLAUSE_INDIRECT */ 1, /* OMP_CLAUSE__SIMDUID_ */ 0, /* OMP_CLAUSE__SIMT_ */ 0, /* OMP_CLAUSE_INDEPENDENT */ @@ -362,7 +362,6 @@ const char * const omp_clause_code_name[] = "map", "has_device_addr", "doacross", - "indirect", "_cache_", "gang", "async", @@ -409,6 +408,7 @@ const char * const omp_clause_code_name[] = "order", "bind", "filter", + "indirect", "_simduid_", "_simt_", "independent", |