mirror of git://gcc.gnu.org/git/gcc.git
Reviewed-by: Thomas Schwinge <thomas@codesourcery.com> libgomp/ * oacc-mem.c (memcpy_tofrom_device): New function, combined from acc_memcpy_to/from_device functions, now with async parameter. (acc_memcpy_to_device): Modify to use memcpy_tofrom_device. (acc_memcpy_from_device): Likewise. (acc_memcpy_to_device_async): New API function. (acc_memcpy_from_device_async): Likewise. (present_create_copy): Add async parameter and async setting/unsetting. (acc_create): Adjust present_create_copy call. (acc_copyin): Likewise. (acc_present_or_create): Likewise. (acc_present_or_copyin): Likewise. (acc_create_async): New API function. (acc_copyin_async): New API function. (delete_copyout): Add async parameter and async setting/unsetting. (acc_delete): Adjust delete_copyout call. (acc_copyout): Likewise. (acc_delete_async): New API function. (acc_copyout_async): Likewise. (update_dev_host): Add async parameter and async setting/unsetting. (acc_update_device): Adjust update_dev_host call. (acc_update_self): Likewise. (acc_update_device_async): New API function. (acc_update_self_async): Likewise. * openacc.h (acc_copyin_async): Declare new API function. (acc_create_async): Likewise. (acc_copyout_async): Likewise. (acc_delete_async): Likewise. (acc_update_device_async): Likewise. (acc_update_self_async): Likewise. (acc_memcpy_to_device_async): Likewise. (acc_memcpy_from_device_async): Likewise. * openacc_lib.h (acc_copyin_async_32_h): New subroutine. (acc_copyin_async_64_h): New subroutine. (acc_copyin_async_array_h): New subroutine. (acc_create_async_32_h): New subroutine. (acc_create_async_64_h): New subroutine. (acc_create_async_array_h): New subroutine. (acc_copyout_async_32_h): New subroutine. (acc_copyout_async_64_h): New subroutine. (acc_copyout_async_array_h): New subroutine. (acc_delete_async_32_h): New subroutine. (acc_delete_async_64_h): New subroutine. (acc_delete_async_array_h): New subroutine. (acc_update_device_async_32_h): New subroutine. (acc_update_device_async_64_h): New subroutine. (acc_update_device_async_array_h): New subroutine. (acc_update_self_async_32_h): New subroutine. (acc_update_self_async_64_h): New subroutine. (acc_update_self_async_array_h): New subroutine. * openacc.f90 (acc_copyin_async_32_h): New subroutine. (acc_copyin_async_64_h): New subroutine. (acc_copyin_async_array_h): New subroutine. (acc_create_async_32_h): New subroutine. (acc_create_async_64_h): New subroutine. (acc_create_async_array_h): New subroutine. (acc_copyout_async_32_h): New subroutine. (acc_copyout_async_64_h): New subroutine. (acc_copyout_async_array_h): New subroutine. (acc_delete_async_32_h): New subroutine. (acc_delete_async_64_h): New subroutine. (acc_delete_async_array_h): New subroutine. (acc_update_device_async_32_h): New subroutine. (acc_update_device_async_64_h): New subroutine. (acc_update_device_async_array_h): New subroutine. (acc_update_self_async_32_h): New subroutine. (acc_update_self_async_64_h): New subroutine. (acc_update_self_async_array_h): New subroutine. * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*, acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*, acc_delete_finalize_async*, acc_memcpy_from_device_async*, acc_memcpy_to_device_async*, acc_update_device_async*, and acc_update_self_async* entries. * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test. * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test. * testsuite/libgomp.oacc-fortran/lib-16.f90: New test. From-SVN: r265842 |
||
|---|---|---|
| .. | ||
| config | ||
| plugin | ||
| testsuite | ||
| ChangeLog | ||
| ChangeLog.graphite | ||
| Makefile.am | ||
| Makefile.in | ||
| acinclude.m4 | ||
| aclocal.m4 | ||
| affinity.c | ||
| alloc.c | ||
| atomic.c | ||
| barrier.c | ||
| config.h.in | ||
| configure | ||
| configure.ac | ||
| configure.tgt | ||
| critical.c | ||
| env.c | ||
| error.c | ||
| fortran.c | ||
| hashtab.h | ||
| icv-device.c | ||
| icv.c | ||
| iter.c | ||
| iter_ull.c | ||
| libgomp-plugin.c | ||
| libgomp-plugin.h | ||
| libgomp.h | ||
| libgomp.map | ||
| libgomp.spec.in | ||
| libgomp.texi | ||
| libgomp_f.h.in | ||
| libgomp_g.h | ||
| lock.c | ||
| loop.c | ||
| loop_ull.c | ||
| oacc-async.c | ||
| oacc-cuda.c | ||
| oacc-host.c | ||
| oacc-init.c | ||
| oacc-int.h | ||
| oacc-mem.c | ||
| oacc-parallel.c | ||
| oacc-plugin.c | ||
| oacc-plugin.h | ||
| omp.h.in | ||
| omp_lib.f90.in | ||
| omp_lib.h.in | ||
| openacc.f90 | ||
| openacc.h | ||
| openacc_lib.h | ||
| ordered.c | ||
| parallel.c | ||
| priority_queue.c | ||
| priority_queue.h | ||
| sections.c | ||
| secure_getenv.h | ||
| single.c | ||
| splay-tree.c | ||
| splay-tree.h | ||
| target.c | ||
| task.c | ||
| taskloop.c | ||
| team.c | ||
| work.c | ||