Lines Matching refs:XLenVT

84   MVT XLenVT = Subtarget.getXLenVT();  in RISCVTargetLowering()  local
87 addRegisterClass(XLenVT, &RISCV::GPRRegClass); in RISCVTargetLowering()
180 setLoadExtAction({ISD::EXTLOAD, ISD::SEXTLOAD, ISD::ZEXTLOAD}, XLenVT, in RISCVTargetLowering()
184 setOperationAction(ISD::DYNAMIC_STACKALLOC, XLenVT, Expand); in RISCVTargetLowering()
187 setOperationAction(ISD::BR_CC, XLenVT, Expand); in RISCVTargetLowering()
189 setOperationAction(ISD::SELECT_CC, XLenVT, Expand); in RISCVTargetLowering()
219 setOperationAction({ISD::MUL, ISD::MULHS, ISD::MULHU}, XLenVT, Expand); in RISCVTargetLowering()
230 XLenVT, Expand); in RISCVTargetLowering()
239 {ISD::SDIVREM, ISD::UDIVREM, ISD::SMUL_LOHI, ISD::UMUL_LOHI}, XLenVT, in RISCVTargetLowering()
242 setOperationAction({ISD::SHL_PARTS, ISD::SRL_PARTS, ISD::SRA_PARTS}, XLenVT, in RISCVTargetLowering()
250 setOperationAction({ISD::ROTL, ISD::ROTR}, XLenVT, Expand); in RISCVTargetLowering()
256 setOperationAction({ISD::BITREVERSE, ISD::BSWAP}, XLenVT, Custom); in RISCVTargetLowering()
268 setOperationAction(ISD::BSWAP, XLenVT, in RISCVTargetLowering()
273 setOperationAction(ISD::BITREVERSE, XLenVT, in RISCVTargetLowering()
278 setOperationAction({ISD::SMIN, ISD::SMAX, ISD::UMIN, ISD::UMAX}, XLenVT, in RISCVTargetLowering()
286 setOperationAction({ISD::CTTZ, ISD::CTLZ, ISD::CTPOP}, XLenVT, Expand); in RISCVTargetLowering()
293 setOperationAction({ISD::FSHL, ISD::FSHR}, XLenVT, Custom); in RISCVTargetLowering()
294 setOperationAction(ISD::SELECT, XLenVT, Legal); in RISCVTargetLowering()
299 setOperationAction(ISD::SELECT, XLenVT, Custom); in RISCVTargetLowering()
381 setOperationAction({ISD::FP_TO_UINT_SAT, ISD::FP_TO_SINT_SAT}, XLenVT, in RISCVTargetLowering()
386 XLenVT, Legal); in RISCVTargetLowering()
388 setOperationAction(ISD::FLT_ROUNDS_, XLenVT, Custom); in RISCVTargetLowering()
394 XLenVT, Custom); in RISCVTargetLowering()
396 setOperationAction(ISD::GlobalTLSAddress, XLenVT, Custom); in RISCVTargetLowering()
423 setOperationAction(ISD::VSCALE, XLenVT, Custom); in RISCVTargetLowering()
1760 MVT XLenVT = Subtarget.getXLenVT(); in getDefaultVLOps() local
1762 ? DAG.getConstant(VecVT.getVectorNumElements(), DL, XLenVT) in getDefaultVLOps()
1763 : DAG.getRegister(RISCV::X0, XLenVT); in getDefaultVLOps()
2078 MVT XLenVT = Subtarget.getXLenVT(); in lowerBUILD_VECTOR() local
2125 SDValue Elt = DAG.getConstant(Bits, DL, XLenVT); in lowerBUILD_VECTOR()
2127 Elt, DAG.getConstant(IntegerEltIdx, DL, XLenVT)); in lowerBUILD_VECTOR()
2141 SDValue Elt = DAG.getConstant(Bits, DL, XLenVT); in lowerBUILD_VECTOR()
2143 DAG.getConstant(IntegerEltIdx, DL, XLenVT)); in lowerBUILD_VECTOR()
2152 DAG.getConstant(0, DL, XLenVT)); in lowerBUILD_VECTOR()
2173 assert(Splat.getValueType() == XLenVT && in lowerBUILD_VECTOR()
2175 Splat = DAG.getNode(ISD::AND, DL, XLenVT, Splat, in lowerBUILD_VECTOR()
2176 DAG.getConstant(1, DL, XLenVT)); in lowerBUILD_VECTOR()
2235 VT, DL, DAG.getConstant(SplatStepVal, DL, XLenVT)); in lowerBUILD_VECTOR()
2240 VT, DL, DAG.getConstant(Log2_64(StepDenominator), DL, XLenVT)); in lowerBUILD_VECTOR()
2245 VT, DL, DAG.getConstant(Addend, DL, XLenVT)); in lowerBUILD_VECTOR()
2293 assert((ViaIntVT.bitsLE(XLenVT) || in lowerBUILD_VECTOR()
2296 if (ViaIntVT.bitsLE(XLenVT) || isInt<32>(SplatValue)) { in lowerBUILD_VECTOR()
2298 DAG.getConstant(ViaVecVT.getVectorNumElements(), DL, XLenVT); in lowerBUILD_VECTOR()
2304 DAG.getConstant(SplatValue, DL, XLenVT), ViaVL); in lowerBUILD_VECTOR()
2370 DAG.getConstant(OpIdx.index(), DL, XLenVT)); in lowerBUILD_VECTOR()
2377 return DAG.getConstant(V == V1, DL, XLenVT); in lowerBUILD_VECTOR()
2453 MVT XLenVT = Subtarget.getXLenVT(); in lowerScalarSplat() local
2456 if (Scalar.getValueType().bitsLE(XLenVT)) { in lowerScalarSplat()
2463 Scalar = DAG.getNode(ExtOpc, DL, XLenVT, Scalar); in lowerScalarSplat()
2473 assert(XLenVT == MVT::i32 && Scalar.getValueType() == MVT::i64 && in lowerScalarSplat()
2478 DAG.getConstant(0, DL, XLenVT), VL); in lowerScalarSplat()
2604 MVT XLenVT = Subtarget.getXLenVT(); in lowerVECTOR_SHUFFLE() local
2640 if (SVT.isInteger() && SVT.bitsGT(XLenVT)) { in lowerVECTOR_SHUFFLE()
2643 DAG.getTargetConstant(Intrinsic::riscv_vlse, DL, XLenVT); in lowerVECTOR_SHUFFLE()
2648 DAG.getRegister(RISCV::X0, XLenVT), in lowerVECTOR_SHUFFLE()
2667 V = DAG.getExtLoad(ISD::SEXTLOAD, DL, XLenVT, Ld->getChain(), NewAddr, in lowerVECTOR_SHUFFLE()
2683 V1, DAG.getConstant(Lane, DL, XLenVT), in lowerVECTOR_SHUFFLE()
2718 DownVL = DAG.getConstant(InvRotate, DL, XLenVT); in lowerVECTOR_SHUFFLE()
2721 DAG.getConstant(Rotation, DL, XLenVT), TrueMask, DownVL); in lowerVECTOR_SHUFFLE()
2725 DAG.getConstant(InvRotate, DL, XLenVT), TrueMask, VL); in lowerVECTOR_SHUFFLE()
2741 DAG.getConstant(0, DL, XLenVT)); in lowerVECTOR_SHUFFLE()
2743 DAG.getConstant(0, DL, XLenVT)); in lowerVECTOR_SHUFFLE()
2782 DAG.getAllOnesConstant(DL, XLenVT)); in lowerVECTOR_SHUFFLE()
2831 MaskVals.push_back(DAG.getConstant(SelectMaskVal, DL, XLenVT)); in lowerVECTOR_SHUFFLE()
2835 ? DAG.getConstant(MaskIndex, DL, XLenVT) in lowerVECTOR_SHUFFLE()
2836 : DAG.getUNDEF(XLenVT)); in lowerVECTOR_SHUFFLE()
2838 IsLHSOrUndefIndex ? DAG.getUNDEF(XLenVT) in lowerVECTOR_SHUFFLE()
2839 : DAG.getConstant(MaskIndex - NumElts, DL, XLenVT)); in lowerVECTOR_SHUFFLE()
2873 if (IndexVT.getScalarType().bitsGT(XLenVT)) { in lowerVECTOR_SHUFFLE()
2895 DAG.getConstant(SplatIndex, DL, XLenVT), TrueMask, in lowerVECTOR_SHUFFLE()
2922 DAG.getConstant(SplatIndex, DL, XLenVT), SelectMask, in lowerVECTOR_SHUFFLE()
3128 MVT XLenVT = Subtarget.getXLenVT(); in LowerOperation() local
3130 SDValue NewOp0 = DAG.getNode(ISD::ANY_EXTEND, DL, XLenVT, Op0); in LowerOperation()
3167 DAG.getConstant(0, DL, XLenVT))); in LowerOperation()
3180 DAG.getConstant(0, DL, XLenVT)); in LowerOperation()
3782 MVT XLenVT = Subtarget.getXLenVT(); in getStaticTLSAddr() local
3801 SDValue TPReg = DAG.getRegister(RISCV::X4, XLenVT); in getStaticTLSAddr()
3817 SDValue TPReg = DAG.getRegister(RISCV::X4, XLenVT); in getStaticTLSAddr()
3889 MVT XLenVT = Subtarget.getXLenVT(); in lowerSELECT() local
3906 if (VT == XLenVT && CondV.getOpcode() == ISD::SETCC && in lowerSELECT()
3907 CondV.getOperand(0).getSimpleValueType() == XLenVT) { in lowerSELECT()
3940 SDValue Zero = DAG.getConstant(0, DL, XLenVT); in lowerSELECT()
3951 MVT XLenVT = Subtarget.getXLenVT(); in lowerBRCOND() local
3954 CondV.getOperand(0).getValueType() == XLenVT) { in lowerBRCOND()
3967 CondV, DAG.getConstant(0, DL, XLenVT), in lowerBRCOND()
4015 MVT XLenVT = Subtarget.getXLenVT(); in lowerRETURNADDR() local
4035 Register Reg = MF.addLiveIn(RI.getRARegister(), getRegClassFor(XLenVT)); in lowerRETURNADDR()
4036 return DAG.getCopyFromReg(DAG.getEntryNode(), DL, Reg, XLenVT); in lowerRETURNADDR()
4146 MVT XLenVT = Subtarget.getXLenVT(); in lowerVectorMaskSplat() local
4147 assert(SplatVal.getValueType() == XLenVT && in lowerVectorMaskSplat()
4150 SplatVal = DAG.getNode(ISD::AND, DL, XLenVT, SplatVal, in lowerVectorMaskSplat()
4151 DAG.getConstant(1, DL, XLenVT)); in lowerVectorMaskSplat()
4235 MVT XLenVT = Subtarget.getXLenVT(); in lowerVectorMaskExt() local
4236 SDValue SplatZero = DAG.getConstant(0, DL, XLenVT); in lowerVectorMaskExt()
4237 SDValue SplatTrueVal = DAG.getConstant(ExtTrueVal, DL, XLenVT); in lowerVectorMaskExt()
4492 MVT XLenVT = Subtarget.getXLenVT(); in lowerINSERT_VECTOR_ELT() local
4494 SDValue Zero = DAG.getConstant(0, DL, XLenVT); in lowerINSERT_VECTOR_ELT()
4529 SDValue One = DAG.getConstant(1, DL, XLenVT); in lowerINSERT_VECTOR_ELT()
4537 SDValue InsertI64VL = DAG.getConstant(2, DL, XLenVT); in lowerINSERT_VECTOR_ELT()
4555 DAG.getNode(ISD::ADD, DL, XLenVT, Idx, DAG.getConstant(1, DL, XLenVT)); in lowerINSERT_VECTOR_ELT()
4574 MVT XLenVT = Subtarget.getXLenVT(); in lowerEXTRACT_VECTOR_ELT() local
4586 std::min(MaxEEW, unsigned(XLenVT.getSizeInBits()))); in lowerEXTRACT_VECTOR_ELT()
4592 ExtractElementIdx = DAG.getConstant(0, DL, XLenVT); in lowerEXTRACT_VECTOR_ELT()
4599 ISD::SRL, DL, XLenVT, Idx, in lowerEXTRACT_VECTOR_ELT()
4600 DAG.getConstant(Log2_64(WideEltVT.getSizeInBits()), DL, XLenVT)); in lowerEXTRACT_VECTOR_ELT()
4603 ISD::AND, DL, XLenVT, Idx, in lowerEXTRACT_VECTOR_ELT()
4604 DAG.getConstant(WideEltVT.getSizeInBits() - 1, DL, XLenVT)); in lowerEXTRACT_VECTOR_ELT()
4608 SDValue ExtractElt = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, DL, XLenVT, in lowerEXTRACT_VECTOR_ELT()
4612 DAG.getNode(ISD::SRL, DL, XLenVT, ExtractElt, ExtractBitIdx); in lowerEXTRACT_VECTOR_ELT()
4613 return DAG.getNode(ISD::AND, DL, XLenVT, ShiftRight, in lowerEXTRACT_VECTOR_ELT()
4614 DAG.getConstant(1, DL, XLenVT)); in lowerEXTRACT_VECTOR_ELT()
4633 SDValue VL = DAG.getConstant(1, DL, XLenVT); in lowerEXTRACT_VECTOR_ELT()
4642 DAG.getConstant(0, DL, XLenVT)); in lowerEXTRACT_VECTOR_ELT()
4645 SDValue Elt0 = DAG.getNode(RISCVISD::VMV_X_S, DL, XLenVT, Vec); in lowerEXTRACT_VECTOR_ELT()
4675 MVT XLenVT = Subtarget.getXLenVT(); in lowerVectorIntrinsicScalars() local
4678 if (!OpVT.isScalarInteger() || OpVT == XLenVT) in lowerVectorIntrinsicScalars()
4682 if (OpVT.bitsLT(XLenVT)) { in lowerVectorIntrinsicScalars()
4689 ScalarOp = DAG.getNode(ExtOpc, DL, XLenVT, ScalarOp); in lowerVectorIntrinsicScalars()
4703 assert(XLenVT == MVT::i32 && OpVT == MVT::i64 && in lowerVectorIntrinsicScalars()
4727 DAG.getConstant(0, DL, XLenVT)); in lowerVectorIntrinsicScalars()
4729 DAG.getConstant(1, DL, XLenVT)); in lowerVectorIntrinsicScalars()
4750 I32VL = DAG.getConstant(2 * AVLInt, DL, XLenVT); in lowerVectorIntrinsicScalars()
4754 SDValue LMUL = DAG.getConstant(Lmul, DL, XLenVT); in lowerVectorIntrinsicScalars()
4756 SDValue SEW = DAG.getConstant(Sew, DL, XLenVT); in lowerVectorIntrinsicScalars()
4759 I32VL = DAG.getNode(ISD::INTRINSIC_WO_CHAIN, DL, XLenVT, SETVLMAX, SEW, in lowerVectorIntrinsicScalars()
4769 SDValue LMUL = DAG.getConstant(Lmul, DL, XLenVT); in lowerVectorIntrinsicScalars()
4771 SDValue SEW = DAG.getConstant(Sew, DL, XLenVT); in lowerVectorIntrinsicScalars()
4776 SDValue VL = DAG.getNode(ISD::INTRINSIC_WO_CHAIN, DL, XLenVT, SETVL, AVL, in lowerVectorIntrinsicScalars()
4779 DAG.getNode(ISD::SHL, DL, XLenVT, VL, DAG.getConstant(1, DL, XLenVT)); in lowerVectorIntrinsicScalars()
4832 assert(VL.getValueType() == XLenVT); in lowerVectorIntrinsicScalars()
4841 MVT XLenVT = Subtarget.getXLenVT(); in LowerINTRINSIC_WO_CHAIN() local
4855 return DAG.getNode(Opc, DL, XLenVT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
4856 DAG.getConstant(7, DL, XLenVT)); in LowerINTRINSIC_WO_CHAIN()
4862 return DAG.getNode(Opc, DL, XLenVT, Op.getOperand(1), Op.getOperand(2)); in LowerINTRINSIC_WO_CHAIN()
4872 return DAG.getNode(Opc, DL, XLenVT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
4873 DAG.getConstant((BitWidth / 2) - 1, DL, XLenVT)); in LowerINTRINSIC_WO_CHAIN()
4879 return DAG.getNode(Opc, DL, XLenVT, Op.getOperand(1), Op.getOperand(2)); in LowerINTRINSIC_WO_CHAIN()
4885 return DAG.getNode(Opc, DL, XLenVT, Op.getOperand(1), Op.getOperand(2)); in LowerINTRINSIC_WO_CHAIN()
4888 return DAG.getNode(RISCVISD::BFP, DL, XLenVT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
4891 return DAG.getNode(RISCVISD::FSL, DL, XLenVT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
4894 return DAG.getNode(RISCVISD::FSR, DL, XLenVT, Op.getOperand(1), in LowerINTRINSIC_WO_CHAIN()
4897 assert(Op.getValueType() == XLenVT && "Unexpected VT!"); in LowerINTRINSIC_WO_CHAIN()
4910 if (Scalar.getValueType().bitsLE(XLenVT)) { in LowerINTRINSIC_WO_CHAIN()
4911 Scalar = DAG.getNode(ISD::ANY_EXTEND, DL, XLenVT, Scalar); in LowerINTRINSIC_WO_CHAIN()
4966 MVT XLenVT = Subtarget.getXLenVT(); in LowerINTRINSIC_W_CHAIN() local
4983 SDValue VL = DAG.getConstant(VT.getVectorNumElements(), DL, XLenVT); in LowerINTRINSIC_W_CHAIN()
4987 XLenVT); in LowerINTRINSIC_W_CHAIN()
5001 SDValue Policy = DAG.getTargetConstant(RISCVII::TAIL_AGNOSTIC, DL, XLenVT); in LowerINTRINSIC_W_CHAIN()
5028 MVT XLenVT = Subtarget.getXLenVT(); in LowerINTRINSIC_W_CHAIN() local
5032 SDValue VL = DAG.getConstant(VT.getVectorNumElements(), DL, XLenVT); in LowerINTRINSIC_W_CHAIN()
5033 SDValue IntID = DAG.getTargetConstant(VlsegInts[NF - 2], DL, XLenVT); in LowerINTRINSIC_W_CHAIN()
5065 MVT XLenVT = Subtarget.getXLenVT(); in LowerINTRINSIC_VOID() local
5082 SDValue VL = DAG.getConstant(VT.getVectorNumElements(), DL, XLenVT); in LowerINTRINSIC_VOID()
5086 XLenVT); in LowerINTRINSIC_VOID()
5151 MVT XLenVT = Subtarget.getXLenVT(); in lowerVectorMaskVecReduction() local
5152 assert(Op.getValueType() == XLenVT && in lowerVectorMaskVecReduction()
5172 SDValue Zero = DAG.getConstant(0, DL, XLenVT); in lowerVectorMaskVecReduction()
5182 Vec = DAG.getNode(RISCVISD::VCPOP_VL, DL, XLenVT, Vec, Mask, VL); in lowerVectorMaskVecReduction()
5190 Vec = DAG.getNode(RISCVISD::VCPOP_VL, DL, XLenVT, Vec, Mask, VL); in lowerVectorMaskVecReduction()
5197 SDValue One = DAG.getConstant(1, DL, XLenVT); in lowerVectorMaskVecReduction()
5198 Vec = DAG.getNode(RISCVISD::VCPOP_VL, DL, XLenVT, Vec, Mask, VL); in lowerVectorMaskVecReduction()
5199 Vec = DAG.getNode(ISD::AND, DL, XLenVT, Vec, One); in lowerVectorMaskVecReduction()
5206 SDValue SetCC = DAG.getSetCC(DL, XLenVT, Vec, Zero, CC); in lowerVectorMaskVecReduction()
5217 return DAG.getNode(BaseOpc, DL, XLenVT, SetCC, Op.getOperand(0)); in lowerVectorMaskVecReduction()
5254 MVT XLenVT = Subtarget.getXLenVT(); in lowerVECREDUCE() local
5262 lowerScalarSplat(SDValue(), NeutralElem, DAG.getConstant(1, DL, XLenVT), in lowerVECREDUCE()
5267 DAG.getConstant(0, DL, XLenVT)); in lowerVECREDUCE()
5319 MVT XLenVT = Subtarget.getXLenVT(); in lowerFPVECREDUCE() local
5325 lowerScalarSplat(SDValue(), ScalarVal, DAG.getConstant(1, DL, XLenVT), in lowerFPVECREDUCE()
5330 DAG.getConstant(0, DL, XLenVT)); in lowerFPVECREDUCE()
5389 MVT XLenVT = Subtarget.getXLenVT(); in lowerVPREDUCE() local
5390 MVT ResVT = !VecVT.isInteger() || VecEltVT.bitsGE(XLenVT) ? VecEltVT : XLenVT; in lowerVPREDUCE()
5393 DAG.getConstant(1, DL, XLenVT), M1VT, in lowerVPREDUCE()
5398 DAG.getConstant(0, DL, XLenVT)); in lowerVPREDUCE()
5412 MVT XLenVT = Subtarget.getXLenVT(); in lowerINSERT_SUBVECTOR() local
5468 DAG.getConstant(0, DL, XLenVT)); in lowerINSERT_SUBVECTOR()
5478 DAG.getConstant(OrigIdx + SubVecVT.getVectorNumElements(), DL, XLenVT); in lowerINSERT_SUBVECTOR()
5479 SDValue SlideupAmt = DAG.getConstant(OrigIdx, DL, XLenVT); in lowerINSERT_SUBVECTOR()
5525 DAG.getConstant(AlignedIdx, DL, XLenVT)); in lowerINSERT_SUBVECTOR()
5528 SDValue SlideupAmt = DAG.getConstant(RemIdx, DL, XLenVT); in lowerINSERT_SUBVECTOR()
5530 SlideupAmt = DAG.getNode(ISD::VSCALE, DL, XLenVT, SlideupAmt); in lowerINSERT_SUBVECTOR()
5536 VL = DAG.getConstant(SubVecVT.getVectorMinNumElements(), DL, XLenVT); in lowerINSERT_SUBVECTOR()
5537 VL = DAG.getNode(ISD::VSCALE, DL, XLenVT, VL); in lowerINSERT_SUBVECTOR()
5538 VL = DAG.getNode(ISD::ADD, DL, XLenVT, SlideupAmt, VL); in lowerINSERT_SUBVECTOR()
5542 DAG.getConstant(0, DL, XLenVT)); in lowerINSERT_SUBVECTOR()
5551 DAG.getConstant(AlignedIdx, DL, XLenVT)); in lowerINSERT_SUBVECTOR()
5565 MVT XLenVT = Subtarget.getXLenVT(); in lowerEXTRACT_SUBVECTOR() local
5625 SDValue VL = DAG.getConstant(SubVecVT.getVectorNumElements(), DL, XLenVT); in lowerEXTRACT_SUBVECTOR()
5626 SDValue SlidedownAmt = DAG.getConstant(OrigIdx, DL, XLenVT); in lowerEXTRACT_SUBVECTOR()
5632 DAG.getConstant(0, DL, XLenVT)); in lowerEXTRACT_SUBVECTOR()
5657 DAG.getConstant(OrigIdx - RemIdx, DL, XLenVT)); in lowerEXTRACT_SUBVECTOR()
5662 SDValue SlidedownAmt = DAG.getConstant(RemIdx, DL, XLenVT); in lowerEXTRACT_SUBVECTOR()
5664 SlidedownAmt = DAG.getNode(ISD::VSCALE, DL, XLenVT, SlidedownAmt); in lowerEXTRACT_SUBVECTOR()
5675 DAG.getConstant(0, DL, XLenVT)); in lowerEXTRACT_SUBVECTOR()
5688 MVT XLenVT = Subtarget.getXLenVT(); in lowerSTEP_VECTOR() local
5697 DAG.getConstant(Log2_64(StepValImm), DL, XLenVT)); in lowerSTEP_VECTOR()
5764 MVT XLenVT = Subtarget.getXLenVT(); in lowerVECTOR_REVERSE() local
5770 SDValue VLMax = DAG.getNode(ISD::VSCALE, DL, XLenVT, in lowerVECTOR_REVERSE()
5771 DAG.getConstant(MinElts, DL, XLenVT)); in lowerVECTOR_REVERSE()
5773 DAG.getNode(ISD::SUB, DL, XLenVT, VLMax, DAG.getConstant(1, DL, XLenVT)); in lowerVECTOR_REVERSE()
5783 VLMinus1, DAG.getRegister(RISCV::X0, XLenVT)); in lowerVECTOR_REVERSE()
5798 MVT XLenVT = Subtarget.getXLenVT(); in lowerVECTOR_SPLICE() local
5802 SDValue VLMax = DAG.getNode(ISD::VSCALE, DL, XLenVT, in lowerVECTOR_SPLICE()
5803 DAG.getConstant(MinElts, DL, XLenVT)); in lowerVECTOR_SPLICE()
5810 DownOffset = DAG.getConstant(ImmValue, DL, XLenVT); in lowerVECTOR_SPLICE()
5811 UpOffset = DAG.getNode(ISD::SUB, DL, XLenVT, VLMax, DownOffset); in lowerVECTOR_SPLICE()
5815 UpOffset = DAG.getConstant(-ImmValue, DL, XLenVT); in lowerVECTOR_SPLICE()
5816 DownOffset = DAG.getNode(ISD::SUB, DL, XLenVT, VLMax, UpOffset); in lowerVECTOR_SPLICE()
5825 TrueMask, DAG.getRegister(RISCV::X0, XLenVT)); in lowerVECTOR_SPLICE()
5840 MVT XLenVT = Subtarget.getXLenVT(); in lowerFixedLengthVectorLoadToRVV() local
5843 SDValue VL = DAG.getConstant(VT.getVectorNumElements(), DL, XLenVT); in lowerFixedLengthVectorLoadToRVV()
5847 IsMaskOp ? Intrinsic::riscv_vlm : Intrinsic::riscv_vle, DL, XLenVT); in lowerFixedLengthVectorLoadToRVV()
5875 MVT XLenVT = Subtarget.getXLenVT(); in lowerFixedLengthVectorStoreToRVV() local
5887 SDValue VL = DAG.getConstant(VT.getVectorNumElements(), DL, XLenVT); in lowerFixedLengthVectorStoreToRVV()
5894 IsMaskOp ? Intrinsic::riscv_vsm : Intrinsic::riscv_vse, DL, XLenVT); in lowerFixedLengthVectorStoreToRVV()
5925 MVT XLenVT = Subtarget.getXLenVT(); in lowerMaskedLoad() local
5942 SmallVector<SDValue, 8> Ops{Chain, DAG.getTargetConstant(IntID, DL, XLenVT)}; in lowerMaskedLoad()
5952 Ops.push_back(DAG.getTargetConstant(RISCVII::TAIL_AGNOSTIC, DL, XLenVT)); in lowerMaskedLoad()
5990 MVT XLenVT = Subtarget.getXLenVT(); in lowerMaskedStore() local
6008 SmallVector<SDValue, 8> Ops{Chain, DAG.getTargetConstant(IntID, DL, XLenVT)}; in lowerMaskedStore()
6228 MVT XLenVT = Subtarget.getXLenVT(); in lowerVPExtMaskOp() local
6229 SDValue Zero = DAG.getConstant(0, DL, XLenVT); in lowerVPExtMaskOp()
6234 Op.getOpcode() == ISD::VP_ZERO_EXTEND ? 1 : -1, DL, XLenVT); in lowerVPExtMaskOp()
6359 MVT XLenVT = Subtarget.getXLenVT(); in lowerVPFPIntConvOp() local
6360 SDValue Zero = DAG.getConstant(0, DL, XLenVT); in lowerVPFPIntConvOp()
6364 RISCVISDExtOpc == RISCVISD::VZEXT_VL ? 1 : -1, DL, XLenVT); in lowerVPFPIntConvOp()
6427 MVT XLenVT = Subtarget.getXLenVT(); in lowerVPFPIntConvOp() local
6428 SDValue SplatZero = DAG.getConstant(0, DL, XLenVT); in lowerVPFPIntConvOp()
6521 MVT XLenVT = Subtarget.getXLenVT(); in lowerMaskedGather() local
6525 assert(BasePtr.getSimpleValueType() == XLenVT && "Unexpected pointer type"); in lowerMaskedGather()
6553 if (XLenVT == MVT::i32 && IndexVT.getVectorElementType().bitsGT(XLenVT)) { in lowerMaskedGather()
6554 IndexVT = IndexVT.changeVectorElementType(XLenVT); in lowerMaskedGather()
6563 SmallVector<SDValue, 8> Ops{Chain, DAG.getTargetConstant(IntID, DL, XLenVT)}; in lowerMaskedGather()
6574 Ops.push_back(DAG.getTargetConstant(RISCVII::TAIL_AGNOSTIC, DL, XLenVT)); in lowerMaskedGather()
6623 MVT XLenVT = Subtarget.getXLenVT(); in lowerMaskedScatter() local
6627 assert(BasePtr.getSimpleValueType() == XLenVT && "Unexpected pointer type"); in lowerMaskedScatter()
6655 if (XLenVT == MVT::i32 && IndexVT.getVectorElementType().bitsGT(XLenVT)) { in lowerMaskedScatter()
6656 IndexVT = IndexVT.changeVectorElementType(XLenVT); in lowerMaskedScatter()
6665 SmallVector<SDValue, 8> Ops{Chain, DAG.getTargetConstant(IntID, DL, XLenVT)}; in lowerMaskedScatter()
6679 const MVT XLenVT = Subtarget.getXLenVT(); in lowerGET_ROUNDING() local
6683 RISCVSysReg::lookupSysRegByName("FRM")->Encoding, DL, XLenVT); in lowerGET_ROUNDING()
6684 SDVTList VTs = DAG.getVTList(XLenVT, MVT::Other); in lowerGET_ROUNDING()
6699 DAG.getNode(ISD::SHL, DL, XLenVT, RM, DAG.getConstant(2, DL, XLenVT)); in lowerGET_ROUNDING()
6700 SDValue Shifted = DAG.getNode(ISD::SRL, DL, XLenVT, in lowerGET_ROUNDING()
6701 DAG.getConstant(Table, DL, XLenVT), Shift); in lowerGET_ROUNDING()
6702 SDValue Masked = DAG.getNode(ISD::AND, DL, XLenVT, Shifted, in lowerGET_ROUNDING()
6703 DAG.getConstant(7, DL, XLenVT)); in lowerGET_ROUNDING()
6710 const MVT XLenVT = Subtarget.getXLenVT(); in lowerSET_ROUNDING() local
6715 RISCVSysReg::lookupSysRegByName("FRM")->Encoding, DL, XLenVT); in lowerSET_ROUNDING()
6728 SDValue Shift = DAG.getNode(ISD::SHL, DL, XLenVT, RMValue, in lowerSET_ROUNDING()
6729 DAG.getConstant(2, DL, XLenVT)); in lowerSET_ROUNDING()
6730 SDValue Shifted = DAG.getNode(ISD::SRL, DL, XLenVT, in lowerSET_ROUNDING()
6731 DAG.getConstant(Table, DL, XLenVT), Shift); in lowerSET_ROUNDING()
6732 RMValue = DAG.getNode(ISD::AND, DL, XLenVT, Shifted, in lowerSET_ROUNDING()
6733 DAG.getConstant(0x7, DL, XLenVT)); in lowerSET_ROUNDING()
6924 MVT XLenVT = Subtarget.getXLenVT(); in ReplaceNodeResults() local
6925 S = DAG.getNode(ISD::TRUNCATE, DL, XLenVT, S); in ReplaceNodeResults()
6926 U = DAG.getNode(ISD::TRUNCATE, DL, XLenVT, U); in ReplaceNodeResults()
6927 SDValue Lo = DAG.getNode(ISD::MUL, DL, XLenVT, S, U); in ReplaceNodeResults()
6928 SDValue Hi = DAG.getNode(RISCVISD::MULHSU, DL, XLenVT, S, U); in ReplaceNodeResults()
7117 MVT XLenVT = Subtarget.getXLenVT(); in ReplaceNodeResults() local
7119 SDValue FPConv = DAG.getNode(RISCVISD::FMV_X_ANYEXTH, DL, XLenVT, Op0); in ReplaceNodeResults()
7136 DAG.getConstant(0, DL, XLenVT))); in ReplaceNodeResults()
7145 MVT XLenVT = Subtarget.getXLenVT(); in ReplaceNodeResults() local
7153 SDValue NewOp0 = DAG.getNode(ISD::ANY_EXTEND, DL, XLenVT, N->getOperand(0)); in ReplaceNodeResults()
7155 DAG.getNode(ISD::ZERO_EXTEND, DL, XLenVT, N->getOperand(1)); in ReplaceNodeResults()
7156 SDValue NewRes = DAG.getNode(N->getOpcode(), DL, XLenVT, NewOp0, NewOp1); in ReplaceNodeResults()
7165 MVT XLenVT = Subtarget.getXLenVT(); in ReplaceNodeResults() local
7169 SDValue NewOp0 = DAG.getNode(ISD::ANY_EXTEND, DL, XLenVT, N->getOperand(0)); in ReplaceNodeResults()
7174 SDValue GREVI = DAG.getNode(RISCVISD::GREV, DL, XLenVT, NewOp0, in ReplaceNodeResults()
7175 DAG.getConstant(Imm, DL, XLenVT)); in ReplaceNodeResults()
7238 MVT XLenVT = Subtarget.getXLenVT(); in ReplaceNodeResults() local
7241 SDValue VL = DAG.getConstant(1, DL, XLenVT); in ReplaceNodeResults()
7252 SDValue EltLo = DAG.getNode(RISCVISD::VMV_X_S, DL, XLenVT, Vec); in ReplaceNodeResults()
7258 DAG.getConstant(32, DL, XLenVT), VL); in ReplaceNodeResults()
7262 SDValue EltHi = DAG.getNode(RISCVISD::VMV_X_S, DL, XLenVT, LShr32); in ReplaceNodeResults()
7340 MVT XLenVT = Subtarget.getXLenVT(); in ReplaceNodeResults() local
7341 if (VT.bitsLT(XLenVT)) { in ReplaceNodeResults()
7357 SDValue EltLo = DAG.getNode(RISCVISD::VMV_X_S, DL, XLenVT, Vec); in ReplaceNodeResults()
7361 SDValue VL = DAG.getConstant(1, DL, XLenVT); in ReplaceNodeResults()
7366 DAG.getConstant(32, DL, XLenVT), VL); in ReplaceNodeResults()
7369 SDValue EltHi = DAG.getNode(RISCVISD::VMV_X_S, DL, XLenVT, LShr32); in ReplaceNodeResults()
8507 MVT XLenVT = Subtarget.getXLenVT(); in performFP_TO_INTCombine() local
8512 if (VT != MVT::i32 && VT != XLenVT) in performFP_TO_INTCombine()
8532 if (VT == XLenVT) in performFP_TO_INTCombine()
8538 SDValue FpToInt = DAG.getNode(Opc, DL, XLenVT, Src.getOperand(0), in performFP_TO_INTCombine()
8539 DAG.getTargetConstant(FRM, DL, XLenVT)); in performFP_TO_INTCombine()
8554 MVT XLenVT = Subtarget.getXLenVT(); in performFP_TO_INT_SATCombine() local
8559 if (DstVT != XLenVT) in performFP_TO_INT_SATCombine()
8592 SDValue FpToInt = DAG.getNode(Opc, DL, XLenVT, Src, in performFP_TO_INT_SATCombine()
8593 DAG.getTargetConstant(FRM, DL, XLenVT)); in performFP_TO_INT_SATCombine()
9144 MVT XLenVT = Subtarget.getXLenVT(); in PerformDAGCombine() local
9149 (IsIndexSigned && IndexVT.getVectorElementType().bitsLT(XLenVT)); in PerformDAGCombine()
9159 if (IndexVT.getVectorElementType().bitsLT(XLenVT)) { in PerformDAGCombine()
9160 IndexVT = IndexVT.changeVectorElementType(XLenVT); in PerformDAGCombine()
10352 MVT XLenVT = XLen == 32 ? MVT::i32 : MVT::i64; in CC_RISCV() local
10394 LocVT = XLenVT; in CC_RISCV()
10456 LocVT = XLenVT; in CC_RISCV()
10503 LocVT = XLenVT; in CC_RISCV()
10506 LocVT = XLenVT; in CC_RISCV()
10542 assert((!UseGPRForF16_F32 || !UseGPRForF64 || LocVT == XLenVT || in CC_RISCV()
10955 MVT XLenVT = Subtarget.getXLenVT(); in LowerFormalArguments() local
10999 Offset = DAG.getNode(ISD::VSCALE, DL, XLenVT, Offset); in LowerFormalArguments()
11052 SDValue ArgValue = DAG.getCopyFromReg(Chain, DL, Reg, XLenVT); in LowerFormalArguments()
11168 MVT XLenVT = Subtarget.getXLenVT(); in LowerCall() local
11210 SDValue SizeNode = DAG.getConstant(Size, DL, XLenVT); in LowerCall()
11289 Offset = DAG.getNode(ISD::VSCALE, DL, XLenVT, Offset); in LowerCall()