From: Thomas Schwinge Date: Thu, 23 Mar 2023 11:32:35 +0000 (+0100) Subject: Add caveat/safeguard to OpenMP: Handle descriptors in target's firstprivate [PR104949] X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5bb50fb4e8fd10b4f6180e756380161c1ffd8a3e;p=thirdparty%2Fgcc.git Add caveat/safeguard to OpenMP: Handle descriptors in target's firstprivate [PR104949] Follow-up to commit 49d1a2f91325fa8cc011149e27e5093a988b3a49 "OpenMP: Handle descriptors in target's firstprivate [PR104949]". PR fortran/104949 libgomp/ * target.c (gomp_map_vars_internal) : Add caveat/safeguard. (cherry picked from commit e8fec6998b656dac02d4bc6c69b35a0fb5611e87) --- diff --git a/libgomp/ChangeLog.omp b/libgomp/ChangeLog.omp index fb352b39a6d0..63d1f563d5d4 100644 --- a/libgomp/ChangeLog.omp +++ b/libgomp/ChangeLog.omp @@ -1,5 +1,12 @@ 2023-03-24 Thomas Schwinge + Backported from master: + 2023-03-24 Thomas Schwinge + + PR fortran/104949 + * target.c (gomp_map_vars_internal) : Add + caveat/safeguard. + * target.c (gomp_target_rev): Instead of 'dev_to_host_cpy', 'host_to_dev_cpy', 'token', take a single 'goacc_asyncqueue'. * libgomp.h (gomp_target_rev): Adjust. diff --git a/libgomp/target.c b/libgomp/target.c index 2f53f056e538..de3facb6428f 100644 --- a/libgomp/target.c +++ b/libgomp/target.c @@ -1482,6 +1482,11 @@ gomp_map_vars_internal (struct gomp_device_descr *devicep, { uintptr_t target = (uintptr_t) hostaddrs[i]; void *devptr = *(void**) hostaddrs[i+1] + sizes[i+1]; + /* Per + + "OpenMP: Handle descriptors in target's firstprivate [PR104949]" + this probably needs revision for 'aq' usage. */ + assert (!aq); gomp_copy_host2dev (devicep, aq, devptr, &target, sizeof (void *), false, cbufp); ++i;