@@ -1308,9 +1308,9 @@ class QCIMVCCPat<CondCode Cond, QCIMVCC Inst>
1308
1308
: Pat<(select (XLenVT (setcc (XLenVT GPRNoX0:$rs1), (XLenVT GPRNoX0:$rs2), Cond)), (XLenVT GPRNoX0:$rs3), (XLenVT GPRNoX0:$rd)),
1309
1309
(Inst GPRNoX0:$rd, GPRNoX0:$rs1, GPRNoX0:$rs2, GPRNoX0:$rs3)>;
1310
1310
1311
- class QCIMVCCIPat<CondCode Cond, QCIMVCCI Inst>
1312
- : Pat<(select (XLenVT (setcc (XLenVT GPRNoX0:$rs1), simm5 :$imm, Cond)), (XLenVT GPRNoX0:$rs3), (XLenVT GPRNoX0:$rd)),
1313
- (Inst GPRNoX0:$rd, GPRNoX0:$rs1, simm5 :$imm, GPRNoX0:$rs3)>;
1311
+ class QCIMVCCIPat<CondCode Cond, QCIMVCCI Inst, DAGOperand InTyImm >
1312
+ : Pat<(select (XLenVT (setcc (XLenVT GPRNoX0:$rs1), InTyImm :$imm, Cond)), (XLenVT GPRNoX0:$rs3), (XLenVT GPRNoX0:$rd)),
1313
+ (Inst GPRNoX0:$rd, GPRNoX0:$rs1, InTyImm :$imm, GPRNoX0:$rs3)>;
1314
1314
1315
1315
// Match `riscv_brcc` and lower to the appropriate XQCIBI branch instruction.
1316
1316
class BcciPat<CondCode Cond, QCIBranchInst_rii Inst, DAGOperand InTyImm>
@@ -1455,10 +1455,10 @@ def : QCIMVCCPat <SETNE, QC_MVNE>;
1455
1455
def : QCIMVCCPat <SETLT, QC_MVLT>;
1456
1456
def : QCIMVCCPat <SETULT, QC_MVLTU>;
1457
1457
1458
- def : QCIMVCCIPat <SETEQ, QC_MVEQI>;
1459
- def : QCIMVCCIPat <SETNE, QC_MVNEI>;
1460
- def : QCIMVCCIPat <SETLT, QC_MVLTI>;
1461
- def : QCIMVCCIPat <SETULT, QC_MVLTUI>;
1458
+ def : QCIMVCCIPat <SETEQ, QC_MVEQI, simm5 >;
1459
+ def : QCIMVCCIPat <SETNE, QC_MVNEI, simm5 >;
1460
+ def : QCIMVCCIPat <SETLT, QC_MVLTI, simm5 >;
1461
+ def : QCIMVCCIPat <SETULT, QC_MVLTUI, uimm5 >;
1462
1462
}
1463
1463
1464
1464
//===----------------------------------------------------------------------===/i
0 commit comments