| /llvm-project-15.0.7/llvm/include/llvm/CodeGen/ |
| H A D | ValueTypes.h | 34 struct EVT { struct 40 constexpr EVT() = default; argument 73 static EVT getVectorVT(LLVMContext &Context, EVT VT, unsigned NumElements, 83 static EVT getVectorVT(LLVMContext &Context, EVT VT, ElementCount EC) { in getVectorVT() argument 101 EVT changeVectorElementType(EVT EltVT) const { in changeVectorElementType() argument 390 return EVT(MVT::i8); in getRoundIntegerType() 402 EVT HalfVT = EVT((MVT::SimpleValueType)IntVT); in getHalfSizedIntegerVT() 479 bool operator()(EVT L, EVT R) const { in operator() argument 492 EVT changeExtendedVectorElementType(EVT EltVT) const; 495 static EVT getExtendedVectorVT(LLVMContext &C, EVT VT, unsigned NumElements, [all …]
|
| H A D | RuntimeLibcalls.h | 38 Libcall getFPLibCall(EVT VT, 47 Libcall getFPEXT(EVT OpVT, EVT RetVT); 51 Libcall getFPROUND(EVT OpVT, EVT RetVT); 55 Libcall getFPTOSINT(EVT OpVT, EVT RetVT); 59 Libcall getFPTOUINT(EVT OpVT, EVT RetVT); 63 Libcall getSINTTOFP(EVT OpVT, EVT RetVT); 67 Libcall getUINTTOFP(EVT OpVT, EVT RetVT); 71 Libcall getPOWI(EVT RetVT);
|
| H A D | SelectionDAG.h | 100 const EVT *VTs; 618 SDVTList getVTList(EVT VT1, EVT VT2); 619 SDVTList getVTList(EVT VT1, EVT VT2, EVT VT3); 620 SDVTList getVTList(EVT VT1, EVT VT2, EVT VT3, EVT VT4); 667 SDValue getBoolConstant(bool V, const SDLoc &DL, EVT VT, EVT OpVT); 1589 EVT VT2, EVT VT3, ArrayRef<SDValue> Ops); 1841 SDValue CreateStackTemporary(EVT VT1, EVT VT2); 2094 std::pair<EVT, EVT> GetSplitDestVTs(const EVT &VT) const; 2099 std::pair<EVT, EVT> GetDependentSplitDestVTs(const EVT &VT, const EVT &EnvVT, 2109 EVT LoVT, HiVT; [all …]
|
| H A D | TargetLowering.h | 395 EVT getShiftAmountTy(EVT LHSTy, const DataLayout &DL, 874 EVT BoolVT = in promoteTargetBoolean() 992 EVT getTypeToExpandTo(LLVMContext &Context, EVT VT) const { in getTypeToExpandTo() 1314 bool isTruncStoreLegal(EVT ValVT, EVT MemVT) const { in isTruncStoreLegal() 1326 virtual bool canCombineTruncStore(EVT ValVT, EVT MemVT, in canCombineTruncStore() 1526 EVT VT1; in getRegisterType() 1559 EVT VT1; 1755 virtual EVT 2197 virtual bool shouldUseStrictFP_TO_INT(EVT FpVT, EVT IntVT, in shouldUseStrictFP_TO_INT() 2860 virtual bool isFPExtFree(EVT DestVT, EVT SrcVT) const { in isFPExtFree() [all …]
|
| /llvm-project-15.0.7/llvm/unittests/CodeGen/ |
| H A D | ScalableVectorMVTsTest.cpp | 48 EVT Vnx4i32 = EVT::getVectorVT(Ctx, MVT::i32, 4, /*Scalable=*/true); in TEST() 53 EVT Vnx2i32 = EVT::getVectorVT(Ctx, MVT::i32, EltCnt); in TEST() 79 EVT V8i32 = EVT::getVectorVT(Ctx, MVT::i32, 8); in TEST() 105 EVT Enxv8i64 = EVT::getEVT(ScV8Int64Ty); in TEST() 128 EVT nxv4i32 = EVT::getVectorVT(Ctx, MVT::i32, 4, /*Scalable=*/ true); in TEST() 129 EVT nxv2i32 = EVT::getVectorVT(Ctx, MVT::i32, 2, /*Scalable=*/ true); in TEST() 130 EVT nxv2i64 = EVT::getVectorVT(Ctx, MVT::i64, 2, /*Scalable=*/ true); in TEST() 133 EVT v4i32 = EVT::getVectorVT(Ctx, MVT::i32, 4); in TEST() 134 EVT v2i32 = EVT::getVectorVT(Ctx, MVT::i32, 2); in TEST() 135 EVT v2i64 = EVT::getVectorVT(Ctx, MVT::i64, 2); in TEST() [all …]
|
| H A D | AArch64SelectionDAGTest.cpp | 75 EVT getTypeToTransformTo(EVT VT) { in getTypeToTransformTo() 89 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 102 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 119 auto IntVT = EVT::getIntegerVT(Context, 8); in TEST_F() 121 auto IdxVT = EVT::getIntegerVT(Context, 64); in TEST_F() 156 auto IntVT = EVT::getIntegerVT(Context, 8); in TEST_F() 170 auto IntVT = EVT::getIntegerVT(Context, 8); in TEST_F() 563 EVT VT = EVT::getVectorVT(Context, MVT::i64, 256, true); in TEST_F() 569 EVT FromVT = EVT::getVectorVT(Context, MVT::i64, 6, true); in TEST_F() 570 EVT ToVT = EVT::getVectorVT(Context, MVT::i64, 8, true); in TEST_F() [all …]
|
| H A D | SelectionDAGAddressAnalysisTest.cpp | 87 EVT getTypeToTransformTo(EVT VT) { in getTypeToTransformTo() 103 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 104 auto VecVT = EVT::getVectorVT(Context, Int8VT, 4); in TEST_F() 126 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 127 auto VecVT = EVT::getVectorVT(Context, Int8VT, 4); in TEST_F() 151 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 183 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 212 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 273 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() 312 auto Int8VT = EVT::getIntegerVT(Context, 8); in TEST_F() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/VE/ |
| H A D | VECustomDAG.h | 32 bool isPackedVectorType(EVT SomeVT); 34 bool isMaskType(EVT SomeVT); 40 bool supportsPackedMode(unsigned Opcode, EVT IdiomVT); 95 Optional<EVT> getIdiomaticVectorType(SDNode *Op); 128 Packing getTypePacking(EVT); 172 SDValue getNode(unsigned OC, EVT ResVT, ArrayRef<SDValue> OpV, 180 SDValue getUNDEF(EVT VT) const { return DAG.getUNDEF(VT); } in getUNDEF() 198 SDValue getConstant(uint64_t Val, EVT VT, bool IsTarget = false, 203 SDValue getBroadcast(EVT ResultVT, SDValue Scalar, SDValue AVL) const; 216 EVT getVectorVT(EVT ElemVT, unsigned NumElems) const { in getVectorVT() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUISelLowering.h | 106 static EVT getEquivalentMemType(LLVMContext &Context, EVT VT); 120 std::pair<EVT, EVT> getSplitDestVTs(const EVT &VT, SelectionDAG &DAG) const; 125 const EVT &LoVT, const EVT &HighVT, 160 bool isFAbsFree(EVT VT) const override; 161 bool isFNegFree(EVT VT) const override; 162 bool isTruncateFree(EVT Src, EVT Dest) const override; 166 bool isZExtFree(EVT Src, EVT Dest) const override; 174 bool isNarrowingProfitable(EVT VT1, EVT VT2) const override; 176 EVT getTypeForExtReturn(LLVMContext &Context, EVT VT, 189 bool isLoadBitCastBeneficial(EVT, EVT, const SelectionDAG &DAG, [all …]
|
| H A D | SIISelLowering.h | 44 LLVMContext &Context, CallingConv::ID CC, EVT VT, EVT &IntermediateVT, 52 SDValue lowerKernargMemParameter(SelectionDAG &DAG, EVT VT, EVT MemVT, 66 EVT VT, 135 EVT VT) const; 138 SelectionDAG &DAG, EVT VT, EVT MemVT, const SDLoc &SL, SDValue Val, 170 EVT MemVT, 286 bool canMergeStoresTo(unsigned AS, EVT MemVT, 305 EVT VT, unsigned AS, Align Alignment, 309 EVT getOptimalMemOpType(const MemOp &Op, 325 bool isExtractSubvectorCheap(EVT ResVT, EVT SrcVT, [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/X86/ |
| H A D | X86ISelLowering.h | 1044 bool isMultiStoresCheaperThanBitsMerge(EVT LTy, EVT HTy) const override { in isMultiStoresCheaperThanBitsMerge() 1100 bool shouldConvertFpToSat(unsigned Op, EVT FPVT, EVT VT) const override { in shouldConvertFpToSat() 1266 bool isTruncateFree(EVT VT1, EVT VT2) const override; 1279 bool isZExtFree(EVT VT1, EVT VT2) const override; 1299 bool isNarrowingProfitable(EVT VT1, EVT VT2) const override; 1363 bool isExtractSubvectorCheap(EVT ResVT, EVT SrcVT, 1373 EVT EltVT = VT.getScalarType(); 1390 bool isLoadBitCastBeneficial(EVT LoadVT, EVT BitcastVT, 1437 std::pair<SDValue, SDValue> BuildFILD(EVT DstVT, EVT SrcVT, const SDLoc &DL, 1456 LLVMContext &Context, CallingConv::ID CC, EVT VT, EVT &IntermediateVT, [all …]
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | LegalizeVectorTypes.cpp | 4514 EVT ExtVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecRes_InregOp() 4928 EVT WideMaskVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecRes_MLOAD() 4954 EVT WideMaskVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecRes_MGATHER() 4961 EVT WideIndexVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecRes_MGATHER() 4969 EVT WideMemVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecRes_MGATHER() 4989 EVT WideMemVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecRes_VP_GATHER() 5613 EVT ResVT = in WidenVecOp_IS_FPCLASS() 5698 EVT WideDstVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecOp_FP_TO_XINT_SAT() 5928 EVT WideMaskVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecOp_MSTORE() 5938 EVT WideVT = EVT::getVectorVT(*DAG.getContext(), in WidenVecOp_MSTORE() [all …]
|
| H A D | LegalizeTypesGeneric.cpp | 41 EVT OutVT = N->getValueType(0); in ExpandRes_BITCAST() 44 EVT InVT = InOp.getValueType(); in ExpandRes_BITCAST() 91 EVT LoVT, HiVT; in ExpandRes_BITCAST() 106 EVT ElemVT = NOutVT; in ExpandRes_BITCAST() 107 EVT NVT = EVT::getVectorVT(*DAG.getContext(), ElemVT, NumElems); in ExpandRes_BITCAST() 226 EVT NVecVT = EVT::getVectorVT(*DAG.getContext(), OldVT, OldElts); in ExpandRes_EXTRACT_VECTOR_ELT() 349 EVT NVT = EVT::getVectorVT(*DAG.getContext(), in ExpandOp_BITCAST() 396 EVT NewVecVT = EVT::getVectorVT(*DAG.getContext(), NewVT, NewElts.size()); in ExpandOp_BUILD_VECTOR() 424 EVT NewVecVT = EVT::getVectorVT(*DAG.getContext(), NewEVT, NumElts*2); in ExpandOp_INSERT_VECTOR_ELT() 447 EVT VT = N->getValueType(0); in ExpandOp_SCALAR_TO_VECTOR() [all …]
|
| H A D | LegalizeFloatTypes.cpp | 773 EVT NVT = EVT(); in SoftenFloatRes_XINT_TO_FP() 948 static RTLIB::Libcall findFPToIntLibcall(EVT SrcVT, EVT RetVT, EVT &Promoted, in findFPToIntLibcall() 971 EVT NVT = EVT(); in SoftenFloatOp_FP_TO_XINT() 1089 EVT ILVT = EVT::getIntegerVT(*DAG.getContext(), LVT.getSizeInBits()); in SoftenFloatOp_FCOPYSIGN() 1936 EVT NVT; in ExpandFloatOp_FP_TO_XINT() 2073 static ISD::NodeType GetPromotionOpcode(EVT OpVT, EVT RetVT) { in GetPromotionOpcode() 2212 EVT IVT = EVT::getIntegerVT(*DAG.getContext(), VT.getSizeInBits()); in PromoteFloatOp_STORE() 2328 EVT IVT = EVT::getIntegerVT(*DAG.getContext(), in PromoteFloatRes_BITCAST() 2340 EVT IVT = EVT::getIntegerVT(*DAG.getContext(), VT.getSizeInBits()); in PromoteFloatRes_ConstantFP() 2478 EVT IVT = EVT::getIntegerVT(*DAG.getContext(), VT.getSizeInBits()); in PromoteFloatRes_FP_ROUND() [all …]
|
| H A D | LegalizeIntegerTypes.cpp | 1015 EVT WideVT = EVT::getIntegerVT(*DAG.getContext(), VTSize * 2); in earlyExpandDIVFIX() 1391 EVT TruncVT = EVT::getVectorVT(*DAG.getContext(), in PromoteIntRes_TRUNCATE() 3198 EVT EVT = cast<VTSDNode>(N->getOperand(1))->getVT(); in ExpandIntRes_AssertSext() local 3220 EVT EVT = cast<VTSDNode>(N->getOperand(1))->getVT(); in ExpandIntRes_AssertZext() local 3573 EVT NEVT = EVT::getIntegerVT(*DAG.getContext(), ExcessBits); in ExpandIntRes_LOAD() 4290 EVT EVT = cast<VTSDNode>(N->getOperand(1))->getVT(); in ExpandIntRes_SIGN_EXTEND_INREG() local 4436 EVT WideVT = in ExpandIntRes_XMULO() 4664 EVT HalfVT = in ExpandIntRes_VSCALE() 5084 EVT HiVT = EVT::getIntegerVT(*DAG.getContext(), in ExpandIntOp_STORE() 5267 EVT NSubVT = in PromoteIntRes_INSERT_SUBVECTOR() [all …]
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/ |
| H A D | ValueTypes.cpp | 18 EVT EVT::changeExtendedTypeToInteger() const { in changeExtendedTypeToInteger() 24 EVT EVT::changeExtendedVectorElementTypeToInteger() const { in changeExtendedVectorElementTypeToInteger() 31 EVT EVT::changeExtendedVectorElementType(EVT EltVT) const { in changeExtendedVectorElementType() 37 EVT EVT::getExtendedIntegerVT(LLVMContext &Context, unsigned BitWidth) { in getExtendedIntegerVT() 38 EVT VT; in getExtendedIntegerVT() 44 EVT EVT::getExtendedVectorVT(LLVMContext &Context, EVT VT, unsigned NumElements, in getExtendedVectorVT() 46 EVT ResultVT; in getExtendedVectorVT() 53 EVT EVT::getExtendedVectorVT(LLVMContext &Context, EVT VT, ElementCount EC) { in getExtendedVectorVT() 54 EVT ResultVT; in getExtendedVectorVT() 120 EVT EVT::getExtendedVectorElementType() const { in getExtendedVectorElementType() [all …]
|
| H A D | TargetLoweringBase.cpp | 233 RTLIB::Libcall RTLIB::getFPEXT(EVT OpVT, EVT RetVT) { in getFPEXT() 265 RTLIB::Libcall RTLIB::getFPROUND(EVT OpVT, EVT RetVT) { in getFPROUND() 308 RTLIB::Libcall RTLIB::getFPTOSINT(EVT OpVT, EVT RetVT) { in getFPTOSINT() 357 RTLIB::Libcall RTLIB::getFPTOUINT(EVT OpVT, EVT RetVT) { in getFPTOUINT() 406 RTLIB::Libcall RTLIB::getSINTTOFP(EVT OpVT, EVT RetVT) { in getSINTTOFP() 452 RTLIB::Libcall RTLIB::getUINTTOFP(EVT OpVT, EVT RetVT) { in getUINTTOFP() 908 EVT TargetLoweringBase::getShiftAmountTy(EVT LHSTy, const DataLayout &DL, in getShiftAmountTy() 1006 EVT NVT = EVT::getVectorVT(Context, EltVT, NumElts); in getTypeConversion() 1083 EVT NVT = EVT::getVectorVT(Context, EltVT, in getTypeConversion() 1564 EVT PartVT = VT; in getVectorTypeBreakdown() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/AArch64/ |
| H A D | AArch64ISelLowering.h | 594 bool isTruncateFree(EVT VT1, EVT VT2) const override; 599 bool isZExtFree(EVT VT1, EVT VT2) const override; 624 EVT getOptimalMemOpType(const MemOp &Op, 674 bool isExtractSubvectorCheap(EVT ResVT, EVT SrcVT, 766 EVT VT = Y.getValueType(); in hasAndNot() 789 auto VTIsOk = [](EVT VT) -> bool { in shouldTransformSignedTruncationCheck() 802 bool shouldConvertFpToSat(unsigned Op, EVT FPVT, EVT VT) const override; 867 EVT getPromotedVTForPredicate(EVT VT) const; 872 bool shouldExpandGetActiveLaneMask(EVT VT, EVT OpVT) const override; 1108 bool shouldExtendGSIndex(EVT VT, EVT &EltTy) const override; [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/BPF/ |
| H A D | BPFISelLowering.h | 64 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &Context, 65 EVT VT) const override; 67 MVT getScalarShiftAmountTy(const DataLayout &, EVT) const override; 108 EVT getOptimalMemOpType(const MemOp &Op, in getOptimalMemOpType() 113 bool isIntDivCheap(EVT VT, AttributeList Attr) const override { return true; } in isIntDivCheap() 129 EVT NewVT) const override { in shouldReduceLoadWidth() 141 bool isTruncateFree(EVT VT1, EVT VT2) const override; 145 bool isZExtFree(EVT VT1, EVT VT2) const override;
|
| /llvm-project-15.0.7/llvm/lib/Target/RISCV/ |
| H A D | RISCVISelLowering.h | 365 bool isTruncateFree(EVT SrcVT, EVT DstVT) const override; 366 bool isZExtFree(SDValue Val, EVT VT2) const override; 367 bool isSExtCheaperThanZExt(EVT SrcVT, EVT DstVT) const override; 381 bool isFPImmLegal(const APFloat &Imm, EVT VT, 401 bool hasBitPreservingFPLogic(EVT VT) const override; 403 shouldExpandBuildVectorWithShuffles(EVT VT, 452 EVT VT) const override; 468 EVT VT) const override; 563 MVT PartVT, EVT ValueVT, 585 bool shouldRemoveExtendFromGSIndex(EVT IndexVT, EVT DataVT) const override; [all …]
|
| /llvm-project-15.0.7/clang/test/CodeGenCXX/ |
| H A D | debug-info-byval.cpp | 11 class EVT { class 23 void foo(EVT e); 24 EVT bar(); 26 void get(int *i, unsigned dl, VAL v, VAL *p, unsigned n, EVT missing_arg) { in get() 28 EVT e = bar(); in get()
|
| /llvm-project-15.0.7/llvm/lib/Target/CSKY/ |
| H A D | CSKYISelLowering.h | 51 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &Context, 52 EVT VT) const override; 101 SDValue getTargetNode(GlobalAddressSDNode *N, SDLoc DL, EVT Ty, 104 SDValue getTargetNode(ExternalSymbolSDNode *N, SDLoc DL, EVT Ty, 107 SDValue getTargetNode(JumpTableSDNode *N, SDLoc DL, EVT Ty, SelectionDAG &DAG, 110 SDValue getTargetNode(BlockAddressSDNode *N, SDLoc DL, EVT Ty, 113 SDValue getTargetConstantPoolValue(GlobalAddressSDNode *N, EVT Ty, 116 SDValue getTargetConstantPoolValue(ExternalSymbolSDNode *N, EVT Ty, 119 SDValue getTargetConstantPoolValue(JumpTableSDNode *N, EVT Ty, 122 SDValue getTargetConstantPoolValue(BlockAddressSDNode *N, EVT Ty, [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/SystemZ/ |
| H A D | SystemZISelLowering.h | 419 getNumRegisters(LLVMContext &Context, EVT VT, in getNumRegisters() 429 EVT ScVT = VT.getScalarType(); in hasBitPreservingFPLogic() 440 EVT) const override; 443 bool isFPImmLegal(const APFloat &Imm, EVT VT, 463 EVT getOptimalMemOpType(const MemOp &Op, 466 bool isTruncateFree(EVT, EVT) const override; in isTruncateFree() argument 468 bool shouldFormOverflowOp(unsigned Opcode, EVT VT, 624 const SDLoc &DL, EVT VT, 692 bool canTreatAsByteVector(EVT VT) const; 693 SDValue combineExtract(const SDLoc &DL, EVT ElemVT, EVT VecVT, SDValue OrigOp, [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/Mips/ |
| H A D | MipsISelLowering.h | 283 EVT getTypeForExtReturn(LLVMContext &Context, EVT VT, 295 EVT VT) const override; 301 EVT VT) const override; 305 LLVMContext &Context, CallingConv::ID CC, EVT VT, EVT &IntermediateVT, 336 EVT VT) const override; 375 SDValue getGlobalReg(SelectionDAG &DAG, EVT Ty) const; 433 SDValue getAddrNonPIC(NodeTy *N, const SDLoc &DL, EVT Ty, in getAddrNonPIC() 450 SDValue getAddrNonPICSym64(NodeTy *N, const SDLoc &DL, EVT Ty, in getAddrNonPICSym64() 477 SDValue getAddrGPRel(NodeTy *N, const SDLoc &DL, EVT Ty, in getAddrGPRel() 666 EVT getOptimalMemOpType(const MemOp &Op, [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/ARM/ |
| H A D | ARMISelLowering.h | 416 EVT VT) const override; 450 EVT getOptimalMemOpType(const MemOp &Op, 454 bool isTruncateFree(EVT SrcVT, EVT DstVT) const override; 460 bool isFNegFree(EVT VT) const override; 602 bool isFPImmLegal(const APFloat &Imm, EVT VT, 617 bool isExtractSubvectorCheap(EVT ResVT, EVT SrcVT, 620 bool shouldFormOverflowOp(unsigned Opcode, EVT VT, in shouldFormOverflowOp() 701 bool hasStandaloneRem(EVT VT) const override { in hasStandaloneRem() 743 bool shouldConvertFpToSat(unsigned Op, EVT FPVT, EVT VT) const override; 896 MVT PartVT, EVT ValueVT, [all …]
|