diff --git a/src/amd/compiler/aco_validate.cpp b/src/amd/compiler/aco_validate.cpp index 40a90e32a2b..d7816ecc708 100644 --- a/src/amd/compiler/aco_validate.cpp +++ b/src/amd/compiler/aco_validate.cpp @@ -435,7 +435,9 @@ validate_ir(Program* program) if (instr->isVOPC() || instr->opcode == aco_opcode::v_readfirstlane_b32 || instr->opcode == aco_opcode::v_readlane_b32 || - instr->opcode == aco_opcode::v_readlane_b32_e64) { + instr->opcode == aco_opcode::v_readlane_b32_e64 || + instr_info.classes[(int)instr->opcode] == + instr_class::valu_pseudo_scalar_trans) { check(instr->definitions[0].regClass().type() == RegType::sgpr, "Wrong Definition type for VALU instruction", instr.get()); } else {