diff --git a/.pick_status.json b/.pick_status.json index a903e238ba6..f1ab9491ea4 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -2134,7 +2134,7 @@ "description": "aco/gfx11+: disable v_pk_fmac_f16_dpp", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/amd/compiler/aco_ir.cpp b/src/amd/compiler/aco_ir.cpp index 9cfa5b8b230..1a575b5c4cf 100644 --- a/src/amd/compiler/aco_ir.cpp +++ b/src/amd/compiler/aco_ir.cpp @@ -412,6 +412,9 @@ can_use_DPP(amd_gfx_level gfx_level, const aco_ptr& instr, bool dpp instr->opcode == aco_opcode::v_dot2_f32_bf16; } + if (instr->opcode == aco_opcode::v_pk_fmac_f16) + return gfx_level < GFX11; + /* there are more cases but those all take 64-bit inputs */ return instr->opcode != aco_opcode::v_madmk_f32 && instr->opcode != aco_opcode::v_madak_f32 && instr->opcode != aco_opcode::v_madmk_f16 && instr->opcode != aco_opcode::v_madak_f16 &&