mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-02 10:49:22 +00:00
[OpenMP][NFC] Remove DelayedBinDesc
(#74360)
Remove `DelayedBinDesc` as it is not necessary since
bc4e0c048a
.
See
https://github.com/llvm/llvm-project/pull/74360#issuecomment-1843603736
for details.
This commit is contained in:
parent
71be8f3c23
commit
d552ce2638
@ -150,24 +150,6 @@ struct PluginManager {
|
||||
HostPtrToTableMapTy HostPtrToTableMap;
|
||||
std::mutex TblMapMtx; ///< For HostPtrToTableMap
|
||||
|
||||
// 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.
|
||||
bool delayRegisterLib(__tgt_bin_desc *Desc) {
|
||||
if (RTLsLoaded)
|
||||
return false;
|
||||
DelayedBinDesc.push_back(Desc);
|
||||
return true;
|
||||
}
|
||||
|
||||
void registerDelayedLibraries() {
|
||||
// Only called by libomptarget constructor
|
||||
RTLsLoaded = true;
|
||||
for (auto *Desc : DelayedBinDesc)
|
||||
__tgt_register_lib(Desc);
|
||||
DelayedBinDesc.clear();
|
||||
}
|
||||
|
||||
/// Return the number of usable devices.
|
||||
int getNumDevices() { return getExclusiveDevicesAccessor()->size(); }
|
||||
|
||||
@ -196,9 +178,6 @@ struct PluginManager {
|
||||
void addRequirements(int64_t Flags) { Requirements.addRequirements(Flags); }
|
||||
|
||||
private:
|
||||
bool RTLsLoaded = false;
|
||||
llvm::SmallVector<__tgt_bin_desc *> DelayedBinDesc;
|
||||
|
||||
// List of all plugin adaptors, in use or not.
|
||||
llvm::SmallVector<std::unique_ptr<PluginAdaptorTy>> PluginAdaptors;
|
||||
|
||||
|
@ -46,9 +46,6 @@ EXTERN void __tgt_register_requires(int64_t Flags) {
|
||||
/// adds a target shared library to the target execution image
|
||||
EXTERN void __tgt_register_lib(__tgt_bin_desc *Desc) {
|
||||
TIMESCOPE();
|
||||
if (PM->delayRegisterLib(Desc))
|
||||
return;
|
||||
|
||||
PM->registerLib(Desc);
|
||||
}
|
||||
|
||||
|
@ -51,7 +51,6 @@ __attribute__((constructor(101))) void init() {
|
||||
PM->init();
|
||||
|
||||
Profiler::get();
|
||||
PM->registerDelayedLibraries();
|
||||
}
|
||||
|
||||
__attribute__((destructor(101))) void deinit() {
|
||||
|
1
openmp/libomptarget/test/Inputs/empty.c
Normal file
1
openmp/libomptarget/test/Inputs/empty.c
Normal file
@ -0,0 +1 @@
|
||||
|
6
openmp/libomptarget/test/offloading/bug60119.c
Normal file
6
openmp/libomptarget/test/offloading/bug60119.c
Normal file
@ -0,0 +1,6 @@
|
||||
// RUN: %clang-generic -fPIC -shared %S/../Inputs/empty.c -o %T/liba.so
|
||||
// RUN: %clang-generic -fPIC -shared %S/../Inputs/empty.c -o %T/libb.so
|
||||
// RUN: %clang-generic -rpath %T -L %T -l a -l b %s -o %t
|
||||
// RUN: %t
|
||||
|
||||
int main() {}
|
Loading…
Reference in New Issue
Block a user