mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-09 05:27:49 +00:00
Adds remaining setup logic to implement destroy in Device and ObjectBase.
- Renames some of the Device functions to be consistent with documentation - Reverts change in https://dawn-review.googlesource.com/c/dawn/+/64820 for overloading mDevice == nullptr to determine if objects are alive because device is needed for error propagation. Instead, use list existence to determine if objects are alive - Updates destroy api to return bool upwards in case we need to further process the extending objects - Adds tracking functions in ObjectBase - Adds final tag to all backend Device implementations - Adds MoveInto LinkedList support to move list elements in O(1) Bug: dawn:628 Change-Id: Iff70f4f7d55f46ee52d1bd0e02e3671819f2eed4 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/65861 Commit-Queue: Loko Kung <lokokung@google.com> Reviewed-by: Austin Eng <enga@chromium.org>
This commit is contained in:
@@ -43,7 +43,7 @@ After this the device is set in the `Disconnected` state.
|
||||
If an `Alive` device is destroyed, then a similar flow to `LoseForTesting happens`.
|
||||
|
||||
All this ensures that during destruction or forceful disconnect of the device, it properly gets to the `Disconnected` state with no commands executing on the GPU.
|
||||
After disconnecting, frontend will call `backend::Device::ShutDownImpl` so that it can properly free driver objects.
|
||||
After disconnecting, frontend will call `backend::Device::DestroyImpl` so that it can properly free driver objects.
|
||||
|
||||
### Toggles
|
||||
|
||||
|
||||
Reference in New Issue
Block a user