diff options
Diffstat (limited to 'offload/plugins-nextgen/common')
| -rw-r--r-- | offload/plugins-nextgen/common/include/PluginInterface.h | 6 | ||||
| -rw-r--r-- | offload/plugins-nextgen/common/src/PluginInterface.cpp | 23 |
2 files changed, 18 insertions, 11 deletions
diff --git a/offload/plugins-nextgen/common/include/PluginInterface.h b/offload/plugins-nextgen/common/include/PluginInterface.h index caf86a9..19db44c 100644 --- a/offload/plugins-nextgen/common/include/PluginInterface.h +++ b/offload/plugins-nextgen/common/include/PluginInterface.h @@ -854,8 +854,10 @@ struct GenericDeviceTy : public DeviceAllocatorTy { /// Query for the completion of the pending operations on the __tgt_async_info /// structure in a non-blocking manner. - Error queryAsync(__tgt_async_info *AsyncInfo); - virtual Error queryAsyncImpl(__tgt_async_info &AsyncInfo) = 0; + Error queryAsync(__tgt_async_info *AsyncInfo, bool ReleaseQueue = true, + bool *IsQueueWorkCompleted = nullptr); + virtual Error queryAsyncImpl(__tgt_async_info &AsyncInfo, bool ReleaseQueue, + bool *IsQueueWorkCompleted) = 0; /// Check whether the architecture supports VA management virtual bool supportVAManagement() const { return false; } diff --git a/offload/plugins-nextgen/common/src/PluginInterface.cpp b/offload/plugins-nextgen/common/src/PluginInterface.cpp index 4ec8366..807df0f 100644 --- a/offload/plugins-nextgen/common/src/PluginInterface.cpp +++ b/offload/plugins-nextgen/common/src/PluginInterface.cpp @@ -849,7 +849,8 @@ Error GenericDeviceTy::deinit(GenericPluginTy &Plugin) { } Expected<DeviceImageTy *> GenericDeviceTy::loadBinary(GenericPluginTy &Plugin, StringRef InputTgtImage) { - ODBG(OLDT_Init) << "Load data from image " << InputTgtImage.bytes_begin(); + ODBG(OLDT_Init) << "Load data from image " + << static_cast<const void *>(InputTgtImage.bytes_begin()); std::unique_ptr<MemoryBuffer> Buffer; if (identify_magic(InputTgtImage) == file_magic::bitcode) { @@ -1198,12 +1199,14 @@ Error GenericDeviceTy::synchronize(__tgt_async_info *AsyncInfo, return Plugin::success(); } -Error GenericDeviceTy::queryAsync(__tgt_async_info *AsyncInfo) { +Error GenericDeviceTy::queryAsync(__tgt_async_info *AsyncInfo, + bool ReleaseQueue, + bool *IsQueueWorkCompleted) { if (!AsyncInfo || !AsyncInfo->Queue) return Plugin::error(ErrorCode::INVALID_ARGUMENT, "invalid async info queue"); - return queryAsyncImpl(*AsyncInfo); + return queryAsyncImpl(*AsyncInfo, ReleaseQueue, IsQueueWorkCompleted); } Error GenericDeviceTy::memoryVAMap(void **Addr, void *VAddr, size_t *RSize) { @@ -1656,9 +1659,10 @@ int32_t GenericPluginTy::is_initialized() const { return Initialized; } int32_t GenericPluginTy::isPluginCompatible(StringRef Image) { auto HandleError = [&](Error Err) -> bool { - [[maybe_unused]] std::string ErrStr = toString(std::move(Err)); - ODBG(OLDT_Init) << "Failure to check validity of image " << Image.data() - << ": " << ErrStr; + std::string ErrStr = toString(std::move(Err)); + ODBG(OLDT_Init) << "Failure to check validity of image " + << static_cast<const void *>(Image.data()) << ": " + << ErrStr; return false; }; switch (identify_magic(Image)) { @@ -1685,8 +1689,9 @@ int32_t GenericPluginTy::isPluginCompatible(StringRef Image) { int32_t GenericPluginTy::isDeviceCompatible(int32_t DeviceId, StringRef Image) { auto HandleError = [&](Error Err) -> bool { - [[maybe_unused]] std::string ErrStr = toString(std::move(Err)); - ODBG(OLDT_Init) << "Failure to check validity of image " << Image << ": " + std::string ErrStr = toString(std::move(Err)); + ODBG(OLDT_Init) << "Failure to check validity of image " + << static_cast<const void *>(Image.data()) << ": " << ErrStr; return false; }; @@ -2069,7 +2074,7 @@ int32_t GenericPluginTy::use_auto_zero_copy(int32_t DeviceId) { int32_t GenericPluginTy::is_accessible_ptr(int32_t DeviceId, const void *Ptr, size_t Size) { auto HandleError = [&](Error Err) -> bool { - [[maybe_unused]] std::string ErrStr = toString(std::move(Err)); + std::string ErrStr = toString(std::move(Err)); ODBG(OLDT_Device) << "Failure while checking accessibility of pointer " << Ptr << " for device " << DeviceId << ": " << ErrStr; return false; |
