Lines Matching refs:PM
37 PluginManager *PM; variable
58 PM = new PluginManager(UseEventsForAtomicTransfers); in init()
70 delete PM; in deinit()
85 PM->TargetOffloadPolicy = in loadRTLs()
87 if (PM->TargetOffloadPolicy == tgt_disabled) { in loadRTLs()
270 DeviceTy &Device = *PM->Devices[RTL->Idx + I]; in registerGlobalCtorsDtorsForImage()
373 const size_t Start = PM->Devices.size(); in initRTLonce()
374 PM->Devices.reserve(Start + R.NumberOfDevices); in initRTLonce()
376 PM->Devices.push_back(std::make_unique<DeviceTy>(&R)); in initRTLonce()
378 PM->Devices[Start + DeviceId]->DeviceID = Start + DeviceId; in initRTLonce()
380 PM->Devices[Start + DeviceId]->RTLDeviceID = DeviceId; in initRTLonce()
402 PM->RTLsMtx.lock(); in registerLib()
406 PM->Images.emplace_back(getExecutableImage(&Desc->DeviceImages[i]), in registerLib()
410 for (auto &ImageAndInfo : PM->Images) { in registerLib()
438 PM->TrlTblMtx.lock(); in registerLib()
439 if (!PM->HostEntriesBeginToTransTable.count(Desc->HostEntriesBegin)) { in registerLib()
440 PM->HostEntriesBeginRegistrationOrder.push_back(Desc->HostEntriesBegin); in registerLib()
442 (PM->HostEntriesBeginToTransTable)[Desc->HostEntriesBegin]; in registerLib()
449 (PM->HostEntriesBeginToTransTable)[Desc->HostEntriesBegin]; in registerLib()
454 PM->TrlTblMtx.unlock(); in registerLib()
468 PM->RTLsMtx.unlock(); in registerLib()
476 PM->RTLsMtx.lock(); in unregisterLib()
478 for (auto &ImageAndInfo : PM->Images) { in unregisterLib()
511 DeviceTy &Device = *PM->Devices[FoundRTL->Idx + I]; in unregisterLib()
544 PM->RTLsMtx.unlock(); in unregisterLib()
548 PM->TblMapMtx.lock(); in unregisterLib()
551 PM->HostPtrToTableMap.erase(Cur->addr); in unregisterLib()
556 PM->HostEntriesBeginToTransTable.find(Desc->HostEntriesBegin); in unregisterLib()
557 if (TransTable != PM->HostEntriesBeginToTransTable.end()) { in unregisterLib()
560 PM->HostEntriesBeginToTransTable.erase(TransTable); in unregisterLib()
567 PM->TblMapMtx.unlock(); in unregisterLib()