diff --git a/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td b/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td index 6be41cf1a1dca..4b93a3763829c 100644 --- a/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td +++ b/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td @@ -412,9 +412,9 @@ def RISCVVIntrinsicsTable : GenericTable { let PrimaryKeyName = "getRISCVVIntrinsicInfo"; } -class RISCVZvlsseg S, bits<3> L, bits<3> IL = V_M1.value> { +class RISCVZvlsseg S, bits<3> L, bits<3> IL = V_M1.value> { Intrinsic IntrinsicID = !cast(IntrName); - bits<11> SEW = S; + bits<7> SEW = S; bits<3> LMUL = L; bits<3> IndexLMUL = IL; Pseudo Pseudo = !cast(NAME); @@ -1003,7 +1003,7 @@ multiclass VPseudoAMO { defm "EI" # eew : VPseudoAMOEI; } -class VPseudoUSSegLoadNoMask EEW>: +class VPseudoUSSegLoadNoMask EEW>: Pseudo<(outs RetClass:$rd), (ins GPR:$rs1, GPR:$vl, ixlenimm:$sew),[]>, RISCVVPseudo, @@ -1019,7 +1019,7 @@ class VPseudoUSSegLoadNoMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoUSSegLoadMask EEW>: +class VPseudoUSSegLoadMask EEW>: Pseudo<(outs GetVRegNoV0.R:$rd), (ins GetVRegNoV0.R:$merge, GPR:$rs1, VMaskOp:$vm, GPR:$vl, ixlenimm:$sew),[]>, @@ -1037,7 +1037,7 @@ class VPseudoUSSegLoadMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoSSegLoadNoMask EEW>: +class VPseudoSSegLoadNoMask EEW>: Pseudo<(outs RetClass:$rd), (ins GPR:$rs1, GPR:$offset, GPR:$vl, ixlenimm:$sew),[]>, RISCVVPseudo, @@ -1053,7 +1053,7 @@ class VPseudoSSegLoadNoMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoSSegLoadMask EEW>: +class VPseudoSSegLoadMask EEW>: Pseudo<(outs GetVRegNoV0.R:$rd), (ins GetVRegNoV0.R:$merge, GPR:$rs1, GPR:$offset, VMaskOp:$vm, GPR:$vl, ixlenimm:$sew),[]>, @@ -1071,7 +1071,7 @@ class VPseudoSSegLoadMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoISegLoadNoMask EEW, bits<3> LMUL>: +class VPseudoISegLoadNoMask EEW, bits<3> LMUL>: Pseudo<(outs RetClass:$rd), (ins GPR:$rs1, IdxClass:$offset, GPR:$vl, ixlenimm:$sew),[]>, RISCVVPseudo, @@ -1090,7 +1090,7 @@ class VPseudoISegLoadNoMask EEW, bits<3> let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoISegLoadMask EEW, bits<3> LMUL>: +class VPseudoISegLoadMask EEW, bits<3> LMUL>: Pseudo<(outs GetVRegNoV0.R:$rd), (ins GetVRegNoV0.R:$merge, GPR:$rs1, IdxClass:$offset, VMaskOp:$vm, GPR:$vl, ixlenimm:$sew),[]>, @@ -1110,7 +1110,7 @@ class VPseudoISegLoadMask EEW, bits<3> LM let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoUSSegStoreNoMask EEW>: +class VPseudoUSSegStoreNoMask EEW>: Pseudo<(outs), (ins ValClass:$rd, GPR:$rs1, GPR:$vl, ixlenimm:$sew),[]>, RISCVVPseudo, @@ -1126,7 +1126,7 @@ class VPseudoUSSegStoreNoMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoUSSegStoreMask EEW>: +class VPseudoUSSegStoreMask EEW>: Pseudo<(outs), (ins ValClass:$rd, GPR:$rs1, VMaskOp:$vm, GPR:$vl, ixlenimm:$sew),[]>, @@ -1142,7 +1142,7 @@ class VPseudoUSSegStoreMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoSSegStoreNoMask EEW>: +class VPseudoSSegStoreNoMask EEW>: Pseudo<(outs), (ins ValClass:$rd, GPR:$rs1, GPR: $offset, GPR:$vl, ixlenimm:$sew),[]>, RISCVVPseudo, @@ -1158,7 +1158,7 @@ class VPseudoSSegStoreNoMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoSSegStoreMask EEW>: +class VPseudoSSegStoreMask EEW>: Pseudo<(outs), (ins ValClass:$rd, GPR:$rs1, GPR: $offset, VMaskOp:$vm, GPR:$vl, ixlenimm:$sew),[]>, @@ -1174,7 +1174,7 @@ class VPseudoSSegStoreMask EEW>: let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoISegStoreNoMask EEW, bits<3> LMUL>: +class VPseudoISegStoreNoMask EEW, bits<3> LMUL>: Pseudo<(outs), (ins ValClass:$rd, GPR:$rs1, IdxClass: $index, GPR:$vl, ixlenimm:$sew),[]>, @@ -1191,7 +1191,7 @@ class VPseudoISegStoreNoMask EEW, bits<3> let BaseInstr = !cast(PseudoToVInst.VInst); } -class VPseudoISegStoreMask EEW, bits<3> LMUL>: +class VPseudoISegStoreMask EEW, bits<3> LMUL>: Pseudo<(outs), (ins ValClass:$rd, GPR:$rs1, IdxClass: $index, VMaskOp:$vm, GPR:$vl, ixlenimm:$sew),[]>,