From 1ad05d4ca82c97f6ac17cacf3ec7aa3653248078 Mon Sep 17 00:00:00 2001 From: Rhys Perry Date: Mon, 27 May 2024 15:46:01 +0100 Subject: [PATCH] aco: implement nir_atomic_op_ordered_add_gfx12_amd MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Rhys Perry Reviewed-by: Georg Lehmann Acked-by: Daniel Schürmann Part-of: --- src/amd/compiler/aco_instruction_selection.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index 5a9e0b8b24e..dfad0490ac9 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -7032,6 +7032,11 @@ visit_global_atomic(isel_context* ctx, nir_intrinsic_instr* instr) op32 = global ? aco_opcode::global_atomic_fmax : aco_opcode::flat_atomic_fmax; op64 = global ? aco_opcode::global_atomic_fmax_x2 : aco_opcode::flat_atomic_fmax_x2; break; + case nir_atomic_op_ordered_add_gfx12_amd: + assert(ctx->options->gfx_level >= GFX12 && instr->def.bit_size == 64); + op32 = aco_opcode::num_opcodes; + op64 = aco_opcode::global_atomic_ordered_add_b64; + break; default: unreachable("unsupported atomic operation"); }