]> git.ipfire.org Git - thirdparty/gcc.git/commit
Simplify OpenACC 'no_create' clause implementation
authorThomas Schwinge <thomas@codesourcery.com>
Mon, 27 Feb 2023 11:02:02 +0000 (12:02 +0100)
committerThomas Schwinge <thomas@codesourcery.com>
Fri, 10 Mar 2023 14:59:23 +0000 (15:59 +0100)
commitcb770c92219bd1b29cc366fc8f7e54eb9518a90f
tree212181db105996ba47060ecdbe11a5fd64323098
parente58692d95d36ed9b466a1925cae38eb5318bc25e
Simplify OpenACC 'no_create' clause implementation

For 'OFFSET_INLINED', 'gomp_map_val' does the right thing, and we may then
simplify the device plugins accordingly.

This is a follow-up to
Subversion r279551 (Git commit a6163563f2ce502bd4ef444bd5de33570bb8eeb1)
"Add OpenACC 2.6's no_create",
Subversion r279622 (Git commit 5bcd470bf0749e1f56d05dd43aa9584ff2e3a090)
"Use gomp_map_val for OpenACC host-to-device address translation".

libgomp/
* target.c (gomp_map_vars_internal): Use 'OFFSET_INLINED' for
'GOMP_MAP_IF_PRESENT'.
* plugin/plugin-gcn.c (gcn_exec, GOMP_OFFLOAD_openacc_exec)
(GOMP_OFFLOAD_openacc_async_exec): Adjust.
* plugin/plugin-nvptx.c (nvptx_exec, GOMP_OFFLOAD_openacc_exec)
(GOMP_OFFLOAD_openacc_async_exec): Likewise.
* testsuite/libgomp.oacc-c-c++-common/no_create-1.c: Add 'async'
testing.
* testsuite/libgomp.oacc-c-c++-common/no_create-2.c: Likewise.

(cherry picked from commit 199867d07be65cb0227a318ebf42b8376ca09313)
libgomp/ChangeLog.omp
libgomp/plugin/plugin-gcn.c
libgomp/plugin/plugin-nvptx.c
libgomp/target.c
libgomp/testsuite/libgomp.oacc-c-c++-common/no_create-1.c
libgomp/testsuite/libgomp.oacc-c-c++-common/no_create-2.c