OpenACC 2.6 deep copy: attach/detach API routines
authorJulian Brown <julian@codesourcery.com>
Fri, 20 Dec 2019 01:20:27 +0000 (01:20 +0000)
committerJulian Brown <jules@gcc.gnu.org>
Fri, 20 Dec 2019 01:20:27 +0000 (01:20 +0000)
commit5d5be7bfb56358feed3fd137d4e3994fcf17f543
tree81fe9c37b82fc1954b0968cc392dcf97af1280c0
parent4d83edf7efa2b4a4a46646640519bc2cd61c351c
OpenACC 2.6 deep copy: attach/detach API routines

libgomp/
* libgomp.h (struct splay_tree_aux): Add attach_count field.
(gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
* libgomp.map (OACC_2.6): New section. Add acc_attach,
acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
acc_detach_finalize_async.
* oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
acc_detach, acc_detach_async, acc_detach_finalize,
acc_detach_finalize_async): New functions.
* openacc.h (acc_attach, acc_attach_async, acc_detach,
(acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
prototypes.
* target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
(gomp_remove_var_internal): Free attachment counts if present.
* testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
* testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.

Co-Authored-By: Thomas Schwinge <thomas@codesourcery.com>
From-SVN: r279624
libgomp/ChangeLog
libgomp/libgomp.h
libgomp/libgomp.map
libgomp/oacc-mem.c
libgomp/openacc.h
libgomp/target.c
libgomp/testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c [new file with mode: 0644]
libgomp/testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c [new file with mode: 0644]