[OpenMP][FIX] Ensure to set the context for wait events if necessary

Differential Revision: https://reviews.llvm.org/D123445
This commit is contained in:
Johannes Doerfert 2022-04-09 00:12:44 -05:00
parent 788f94f731
commit a3a42c3ca2
1 changed files with 4 additions and 1 deletions

View File

@ -1734,7 +1734,10 @@ int32_t __tgt_rtl_wait_event(int32_t device_id, void *event_ptr,
assert(DeviceRTL.isValidDeviceId(device_id) && "device_id is invalid");
assert(async_info_ptr && "async_info_ptr is nullptr");
assert(event_ptr && "event is nullptr");
// NOTE: We might not need to set context for event sync.
// If we don't have a queue we need to set the context.
if (!async_info_ptr->Queue &&
DeviceRTL.setContext(device_id) != OFFLOAD_SUCCESS)
return OFFLOAD_FAIL;
return DeviceRTL.waitEvent(device_id, async_info_ptr, event_ptr);
}