[Openmp-commits] [PATCH] D140419: [OpenMP] Disable libomptarget integration on unsupported platforms
Guilherme Valarini via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Tue Dec 20 10:39:01 PST 2022
gValarini created this revision.
gValarini added reviewers: jdoerfert, jhuber6.
Herald added subscribers: guansong, yaxunl.
Herald added a project: All.
gValarini requested review of this revision.
Herald added subscribers: openmp-commits, sstefan1.
Herald added a project: OpenMP.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D140419
Files:
openmp/runtime/src/kmp_config.h.cmake
openmp/runtime/src/kmp_tasking.cpp
Index: openmp/runtime/src/kmp_tasking.cpp
===================================================================
--- openmp/runtime/src/kmp_tasking.cpp
+++ openmp/runtime/src/kmp_tasking.cpp
@@ -21,8 +21,10 @@
#include "ompt-specific.h"
#endif
+#if ENABLE_LIBOMPTARGET
// Declaration of synchronization function from libomptarget.
extern "C" void __tgt_target_nowait_query(void **) KMP_WEAK_ATTRIBUTE_INTERNAL;
+#endif
/* forward declaration */
static void __kmp_enable_tasking(kmp_task_team_t *task_team,
@@ -1798,12 +1800,15 @@
KMP_FSYNC_ACQUIRED(taskdata); // acquired self (new task)
#endif
+#if ENABLE_LIBOMPTARGET
if (taskdata->td_target_data.async_handle != NULL) {
// If we have a valid target async handle, that means that we have already
// executed the task routine once. We must query for the handle completion
// instead of re-executing the routine.
__tgt_target_nowait_query(&taskdata->td_target_data.async_handle);
- } else if (task->routine != NULL) {
+ } else
+#endif
+ if (task->routine != NULL) {
#ifdef KMP_GOMP_COMPAT
if (taskdata->td_flags.native) {
((void (*)(void *))(*(task->routine)))(task->shareds);
Index: openmp/runtime/src/kmp_config.h.cmake
===================================================================
--- openmp/runtime/src/kmp_config.h.cmake
+++ openmp/runtime/src/kmp_config.h.cmake
@@ -94,6 +94,8 @@
#define KMP_HAVE_POSIX_MEMALIGN LIBOMP_HAVE_POSIX_MEMALIGN
#cmakedefine01 LIBOMP_HAVE__ALIGNED_MALLOC
#define KMP_HAVE__ALIGNED_MALLOC LIBOMP_HAVE__ALIGNED_MALLOC
+#cmakedefine01 OPENMP_ENABLE_LIBOMPTARGET
+#define ENABLE_LIBOMPTARGET OPENMP_ENABLE_LIBOMPTARGET
// Configured cache line based on architecture
#if KMP_ARCH_PPC64
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D140419.484319.patch
Type: text/x-patch
Size: 1751 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20221220/e8356913/attachment.bin>
More information about the Openmp-commits
mailing list