Module: Mesa
Branch: staging/23.1
Commit: abd8463d21d8fe04cc3defd70d9b8c170ec55d3b
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=abd8463d21d8fe04cc3defd70d9b8c170ec55d3b

Author: Dave Airlie <[email protected]>
Date:   Fri Jul 21 11:35:36 2023 +1000

gallivm: fix atomic global temporary storage.

Fixes regression on llvm15 with
piglit tests/cl/program/execute/builtin/atomic/atomic_xchg-global.cl

Fixes: f28129000511 ("gallivm: Fix atomic_global types")

---

 src/gallium/auxiliary/gallivm/lp_bld_nir_soa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/auxiliary/gallivm/lp_bld_nir_soa.c 
b/src/gallium/auxiliary/gallivm/lp_bld_nir_soa.c
index 262643e3234..28df2eba046 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_nir_soa.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_nir_soa.c
@@ -1027,7 +1027,7 @@ static void emit_atomic_global(struct 
lp_build_nir_context *bld_base,
       val = LLVMBuildBitCast(builder, val, atom_bld->vec_type, "");
 
    LLVMValueRef atom_res = lp_build_alloca(gallivm,
-                                           LLVMTypeOf(val), "");
+                                           atom_bld->vec_type, "");
    LLVMValueRef exec_mask = mask_vec(bld_base);
    struct lp_build_loop_state loop_state;
    lp_build_loop_begin(&loop_state, gallivm, lp_build_const_int32(gallivm, 0));

Reply via email to