Lines Matching refs:PartVT
121 MVT PartVT, EVT ValueVT, const Value *V);
130 MVT PartVT, EVT ValueVT, const Value *V,
134 PartVT, ValueVT, V);
143 unsigned PartBits = PartVT.getSizeInBits();
158 PartVT, HalfVT, V);
160 RoundParts / 2, PartVT, HalfVT, V);
176 Parts + RoundParts, OddParts, PartVT, OddVT, V);
191 } else if (PartVT.isFloatingPoint()) {
193 assert(ValueVT == EVT(MVT::ppcf128) && PartVT == MVT::f64 &&
203 assert(ValueVT.isFloatingPoint() && PartVT.isInteger() &&
204 !PartVT.isVector() && "Unexpected split");
206 Val = getCopyFromParts(DAG, DL, Parts, NumParts, PartVT, IntVT, V);
278 MVT PartVT, EVT ValueVT, const Value *V) {
294 assert(RegisterVT == PartVT && "Part type doesn't match vector breakdown!");
306 PartVT, IntermediateVT, V);
315 PartVT, IntermediateVT, V);
377 MVT PartVT, const Value *V);
383 SDValue *Parts, unsigned NumParts, MVT PartVT,
390 return getCopyToPartsVector(DAG, DL, Val, Parts, NumParts, PartVT, V);
392 unsigned PartBits = PartVT.getSizeInBits();
394 assert(DAG.getTargetLoweringInfo().isTypeLegal(PartVT) &&
401 EVT PartEVT = PartVT;
410 if (PartVT.isFloatingPoint() && ValueVT.isFloatingPoint()) {
412 Val = DAG.getNode(ISD::FP_EXTEND, DL, PartVT, Val);
420 assert((PartVT.isInteger() || PartVT == MVT::x86mmx) &&
425 if (PartVT == MVT::x86mmx)
426 Val = DAG.getNode(ISD::BITCAST, DL, PartVT, Val);
431 Val = DAG.getNode(ISD::BITCAST, DL, PartVT, Val);
434 assert((PartVT.isInteger() || PartVT == MVT::x86mmx) &&
439 if (PartVT == MVT::x86mmx)
440 Val = DAG.getNode(ISD::BITCAST, DL, PartVT, Val);
446 "Failed to tile the value with PartVT!");
452 Val = DAG.getNode(ISD::BITCAST, DL, PartVT, Val);
462 assert(PartVT.isInteger() && ValueVT.isInteger() &&
469 getCopyToParts(DAG, DL, OddVal, Parts + RoundParts, OddParts, PartVT, V);
499 if (ThisBits == PartBits && ThisVT != PartVT) {
500 Part0 = DAG.getNode(ISD::BITCAST, DL, PartVT, Part0);
501 Part1 = DAG.getNode(ISD::BITCAST, DL, PartVT, Part1);
515 MVT PartVT, const Value *V) {
521 EVT PartEVT = PartVT;
524 } else if (PartVT.getSizeInBits() == ValueVT.getSizeInBits()) {
526 Val = DAG.getNode(ISD::BITCAST, DL, PartVT, Val);
527 } else if (PartVT.isVector() &&
530 EVT ElementVT = PartVT.getVectorElementType();
540 e = PartVT.getVectorNumElements(); i != e; ++i)
543 Val = DAG.getNode(ISD::BUILD_VECTOR, DL, PartVT, Ops);
548 //Val = DAG.getNode(ISD::CONCAT_VECTORS, DL, PartVT, Val, UndefElts);
549 } else if (PartVT.isVector() &&
555 Val = DAG.getAnyExtOrTrunc(Val, DL, PartVT);
561 ISD::EXTRACT_VECTOR_ELT, DL, PartVT, Val,
564 Val = DAG.getAnyExtOrTrunc(Val, DL, PartVT);
582 assert(RegisterVT == PartVT && "Part type doesn't match vector breakdown!");
603 getCopyToParts(DAG, DL, Ops[i], &Parts[i], 1, PartVT, V);
612 getCopyToParts(DAG, DL, Ops[i], &Parts[i*Factor], Factor, PartVT, V);
1463 MVT PartVT = TLI.getRegisterType(Context, VT);
1467 &Parts[0], NumParts, PartVT, &I, ExtendKind);
7627 MVT PartVT = getRegisterType(CLI.RetTy->getContext(), VT);
7651 if ((NumParts * PartVT.getSizeInBits() == VT.getSizeInBits()) ||
7657 getCopyToParts(CLI.DAG, CLI.DL, Op, &Parts[0], NumParts, PartVT,
8010 MVT PartVT = TLI->getRegisterType(*CurDAG->getContext(), VT);
8021 NumParts, PartVT, VT,