aboutsummaryrefslogtreecommitdiff
path: root/libgomp/target.c
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2023-02-27 12:02:02 +0100
committerThomas Schwinge <thomas@codesourcery.com>2023-03-10 15:48:43 +0100
commit199867d07be65cb0227a318ebf42b8376ca09313 (patch)
tree9e1955c9f2beff346cf80dd2aec1daabebd406fd /libgomp/target.c
parentb5037d4a073f2e4625afab5ec1f35624d9f9eba1 (diff)
downloadgcc-199867d07be65cb0227a318ebf42b8376ca09313.zip
gcc-199867d07be65cb0227a318ebf42b8376ca09313.tar.gz
gcc-199867d07be65cb0227a318ebf42b8376ca09313.tar.bz2
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.
Diffstat (limited to 'libgomp/target.c')
-rw-r--r--libgomp/target.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libgomp/target.c b/libgomp/target.c
index 483851c..0344f68 100644
--- a/libgomp/target.c
+++ b/libgomp/target.c
@@ -1207,7 +1207,7 @@ gomp_map_vars_internal (struct gomp_device_descr *devicep,
{
/* Not present, hence, skip entry - including its MAP_POINTER,
when existing. */
- tgt->list[i].offset = OFFSET_POINTER;
+ tgt->list[i].offset = OFFSET_INLINED;
if (i + 1 < mapnum
&& ((typemask & get_kind (short_mapkind, kinds, i + 1))
== GOMP_MAP_POINTER))