[llvm] 06e12b4 - [RISCV] Add TargetConstraintType=2 to vnclip pseudoinstructions. NFC
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 7 15:23:35 PDT 2024
Author: Craig Topper
Date: 2024-06-07T15:18:13-07:00
New Revision: 06e12b44cd0fb89058f8b5365184a2f5bbba498d
URL: https://github.com/llvm/llvm-project/commit/06e12b44cd0fb89058f8b5365184a2f5bbba498d
DIFF: https://github.com/llvm/llvm-project/commit/06e12b44cd0fb89058f8b5365184a2f5bbba498d.diff
LOG: [RISCV] Add TargetConstraintType=2 to vnclip pseudoinstructions. NFC
These instructions are very similar to narrowing shift instructions
which already have this.
Remove TargetConstraintType parameter from VPseudoBinaryV_WV
class. Only 2 was ever passed to it. Pass 2 directly to the classes
instantiated from VPseudoBinaryV_WV instead.
Added:
Modified:
llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Removed:
################################################################################
diff --git a/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td b/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
index fe4d839e4fdcb..b47ba21725da6 100644
--- a/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
+++ b/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
@@ -2422,37 +2422,43 @@ multiclass VPseudoBinaryW_WF_RM<LMULInfo m, FPR_Info f, int sew = 0> {
// exception from the spec.
// "The destination EEW is smaller than the source EEW and the overlap is in the
// lowest-numbered part of the source register group."
-multiclass VPseudoBinaryV_WV<LMULInfo m, int TargetConstraintType = 1> {
+multiclass VPseudoBinaryV_WV<LMULInfo m> {
defm _WV : VPseudoBinary<m.vrclass, m.wvrclass, m.vrclass, m,
- !if(!ge(m.octuple, 8), "@earlyclobber $rd", ""), TargetConstraintType=TargetConstraintType>;
+ !if(!ge(m.octuple, 8), "@earlyclobber $rd", ""),
+ TargetConstraintType=2>;
}
multiclass VPseudoBinaryV_WV_RM<LMULInfo m> {
defm _WV : VPseudoBinaryRoundingMode<m.vrclass, m.wvrclass, m.vrclass, m,
!if(!ge(m.octuple, 8),
- "@earlyclobber $rd", "")>;
+ "@earlyclobber $rd", ""),
+ TargetConstraintType=2>;
}
-multiclass VPseudoBinaryV_WX<LMULInfo m, int TargetConstraintType = 1> {
+multiclass VPseudoBinaryV_WX<LMULInfo m> {
defm _WX : VPseudoBinary<m.vrclass, m.wvrclass, GPR, m,
- !if(!ge(m.octuple, 8), "@earlyclobber $rd", ""), TargetConstraintType=TargetConstraintType>;
+ !if(!ge(m.octuple, 8), "@earlyclobber $rd", ""),
+ TargetConstraintType=2>;
}
multiclass VPseudoBinaryV_WX_RM<LMULInfo m> {
defm _WX : VPseudoBinaryRoundingMode<m.vrclass, m.wvrclass, GPR, m,
!if(!ge(m.octuple, 8),
- "@earlyclobber $rd", "")>;
+ "@earlyclobber $rd", ""),
+ TargetConstraintType=2>;
}
-multiclass VPseudoBinaryV_WI<LMULInfo m, int TargetConstraintType = 1> {
+multiclass VPseudoBinaryV_WI<LMULInfo m> {
defm _WI : VPseudoBinary<m.vrclass, m.wvrclass, uimm5, m,
- !if(!ge(m.octuple, 8), "@earlyclobber $rd", ""), TargetConstraintType=TargetConstraintType>;
+ !if(!ge(m.octuple, 8), "@earlyclobber $rd", ""),
+ TargetConstraintType=2>;
}
multiclass VPseudoBinaryV_WI_RM<LMULInfo m> {
defm _WI : VPseudoBinaryRoundingMode<m.vrclass, m.wvrclass, uimm5, m,
!if(!ge(m.octuple, 8),
- "@earlyclobber $rd", "")>;
+ "@earlyclobber $rd", ""),
+ TargetConstraintType=2>;
}
// For vadc and vsbc, the instruction encoding is reserved if the destination
@@ -3195,13 +3201,13 @@ multiclass VPseudoVNCLP_WV_WX_WI_RM {
multiclass VPseudoVNSHT_WV_WX_WI {
foreach m = MxListW in {
defvar mx = m.MX;
- defm "" : VPseudoBinaryV_WV<m, TargetConstraintType=2>,
+ defm "" : VPseudoBinaryV_WV<m>,
SchedBinary<"WriteVNShiftV", "ReadVNShiftV", "ReadVNShiftV", mx,
forceMergeOpRead=true>;
- defm "" : VPseudoBinaryV_WX<m, TargetConstraintType=2>,
+ defm "" : VPseudoBinaryV_WX<m>,
SchedBinary<"WriteVNShiftX", "ReadVNShiftV", "ReadVNShiftX", mx,
forceMergeOpRead=true>;
- defm "" : VPseudoBinaryV_WI<m, TargetConstraintType=2>,
+ defm "" : VPseudoBinaryV_WI<m>,
SchedUnary<"WriteVNShiftI", "ReadVNShiftV", mx,
forceMergeOpRead=true>;
}
More information about the llvm-commits
mailing list