Skip to content

Commit 82ffdf3

Browse files
committed
[RISCV] Swap rs1 and rs2 names in TH_ADDSL patterns. NFC
The names should match the operand order of the final instruction. I assume these patterns were somewhat copied from Zba where rs1 is shifted, but for th.addsl, rs2 is shifted.
1 parent c557ce9 commit 82ffdf3

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -538,16 +538,16 @@ multiclass VPatTernaryVMAQA_VV_VX<string intrinsic, string instruction,
538538
let Predicates = [HasVendorXTHeadBa] in {
539539
def : Pat<(add_like_non_imm12 (shl GPR:$rs2, uimm2:$uimm2), (XLenVT GPR:$rs1)),
540540
(TH_ADDSL GPR:$rs1, GPR:$rs2, uimm2:$uimm2)>;
541-
def : Pat<(XLenVT (riscv_shl_add GPR:$rs1, uimm2:$uimm2, GPR:$rs2)),
542-
(TH_ADDSL GPR:$rs2, GPR:$rs1, uimm2:$uimm2)>;
541+
def : Pat<(XLenVT (riscv_shl_add GPR:$rs2, uimm2:$uimm2, GPR:$rs1)),
542+
(TH_ADDSL GPR:$rs1, GPR:$rs2, uimm2:$uimm2)>;
543543

544544
// Reuse complex patterns from StdExtZba
545-
def : Pat<(add_like_non_imm12 sh1add_op:$rs1, (XLenVT GPR:$rs2)),
546-
(TH_ADDSL GPR:$rs2, sh1add_op:$rs1, 1)>;
547-
def : Pat<(add_like_non_imm12 sh2add_op:$rs1, (XLenVT GPR:$rs2)),
548-
(TH_ADDSL GPR:$rs2, sh2add_op:$rs1, 2)>;
549-
def : Pat<(add_like_non_imm12 sh3add_op:$rs1, (XLenVT GPR:$rs2)),
550-
(TH_ADDSL GPR:$rs2, sh3add_op:$rs1, 3)>;
545+
def : Pat<(add_like_non_imm12 sh1add_op:$rs2, (XLenVT GPR:$rs1)),
546+
(TH_ADDSL GPR:$rs1, sh1add_op:$rs2, 1)>;
547+
def : Pat<(add_like_non_imm12 sh2add_op:$rs2, (XLenVT GPR:$rs1)),
548+
(TH_ADDSL GPR:$rs1, sh2add_op:$rs2, 2)>;
549+
def : Pat<(add_like_non_imm12 sh3add_op:$rs2, (XLenVT GPR:$rs1)),
550+
(TH_ADDSL GPR:$rs1, sh3add_op:$rs2, 3)>;
551551

552552
def : Pat<(add_like (XLenVT GPR:$r), CSImm12MulBy4:$i),
553553
(TH_ADDSL GPR:$r, (XLenVT (ADDI (XLenVT X0), CSImm12MulBy4:$i)), 2)>;

0 commit comments

Comments
 (0)