spirv_buffer_prepare(&b->instructions, b->mem_ctx, 3);
spirv_buffer_emit_word(&b->instructions, SpvOpMemoryBarrier | (3 << 16));
spirv_buffer_emit_word(&b->instructions, spirv_builder_const_uint(b, 32, scope));
- spirv_buffer_emit_word(&b->instructions, spirv_builder_const_uint(b, 32, semantics));
+ spirv_buffer_emit_word(&b->instructions, spirv_builder_const_uint(b, 32, semantics | SpvMemorySemanticsMakeAvailableMask | SpvMemorySemanticsMakeVisibleMask));
}
void
spirv_buffer_emit_word(&b->instructions, SpvOpControlBarrier | (4 << 16));
spirv_buffer_emit_word(&b->instructions, spirv_builder_const_uint(b, 32, scope));
spirv_buffer_emit_word(&b->instructions, spirv_builder_const_uint(b, 32, mem_scope));
- spirv_buffer_emit_word(&b->instructions, spirv_builder_const_uint(b, 32, semantics));
+ spirv_buffer_emit_word(&b->instructions, spirv_builder_const_uint(b, 32, semantics | SpvMemorySemanticsMakeAvailableMask | SpvMemorySemanticsMakeVisibleMask));
}
SpvId