Lines Matching refs:VT
709 MVT VT = Node->getSimpleValueType(0); in Promote() local
710 MVT NVT = TLI.getTypeToPromoteTo(Node->getOpcode(), VT); in Promote()
734 if ((VT.isFloatingPoint() && NVT.isFloatingPoint()) || in Promote()
735 (VT.isVector() && VT.getVectorElementType().isFloatingPoint() && in Promote()
737 Res = DAG.getNode(ISD::FP_ROUND, dl, VT, Res, in Promote()
740 Res = DAG.getNode(ISD::BITCAST, dl, VT, Res); in Promote()
750 MVT VT = Node->getOperand(IsStrict ? 1 : 0).getSimpleValueType(); in PromoteINT_TO_FP() local
751 MVT NVT = TLI.getTypeToPromoteTo(Node->getOpcode(), VT); in PromoteINT_TO_FP()
752 assert(NVT.getVectorNumElements() == VT.getVectorNumElements() && in PromoteINT_TO_FP()
788 MVT VT = Node->getSimpleValueType(0); in PromoteFP_TO_INT() local
789 MVT NVT = TLI.getTypeToPromoteTo(Node->getOpcode(), VT); in PromoteFP_TO_INT()
791 assert(NVT.getVectorNumElements() == VT.getVectorNumElements() && in PromoteFP_TO_INT()
824 DAG.getValueType(VT.getScalarType())); in PromoteFP_TO_INT()
825 Promoted = DAG.getNode(ISD::TRUNCATE, dl, VT, Promoted); in PromoteFP_TO_INT()
1147 EVT VT = Node->getValueType(0); in ExpandSELECT() local
1154 assert(VT.isVector() && !Mask.getValueType().isVector() in ExpandSELECT()
1165 if (TLI.getOperationAction(ISD::AND, VT) == TargetLowering::Expand || in ExpandSELECT()
1166 TLI.getOperationAction(ISD::XOR, VT) == TargetLowering::Expand || in ExpandSELECT()
1167 TLI.getOperationAction(ISD::OR, VT) == TargetLowering::Expand || in ExpandSELECT()
1168 TLI.getOperationAction(VT.isFixedLengthVector() ? ISD::BUILD_VECTOR in ExpandSELECT()
1170 VT) == TargetLowering::Expand) in ExpandSELECT()
1174 EVT MaskTy = VT.changeVectorElementTypeToInteger(); in ExpandSELECT()
1200 EVT VT = Node->getValueType(0); in ExpandSEXTINREG() local
1203 if (TLI.getOperationAction(ISD::SRA, VT) == TargetLowering::Expand || in ExpandSEXTINREG()
1204 TLI.getOperationAction(ISD::SHL, VT) == TargetLowering::Expand) in ExpandSEXTINREG()
1210 unsigned BW = VT.getScalarSizeInBits(); in ExpandSEXTINREG()
1212 SDValue ShiftSz = DAG.getConstant(BW - OrigBW, DL, VT); in ExpandSEXTINREG()
1214 SDValue Op = DAG.getNode(ISD::SHL, DL, VT, Node->getOperand(0), ShiftSz); in ExpandSEXTINREG()
1215 return DAG.getNode(ISD::SRA, DL, VT, Op, ShiftSz); in ExpandSEXTINREG()
1222 EVT VT = Node->getValueType(0); in ExpandANY_EXTEND_VECTOR_INREG() local
1223 int NumElements = VT.getVectorNumElements(); in ExpandANY_EXTEND_VECTOR_INREG()
1230 if (SrcVT.bitsLE(VT)) { in ExpandANY_EXTEND_VECTOR_INREG()
1231 assert((VT.getSizeInBits() % SrcVT.getScalarSizeInBits()) == 0 && in ExpandANY_EXTEND_VECTOR_INREG()
1233 NumSrcElements = VT.getSizeInBits() / SrcVT.getScalarSizeInBits(); in ExpandANY_EXTEND_VECTOR_INREG()
1251 ISD::BITCAST, DL, VT, in ExpandANY_EXTEND_VECTOR_INREG()
1257 EVT VT = Node->getValueType(0); in ExpandSIGN_EXTEND_VECTOR_INREG() local
1263 SDValue Op = DAG.getNode(ISD::ANY_EXTEND_VECTOR_INREG, DL, VT, Src); in ExpandSIGN_EXTEND_VECTOR_INREG()
1268 unsigned EltWidth = VT.getScalarSizeInBits(); in ExpandSIGN_EXTEND_VECTOR_INREG()
1270 SDValue ShiftAmount = DAG.getConstant(EltWidth - SrcEltWidth, DL, VT); in ExpandSIGN_EXTEND_VECTOR_INREG()
1271 return DAG.getNode(ISD::SRA, DL, VT, in ExpandSIGN_EXTEND_VECTOR_INREG()
1272 DAG.getNode(ISD::SHL, DL, VT, Op, ShiftAmount), in ExpandSIGN_EXTEND_VECTOR_INREG()
1281 EVT VT = Node->getValueType(0); in ExpandZERO_EXTEND_VECTOR_INREG() local
1282 int NumElements = VT.getVectorNumElements(); in ExpandZERO_EXTEND_VECTOR_INREG()
1289 if (SrcVT.bitsLE(VT)) { in ExpandZERO_EXTEND_VECTOR_INREG()
1290 assert((VT.getSizeInBits() % SrcVT.getScalarSizeInBits()) == 0 && in ExpandZERO_EXTEND_VECTOR_INREG()
1292 NumSrcElements = VT.getSizeInBits() / SrcVT.getScalarSizeInBits(); in ExpandZERO_EXTEND_VECTOR_INREG()
1311 return DAG.getNode(ISD::BITCAST, DL, VT, in ExpandZERO_EXTEND_VECTOR_INREG()
1315 static void createBSWAPShuffleMask(EVT VT, SmallVectorImpl<int> &ShuffleMask) { in createBSWAPShuffleMask() argument
1316 int ScalarSizeInBytes = VT.getScalarSizeInBits() / 8; in createBSWAPShuffleMask()
1317 for (int I = 0, E = VT.getVectorNumElements(); I != E; ++I) in createBSWAPShuffleMask()
1323 EVT VT = Node->getValueType(0); in ExpandBSWAP() local
1326 if (VT.isScalableVector()) in ExpandBSWAP()
1331 createBSWAPShuffleMask(VT, ShuffleMask); in ExpandBSWAP()
1339 return DAG.getNode(ISD::BITCAST, DL, VT, Op); in ExpandBSWAP()
1344 if (TLI.isOperationLegalOrCustom(ISD::SHL, VT) && in ExpandBSWAP()
1345 TLI.isOperationLegalOrCustom(ISD::SRL, VT) && in ExpandBSWAP()
1346 TLI.isOperationLegalOrCustomOrPromote(ISD::AND, VT) && in ExpandBSWAP()
1347 TLI.isOperationLegalOrCustomOrPromote(ISD::OR, VT)) in ExpandBSWAP()
1356 EVT VT = Node->getValueType(0); in ExpandBITREVERSE() local
1359 if (VT.isScalableVector()) { in ExpandBITREVERSE()
1365 if (TLI.isOperationLegalOrCustom(ISD::BITREVERSE, VT.getScalarType())) { in ExpandBITREVERSE()
1374 unsigned ScalarSizeInBits = VT.getScalarSizeInBits(); in ExpandBITREVERSE()
1377 createBSWAPShuffleMask(VT, BSWAPMask); in ExpandBITREVERSE()
1391 Op = DAG.getNode(ISD::BITCAST, DL, VT, Op); in ExpandBITREVERSE()
1399 if (TLI.isOperationLegalOrCustom(ISD::SHL, VT) && in ExpandBITREVERSE()
1400 TLI.isOperationLegalOrCustom(ISD::SRL, VT) && in ExpandBITREVERSE()
1401 TLI.isOperationLegalOrCustomOrPromote(ISD::AND, VT) && in ExpandBITREVERSE()
1402 TLI.isOperationLegalOrCustomOrPromote(ISD::OR, VT)) { in ExpandBITREVERSE()
1421 EVT VT = Mask.getValueType(); in ExpandVSELECT() local
1427 if (TLI.getOperationAction(ISD::AND, VT) == TargetLowering::Expand || in ExpandVSELECT()
1428 TLI.getOperationAction(ISD::XOR, VT) == TargetLowering::Expand || in ExpandVSELECT()
1429 TLI.getOperationAction(ISD::OR, VT) == TargetLowering::Expand) in ExpandVSELECT()
1445 if (VT.getSizeInBits() != Op1.getValueSizeInBits()) in ExpandVSELECT()
1451 Op1 = DAG.getNode(ISD::BITCAST, DL, VT, Op1); in ExpandVSELECT()
1452 Op2 = DAG.getNode(ISD::BITCAST, DL, VT, Op2); in ExpandVSELECT()
1454 SDValue NotMask = DAG.getNOT(DL, Mask, VT); in ExpandVSELECT()
1456 Op1 = DAG.getNode(ISD::AND, DL, VT, Op1, Mask); in ExpandVSELECT()
1457 Op2 = DAG.getNode(ISD::AND, DL, VT, Op2, NotMask); in ExpandVSELECT()
1458 SDValue Val = DAG.getNode(ISD::OR, DL, VT, Op1, Op2); in ExpandVSELECT()
1472 EVT VT = Mask.getValueType(); in ExpandVP_SELECT() local
1476 if (TLI.getOperationAction(ISD::VP_AND, VT) == TargetLowering::Expand || in ExpandVP_SELECT()
1477 TLI.getOperationAction(ISD::VP_XOR, VT) == TargetLowering::Expand || in ExpandVP_SELECT()
1478 TLI.getOperationAction(ISD::VP_OR, VT) == TargetLowering::Expand) in ExpandVP_SELECT()
1485 SDValue Ones = DAG.getAllOnesConstant(DL, VT); in ExpandVP_SELECT()
1486 SDValue NotMask = DAG.getNode(ISD::VP_XOR, DL, VT, Mask, Ones, Ones, EVL); in ExpandVP_SELECT()
1488 Op1 = DAG.getNode(ISD::VP_AND, DL, VT, Op1, Mask, Ones, EVL); in ExpandVP_SELECT()
1489 Op2 = DAG.getNode(ISD::VP_AND, DL, VT, Op2, NotMask, Ones, EVL); in ExpandVP_SELECT()
1490 return DAG.getNode(ISD::VP_OR, DL, VT, Op1, Op2, Ones, EVL); in ExpandVP_SELECT()
1536 EVT VT = Node->getValueType(0); in ExpandVP_REM() local
1540 if (!TLI.isOperationLegalOrCustom(DivOpc, VT) || in ExpandVP_REM()
1541 !TLI.isOperationLegalOrCustom(ISD::VP_MUL, VT) || in ExpandVP_REM()
1542 !TLI.isOperationLegalOrCustom(ISD::VP_SUB, VT)) in ExpandVP_REM()
1553 SDValue Div = DAG.getNode(DivOpc, DL, VT, Dividend, Divisor, Mask, EVL); in ExpandVP_REM()
1554 SDValue Mul = DAG.getNode(ISD::VP_MUL, DL, VT, Divisor, Div, Mask, EVL); in ExpandVP_REM()
1555 return DAG.getNode(ISD::VP_SUB, DL, VT, Dividend, Mul, Mask, EVL); in ExpandVP_REM()
1583 EVT VT = Src.getValueType(); in ExpandUINT_TO_FLOAT() local
1597 if (((!IsStrict && TLI.getOperationAction(ISD::SINT_TO_FP, VT) == in ExpandUINT_TO_FLOAT()
1599 (IsStrict && TLI.getOperationAction(ISD::STRICT_SINT_TO_FP, VT) == in ExpandUINT_TO_FLOAT()
1601 TLI.getOperationAction(ISD::SRL, VT) == TargetLowering::Expand) { in ExpandUINT_TO_FLOAT()
1611 unsigned BW = VT.getScalarSizeInBits(); in ExpandUINT_TO_FLOAT()
1615 SDValue HalfWord = DAG.getConstant(BW / 2, DL, VT); in ExpandUINT_TO_FLOAT()
1621 SDValue HalfWordMask = DAG.getConstant(HWMask, DL, VT); in ExpandUINT_TO_FLOAT()
1628 SDValue HI = DAG.getNode(ISD::SRL, DL, VT, Src, HalfWord); in ExpandUINT_TO_FLOAT()
1629 SDValue LO = DAG.getNode(ISD::AND, DL, VT, Src, HalfWordMask); in ExpandUINT_TO_FLOAT()
1685 EVT VT = Node->getValueType(0); in ExpandFSUB() local
1686 if (TLI.isOperationLegalOrCustom(ISD::FNEG, VT) && in ExpandFSUB()
1687 TLI.isOperationLegalOrCustom(ISD::FADD, VT)) in ExpandFSUB()
1761 EVT VT = Node->getValueType(0); in ExpandSETCC() local
1763 DAG.getNode(ISD::SELECT_CC, dl, VT, LHS, RHS, in ExpandSETCC()
1764 DAG.getBoolConstant(true, dl, VT, LHS.getValueType()), in ExpandSETCC()
1765 DAG.getBoolConstant(false, dl, VT, LHS.getValueType()), CC); in ExpandSETCC()
1856 EVT VT = Node->getValueType(0); in tryExpandVecMathCall() local
1857 ElementCount VL = VT.getVectorElementCount(); in tryExpandVecMathCall()
1869 Type *Ty = VT.getTypeForEVT(*Ctx); in tryExpandVecMathCall()
1875 assert(Node->getOperand(i).getValueType() == VT && in tryExpandVecMathCall()
1906 EVT MaskVT = TLI.getSetCCResultType(DAG.getDataLayout(), *Ctx, VT); in tryExpandVecMathCall()
1907 Entry.Node = DAG.getBoolConstant(true, DL, MaskVT, VT); in tryExpandVecMathCall()
1952 EVT VT = Node->getValueType(0); in UnrollStrictFPOp() local
1953 EVT EltVT = VT.getVectorElementType(); in UnrollStrictFPOp()
1954 unsigned NumElems = VT.getVectorNumElements(); in UnrollStrictFPOp()
2003 SDValue Result = DAG.getBuildVector(VT, dl, OpValues); in UnrollStrictFPOp()
2011 EVT VT = Node->getValueType(0); in UnrollVSETCC() local
2012 unsigned NumElems = VT.getVectorNumElements(); in UnrollVSETCC()
2013 EVT EltVT = VT.getVectorElementType(); in UnrollVSETCC()
2032 return DAG.getBuildVector(VT, dl, Ops); in UnrollVSETCC()