From b90ec971d7c6524d4ecdaf1aa46c2ed925b77b17 Mon Sep 17 00:00:00 2001 From: Georg Lehmann Date: Sat, 20 Jan 2024 19:28:59 +0100 Subject: [PATCH] aco/gfx11: resolve VcmpxPermlaneHazard for v_permlane64 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The GFX11 ISA docs description of this hazard says it's about v_permlane in general, not just v_permlane(x)16. Reviewed-by: Rhys Perry Reviewed-by: Daniel Schürmann Part-of: --- src/amd/compiler/aco_insert_NOPs.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/amd/compiler/aco_insert_NOPs.cpp b/src/amd/compiler/aco_insert_NOPs.cpp index dca0fd887dc..52ec359fa6e 100644 --- a/src/amd/compiler/aco_insert_NOPs.cpp +++ b/src/amd/compiler/aco_insert_NOPs.cpp @@ -1397,7 +1397,8 @@ handle_instruction_gfx11(State& state, NOP_ctx_gfx11& ctx, aco_ptr& if (instr->isVOPC() && instr->definitions[0].physReg() == exec) { ctx.has_Vcmpx = true; } else if (ctx.has_Vcmpx && (instr->opcode == aco_opcode::v_permlane16_b32 || - instr->opcode == aco_opcode::v_permlanex16_b32)) { + instr->opcode == aco_opcode::v_permlanex16_b32 || + instr->opcode == aco_opcode::v_permlane64_b32)) { ctx.has_Vcmpx = false; /* Unlike on GFX10, v_nop should resolve the hazard on GFX11. */