SpirvShader: Implement OpControlBarrier.
Use the new coroutines to yield when hitting a ControlBarrier.
A barrier pushes the shader subgroup to the end of the compute invocation queue, which forces all subgroups to be brought to the fence before continuing.
Tests: dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.*
Tests: dEQP-VK.subgroups.basic.compute.*
Tests: dEQP-VK.compute.basic.*
Bug: b/131672705
Bug: b/132232716
Change-Id: Id78be9ce9d9455cb2cb7254482568985845b8b6a
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/30851
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Tested-by:
Chris Forbes <chrisforbes@google.com>
Reviewed-by:
Chris Forbes <chrisforbes@google.com>
Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Showing
Please
register
or
sign in
to comment