llvm
e1962d2e - [SYCL] Fix asynchronous exception behavior (#20274)

Commit
127 days ago
[SYCL] Fix asynchronous exception behavior (#20274) This commit makes the following changes to the behavior of asynchronous exception handling: 1. The death of a queue should not consume asynchronous exceptions. 2. Calling wait_and_throw on an event after the associated queue has died should still consume exceptions that were originally associated with the queue. This should respect the async_handler priority to the best of its ability. 3. Calling wait_and_throw or throw_asynchronous on a queue without an async_handler should fall back to using the async_handler of the associated context, then the default async_handler if none were attached to the context. 4. Throwing asynchronous exceptions from anywhere will now consume all unconsumed asynchronous exceptions previously reported, no matter the event/queue/context/device. Additionally, this lays the ground work for https://github.com/intel/llvm/pull/20266 by moving the tracking of unconsumed asynchronous exception to the devices. --------- Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
Author
Steffen Larsen
Parents
Loading