diff --git a/.pick_status.json b/.pick_status.json index 8f04f1575dc..064a9c8e209 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -404,7 +404,7 @@ "description": "aco: fix applying input modifiers to DPP8", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/amd/compiler/aco_optimizer.cpp b/src/amd/compiler/aco_optimizer.cpp index 9fdbffc7994..fa9c34a68b6 100644 --- a/src/amd/compiler/aco_optimizer.cpp +++ b/src/amd/compiler/aco_optimizer.cpp @@ -1440,7 +1440,7 @@ label_instruction(opt_ctx& ctx, aco_ptr& instr) instr->operands[i].setTemp(info.temp); } else if (info.is_neg() && can_use_mod && mod_bitsize_compat && can_eliminate_fcanonicalize(ctx, instr, info.temp, i)) { - if (!instr->isDPP() && !instr->isSDWA()) + if (!instr->isDPP16() && can_use_VOP3(ctx, instr)) instr->format = asVOP3(instr->format); instr->operands[i].setTemp(info.temp); if (!instr->valu().abs[i]) @@ -1448,7 +1448,7 @@ label_instruction(opt_ctx& ctx, aco_ptr& instr) } if (info.is_abs() && can_use_mod && mod_bitsize_compat && can_eliminate_fcanonicalize(ctx, instr, info.temp, i)) { - if (!instr->isDPP() && !instr->isSDWA()) + if (!instr->isDPP16() && can_use_VOP3(ctx, instr)) instr->format = asVOP3(instr->format); instr->operands[i] = Operand(info.temp); instr->valu().abs[i] = true;