Lines Matching refs:VT

59       MVT VT = N->getSimpleValueType(0);  in PreprocessISelDAG()  local
61 VT.isInteger() ? RISCVISD::VMV_V_X_VL : RISCVISD::VFMV_V_F_VL; in PreprocessISelDAG()
64 Result = CurDAG->getNode(Opc, DL, VT, CurDAG->getUNDEF(VT), in PreprocessISelDAG()
73 MVT VT = N->getSimpleValueType(0); in PreprocessISelDAG() local
78 assert(VT.getVectorElementType() == MVT::i64 && VT.isScalableVector() && in PreprocessISelDAG()
104 SDVTList VTs = CurDAG->getVTList({VT, MVT::Other}); in PreprocessISelDAG()
158 static SDNode *selectImmSeq(SelectionDAG *CurDAG, const SDLoc &DL, const MVT VT, in selectImmSeq() argument
161 SDValue SrcReg = CurDAG->getRegister(RISCV::X0, VT); in selectImmSeq()
163 SDValue SDImm = CurDAG->getTargetConstant(Inst.Imm, DL, VT); in selectImmSeq()
166 Result = CurDAG->getMachineNode(Inst.Opc, DL, VT, SDImm); in selectImmSeq()
169 Result = CurDAG->getMachineNode(Inst.Opc, DL, VT, SrcReg, in selectImmSeq()
170 CurDAG->getRegister(RISCV::X0, VT)); in selectImmSeq()
173 Result = CurDAG->getMachineNode(Inst.Opc, DL, VT, SrcReg, SrcReg); in selectImmSeq()
176 Result = CurDAG->getMachineNode(Inst.Opc, DL, VT, SrcReg, SDImm); in selectImmSeq()
187 static SDNode *selectImm(SelectionDAG *CurDAG, const SDLoc &DL, const MVT VT, in selectImm() argument
192 return selectImmSeq(CurDAG, DL, VT, Seq); in selectImm()
300 MVT VT = Node->getSimpleValueType(0); in selectVLSEG() local
301 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in selectVLSEG()
302 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in selectVLSEG()
330 unsigned SubRegIdx = RISCVTargetLowering::getSubregIndexByMVT(VT, I); in selectVLSEG()
332 CurDAG->getTargetExtractSubreg(SubRegIdx, DL, VT, SuperReg)); in selectVLSEG()
342 MVT VT = Node->getSimpleValueType(0); in selectVLSEGFF() local
344 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in selectVLSEGFF()
345 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in selectVLSEGFF()
374 unsigned SubRegIdx = RISCVTargetLowering::getSubregIndexByMVT(VT, I); in selectVLSEGFF()
376 CurDAG->getTargetExtractSubreg(SubRegIdx, DL, VT, SuperReg)); in selectVLSEGFF()
388 MVT VT = Node->getSimpleValueType(0); in selectVLXSEG() local
389 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in selectVLXSEG()
390 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in selectVLXSEG()
409 assert(VT.getVectorElementCount() == IndexVT.getVectorElementCount() && in selectVLXSEG()
429 unsigned SubRegIdx = RISCVTargetLowering::getSubregIndexByMVT(VT, I); in selectVLXSEG()
431 CurDAG->getTargetExtractSubreg(SubRegIdx, DL, VT, SuperReg)); in selectVLXSEG()
446 MVT VT = Node->getOperand(2)->getSimpleValueType(0); in selectVSSEG() local
447 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in selectVSSEG()
448 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in selectVSSEG()
476 MVT VT = Node->getOperand(2)->getSimpleValueType(0); in selectVSXSEG() local
477 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in selectVSXSEG()
478 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in selectVSXSEG()
491 assert(VT.getVectorElementCount() == IndexVT.getVectorElementCount() && in selectVSXSEG()
595 MVT VT = Node->getSimpleValueType(0); in Select() local
600 if (VT == XLenVT && ConstNode->isZero()) { in Select()
617 ReplaceNode(Node, selectImm(CurDAG, DL, VT, Imm, *Subtarget)); in Select()
639 RISCV::SRLIW, DL, VT, N0->getOperand(0), in Select()
640 CurDAG->getTargetConstant(TrailingZeros, DL, VT)); in Select()
642 RISCV::SLLI, DL, VT, SDValue(SRLIW, 0), in Select()
643 CurDAG->getTargetConstant(TrailingZeros + ShAmt, DL, VT)); in Select()
669 RISCV::SRLIW, DL, VT, N0->getOperand(0), in Select()
670 CurDAG->getTargetConstant(TrailingZeros, DL, VT)); in Select()
672 RISCV::SLLI, DL, VT, SDValue(SRLIW, 0), in Select()
673 CurDAG->getTargetConstant(TrailingZeros - ShAmt, DL, VT)); in Select()
696 CurDAG->getMachineNode(RISCV::BEXTI, DL, VT, N0->getOperand(0), in Select()
697 CurDAG->getTargetConstant(ShAmt, DL, VT)); in Select()
703 CurDAG->getMachineNode(RISCV::SLLI, DL, VT, N0->getOperand(0), in Select()
704 CurDAG->getTargetConstant(LShAmt, DL, VT)); in Select()
706 RISCV::SRLI, DL, VT, SDValue(SLLI, 0), in Select()
707 CurDAG->getTargetConstant(LShAmt + ShAmt, DL, VT)); in Select()
734 CurDAG->getMachineNode(RISCV::SLLI, DL, VT, N0->getOperand(0), in Select()
735 CurDAG->getTargetConstant(LShAmt, DL, VT)); in Select()
737 RISCV::SRAI, DL, VT, SDValue(SLLI, 0), in Select()
738 CurDAG->getTargetConstant(LShAmt + ShAmt, DL, VT)); in Select()
789 RISCV::SRLIW, DL, VT, X, CurDAG->getTargetConstant(C2, DL, VT)); in Select()
803 CurDAG->getMachineNode(RISCV::SRAIW, DL, VT, X.getOperand(0), in Select()
804 CurDAG->getTargetConstant(31, DL, VT)); in Select()
806 RISCV::SRLIW, DL, VT, SDValue(SRAIW, 0), in Select()
807 CurDAG->getTargetConstant(Leading - 32, DL, VT)); in Select()
821 RISCV::SLLI, DL, VT, X, in Select()
822 CurDAG->getTargetConstant(Leading - C2, DL, VT)); in Select()
824 RISCV::SRLI, DL, VT, SDValue(SLLI, 0), in Select()
825 CurDAG->getTargetConstant(Leading, DL, VT)); in Select()
842 RISCV::SLLI_UW, DL, VT, X, CurDAG->getTargetConstant(C2, DL, VT)); in Select()
850 RISCV::SLLI, DL, VT, X, in Select()
851 CurDAG->getTargetConstant(C2 + Leading, DL, VT)); in Select()
853 RISCV::SRLI, DL, VT, SDValue(SLLI, 0), in Select()
854 CurDAG->getTargetConstant(Leading, DL, VT)); in Select()
875 SrliOpc, DL, VT, X, in Select()
876 CurDAG->getTargetConstant(C2 + Trailing, DL, VT)); in Select()
878 CurDAG->getMachineNode(RISCV::SLLI, DL, VT, SDValue(SRLI, 0), in Select()
879 CurDAG->getTargetConstant(Trailing, DL, VT)); in Select()
887 RISCV::SRLIW, DL, VT, X, in Select()
888 CurDAG->getTargetConstant(C2 + Trailing, DL, VT)); in Select()
890 CurDAG->getMachineNode(RISCV::SLLI, DL, VT, SDValue(SRLIW, 0), in Select()
891 CurDAG->getTargetConstant(Trailing, DL, VT)); in Select()
904 RISCV::SRLI, DL, VT, X, in Select()
905 CurDAG->getTargetConstant(Trailing - C2, DL, VT)); in Select()
907 CurDAG->getMachineNode(RISCV::SLLI, DL, VT, SDValue(SRLI, 0), in Select()
908 CurDAG->getTargetConstant(Trailing, DL, VT)); in Select()
915 RISCV::SRLIW, DL, VT, X, in Select()
916 CurDAG->getTargetConstant(Trailing - C2, DL, VT)); in Select()
918 CurDAG->getMachineNode(RISCV::SLLI, DL, VT, SDValue(SRLIW, 0), in Select()
919 CurDAG->getTargetConstant(Trailing, DL, VT)); in Select()
982 SDNode *Imm = selectImm(CurDAG, DL, VT, ShiftedC1, *Subtarget); in Select()
984 CurDAG->getMachineNode(RISCV::SLLI, DL, VT, N0.getOperand(0), in Select()
985 CurDAG->getTargetConstant(LeadingZeros, DL, VT)); in Select()
986 SDNode *MULHU = CurDAG->getMachineNode(RISCV::MULHU, DL, VT, in Select()
1043 ReplaceNode(Node, CurDAG->getMachineNode(VMSetOpcode, DL, VT, VL, SEW)); in Select()
1050 CurDAG->getMachineNode(VMSLTOpcode, DL, VT, {Src1, Src2, VL, SEW}), in Select()
1052 ReplaceNode(Node, CurDAG->getMachineNode(VMNANDOpcode, DL, VT, in Select()
1097 switch (RISCVTargetLowering::getLMUL(VT)) { in Select()
1132 CurDAG->getMachineNode(VMOROpcode, DL, VT, in Select()
1142 CurDAG->getMachineNode(VMSLTOpcode, DL, VT, {Src1, Src2, VL, SEW}), in Select()
1144 ReplaceNode(Node, CurDAG->getMachineNode(VMANDNOpcode, DL, VT, in Select()
1153 SDValue V0 = CurDAG->getRegister(RISCV::V0, VT); in Select()
1161 CurDAG->getMachineNode(VMSLTMaskOpcode, DL, VT, in Select()
1165 ReplaceNode(Node, CurDAG->getMachineNode(VMXOROpcode, DL, VT, in Select()
1289 MVT VT = Node->getSimpleValueType(0); in Select() local
1290 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in Select()
1307 assert(VT.getVectorElementCount() == IndexVT.getVectorElementCount() && in Select()
1310 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in Select()
1339 MVT VT = Node->getSimpleValueType(0); in Select() local
1340 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in Select()
1358 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in Select()
1375 MVT VT = Node->getSimpleValueType(0); in Select() local
1376 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in Select()
1392 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in Select()
1495 MVT VT = Node->getOperand(2)->getSimpleValueType(0); in Select() local
1496 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in Select()
1507 assert(VT.getVectorElementCount() == IndexVT.getVectorElementCount() && in Select()
1510 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in Select()
1539 MVT VT = Node->getOperand(2)->getSimpleValueType(0); in Select() local
1540 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in Select()
1549 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in Select()
1567 if ((VT.isScalableVector() && SrcVT.isScalableVector()) || in Select()
1568 (VT.isFixedLengthVector() && SrcVT.isFixedLengthVector())) { in Select()
1587 if (VT.isFixedLengthVector()) in Select()
1588 VT = TLI.getContainerForFixedLengthVector(VT); in Select()
1594 VT, SubVecContainerVT, Idx, TRI); in Select()
1614 unsigned InRegClassID = RISCVTargetLowering::getRegClassIDForVecVT(VT); in Select()
1620 DL, VT, SubV, RC); in Select()
1625 SDValue Insert = CurDAG->getTargetInsertSubreg(SubRegIdx, DL, VT, V, SubV); in Select()
1636 MVT SubVecContainerVT = VT; in Select()
1638 if (VT.isFixedLengthVector()) in Select()
1639 SubVecContainerVT = TLI.getContainerForFixedLengthVector(VT); in Select()
1664 CurDAG->getMachineNode(TargetOpcode::COPY_TO_REGCLASS, DL, VT, V, RC); in Select()
1669 SDValue Extract = CurDAG->getTargetExtractSubreg(SubRegIdx, DL, VT, V); in Select()
1690 if (MemVT.getStoreSize() != VT.getVectorElementType().getStoreSize()) in Select()
1708 unsigned Log2SEW = Log2_32(VT.getScalarSizeInBits()); in Select()
1715 RISCVII::VLMUL LMUL = RISCVTargetLowering::getLMUL(VT); in Select()
1787 const MVT VT, const RISCVSubtarget *Subtarget, in selectConstantAddr() argument
1803 CurDAG->getMachineNode(RISCV::LUI, DL, VT, in selectConstantAddr()
1804 CurDAG->getTargetConstant(Hi20, DL, VT)), in selectConstantAddr()
1807 Base = CurDAG->getRegister(RISCV::X0, VT); in selectConstantAddr()
1809 Offset = CurDAG->getTargetConstant(Lo12, DL, VT); in selectConstantAddr()
1827 Base = SDValue(selectImmSeq(CurDAG, DL, VT, Seq), 0); in selectConstantAddr()
1828 Offset = CurDAG->getTargetConstant(Lo12, DL, VT); in selectConstantAddr()
1840 EVT VT = cast<MemSDNode>(Use)->getMemoryVT(); in isWorthFoldingAdd() local
1841 if (!VT.isScalarInteger() && VT != MVT::f16 && VT != MVT::f32 && in isWorthFoldingAdd()
1842 VT != MVT::f64) in isWorthFoldingAdd()
1862 MVT VT = Addr.getSimpleValueType(); in SelectAddrRegImm() local
1897 Base = CurDAG->getTargetFrameIndex(FIN->getIndex(), VT); in SelectAddrRegImm()
1898 Offset = CurDAG->getTargetConstant(CVal, DL, VT); in SelectAddrRegImm()
1914 CurDAG->getMachineNode(RISCV::ADDI, DL, VT, Addr.getOperand(0), in SelectAddrRegImm()
1915 CurDAG->getTargetConstant(Adj, DL, VT)), in SelectAddrRegImm()
1917 Offset = CurDAG->getTargetConstant(CVal - Adj, DL, VT); in SelectAddrRegImm()
1928 selectConstantAddr(CurDAG, DL, VT, Subtarget, Addr.getOperand(1), Base, in SelectAddrRegImm()
1932 CurDAG->getMachineNode(RISCV::ADD, DL, VT, Addr.getOperand(0), Base), in SelectAddrRegImm()
1938 if (selectConstantAddr(CurDAG, DL, VT, Subtarget, Addr, Base, Offset)) in SelectAddrRegImm()
1942 Offset = CurDAG->getTargetConstant(0, DL, VT); in SelectAddrRegImm()
1978 EVT VT = N.getValueType(); in selectShiftMask() local
1979 SDValue Zero = CurDAG->getRegister(RISCV::X0, VT); in selectShiftMask()
1980 unsigned NegOpc = VT == MVT::i64 ? RISCV::SUBW : RISCV::SUB; in selectShiftMask()
1981 MachineSDNode *Neg = CurDAG->getMachineNode(NegOpc, DL, VT, Zero, in selectShiftMask()
1998 MVT VT = N.getSimpleValueType(); in selectSExti32() local
1999 if (CurDAG->ComputeNumSignBits(N) > (VT.getSizeInBits() - 32)) { in selectSExti32()
2015 MVT VT = N.getSimpleValueType(); in selectZExti32() local
2016 APInt Mask = APInt::getHighBitsSet(VT.getSizeInBits(), 32); in selectZExti32()
2053 EVT VT = N.getValueType(); in selectSHXADDOp() local
2055 RISCV::SRLI, DL, VT, N0.getOperand(0), in selectSHXADDOp()
2056 CurDAG->getTargetConstant(Trailing - C2, DL, VT)), in selectSHXADDOp()
2065 EVT VT = N.getValueType(); in selectSHXADDOp() local
2068 RISCV::SRLI, DL, VT, N0.getOperand(0), in selectSHXADDOp()
2069 CurDAG->getTargetConstant(Leading + Trailing, DL, VT)), in selectSHXADDOp()
2094 EVT VT = N.getValueType(); in selectSHXADDOp() local
2096 RISCV::SRLIW, DL, VT, N0.getOperand(0), in selectSHXADDOp()
2097 CurDAG->getTargetConstant(Trailing, DL, VT)), in selectSHXADDOp()
2106 EVT VT = N.getValueType(); in selectSHXADDOp() local
2108 RISCV::SRLIW, DL, VT, N0.getOperand(0), in selectSHXADDOp()
2109 CurDAG->getTargetConstant(Trailing, DL, VT)), in selectSHXADDOp()