Skip to content

Commit c9e5b6a

Browse files
authored
[RISCV] Rename VALUrVV/VALUrVX/VALUrVF tablegen clases. NFC (#154989)
Rename them to VMACVV/VX/VF. The 'r' previously meant "reversed" since their operand order is vs1, vs2 where other vector instructions are vs2, vs1. These instructions are also ternary and have a tied register. "MAC" better reflects this property. While doing this I also found a missing earlyclobber in VWMAC_MV_X, but I don't think this has any effect since we use pseudos for regalloc.
1 parent 43f05fb commit c9e5b6a

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

llvm/lib/Target/RISCV/RISCVInstrInfoV.td

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -475,8 +475,8 @@ class VALUmVV<bits<6> funct6, RISCVVFormat opv, string opcodestr>
475475
opcodestr, "$vd, $vs2, $vs1, $vm">;
476476

477477
// op vd, vs1, vs2, vm (reverse the order of vs1 and vs2)
478-
class VALUrVV<bits<6> funct6, RISCVVFormat opv, string opcodestr,
479-
bit EarlyClobber = 0>
478+
class VMACVV<bits<6> funct6, RISCVVFormat opv, string opcodestr,
479+
bit EarlyClobber = 0>
480480
: RVInstVV<funct6, opv, (outs VR:$vd_wb),
481481
(ins VR:$vd, VR:$vs1, VR:$vs2, VMaskOp:$vm),
482482
opcodestr, "$vd, $vs1, $vs2$vm"> {
@@ -505,8 +505,8 @@ class VALUmVX<bits<6> funct6, RISCVVFormat opv, string opcodestr>
505505
opcodestr, "$vd, $vs2, $rs1, $vm">;
506506

507507
// op vd, rs1, vs2, vm (reverse the order of rs1 and vs2)
508-
class VALUrVX<bits<6> funct6, RISCVVFormat opv, string opcodestr,
509-
bit EarlyClobber = 0>
508+
class VMACVX<bits<6> funct6, RISCVVFormat opv, string opcodestr,
509+
bit EarlyClobber = 0>
510510
: RVInstVX<funct6, opv, (outs VR:$vd_wb),
511511
(ins VR:$vd, GPR:$rs1, VR:$vs2, VMaskOp:$vm),
512512
opcodestr, "$vd, $rs1, $vs2$vm"> {
@@ -549,8 +549,8 @@ class VALUVF<bits<6> funct6, RISCVVFormat opv, string opcodestr>
549549
opcodestr, "$vd, $vs2, $rs1$vm">;
550550

551551
// op vd, rs1, vs2, vm (Float) (with mask, reverse the order of rs1 and vs2)
552-
class VALUrVF<bits<6> funct6, RISCVVFormat opv, string opcodestr,
553-
bit EarlyClobber = 0>
552+
class VMACVF<bits<6> funct6, RISCVVFormat opv, string opcodestr,
553+
bit EarlyClobber = 0>
554554
: RVInstVX<funct6, opv, (outs VR:$vd_wb),
555555
(ins VR:$vd, FPR32:$rs1, VR:$vs2, VMaskOp:$vm),
556556
opcodestr, "$vd, $rs1, $vs2$vm"> {
@@ -628,25 +628,25 @@ multiclass VALU_MV_V_X<string opcodestr, bits<6> funct6, string vw> {
628628
}
629629

630630
multiclass VMAC_MV_V_X<string opcodestr, bits<6> funct6> {
631-
def V : VALUrVV<funct6, OPMVV, opcodestr # ".vv">,
631+
def V : VMACVV<funct6, OPMVV, opcodestr # ".vv">,
632632
SchedTernaryMC<"WriteVIMulAddV", "ReadVIMulAddV", "ReadVIMulAddV",
633633
"ReadVIMulAddV">;
634-
def X : VALUrVX<funct6, OPMVX, opcodestr # ".vx">,
634+
def X : VMACVX<funct6, OPMVX, opcodestr # ".vx">,
635635
SchedTernaryMC<"WriteVIMulAddX", "ReadVIMulAddV", "ReadVIMulAddX",
636636
"ReadVIMulAddV">;
637637
}
638638

639639
multiclass VWMAC_MV_X<string opcodestr, bits<6> funct6> {
640640
let RVVConstraint = WidenV in
641-
def X : VALUrVX<funct6, OPMVX, opcodestr # ".vx">,
641+
def X : VMACVX<funct6, OPMVX, opcodestr # ".vx", EarlyClobber=1>,
642642
SchedTernaryMC<"WriteVIWMulAddX", "ReadVIWMulAddV", "ReadVIWMulAddX",
643643
"ReadVIWMulAddV">;
644644
}
645645

646646
multiclass VWMAC_MV_V_X<string opcodestr, bits<6> funct6>
647647
: VWMAC_MV_X<opcodestr, funct6> {
648648
let RVVConstraint = WidenV in
649-
def V : VALUrVV<funct6, OPMVV, opcodestr # ".vv", EarlyClobber=1>,
649+
def V : VMACVV<funct6, OPMVV, opcodestr # ".vv", EarlyClobber=1>,
650650
SchedTernaryMC<"WriteVIWMulAddV", "ReadVIWMulAddV", "ReadVIWMulAddV",
651651
"ReadVIWMulAddV">;
652652
}
@@ -743,20 +743,20 @@ multiclass VWMUL_FV_V_F<string opcodestr, bits<6> funct6> {
743743
}
744744

745745
multiclass VMAC_FV_V_F<string opcodestr, bits<6> funct6> {
746-
def V : VALUrVV<funct6, OPFVV, opcodestr # ".vv">,
746+
def V : VMACVV<funct6, OPFVV, opcodestr # ".vv">,
747747
SchedTernaryMC<"WriteVFMulAddV", "ReadVFMulAddV", "ReadVFMulAddV",
748748
"ReadVFMulAddV">;
749-
def F : VALUrVF<funct6, OPFVF, opcodestr # ".vf">,
749+
def F : VMACVF<funct6, OPFVF, opcodestr # ".vf">,
750750
SchedTernaryMC<"WriteVFMulAddF", "ReadVFMulAddV", "ReadVFMulAddF",
751751
"ReadVFMulAddV">;
752752
}
753753

754754
multiclass VWMAC_FV_V_F<string opcodestr, bits<6> funct6> {
755755
let RVVConstraint = WidenV in {
756-
def V : VALUrVV<funct6, OPFVV, opcodestr # ".vv", EarlyClobber=1>,
756+
def V : VMACVV<funct6, OPFVV, opcodestr # ".vv", EarlyClobber=1>,
757757
SchedTernaryMC<"WriteVFWMulAddV", "ReadVFWMulAddV", "ReadVFWMulAddV",
758758
"ReadVFWMulAddV">;
759-
def F : VALUrVF<funct6, OPFVF, opcodestr # ".vf", EarlyClobber=1>,
759+
def F : VMACVF<funct6, OPFVF, opcodestr # ".vf", EarlyClobber=1>,
760760
SchedTernaryMC<"WriteVFWMulAddF", "ReadVFWMulAddV", "ReadVFWMulAddF",
761761
"ReadVFWMulAddV">;
762762
}

0 commit comments

Comments
 (0)