-
- Downloads
OpenACC 2.7: default clause support for data constructs
This patch implements the OpenACC 2.7 addition of default(none|present) support
for data constructs.
Now, specifying "default(none|present)" on a data construct turns on same
default clause behavior for all lexically enclosed compute constructs (which
don't already themselves have a default clause).
gcc/c/ChangeLog:
* c-parser.cc (OACC_DATA_CLAUSE_MASK): Add PRAGMA_OACC_CLAUSE_DEFAULT.
gcc/cp/ChangeLog:
* parser.cc (OACC_DATA_CLAUSE_MASK): Add PRAGMA_OACC_CLAUSE_DEFAULT.
gcc/fortran/ChangeLog:
* openmp.cc (OACC_DATA_CLAUSES): Add OMP_CLAUSE_DEFAULT.
gcc/ChangeLog:
* gimplify.cc (oacc_region_type_name): New function.
(oacc_default_clause): If no 'default' clause appears on this
compute construct, see if one appears on a lexically containing
'data' construct.
(gimplify_scan_omp_clauses): Upon OMP_CLAUSE_DEFAULT case, set
ctx->oacc_default_clause_ctx to current context.
gcc/testsuite/ChangeLog:
* c-c++-common/goacc/default-3.c: Adjust testcase.
* c-c++-common/goacc/default-4.c: Adjust testcase.
* c-c++-common/goacc/default-5.c: Adjust testcase.
* gfortran.dg/goacc/default-3.f95: Adjust testcase.
* gfortran.dg/goacc/default-4.f: Adjust testcase.
* gfortran.dg/goacc/default-5.f: Adjust testcase.
Co-authored-by:
Thomas Schwinge <thomas@codesourcery.com>
Showing
- gcc/c/c-parser.cc 1 addition, 0 deletionsgcc/c/c-parser.cc
- gcc/cp/parser.cc 1 addition, 0 deletionsgcc/cp/parser.cc
- gcc/fortran/openmp.cc 2 additions, 1 deletiongcc/fortran/openmp.cc
- gcc/gimplify.cc 51 additions, 13 deletionsgcc/gimplify.cc
- gcc/testsuite/c-c++-common/goacc/default-3.c 56 additions, 3 deletionsgcc/testsuite/c-c++-common/goacc/default-3.c
- gcc/testsuite/c-c++-common/goacc/default-4.c 42 additions, 0 deletionsgcc/testsuite/c-c++-common/goacc/default-4.c
- gcc/testsuite/c-c++-common/goacc/default-5.c 17 additions, 2 deletionsgcc/testsuite/c-c++-common/goacc/default-5.c
- gcc/testsuite/gfortran.dg/goacc/default-3.f95 75 additions, 2 deletionsgcc/testsuite/gfortran.dg/goacc/default-3.f95
- gcc/testsuite/gfortran.dg/goacc/default-4.f 36 additions, 0 deletionsgcc/testsuite/gfortran.dg/goacc/default-4.f
- gcc/testsuite/gfortran.dg/goacc/default-5.f 17 additions, 2 deletionsgcc/testsuite/gfortran.dg/goacc/default-5.f
Loading
Please register or sign in to comment