diff --git a/src/amd/compiler/aco_optimizer.cpp b/src/amd/compiler/aco_optimizer.cpp index 43d8835a29c..0f4b0ea097a 100644 --- a/src/amd/compiler/aco_optimizer.cpp +++ b/src/amd/compiler/aco_optimizer.cpp @@ -1651,7 +1651,7 @@ label_instruction(opt_ctx& ctx, aco_ptr& instr) return; } - if (instr->isVALU() || instr->isVINTRP()) { + if (instr->isVALU() || (instr->isVINTRP() && instr->opcode != aco_opcode::v_interp_mov_f32)) { if (instr_info.can_use_output_modifiers[(int)instr->opcode] || instr->isVINTRP() || instr->opcode == aco_opcode::v_cndmask_b32) { bool canonicalized = true;