summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Peyton <jonathan.l.peyton@intel.com>2016-04-12 20:37:18 +0000
committerJonathan Peyton <jonathan.l.peyton@intel.com>2016-04-12 20:37:18 +0000
commit2e379fc76733b7dfded8c0487c44073c8e484fa2 (patch)
tree81c840d7083060efea88a4880148f2350e7c45f6
parent1e98e743b08b004efe8312635dde3cf552bb445b (diff)
downloadbcm5719-llvm-2e379fc76733b7dfded8c0487c44073c8e484fa2.tar.gz
bcm5719-llvm-2e379fc76733b7dfded8c0487c44073c8e484fa2.zip
Add declarations of OpenMP 4.5 target/offload routines to headers
All these routines are implemented in the offload library. llvm-svn: 266120
-rw-r--r--openmp/runtime/src/include/41/omp.h.var11
-rw-r--r--openmp/runtime/src/include/41/omp_lib.f90.var5
-rw-r--r--openmp/runtime/src/include/41/omp_lib.h.var5
3 files changed, 21 insertions, 0 deletions
diff --git a/openmp/runtime/src/include/41/omp.h.var b/openmp/runtime/src/include/41/omp.h.var
index 9b7ac71b1a9..80c35f454d4 100644
--- a/openmp/runtime/src/include/41/omp.h.var
+++ b/openmp/runtime/src/include/41/omp.h.var
@@ -116,6 +116,17 @@
extern int __KAI_KMPC_CONVENTION omp_get_cancellation (void);
# include <stdlib.h>
+ /* OpenMP 4.5 */
+ extern int __KAI_KMPC_CONVENTION omp_get_initial_device (void);
+ extern void* __KAI_KMPC_CONVENTION omp_target_alloc(size_t, int);
+ extern void __KAI_KMPC_CONVENTION omp_target_free(void *, int);
+ extern int __KAI_KMPC_CONVENTION omp_target_is_present(void *, int);
+ extern int __KAI_KMPC_CONVENTION omp_target_memcpy(void *, void *, size_t, size_t, size_t, int, int);
+ extern int __KAI_KMPC_CONVENTION omp_target_memcpy_rect(void *, void *, size_t, int, const size_t *,
+ const size_t *, const size_t *, const size_t *, const size_t *, int, int);
+ extern int __KAI_KMPC_CONVENTION omp_target_associate_ptr(void *, void *, size_t, size_t, int);
+ extern int __KAI_KMPC_CONVENTION omp_target_disassociate_ptr(void *, int);
+
/* kmp API functions */
extern int __KAI_KMPC_CONVENTION kmp_get_stacksize (void);
extern void __KAI_KMPC_CONVENTION kmp_set_stacksize (int);
diff --git a/openmp/runtime/src/include/41/omp_lib.f90.var b/openmp/runtime/src/include/41/omp_lib.f90.var
index 737a68e504b..3f0140398d8 100644
--- a/openmp/runtime/src/include/41/omp_lib.f90.var
+++ b/openmp/runtime/src/include/41/omp_lib.f90.var
@@ -260,6 +260,11 @@
logical (kind=omp_logical_kind) omp_is_initial_device
end function omp_is_initial_device
+ function omp_get_initial_device() bind(c)
+ use omp_lib_kinds
+ integer (kind=omp_integer_kind) omp_get_initial_device
+ end function omp_get_initial_device
+
subroutine omp_init_lock(lockvar) bind(c)
!DIR$ IF(__INTEL_COMPILER.GE.1400)
!DIR$ attributes known_intrinsic :: omp_init_lock
diff --git a/openmp/runtime/src/include/41/omp_lib.h.var b/openmp/runtime/src/include/41/omp_lib.h.var
index a91569dfa46..6750a9511f3 100644
--- a/openmp/runtime/src/include/41/omp_lib.h.var
+++ b/openmp/runtime/src/include/41/omp_lib.h.var
@@ -242,6 +242,11 @@
logical (kind=omp_logical_kind) omp_is_initial_device
end function omp_is_initial_device
+ function omp_get_initial_device() bind(c)
+ import
+ integer (kind=omp_integer_kind) omp_get_initial_device
+ end function omp_get_initial_device
+
subroutine omp_init_lock(lockvar) bind(c)
!DIR$ IF(__INTEL_COMPILER.GE.1400)
!DIR$ attributes known_intrinsic :: omp_init_lock
OpenPOWER on IntegriCloud