From: Jason Ekstrand Date: Tue, 31 Mar 2020 08:19:39 +0000 (-0500) Subject: nir/load_store_vectorize: Fix shared atomic info X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=04d08ea149c05e4d5dad819269d74713aac270da;p=mesa.git nir/load_store_vectorize: Fix shared atomic info These were clearly copied and pasted from SSBOs. The shared atomics don't have an SSBO index so their offset is src0 and data is src1. Fixes: ce9205c03bd20 "nir: add a load/store vectorization pass" Reviewed-by: Rhys Perry Part-of: --- diff --git a/src/compiler/nir/nir_opt_load_store_vectorize.c b/src/compiler/nir/nir_opt_load_store_vectorize.c index 414a97fec45..b0d3a7d0d90 100644 --- a/src/compiler/nir/nir_opt_load_store_vectorize.c +++ b/src/compiler/nir/nir_opt_load_store_vectorize.c @@ -108,20 +108,20 @@ case nir_intrinsic_##op: {\ ATOMIC(0, deref, fmin, -1, -1, 0, 1) ATOMIC(0, deref, fmax, -1, -1, 0, 1) ATOMIC(0, deref, fcomp_swap, -1, -1, 0, 1) - ATOMIC(nir_var_mem_shared, shared, add, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, imin, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, umin, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, imax, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, umax, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, and, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, or, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, xor, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, exchange, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, comp_swap, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, fadd, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, fmin, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, fmax, 0, 1, -1, 2) - ATOMIC(nir_var_mem_shared, shared, fcomp_swap, 0, 1, -1, 2) + ATOMIC(nir_var_mem_shared, shared, add, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, imin, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, umin, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, imax, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, umax, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, and, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, or, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, xor, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, exchange, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, comp_swap, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, fadd, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, fmin, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, fmax, -1, 0, -1, 1) + ATOMIC(nir_var_mem_shared, shared, fcomp_swap, -1, 0, -1, 1) default: break; #undef ATOMIC