aboutsummaryrefslogtreecommitdiff
path: root/offload/include/PluginManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'offload/include/PluginManager.h')
-rw-r--r--offload/include/PluginManager.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/offload/include/PluginManager.h b/offload/include/PluginManager.h
index ec3adad..6c6fdeb 100644
--- a/offload/include/PluginManager.h
+++ b/offload/include/PluginManager.h
@@ -35,6 +35,8 @@
#include <mutex>
#include <string>
+#include "OpenMP/InteropAPI.h"
+
using GenericPluginTy = llvm::omp::target::plugin::GenericPluginTy;
/// Struct for the data required to handle plugins
@@ -88,6 +90,9 @@ struct PluginManager {
HostPtrToTableMapTy HostPtrToTableMap;
std::mutex TblMapMtx; ///< For HostPtrToTableMap
+ /// Table of cached implicit interop objects
+ InteropTblTy InteropTbl;
+
// Work around for plugins that call dlopen on shared libraries that call
// tgt_register_lib during their initialisation. Stash the pointers in a
// vector until the plugins are all initialised and then register them.
@@ -185,5 +190,6 @@ void initRuntime();
void deinitRuntime();
extern PluginManager *PM;
-
+extern std::atomic<bool> RTLAlive; // Indicates if the RTL has been initialized
+extern std::atomic<int> RTLOngoingSyncs; // Counts ongoing external syncs
#endif // OMPTARGET_PLUGIN_MANAGER_H