/external/llvm/lib/CodeGen/SelectionDAG/ |
D | LegalizeIntegerTypes.cpp | 203 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(1)); in PromoteIntRes_AtomicCmpSwap() local 208 SVT = NVT; in PromoteIntRes_AtomicCmpSwap() 305 EVT NVT = Op.getValueType(); in PromoteIntRes_BSWAP() local 308 unsigned DiffBits = NVT.getScalarSizeInBits() - OVT.getScalarSizeInBits(); in PromoteIntRes_BSWAP() 309 return DAG.getNode(ISD::SRL, dl, NVT, DAG.getNode(ISD::BSWAP, dl, NVT, Op), in PromoteIntRes_BSWAP() 310 DAG.getConstant(DiffBits, TLI.getShiftAmountTy(NVT))); in PromoteIntRes_BSWAP() 353 EVT NVT = Op.getValueType(); in PromoteIntRes_CTLZ() local 354 Op = DAG.getNode(N->getOpcode(), dl, NVT, Op); in PromoteIntRes_CTLZ() 357 ISD::SUB, dl, NVT, Op, in PromoteIntRes_CTLZ() 358 DAG.getConstant(NVT.getScalarSizeInBits() - OVT.getScalarSizeInBits(), in PromoteIntRes_CTLZ() [all …]
|
D | LegalizeFloatTypes.cpp | 147 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_FABS() local 148 unsigned Size = NVT.getSizeInBits(); in SoftenFloatRes_FABS() 153 SDValue Mask = DAG.getConstant(API, NVT); in SoftenFloatRes_FABS() 155 return DAG.getNode(ISD::AND, SDLoc(N), NVT, Op, Mask); in SoftenFloatRes_FABS() 159 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_FMINNUM() local 168 NVT, Ops, 2, false, SDLoc(N)).first; in SoftenFloatRes_FMINNUM() 172 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_FMAXNUM() local 181 NVT, Ops, 2, false, SDLoc(N)).first; in SoftenFloatRes_FMAXNUM() 185 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_FADD() local 194 NVT, Ops, 2, false, SDLoc(N)).first; in SoftenFloatRes_FADD() [all …]
|
D | LegalizeTypesGeneric.cpp | 104 EVT NVT = EVT::getVectorVT(*DAG.getContext(), ElemVT, NumElems); in ExpandRes_BITCAST() local 107 while (!isTypeLegal(NVT)) { in ExpandRes_BITCAST() 114 NVT = EVT::getVectorVT(*DAG.getContext(), ElemVT, NumElems); in ExpandRes_BITCAST() 117 if (isTypeLegal(NVT)) { in ExpandRes_BITCAST() 118 SDValue CastInOp = DAG.getNode(ISD::BITCAST, dl, NVT, InOp); in ExpandRes_BITCAST() 255 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), ValueVT); in ExpandRes_NormalLoad() local 264 assert(NVT.isByteSized() && "Expanded type not byte sized!"); in ExpandRes_NormalLoad() 266 Lo = DAG.getLoad(NVT, dl, Chain, Ptr, LD->getPointerInfo(), in ExpandRes_NormalLoad() 271 unsigned IncrementSize = NVT.getSizeInBits() / 8; in ExpandRes_NormalLoad() 274 Hi = DAG.getLoad(NVT, dl, Chain, Ptr, in ExpandRes_NormalLoad() [all …]
|
D | LegalizeDAG.cpp | 102 SDValue ShuffleWithNarrowerEltType(EVT NVT, EVT VT, SDLoc dl, 208 SelectionDAGLegalize::ShuffleWithNarrowerEltType(EVT NVT, EVT VT, SDLoc dl, in ShuffleWithNarrowerEltType() argument 212 unsigned NumDestElts = NVT.getVectorNumElements(); in ShuffleWithNarrowerEltType() 218 return DAG.getVectorShuffle(NVT, dl, N1, N2, &Mask[0]); in ShuffleWithNarrowerEltType() 231 assert(TLI.isShuffleMaskLegal(NewMask, NVT) && "Shuffle not legal?"); in ShuffleWithNarrowerEltType() 232 return DAG.getVectorShuffle(NVT, dl, N1, N2, &NewMask[0]); in ShuffleWithNarrowerEltType() 739 MVT NVT = TLI.getTypeToPromoteTo(ISD::STORE, VT); in LegalizeStoreOps() local 740 assert(NVT.getSizeInBits() == VT.getSizeInBits() && in LegalizeStoreOps() 742 Value = DAG.getNode(ISD::BITCAST, dl, NVT, Value); in LegalizeStoreOps() 763 EVT NVT = EVT::getIntegerVT(*DAG.getContext(), in LegalizeStoreOps() local [all …]
|
D | LegalizeVectorOps.cpp | 388 MVT NVT = TLI.getTypeToPromoteTo(Op.getOpcode(), VT); in Promote() local 398 NVT.isVector() && NVT.getVectorElementType().isFloatingPoint()) in Promote() 399 Operands[j] = DAG.getNode(ISD::FP_EXTEND, dl, NVT, Op.getOperand(j)); in Promote() 401 Operands[j] = DAG.getNode(ISD::BITCAST, dl, NVT, Op.getOperand(j)); in Promote() 406 Op = DAG.getNode(Op.getOpcode(), dl, NVT, Operands); in Promote() 407 if ((VT.isFloatingPoint() && NVT.isFloatingPoint()) || in Promote() 409 NVT.isVector() && NVT.getVectorElementType().isFloatingPoint())) in Promote() 430 EVT NVT = VT.widenIntegerVectorElementType(*DAG.getContext()); in PromoteINT_TO_FP() local 431 assert(NVT.isSimple() && "Promoting to a non-simple vector type!"); in PromoteINT_TO_FP() 439 Operands[j] = DAG.getNode(Opc, dl, NVT, Op.getOperand(j)); in PromoteINT_TO_FP()
|
D | LegalizeTypes.cpp | 998 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), Pair.getValueType()); in GetPairElements() local 999 Lo = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, NVT, Pair, in GetPairElements() 1001 Hi = DAG.getNode(ISD::EXTRACT_ELEMENT, dl, NVT, Pair, in GetPairElements() 1026 EVT NVT = EVT::getIntegerVT(*DAG.getContext(), in JoinIntegers() local 1029 Lo = DAG.getNode(ISD::ZERO_EXTEND, dlLo, NVT, Lo); in JoinIntegers() 1030 Hi = DAG.getNode(ISD::ANY_EXTEND, dlHi, NVT, Hi); in JoinIntegers() 1031 Hi = DAG.getNode(ISD::SHL, dlHi, NVT, Hi, in JoinIntegers() 1033 return DAG.getNode(ISD::OR, dlHi, NVT, Lo, Hi); in JoinIntegers()
|
D | TargetLowering.cpp | 2913 EVT NVT = Node->getValueType(0); in expandFP_TO_SINT() local 2917 if (VT != MVT::f32 || NVT != MVT::i64) in expandFP_TO_SINT() 2943 Sign = DAG.getSExtOrTrunc(Sign, dl, NVT); in expandFP_TO_SINT() 2949 R = DAG.getZExtOrTrunc(R, dl, NVT); in expandFP_TO_SINT() 2953 DAG.getNode(ISD::SHL, dl, NVT, R, in expandFP_TO_SINT() 2957 DAG.getNode(ISD::SRL, dl, NVT, R, in expandFP_TO_SINT() 2963 SDValue Ret = DAG.getNode(ISD::SUB, dl, NVT, in expandFP_TO_SINT() 2964 DAG.getNode(ISD::XOR, dl, NVT, R, Sign), in expandFP_TO_SINT() 2968 DAG.getConstant(0, NVT), Ret, ISD::SETLT); in expandFP_TO_SINT()
|
D | LegalizeVectorTypes.cpp | 378 EVT NVT = N->getValueType(0).getVectorElementType(); in ScalarizeVecRes_VSETCC() local 400 return DAG.getNode(ExtendCode, DL, NVT, Res); in ScalarizeVecRes_VSETCC() 3313 SDValue DAGTypeLegalizer::ModifyToType(SDValue InOp, EVT NVT) { in ModifyToType() argument 3317 assert(InVT.getVectorElementType() == NVT.getVectorElementType() && in ModifyToType() 3322 if (InVT == NVT) in ModifyToType() 3326 unsigned WidenNumElts = NVT.getVectorNumElements(); in ModifyToType() 3335 return DAG.getNode(ISD::CONCAT_VECTORS, dl, NVT, Ops); in ModifyToType() 3339 return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, NVT, InOp, in ModifyToType() 3344 EVT EltVT = NVT.getVectorElementType(); in ModifyToType() 3354 return DAG.getNode(ISD::BUILD_VECTOR, dl, NVT, Ops); in ModifyToType()
|
D | DAGCombiner.cpp | 6610 EVT NVT = EVT::getVectorVT(*DAG.getContext(), TrTy, SizeRatio * NumElem); in visitTRUNCATE() local 6611 assert(NVT.getSizeInBits() == VecTy.getSizeInBits() && "Invalid Size"); in visitTRUNCATE() 6614 if (isa<ConstantSDNode>(EltNo) && isTypeLegal(NVT)) { in visitTRUNCATE() 6620 NVT, N0.getOperand(0)); in visitTRUNCATE() 10986 EVT NVT = N->getValueType(0); in visitEXTRACT_VECTOR_ELT() local 10993 if (InOp.getValueType() != NVT) { in visitEXTRACT_VECTOR_ELT() 10994 assert(InOp.getValueType().isInteger() && NVT.isInteger()); in visitEXTRACT_VECTOR_ELT() 10995 return DAG.getSExtOrTrunc(InOp, SDLoc(InVec), NVT); in visitEXTRACT_VECTOR_ELT() 11019 return DAG.getUNDEF(NVT); in visitEXTRACT_VECTOR_ELT() 11032 if (InOp.getValueType() != NVT) { in visitEXTRACT_VECTOR_ELT() [all …]
|
D | SelectionDAG.cpp | 4099 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), VT); in getMemcpyLoadsAndStores() local 4100 assert(NVT.bitsGE(VT)); in getMemcpyLoadsAndStores() 4101 Value = DAG.getExtLoad(ISD::EXTLOAD, dl, NVT, Chain, in getMemcpyLoadsAndStores()
|
/external/llvm/lib/Target/X86/ |
D | X86ISelDAGToDAG.cpp | 195 SDNode *SelectAtomicLoadArith(SDNode *Node, MVT NVT); 1715 enum AtomicOpc &Op, MVT NVT, in getAtomicLoadArithTargetConstant() argument 1728 return CurDAG->getTargetConstant(CNVal, NVT); in getAtomicLoadArithTargetConstant() 1743 return CurDAG->getTargetConstant(CNVal, NVT); in getAtomicLoadArithTargetConstant() 1756 if (Val.getOpcode() == ISD::TRUNCATE && NVT == MVT::i16 && in getAtomicLoadArithTargetConstant() 1761 return CurDAG->getTargetExtractSubreg(X86::sub_16bit, dl, NVT, in getAtomicLoadArithTargetConstant() 1769 SDNode *X86DAGToDAGISel::SelectAtomicLoadArith(SDNode *Node, MVT NVT) { in SelectAtomicLoadArith() argument 1804 Val = getAtomicLoadArithTargetConstant(CurDAG, dl, Op, NVT, Val, Subtarget); in SelectAtomicLoadArith() 1809 switch (NVT.SimpleTy) { in SelectAtomicLoadArith() 1869 dl, NVT), 0); in SelectAtomicLoadArith() [all …]
|
D | X86ISelLowering.cpp | 4738 EVT NVT = EVT::getVectorVT(*DAG.getContext(), PVT, NumElems); in LowerAsSplatVectorLoad() local 4739 SDValue V1 = DAG.getLoad(NVT, dl, Chain, Ptr, in LowerAsSplatVectorLoad() 4745 return DAG.getVectorShuffle(NVT, dl, V1, DAG.getUNDEF(NVT), &Mask[0]); in LowerAsSplatVectorLoad() 11725 MVT NVT = MVT::getVectorVT(MVT::i32, SVT.getVectorNumElements()); in lowerUINT_TO_FP_vec() local 11727 DAG.getNode(ISD::ZERO_EXTEND, dl, NVT, N0)); in lowerUINT_TO_FP_vec() 12150 MVT NVT = MVT::getVectorVT(VT.getVectorElementType(), NumElems * 2); in LowerTRUNCATE() local 12156 SDValue V = DAG.getVectorShuffle(NVT, DL, in LowerTRUNCATE() 12157 DAG.getNode(ISD::BITCAST, DL, NVT, In), in LowerTRUNCATE() 12158 DAG.getUNDEF(NVT), &MaskVec[0]); in LowerTRUNCATE()
|
/external/llvm/lib/CodeGen/ |
D | TargetLoweringBase.cpp | 904 MVT NVT = TransformToType[SVT.SimpleTy]; in getTypeConversion() local 908 ValueTypeActions.getTypeAction(NVT) != TypePromoteInteger) && in getTypeConversion() 917 return LegalizeKind(LA, NVT); in getTypeConversion() 926 EVT NVT = VT.getRoundIntegerType(Context); in getTypeConversion() local 927 assert(NVT != VT && "Unable to round integer VT"); in getTypeConversion() 928 LegalizeKind NextStep = getTypeConversion(Context, NVT); in getTypeConversion() 933 return LegalizeKind(TypePromoteInteger, NVT); in getTypeConversion() 956 EVT NVT = EVT::getVectorVT(Context, EltVT, NumElts); in getTypeConversion() local 957 return LegalizeKind(TypeWidenVector, NVT); in getTypeConversion() 988 MVT NVT = MVT::getVectorVT(EltVT.getSimpleVT(), NumElts); in getTypeConversion() local [all …]
|
/external/llvm/include/llvm/Target/ |
D | TargetLowering.h | 692 MVT NVT = VT; in getTypeToPromoteTo() local 694 NVT = (MVT::SimpleValueType)(NVT.SimpleTy+1); in getTypeToPromoteTo() 695 assert(NVT.isInteger() == VT.isInteger() && NVT != MVT::isVoid && in getTypeToPromoteTo() 697 } while (!isTypeLegal(NVT) || in getTypeToPromoteTo() 698 getOperationAction(Op, NVT) == Promote); in getTypeToPromoteTo() 699 return NVT; in getTypeToPromoteTo()
|
/external/llvm/docs/ |
D | WritingAnLLVMBackend.rst | 1264 MVT::ValueType NVT = N.getNode()->getValueType(0); 1267 switch (NVT) {
|