diff options
Diffstat (limited to 'openmp/libomptarget/src/private.h')
-rw-r--r-- | openmp/libomptarget/src/private.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/openmp/libomptarget/src/private.h b/openmp/libomptarget/src/private.h index 7bdadc01375..93e0387c6e3 100644 --- a/openmp/libomptarget/src/private.h +++ b/openmp/libomptarget/src/private.h @@ -24,7 +24,7 @@ extern int target_data_begin(DeviceTy &Device, int32_t arg_num, extern int target_data_end(DeviceTy &Device, int32_t arg_num, void **args_base, void **args, int64_t *arg_sizes, int64_t *arg_types); -extern void target_data_update(DeviceTy &Device, int32_t arg_num, +extern int target_data_update(DeviceTy &Device, int32_t arg_num, void **args_base, void **args, int64_t *arg_sizes, int64_t *arg_types); extern int target(int64_t device_id, void *host_ptr, int32_t arg_num, @@ -33,16 +33,29 @@ extern int target(int64_t device_id, void *host_ptr, int32_t arg_num, extern int CheckDeviceAndCtors(int64_t device_id); +// enum for OMP_TARGET_OFFLOAD; keep in sync with kmp.h definition +enum kmp_target_offload_kind { + tgt_disabled = 0, + tgt_default = 1, + tgt_mandatory = 2 +}; +typedef enum kmp_target_offload_kind kmp_target_offload_kind_t; +extern kmp_target_offload_kind_t TargetOffloadPolicy; + // Implemented in libomp, they are called from within __tgt_* functions. #ifdef __cplusplus extern "C" { #endif +// functions that extract info from libomp; keep in sync int omp_get_default_device(void) __attribute__((weak)); int32_t __kmpc_omp_taskwait(void *loc_ref, int32_t gtid) __attribute__((weak)); +int __kmpc_get_target_offload(void) __attribute__((weak)); #ifdef __cplusplus } #endif +void FatalMessage(const int errorNum, const char *fmt, ...); + #ifdef OMPTARGET_DEBUG extern int DebugLevel; |