The clause makes any device code use the local memory address for each of the variables specified unless the given variable is already present on the current device. 2019-12-19 Julian Brown <julian@codesourcery.com> Maciej W. Rozycki <macro@codesourcery.com> Tobias Burnus <tobias@codesourcery.com> Thomas Schwinge <thomas@codesourcery.com> gcc/ * omp-low.c (lower_omp_target): Support GOMP_MAP_NO_ALLOC. * tree-pretty-print.c (dump_omp_clause): Likewise. gcc/c-family/ * c-pragma.h (pragma_omp_clause): Add PRAGMA_OACC_CLAUSE_NO_CREATE. gcc/c/ * c-parser.c (c_parser_omp_clause_name): Support no_create. (c_parser_oacc_data_clause): Likewise. (c_parser_oacc_all_clauses): Likewise. (OACC_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK) (OACC_PARALLEL_CLAUSE_MASK, OACC_SERIAL_CLAUSE_MASK): Add PRAGMA_OACC_CLAUSE_NO_CREATE. * c-typeck.c (handle_omp_array_sections): Support GOMP_MAP_NO_ALLOC. gcc/cp/ * parser.c (cp_parser_omp_clause_name): Support no_create. (cp_parser_oacc_data_clause): Likewise. (cp_parser_oacc_all_clauses): Likewise. (OACC_DATA_CLAUSE_MASK, OACC_KERNELS_CLAUSE_MASK) (OACC_PARALLEL_CLAUSE_MASK): Add PRAGMA_OACC_CLAUSE_NO_CREATE. * semantics.c (handle_omp_array_sections): Support no_create. gcc/fortran/ * gfortran.h (gfc_omp_map_op): Add OMP_MAP_NO_ALLOC. * openmp.c (omp_mask2): Add OMP_CLAUSE_NO_CREATE. (gfc_match_omp_clauses): Support no_create. (OACC_PARALLEL_CLAUSES, OACC_KERNELS_CLAUSES) (OACC_DATA_CLAUSES): Add OMP_CLAUSE_NO_CREATE. * trans-openmp.c (gfc_trans_omp_clauses_1): Support OMP_MAP_NO_ALLOC. gcc/testsuite/ * gfortran.dg/goacc/common-block-1.f90: Add no_create-clause tests. * gfortran.dg/goacc/common-block-1.f90: Likewise. * gfortran.dg/goacc/data-clauses.f95: Likewise. * gfortran.dg/goacc/data-tree.f95: Likewise. * gfortran.dg/goacc/kernels-tree.f95: Likewise. * gfortran.dg/goacc/parallel-tree.f95: Likewise. include/ * gomp-constants.h (gomp_map_kind): Support GOMP_MAP_NO_ALLOC. libgomp/ * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC. * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test. * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test. * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test. * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test. * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test. * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test. * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test. * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test. Reviewed-by: Thomas Schwinge <thomas@codesourcery.com> Co-Authored-By: Maciej W. Rozycki <macro@codesourcery.com> Co-Authored-By: Thomas Schwinge <thomas@codesourcery.com> Co-Authored-By: Tobias Burnus <tobias@codesourcery.com> From-SVN: r279551
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
gdb | Loading commit data... | |
COPYING | Loading commit data... | |
COPYING3 | Loading commit data... | |
ChangeLog | Loading commit data... | |
ChangeLog-9103 | Loading commit data... | |
ChangeLog.jit | Loading commit data... | |
ansidecl.h | Loading commit data... | |
demangle.h | Loading commit data... | |
dwarf2.def | Loading commit data... | |
dwarf2.h | Loading commit data... | |
dyn-string.h | Loading commit data... | |
environ.h | Loading commit data... | |
fibheap.h | Loading commit data... | |
filenames.h | Loading commit data... | |
floatformat.h | Loading commit data... | |
fnmatch.h | Loading commit data... | |
gcc-c-fe.def | Loading commit data... | |
gcc-c-interface.h | Loading commit data... | |
gcc-cp-fe.def | Loading commit data... | |
gcc-cp-interface.h | Loading commit data... | |
gcc-interface.h | Loading commit data... | |
getopt.h | Loading commit data... | |
gomp-constants.h | Loading commit data... | |
hashtab.h | Loading commit data... | |
hsa.h | Loading commit data... | |
leb128.h | Loading commit data... | |
libiberty.h | Loading commit data... | |
longlong.h | Loading commit data... | |
lto-symtab.h | Loading commit data... | |
md5.h | Loading commit data... | |
objalloc.h | Loading commit data... | |
obstack.h | Loading commit data... | |
partition.h | Loading commit data... | |
plugin-api.h | Loading commit data... | |
safe-ctype.h | Loading commit data... | |
sha1.h | Loading commit data... | |
simple-object.h | Loading commit data... | |
sort.h | Loading commit data... | |
splay-tree.h | Loading commit data... | |
symcat.h | Loading commit data... | |
timeval-utils.h | Loading commit data... | |
unique-ptr.h | Loading commit data... | |
vtv-change-permission.h | Loading commit data... | |
xregex.h | Loading commit data... | |
xregex2.h | Loading commit data... | |
xtensa-config.h | Loading commit data... |