From: Samuel Pitoiset Date: Thu, 18 Apr 2019 07:09:55 +0000 (+0200) Subject: ac/nir: use the new raw/struct SSBO atomic intrisics for comp_swap X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2b515a8259bc104f09e3af7a0e545f7aa659e30d;p=mesa.git ac/nir: use the new raw/struct SSBO atomic intrisics for comp_swap This is actually fixed now. This change requires LLVM r358579. Make sure to have it in your tree, otherwise the following piglit will hang: tests/spec/arb_shader_storage_buffer_object/execution/ssbo-atomicCompSwap-int.shader_test Signed-off-by: Samuel Pitoiset Reviewed-by: Timothy Arceri --- diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index 30e5cc8c389..78f25b8e742 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -1692,8 +1692,7 @@ static LLVMValueRef visit_atomic_ssbo(struct ac_nir_context *ctx, get_src(ctx, instr->src[0]), true); - if (HAVE_LLVM >= 0x900 && - instr->intrinsic != nir_intrinsic_ssbo_atomic_comp_swap) { + if (HAVE_LLVM >= 0x900) { /* XXX: The new raw/struct atomic intrinsics are buggy with * LLVM 8, see r358579. */