reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  206     return getCopyFromPartsVector(DAG, DL, Parts, NumParts, PartVT, ValueVT, V,
  210   const TargetLowering &TLI = DAG.getTargetLoweringInfo();
  224         ValueVT : EVT::getIntegerVT(*DAG.getContext(), RoundBits);
  227       EVT HalfVT = EVT::getIntegerVT(*DAG.getContext(), RoundBits/2);
  230         Lo = getCopyFromParts(DAG, DL, Parts, RoundParts / 2,
  232         Hi = getCopyFromParts(DAG, DL, Parts + RoundParts / 2,
  235         Lo = DAG.getNode(ISD::BITCAST, DL, HalfVT, Parts[0]);
  236         Hi = DAG.getNode(ISD::BITCAST, DL, HalfVT, Parts[1]);
  239       if (DAG.getDataLayout().isBigEndian())
  242       Val = DAG.getNode(ISD::BUILD_PAIR, DL, RoundVT, Lo, Hi);
  247         EVT OddVT = EVT::getIntegerVT(*DAG.getContext(), OddParts * PartBits);
  248         Hi = getCopyFromParts(DAG, DL, Parts + RoundParts, OddParts, PartVT,
  253         if (DAG.getDataLayout().isBigEndian())
  255         EVT TotalVT = EVT::getIntegerVT(*DAG.getContext(), NumParts * PartBits);
  256         Hi = DAG.getNode(ISD::ANY_EXTEND, DL, TotalVT, Hi);
  258             DAG.getNode(ISD::SHL, DL, TotalVT, Hi,
  259                         DAG.getConstant(Lo.getValueSizeInBits(), DL,
  260                                         TLI.getPointerTy(DAG.getDataLayout())));
  261         Lo = DAG.getNode(ISD::ZERO_EXTEND, DL, TotalVT, Lo);
  262         Val = DAG.getNode(ISD::OR, DL, TotalVT, Lo, Hi);
  269       Lo = DAG.getNode(ISD::BITCAST, DL, EVT(MVT::f64), Parts[0]);
  270       Hi = DAG.getNode(ISD::BITCAST, DL, EVT(MVT::f64), Parts[1]);
  271       if (TLI.hasBigEndianPartOrdering(ValueVT, DAG.getDataLayout()))
  273       Val = DAG.getNode(ISD::BUILD_PAIR, DL, ValueVT, Lo, Hi);
  278       EVT IntVT = EVT::getIntegerVT(*DAG.getContext(), ValueVT.getSizeInBits());
  279       Val = getCopyFromParts(DAG, DL, Parts, NumParts, PartVT, IntVT, V, CC);
  295     PartEVT = EVT::getIntegerVT(*DAG.getContext(),  ValueVT.getSizeInBits());
  296     Val = DAG.getNode(ISD::TRUNCATE, DL, PartEVT, Val);
  301     return DAG.getNode(ISD::BITCAST, DL, ValueVT, Val);
  310         Val = DAG.getNode(*AssertOp, DL, PartEVT, Val,
  311                           DAG.getValueType(ValueVT));
  312       return DAG.getNode(ISD::TRUNCATE, DL, ValueVT, Val);
  314     return DAG.getNode(ISD::ANY_EXTEND, DL, ValueVT, Val);
  320       return DAG.getNode(
  322           DAG.getTargetConstant(1, DL, TLI.getPointerTy(DAG.getDataLayout())));
  322           DAG.getTargetConstant(1, DL, TLI.getPointerTy(DAG.getDataLayout())));
  324     return DAG.getNode(ISD::FP_EXTEND, DL, ValueVT, Val);
  331     Val = DAG.getNode(ISD::BITCAST, DL, MVT::i64, Val);
  332     return DAG.getNode(ISD::TRUNCATE, DL, ValueVT, Val);