From 161de6096d6b823b59689adee711a3ae5339ccd3 Mon Sep 17 00:00:00 2001 From: Rohan Garg Date: Wed, 1 Sep 2021 17:20:57 +0200 Subject: shader: Emit the right GLSL function when dealing with TGSI_MEMBAR_ATOMIC_BUFFER The GLSL spec does not mention a memoryBarrierAtomic function, and the GLSL to TGSI compiler indicates that a TGSI_MEMBAR_ATOMIC_BUFFER is created from GLSL's memoryBarrierAtomicCounter. Ref: https://gitlab.freedesktop.org/mesa/mesa/-/blob/526f7d779071e432a1205d62acd81d8d7f0c2f47/src/mesa/state_tracker/st_glsl_to_tgsi.cpp#L3737 This fixes: KHR-GL43.compute_shader.shared-struct Signed-off-by: Rohan Garg Reviewed-by: Gert Wollny --- src/vrend_shader.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vrend_shader.c b/src/vrend_shader.c index f03e1356..2a02bffe 100644 --- a/src/vrend_shader.c +++ b/src/vrend_shader.c @@ -5464,7 +5464,7 @@ iter_instruction(struct tgsi_iterate_context *iter, emit_buf(&ctx->glsl_strbufs, "memoryBarrierBuffer();\n"); } if (val & TGSI_MEMBAR_ATOMIC_BUFFER) { - emit_buf(&ctx->glsl_strbufs, "memoryBarrierAtomic();\n"); + emit_buf(&ctx->glsl_strbufs, "memoryBarrierAtomicCounter();\n"); } if (val & TGSI_MEMBAR_SHADER_IMAGE) { emit_buf(&ctx->glsl_strbufs, "memoryBarrierImage();\n"); -- cgit v1.2.3