@@ -1327,20 +1327,10 @@ class Bcci48Pat<CondCode Cond, QCIBranchInst48_rii Inst, DAGOperand InTyImm>
13271327 : Pat<(riscv_brcc (XLenVT GPRNoX0:$rs1), InTyImm:$rs2, Cond, bb:$imm12),
13281328 (Inst GPRNoX0:$rs1, InTyImm:$rs2, bare_simm13_lsb0:$imm12)>;
13291329
1330- let hasSideEffects = 0, mayLoad = 0, mayStore = 0, usesCustomInserter = 1 in {
1331- def Select_GPR_Using_CC_Simm5NonZero : Pseudo<(outs GPR:$dst),
1332- (ins GPR:$lhs, simm5nonzero:$imm5,
1333- cond_code:$cc, GPR:$truev, GPR:$falsev), []>;
1334- def Select_GPR_Using_CC_Uimm5NonZero : Pseudo<(outs GPR:$dst),
1335- (ins GPR:$lhs, uimm5nonzero:$imm5,
1336- cond_code:$cc, GPR:$truev, GPR:$falsev), []>;
1337- def Select_GPR_Using_CC_Simm16NonZero : Pseudo<(outs GPR:$dst),
1338- (ins GPR:$lhs, simm16nonzero:$imm16,
1339- cond_code:$cc, GPR:$truev, GPR:$falsev), []>;
1340- def Select_GPR_Using_CC_Uimm16NonZero : Pseudo<(outs GPR:$dst),
1341- (ins GPR:$lhs, uimm16nonzero:$imm16,
1342- cond_code:$cc, GPR:$truev, GPR:$falsev), []>;
1343- }
1330+ defm CC_SImm5NonZero : SelectCC_GPR_riirr<GPR, simm5nonzero>;
1331+ defm CC_UImm5NonZero : SelectCC_GPR_riirr<GPR, uimm5nonzero>;
1332+ defm CC_SImm16NonZero : SelectCC_GPR_riirr<GPR, simm16nonzero>;
1333+ defm CC_UImm16NonZero : SelectCC_GPR_riirr<GPR, uimm16nonzero>;
13441334
13451335class SelectQCbi<CondCode Cond, DAGOperand InTyImm, Pseudo OpNode >
13461336 : Pat<(riscv_selectcc_frag:$cc (i32 GPR:$lhs), InTyImm:$Constant, Cond,
@@ -1419,19 +1409,19 @@ def : Bcci48Pat<SETGE, QC_E_BGEI, simm16nonzero>;
14191409def : Bcci48Pat<SETULT, QC_E_BLTUI, uimm16nonzero>;
14201410def : Bcci48Pat<SETUGE, QC_E_BGEUI, uimm16nonzero>;
14211411
1422- def : SelectQCbi<SETEQ, simm5nonzero, Select_GPR_Using_CC_Simm5NonZero >;
1423- def : SelectQCbi<SETNE, simm5nonzero, Select_GPR_Using_CC_Simm5NonZero >;
1424- def : SelectQCbi<SETLT, simm5nonzero, Select_GPR_Using_CC_Simm5NonZero >;
1425- def : SelectQCbi<SETGE, simm5nonzero, Select_GPR_Using_CC_Simm5NonZero >;
1426- def : SelectQCbi<SETULT, uimm5nonzero, Select_GPR_Using_CC_Uimm5NonZero >;
1427- def : SelectQCbi<SETUGE, uimm5nonzero, Select_GPR_Using_CC_Uimm5NonZero >;
1428-
1429- def : SelectQCbi<SETEQ, simm16nonzero, Select_GPR_Using_CC_Simm16NonZero >;
1430- def : SelectQCbi<SETNE, simm16nonzero, Select_GPR_Using_CC_Simm16NonZero >;
1431- def : SelectQCbi<SETLT, simm16nonzero, Select_GPR_Using_CC_Simm16NonZero >;
1432- def : SelectQCbi<SETGE, simm16nonzero, Select_GPR_Using_CC_Simm16NonZero >;
1433- def : SelectQCbi<SETULT, uimm16nonzero, Select_GPR_Using_CC_Uimm16NonZero >;
1434- def : SelectQCbi<SETUGE, uimm16nonzero, Select_GPR_Using_CC_Uimm16NonZero >;
1412+ def : SelectQCbi<SETEQ, simm5nonzero, Select_GPR_Using_CC_SImm5NonZero >;
1413+ def : SelectQCbi<SETNE, simm5nonzero, Select_GPR_Using_CC_SImm5NonZero >;
1414+ def : SelectQCbi<SETLT, simm5nonzero, Select_GPR_Using_CC_SImm5NonZero >;
1415+ def : SelectQCbi<SETGE, simm5nonzero, Select_GPR_Using_CC_SImm5NonZero >;
1416+ def : SelectQCbi<SETULT, uimm5nonzero, Select_GPR_Using_CC_UImm5NonZero >;
1417+ def : SelectQCbi<SETUGE, uimm5nonzero, Select_GPR_Using_CC_UImm5NonZero >;
1418+
1419+ def : SelectQCbi<SETEQ, simm16nonzero, Select_GPR_Using_CC_SImm16NonZero >;
1420+ def : SelectQCbi<SETNE, simm16nonzero, Select_GPR_Using_CC_SImm16NonZero >;
1421+ def : SelectQCbi<SETLT, simm16nonzero, Select_GPR_Using_CC_SImm16NonZero >;
1422+ def : SelectQCbi<SETGE, simm16nonzero, Select_GPR_Using_CC_SImm16NonZero >;
1423+ def : SelectQCbi<SETULT, uimm16nonzero, Select_GPR_Using_CC_UImm16NonZero >;
1424+ def : SelectQCbi<SETUGE, uimm16nonzero, Select_GPR_Using_CC_UImm16NonZero >;
14351425} // let Predicates = [HasVendorXqcibi, IsRV32], AddedComplexity = 2
14361426
14371427let Predicates = [HasVendorXqcibm, IsRV32] in {
0 commit comments