ac/llvm: fix handling COHERENT and VOLATILE flags for global access
Fixes: c181db0660 - ac/llvm: rewrite global & shared stores to share code
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37101>
This commit is contained in:
@@ -1931,8 +1931,8 @@ static void set_mem_op_alignment(LLVMValueRef instr, nir_intrinsic_instr *intr,
|
||||
|
||||
static void set_coherent_volatile(LLVMValueRef instr, nir_intrinsic_instr *intr)
|
||||
{
|
||||
if ((intr->intrinsic == nir_intrinsic_load_global ||
|
||||
intr->intrinsic == nir_intrinsic_store_global) &&
|
||||
if ((intr->intrinsic == nir_intrinsic_load_global_amd ||
|
||||
intr->intrinsic == nir_intrinsic_store_global_amd) &&
|
||||
nir_intrinsic_access(intr) & (ACCESS_COHERENT | ACCESS_VOLATILE))
|
||||
LLVMSetOrdering(instr, LLVMAtomicOrderingMonotonic);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user