SWDEV-444670 - Register the Runtime::tearDown function to be called at exit

Change-Id: I2200b8154ce6806bf99150d0d68f6f20138fa3dc
This commit is contained in:
Ioannis Assiouras
2024-02-07 13:53:50 +00:00
والد 66f6a3e255
کامیت 5e294f89a8
2فایلهای تغییر یافته به همراه11 افزوده شده و 3 حذف شده
@@ -615,7 +615,7 @@ Buffer::Buffer(const roc::Device& dev, size_t size) : roc::Memory(dev, size) {}
Buffer::~Buffer() {
if (owner() == nullptr) {
dev().hostFree(deviceMemory_, size());
dev().memFree(deviceMemory_, size());
} else {
destroy();
@@ -657,7 +657,7 @@ void Buffer::destroy() {
ClPrint(amd::LOG_DEBUG, amd::LOG_MEM, "[ROCClr] munmap failed \n");
}
} else {
dev().hostFree(deviceMemory_, size());
dev().memFree(deviceMemory_, size());
}
} else if (memFlags & ROCCLR_MEM_HSA_SIGNAL_MEMORY) {
if (HSA_STATUS_SUCCESS != hsa_signal_destroy(signal_)) {
@@ -666,7 +666,7 @@ void Buffer::destroy() {
}
deviceMemory_ = nullptr;
} else {
dev().hostFree(deviceMemory_, size());
dev().memFree(deviceMemory_, size());
}
} else {
dev().memFree(deviceMemory_, size());
@@ -120,4 +120,12 @@ uint ReferenceCountedObject::release() {
return newCount;
}
#ifndef _WIN32
void __attribute__((destructor)) hipTearDown() {
if (amd::IS_HIP) {
Runtime::tearDown();
}
}
#endif
} // namespace amd