reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
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);