[Mesa-dev] [PATCH] ac: pass struct ac_llvm_context to emit_membar()
Timothy Arceri
tarceri at itsqueeze.com
Thu Feb 8 23:39:56 UTC 2018
Fixes segfault in piglit test:
./bin/arb_shader_image_load_store-shader-mem-barrier --quick -auto -fbo
---
src/amd/common/ac_nir_to_llvm.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 82b55d4bc2..3589f9ff3f 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -3817,7 +3817,7 @@ static LLVMValueRef visit_image_size(struct ac_nir_context *ctx,
#define LGKM_CNT 0x07f
#define VM_CNT 0xf70
-static void emit_membar(struct nir_to_llvm_context *ctx,
+static void emit_membar(struct ac_llvm_context *ac,
const nir_intrinsic_instr *instr)
{
unsigned waitcnt = NOOP_WAITCNT;
@@ -3839,7 +3839,7 @@ static void emit_membar(struct nir_to_llvm_context *ctx,
break;
}
if (waitcnt != NOOP_WAITCNT)
- ac_build_waitcnt(&ctx->ac, waitcnt);
+ ac_build_waitcnt(ac, waitcnt);
}
static void emit_barrier(struct ac_llvm_context *ac, gl_shader_stage stage)
@@ -4504,7 +4504,7 @@ static void visit_intrinsic(struct ac_nir_context *ctx,
case nir_intrinsic_memory_barrier_buffer:
case nir_intrinsic_memory_barrier_image:
case nir_intrinsic_memory_barrier_shared:
- emit_membar(ctx->nctx, instr);
+ emit_membar(&ctx->ac, instr);
break;
case nir_intrinsic_barrier:
emit_barrier(&ctx->ac, ctx->stage);
--
2.14.3
More information about the mesa-dev
mailing list