diff --git a/src/amd/compiler/aco_optimizer.cpp b/src/amd/compiler/aco_optimizer.cpp index 4e326f1f9e8..6df08f33943 100644 --- a/src/amd/compiler/aco_optimizer.cpp +++ b/src/amd/compiler/aco_optimizer.cpp @@ -668,7 +668,7 @@ valu_can_accept_vgpr(aco_ptr& instr, unsigned operand) instr->opcode == aco_opcode::v_readlane_b32 || instr->opcode == aco_opcode::v_readlane_b32_e64) return operand == 0; - return true; + return instr_info.classes[(int)instr->opcode] != instr_class::valu_pseudo_scalar_trans; } /* check constant bus and literal limitations */