| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Common | ||
| D3D8 | ||
| D3D9 | ||
| Device | ||
| Main | ||
| OpenGL | ||
| Pipeline | ||
| Reactor | ||
| Renderer | ||
| Shader | ||
| SwiftShader | ||
| System | ||
| Vulkan | ||
| WSI | ||
| Android.bp | ||
| SwiftShader.workspace | ||
| clang-format-all.sh | ||
| clang-format-separate.sh | ||
| commit_id.py | ||
| swiftshader.gni |
This CL refactors the implementation of VkSemaphore objects
in the following way:
- Add the ability to support several external handle types
concurrently. Before this CL, each platform could support
a single handle type (e.g. on Linux,
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT only).
The changes here will allow future CLs to support more than
one type per platform (e.g. the Linux implementation may
support OPAQUE_FD_BIT as well as SYNC_FD_BIT at the same
time).
- Better implementation of temporary imports. In particular,
the following sequence now works properly:
1) Create exportable semaphore A.
2) Export A to an external handle/descriptor.
3) Signal A.
4) Temporarily import _another_ handle into A.
5) A.wait() // waits on the temporary payload, then discard it.
Before the CL, A would end up, incorrectly, unsignalled. Because
the export operation created an External instance that held
the payload modified in 3), which was then discarded after
the wait() in 5).
- Improved and consistent handling of errors during import/export
operations, through the use of templates.
+ Add a technical note in VkSemaphore.h explaining how everything
works, since there are several subtle points in the spec.
Bug: b/140421736
Change-Id: I9b6935db3238fec7af8e0c81666e2f5c72075756
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/39880Tested-by:
David Turner <digit@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Kokoro-Presubmit: David Turner <digit@google.com>
Reviewed-by:
Chris Forbes <chrisforbes@google.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Common | Loading commit data... | |
| D3D8 | Loading commit data... | |
| D3D9 | Loading commit data... | |
| Device | Loading commit data... | |
| Main | Loading commit data... | |
| OpenGL | Loading commit data... | |
| Pipeline | Loading commit data... | |
| Reactor | Loading commit data... | |
| Renderer | Loading commit data... | |
| Shader | Loading commit data... | |
| SwiftShader | Loading commit data... | |
| System | Loading commit data... | |
| Vulkan | Loading commit data... | |
| WSI | Loading commit data... | |
| Android.bp | Loading commit data... | |
| SwiftShader.workspace | Loading commit data... | |
| clang-format-all.sh | Loading commit data... | |
| clang-format-separate.sh | Loading commit data... | |
| commit_id.py | Loading commit data... | |
| swiftshader.gni | Loading commit data... |