Lines Matching defs:NVT
127 SDValue ShuffleWithNarrowerEltType(EVT NVT, EVT VT, const SDLoc &dl,
281 EVT NVT, EVT VT, const SDLoc &dl, SDValue N1, SDValue N2,
284 unsigned NumDestElts = NVT.getVectorNumElements();
290 return DAG.getVectorShuffle(NVT, dl, N1, N2, Mask);
303 assert(TLI.isShuffleMaskLegal(NewMask, NVT) && "Shuffle not legal?");
304 return DAG.getVectorShuffle(NVT, dl, N1, N2, NewMask);
518 MVT NVT = TLI.getTypeToPromoteTo(ISD::STORE, VT);
519 assert(NVT.getSizeInBits() == VT.getSizeInBits() &&
521 Value = DAG.getNode(ISD::BITCAST, dl, NVT, Value);
542 EVT NVT = EVT::getIntegerVT(*DAG.getContext(), StSize.getFixedValue());
545 DAG.getTruncStore(Chain, dl, Value, Ptr, ST->getPointerInfo(), NVT,
689 MVT NVT = TLI.getTypeToPromoteTo(Node->getOpcode(), VT);
690 assert(NVT.getSizeInBits() == VT.getSizeInBits() &&
693 SDValue Res = DAG.getLoad(NVT, dl, Chain, Ptr, LD->getMemOperand());
732 EVT NVT = EVT::getIntegerVT(*DAG.getContext(), NewWidth);
736 // way. A zext load from NVT thus automatically gives zext from SrcVT.
742 Chain, Ptr, LD->getPointerInfo(), NVT,
752 else if (ExtType == ISD::ZEXTLOAD || NVT == Result.getValueType())
4773 EVT NVT = EVT();
4783 NVT = (MVT::SimpleValueType)t;
4785 if (NVT.bitsGE(SVT))
4786 LC = Signed ? RTLIB::getSINTTOFP(NVT, RVT)
4787 : RTLIB::getUINTTOFP(NVT, RVT);
4794 NVT, Node->getOperand(IsStrict ? 1 : 0));
4815 EVT NVT = EVT();
4825 NVT = (MVT::SimpleValueType)IntVT;
4827 if (NVT.bitsGE(RVT))
4828 LC = Signed ? RTLIB::getFPTOSINT(SVT, NVT)
4829 : RTLIB::getFPTOUINT(SVT, NVT);
4835 TLI.makeLibCall(DAG, LC, NVT, Op, CallOptions, dl, Chain);
5065 MVT NVT = TLI.getTypeToPromoteTo(Node->getOpcode(), OVT);
5076 Tmp1 = DAG.getNode(ISD::ANY_EXTEND, dl, NVT, Node->getOperand(0));
5078 Tmp1 = DAG.getNode(ISD::ZERO_EXTEND, dl, NVT, Node->getOperand(0));
5085 auto TopBit = APInt::getOneBitSet(NVT.getSizeInBits(),
5087 Tmp1 = DAG.getNode(ISD::OR, dl, NVT, Tmp1,
5088 DAG.getConstant(TopBit, dl, NVT));
5093 Tmp1 = DAG.getNode(NewOpc, dl, NVT, Tmp1);
5095 // Tmp1 = Tmp1 - (sizeinbits(NVT) - sizeinbits(Old VT))
5096 Tmp1 = DAG.getNode(ISD::SUB, dl, NVT, Tmp1,
5097 DAG.getConstant(NVT.getSizeInBits() -
5098 OVT.getSizeInBits(), dl, NVT));
5109 DAG.getNode(ISD::ANY_EXTEND, dl, NVT, Node->getOperand(0));
5111 // Tmp1 = Tmp1 << (sizeinbits(NVT) - sizeinbits(Old VT))
5113 NVT.getSizeInBits() - OVT.getSizeInBits(), NVT, dl);
5115 DAG.getNode(ISD::SHL, dl, NVT, AnyExtendedNode, ShiftConstant);
5118 auto CTLZResult = DAG.getNode(Node->getOpcode(), dl, NVT, LeftShiftResult);
5124 unsigned DiffBits = NVT.getSizeInBits() - OVT.getSizeInBits();
5125 Tmp1 = DAG.getNode(ISD::ZERO_EXTEND, dl, NVT, Node->getOperand(0));
5126 Tmp1 = DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1);
5128 ISD::SRL, dl, NVT, Tmp1,
5130 TLI.getShiftAmountTy(NVT, DAG.getDataLayout())));
5165 Tmp1 = DAG.getVAArg(NVT, dl, Chain, Ptr, Node->getOperand(2),
5217 if (TLI.isSExtCheaperThanZExt(OVT, NVT))
5226 Tmp1 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(0));
5227 Tmp2 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(1));
5229 Tmp1 = DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1, Tmp2);
5238 Tmp1 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(0));
5239 Tmp2 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(1));
5240 Tmp1 = DAG.getNode(ISD::MUL, dl, NVT, Tmp1, Tmp2);
5245 ISD::SRL, dl, NVT, Tmp1,
5246 DAG.getConstant(OriginalSize, dl, TLI.getScalarShiftAmountTy(DL, NVT)));
5254 Node->getValueType(0).getSizeInBits() == NVT.getSizeInBits()) {
5266 Tmp2 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(1));
5267 Tmp3 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(2));
5269 Tmp1 = DAG.getSelect(dl, NVT, Tmp1, Tmp2, Tmp3);
5283 Tmp1 = DAG.getNode(ISD::BITCAST, dl, NVT, Node->getOperand(0));
5284 Tmp2 = DAG.getNode(ISD::BITCAST, dl, NVT, Node->getOperand(1));
5287 Tmp1 = ShuffleWithNarrowerEltType(NVT, OVT, dl, Tmp1, Tmp2, Mask);
5293 Tmp1 = DAG.getNode(ISD::ANY_EXTEND, dl, NVT, Node->getOperand(0));
5294 Tmp2 = DAG.getNode(ISD::ANY_EXTEND, dl, NVT, Node->getOperand(1));
5295 Tmp3 = DAG.getNode(ISD::VECTOR_SPLICE, dl, NVT, Tmp1, Tmp2,
5308 if (NVT.isInteger()) {
5317 Tmp1 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(0));
5318 Tmp2 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(1));
5321 Tmp3 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(2));
5322 Tmp4 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(3));
5324 Tmp1 = DAG.getNode(ISD::SELECT_CC, dl, NVT, {Tmp1, Tmp2, Tmp3, Tmp4, Cond},
5341 if (NVT.isInteger()) {
5344 TLI.isSExtCheaperThanZExt(Node->getOperand(0).getValueType(), NVT))
5352 DAG.getStrictFPExtendOrRound(Node->getOperand(1), InChain, dl, NVT);
5354 DAG.getStrictFPExtendOrRound(Node->getOperand(2), InChain, dl, NVT);
5364 Tmp1 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(0));
5365 Tmp2 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(1));
5372 if (NVT.isInteger()) {
5377 Tmp1 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(2));
5378 Tmp2 = DAG.getNode(ExtOp, dl, NVT, Node->getOperand(3));
5397 Tmp1 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(0));
5398 Tmp2 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(1));
5399 Tmp3 = DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1, Tmp2,
5414 Tmp1 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5416 Tmp2 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5420 Tmp1 = DAG.getNode(Node->getOpcode(), dl, {NVT, MVT::Other},
5429 Tmp1 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(0));
5430 Tmp2 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(1));
5431 Tmp3 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(2));
5434 DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1, Tmp2, Tmp3),
5438 Tmp1 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5440 Tmp2 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5442 Tmp3 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5446 Tmp4 = DAG.getNode(Node->getOpcode(), dl, {NVT, MVT::Other},
5457 Tmp1 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(0));
5459 Tmp3 = DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1, Tmp2);
5473 Tmp1 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5476 Tmp3 = DAG.getNode(ISD::STRICT_FLDEXP, dl, {NVT, MVT::Other},
5486 Tmp1 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5488 Tmp2 = DAG.getNode(Node->getOpcode(), dl, {NVT, MVT::Other},
5497 Tmp1 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(0));
5498 Tmp2 = DAG.getNode(ISD::FFREXP, dl, {NVT, Node->getValueType(1)}, Tmp1);
5508 Tmp1 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(0));
5509 Tmp2 = DAG.getNode(ISD::FSINCOS, dl, DAG.getVTList(NVT, NVT), Tmp1,
5543 Tmp1 = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Node->getOperand(0));
5544 Tmp2 = DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1);
5571 Tmp1 = DAG.getNode(ISD::STRICT_FP_EXTEND, dl, {NVT, MVT::Other},
5573 Tmp2 = DAG.getNode(Node->getOpcode(), dl, {NVT, MVT::Other},
5583 MVT NewEltVT = NVT.getVectorElementType();
5591 assert(NVT.isVector() && OVT.getSizeInBits() == NVT.getSizeInBits() &&
5604 SL, NVT, NewOps);
5611 MVT NewEltVT = NVT.getVectorElementType();
5624 assert(NVT.isVector() && OVT.getSizeInBits() == NVT.getSizeInBits() &&
5637 SDValue CastVec = DAG.getNode(ISD::BITCAST, SL, NVT, Node->getOperand(0));
5655 MVT NewEltVT = NVT.getVectorElementType();
5670 assert(NVT.isVector() && OVT.getSizeInBits() == NVT.getSizeInBits() &&
5685 SDValue CastVec = DAG.getNode(ISD::BITCAST, SL, NVT, Node->getOperand(0));
5696 NewVec = DAG.getNode(ISD::INSERT_VECTOR_ELT, SL, NVT,
5705 MVT NewEltVT = NVT.getVectorElementType();
5726 SDValue Concat = DAG.getNode(ISD::CONCAT_VECTORS, SL, NVT, NewElts);
5735 SDValue CastVal = DAG.getNode(ISD::BITCAST, SL, NVT, AM->getVal());
5736 assert(NVT.getSizeInBits() == OVT.getSizeInBits() &&
5738 assert(AM->getMemoryVT().getSizeInBits() == NVT.getSizeInBits() &&
5749 SDValue NewAtomic = DAG.getAtomic(AM->getOpcode(), SL, NVT, AM->getChain(),
5762 assert(NVT.getSizeInBits() == OVT.getSizeInBits() &&
5764 assert(AM->getMemoryVT().getSizeInBits() == NVT.getSizeInBits() &&
5768 DAG.getAtomic(ISD::ATOMIC_LOAD, SL, NVT, DAG.getVTList(NVT, MVT::Other),
5777 MVT NewScalarType = NVT.getVectorElementType();
5780 Tmp2 = DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1);
5785 Tmp2 = DAG.getNode(Node->getOpcode(), dl, NVT, Tmp1);