Commit b396d3bc authored by Rhys Perry's avatar Rhys Perry Committed by Erik Faye-Lund
Browse files

spirv: make OpLoad/OpStore visibility/availablity barriers acquire/release

I think these are needed to order the visibility/availability operation
with the access.
Signed-off-by: Rhys Perry's avatarRhys Perry <>
Reviewed-by: Boris Brezillon's avatarBoris Brezillon <>
Reviewed-by: Jason Ekstrand's avatarJason Ekstrand <>
Part-of: <mesa/mesa!6090>
parent ff02c8ca
......@@ -2601,6 +2601,7 @@ vtn_handle_variables(struct vtn_builder *b, SpvOp opcode,
if (access & SpvMemoryAccessMakePointerVisibleMask) {
SpvMemorySemanticsMask semantics =
SpvMemorySemanticsMakeVisibleMask |
SpvMemorySemanticsAcquireMask |
vtn_emit_memory_barrier(b, scope, semantics);
......@@ -2650,6 +2651,7 @@ vtn_handle_variables(struct vtn_builder *b, SpvOp opcode,
if (access & SpvMemoryAccessMakePointerAvailableMask) {
SpvMemorySemanticsMask semantics =
SpvMemorySemanticsMakeAvailableMask |
SpvMemorySemanticsReleaseMask |
vtn_emit_memory_barrier(b, scope, semantics);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment