gcc/libgomp
Julian Brown 1cbd94e834 Fix potential race condition in OpenACC "exit data" operations
PR libgomp/92881

	libgomp/
	* libgomp.h (gomp_remove_var_async): Add prototype.
	* oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
	gomp_remove_var.
	* target.c (gomp_unref_tgt): Change return type to bool, indicating
	whether target_mem_desc was unmapped.
	(gomp_unref_tgt_void): New.
	(gomp_remove_var): Reimplement in terms of...
	(gomp_remove_var_internal): ...this new helper function.
	(gomp_remove_var_async): New, implemented using above helper function.
	(gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
	gomp_unref_tgt.

Reviewed-by: Thomas Schwinge <thomas@codesourcery.com>

From-SVN: r279388
2019-12-13 23:14:15 +00:00
..
config libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
plugin libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
testsuite Update OpenACC tests for amdgcn 2019-12-13 17:40:06 +00:00
ChangeLog Fix potential race condition in OpenACC "exit data" operations 2019-12-13 23:14:15 +00:00
ChangeLog.graphite
Makefile.am GCN libgomp port 2019-11-13 12:38:04 +00:00
Makefile.in GCN Libgomp Plugin 2019-11-13 12:38:18 +00:00
acc_prof.h OpenACC Profiling Interface (incomplete) 2019-05-17 21:13:36 +02:00
acinclude.m4 re PR other/79543 (Inappropriate "ld --version" checking) 2019-09-03 14:10:26 +00:00
aclocal.m4 configure.ac: Remove GCC_HEADER_STDINT(gstdint.h). 2019-10-01 09:51:46 +02:00
affinity-fmt.c
affinity.c
alloc.c re PR libgomp/90527 (alloc.c:72:7: error: implicit declaration of function ‘posix_memalign’) 2019-05-20 23:29:17 +02:00
atomic.c
barrier.c
config.h.in GCN libgomp port 2019-11-13 12:38:04 +00:00
configure GCN Libgomp Plugin 2019-11-13 12:38:18 +00:00
configure.ac GCN libgomp port 2019-11-13 12:38:04 +00:00
configure.tgt musl: Fix invalid tls model in libgomp and libitm PR91938 2019-12-03 11:13:38 +00:00
critical.c
env.c libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
error.c
fortran.c
hashtab.h
icv-device.c
icv.c
iter.c
iter_ull.c
libgomp-plugin.c
libgomp-plugin.h GCN libgomp port 2019-11-13 12:38:04 +00:00
libgomp.h Fix potential race condition in OpenACC "exit data" operations 2019-12-13 23:14:15 +00:00
libgomp.map OpenACC Profiling Interface (incomplete) 2019-05-17 21:13:36 +02:00
libgomp.spec.in
libgomp.texi libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
libgomp_f.h.in
libgomp_g.h [OpenACC] Consolidate 'GOACC_enter_exit_data' and its helper functions in 'libgomp/oacc-mem.c' 2019-12-11 17:49:17 +01:00
lock.c
loop.c re PR libgomp/90641 (libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL) 2019-05-27 23:27:00 +02:00
loop_ull.c re PR libgomp/90641 (libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL) 2019-05-27 23:27:00 +02:00
oacc-async.c [OpenACC] Consolidate 'async'/'wait' code in 'libgomp/oacc-async.c' 2019-12-11 17:49:08 +01:00
oacc-cuda.c re PR libgomp/90585 (libgomp hsa plugin ftbfs in the x32 multilib variant) 2019-05-24 10:59:37 +02:00
oacc-host.c libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
oacc-init.c Validate acc_device_t uses 2019-12-03 14:38:54 +00:00
oacc-int.h [OpenACC] Consolidate 'async'/'wait' code in 'libgomp/oacc-async.c' 2019-12-11 17:49:08 +01:00
oacc-mem.c Fix potential race condition in OpenACC "exit data" operations 2019-12-13 23:14:15 +00:00
oacc-parallel.c [OpenACC] Consolidate 'GOACC_enter_exit_data' and its helper functions in 'libgomp/oacc-mem.c' 2019-12-11 17:49:17 +01:00
oacc-plugin.c OpenACC Profiling Interface (incomplete) 2019-05-17 21:13:36 +02:00
oacc-plugin.h OpenACC Profiling Interface (incomplete) 2019-05-17 21:13:36 +02:00
oacc-profiling.c OpenACC Profiling Interface (incomplete) 2019-05-17 21:13:36 +02:00
oacc-target.c GCN libgomp port 2019-11-13 12:38:04 +00:00
omp.h.in
omp_lib.f90.in
omp_lib.h.in libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
openacc.f90 libgomp/openacc.f90 – clean-up public/private attributes 2019-12-13 08:58:53 +01:00
openacc.h GCN libgomp port 2019-11-13 12:38:04 +00:00
openacc_lib.h
ordered.c libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
parallel.c
priority_queue.c
priority_queue.h
sections.c re PR libgomp/90641 (libgomp.c-c++-common/lastprivate-conditional-1.c etc FAIL) 2019-05-27 23:27:00 +02:00
secure_getenv.h
single.c
splay-tree.c
splay-tree.h
target.c Fix potential race condition in OpenACC "exit data" operations 2019-12-13 23:14:15 +00:00
task.c libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
taskloop.c
team.c libgomp – spelling fixes, incl. omp_lib.h.in 2019-12-11 12:45:49 +01:00
teams.c
work.c Optimize GCN OpenMP malloc performance 2019-11-13 12:38:09 +00:00