diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index 7d42fbd04ea..cc55a62bb18 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -1284,9 +1284,9 @@ void visit_alu_instr(isel_context *ctx, nir_alu_instr *instr) bld.pseudo(aco_opcode::p_split_vector, Definition(src0), Definition(src1), src); if (dst.regClass() == s2) { - Temp carry = bld.tmp(s1); - Temp dst0 = bld.sop2(aco_opcode::s_sub_u32, bld.def(s1), bld.scc(Definition(carry)), Operand(0u), src0); - Temp dst1 = bld.sop2(aco_opcode::s_subb_u32, bld.def(s1), bld.def(s1, scc), Operand(0u), src1, bld.scc(carry)); + Temp borrow = bld.tmp(s1); + Temp dst0 = bld.sop2(aco_opcode::s_sub_u32, bld.def(s1), bld.scc(Definition(borrow)), Operand(0u), src0); + Temp dst1 = bld.sop2(aco_opcode::s_subb_u32, bld.def(s1), bld.def(s1, scc), Operand(0u), src1, bld.scc(borrow)); bld.pseudo(aco_opcode::p_create_vector, Definition(dst), dst0, dst1); } else { Temp lower = bld.tmp(v1); @@ -1700,9 +1700,9 @@ void visit_alu_instr(isel_context *ctx, nir_alu_instr *instr) Temp src11 = bld.tmp(dst.type(), 1); bld.pseudo(aco_opcode::p_split_vector, Definition(src10), Definition(src11), src1); if (dst.regClass() == s2) { - Temp carry = bld.tmp(s1); - Temp dst0 = bld.sop2(aco_opcode::s_sub_u32, bld.def(s1), bld.scc(Definition(carry)), src00, src10); - Temp dst1 = bld.sop2(aco_opcode::s_subb_u32, bld.def(s1), bld.def(s1, scc), src01, src11, bld.scc(carry)); + Temp borrow = bld.tmp(s1); + Temp dst0 = bld.sop2(aco_opcode::s_sub_u32, bld.def(s1), bld.scc(Definition(borrow)), src00, src10); + Temp dst1 = bld.sop2(aco_opcode::s_subb_u32, bld.def(s1), bld.def(s1, scc), src01, src11, bld.scc(borrow)); bld.pseudo(aco_opcode::p_create_vector, Definition(dst), dst0, dst1); } else if (dst.regClass() == v2) { Temp lower = bld.tmp(v1);