Home
last modified time | relevance | path

Searched refs:EVT (Results 1 – 25 of 181) sorted by relevance

12345678

/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DValueTypes.h34 struct EVT { struct
40 constexpr EVT() = default; argument
41 constexpr EVT(MVT::SimpleValueType SVT) : V(SVT) {} in EVT() argument
42 constexpr EVT(MVT S) : V(S) {} in EVT() argument
44 bool operator==(EVT VT) const {
47 bool operator!=(EVT VT) const {
58 static EVT getFloatingPointVT(unsigned BitWidth) { in getFloatingPointVT() argument
64 static EVT getIntegerVT(LLVMContext &Context, unsigned BitWidth) { in getIntegerVT() argument
73 static EVT getVectorVT(LLVMContext &Context, EVT VT, unsigned NumElements,
83 static EVT getVectorVT(LLVMContext &Context, EVT VT, ElementCount EC) { in getVectorVT() argument
[all …]
H A DRuntimeLibcallUtil.h26 Libcall getFPLibCall(EVT VT, Libcall Call_F32, Libcall Call_F64,
31 Libcall getFPEXT(EVT OpVT, EVT RetVT);
35 Libcall getFPROUND(EVT OpVT, EVT RetVT);
39 Libcall getFPTOSINT(EVT OpVT, EVT RetVT);
43 Libcall getFPTOUINT(EVT OpVT, EVT RetVT);
47 Libcall getSINTTOFP(EVT OpVT, EVT RetVT);
51 Libcall getUINTTOFP(EVT OpVT, EVT RetVT);
55 Libcall getPOWI(EVT RetVT);
59 Libcall getLDEXP(EVT RetVT);
63 Libcall getFREXP(EVT RetVT);
H A DSelectionDAG.h107 const EVT *VTs;
114 SDVTListNode(const FoldingSetNodeIDRef ID, const EVT *VT, unsigned int Num) :
430 SDVTList VTs, EVT MemoryVT,
653 SDVTList getVTList(EVT VT);
654 SDVTList getVTList(EVT VT1, EVT VT2);
655 SDVTList getVTList(EVT VT1, EVT VT2, EVT VT3);
656 SDVTList getVTList(EVT VT1, EVT VT2, EVT VT3, EVT VT4);
657 SDVTList getVTList(ArrayRef<EVT> VTs);
668 SDValue getConstant(uint64_t Val, const SDLoc &DL, EVT VT,
670 SDValue getConstant(const APInt &Val, const SDLoc &DL, EVT VT,
[all …]
H A DTargetLowering.h231 using LegalizeKind = std::pair<LegalizeTypeAction, EVT>;
401 virtual MVT getScalarShiftAmountTy(const DataLayout &, EVT) const;
407 EVT getShiftAmountTy(EVT LHSTy, const DataLayout &DL) const;
458 virtual bool shouldExpandGetActiveLaneMask(EVT VT, EVT OpVT) const { in shouldExpandGetActiveLaneMask()
462 virtual bool shouldExpandGetVectorLength(EVT CountVT, unsigned VF, in shouldExpandGetVectorLength()
469 virtual bool shouldExpandCttzElements(EVT VT) const { return true; } in shouldExpandCttzElements()
479 virtual bool shouldReassociateReduction(unsigned RedOpc, EVT VT) const { in shouldReassociateReduction()
487 virtual bool reduceSelectOfFPConstantLoads(EVT CmpOpVT) const { in reduceSelectOfFPConstantLoads()
534 shouldExpandBuildVectorWithShuffles(EVT /* VT */, in shouldExpandBuildVectorWithShuffles() argument
543 virtual bool isIntDivCheap(EVT VT, AttributeList Attr) const { return false; } in isIntDivCheap()
[all …]
H A DAnalysis.h30 struct EVT;
66 SmallVectorImpl<EVT> &ValueVTs,
67 SmallVectorImpl<EVT> *MemVTs,
71 SmallVectorImpl<EVT> &ValueVTs,
72 SmallVectorImpl<EVT> *MemVTs,
78 Type *Ty, SmallVectorImpl<EVT> &ValueVTs,
84 Type *Ty, SmallVectorImpl<EVT> &ValueVTs, in ComputeValueVTs()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DValueTypes.cpp19 EVT EVT::changeExtendedTypeToInteger() const { in changeExtendedTypeToInteger()
25 EVT EVT::changeExtendedVectorElementTypeToInteger() const { in changeExtendedVectorElementTypeToInteger()
28 EVT IntTy = getIntegerVT(Context, getScalarSizeInBits()); in changeExtendedVectorElementTypeToInteger()
32 EVT EVT::changeExtendedVectorElementType(EVT EltVT) const { in changeExtendedVectorElementType()
38 EVT EVT::getExtendedIntegerVT(LLVMContext &Context, unsigned BitWidth) { in getExtendedIntegerVT()
39 EVT VT; in getExtendedIntegerVT()
45 EVT EVT::getExtendedVectorVT(LLVMContext &Context, EVT VT, unsigned NumElements, in getExtendedVectorVT()
47 EVT ResultVT; in getExtendedVectorVT()
54 EVT EVT::getExtendedVectorVT(LLVMContext &Context, EVT VT, ElementCount EC) { in getExtendedVectorVT()
55 EVT ResultVT; in getExtendedVectorVT()
[all …]
H A DTargetLoweringBase.cpp103 RTLIB::Libcall RTLIB::getFPLibCall(EVT VT, in getFPLibCall()
120 RTLIB::Libcall RTLIB::getFPEXT(EVT OpVT, EVT RetVT) { in getFPEXT()
155 RTLIB::Libcall RTLIB::getFPROUND(EVT OpVT, EVT RetVT) { in getFPROUND()
198 RTLIB::Libcall RTLIB::getFPTOSINT(EVT OpVT, EVT RetVT) { in getFPTOSINT()
247 RTLIB::Libcall RTLIB::getFPTOUINT(EVT OpVT, EVT RetVT) { in getFPTOUINT()
296 RTLIB::Libcall RTLIB::getSINTTOFP(EVT OpVT, EVT RetVT) { in getSINTTOFP()
342 RTLIB::Libcall RTLIB::getUINTTOFP(EVT OpVT, EVT RetVT) { in getUINTTOFP()
386 RTLIB::Libcall RTLIB::getPOWI(EVT RetVT) { in getPOWI()
391 RTLIB::Libcall RTLIB::getLDEXP(EVT RetVT) { in getLDEXP()
396 RTLIB::Libcall RTLIB::getFREXP(EVT RetVT) { in getFREXP()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/VE/
H A DVECustomDAG.h32 bool isPackedVectorType(EVT SomeVT);
34 bool isMaskType(EVT SomeVT);
40 bool supportsPackedMode(unsigned Opcode, EVT IdiomVT);
95 std::optional<EVT> getIdiomaticVectorType(SDNode *Op);
128 Packing getTypePacking(EVT);
164 SDValue getNode(unsigned OC, ArrayRef<EVT> ResVT, ArrayRef<SDValue> OpV,
172 SDValue getNode(unsigned OC, EVT ResVT, ArrayRef<SDValue> OpV,
180 SDValue getUNDEF(EVT VT) const { return DAG.getUNDEF(VT); } in getUNDEF()
184 SDValue getLegalReductionOpVVP(unsigned VVPOpcode, EVT ResVT, SDValue StartV,
190 SDValue getUnpack(EVT DestVT, SDValue Vec, PackElem Part, SDValue AVL) const;
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86ISelLowering.h989 MVT getScalarShiftAmountTy(const DataLayout &, EVT VT) const override { in getScalarShiftAmountTy()
1012 EVT getOptimalMemOpType(const MemOp &Op,
1023 bool isMemoryAccessFast(EVT VT, Align Alignment) const;
1027 bool allowsMisalignedMemoryAccesses(EVT VT, unsigned AS, Align Alignment,
1036 LLVMContext &Context, const DataLayout &DL, EVT VT, unsigned AddrSpace,
1041 bool allowsMemoryAccess(LLVMContext &Context, const DataLayout &DL, EVT VT, in allowsMemoryAccess()
1060 bool preferABDSToABSWithNSW(EVT VT) const override;
1062 bool preferSextInRegOfTruncate(EVT TruncVT, EVT VT,
1063 EVT ExtVT) const override;
1066 EVT VT) const override;
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUISelLowering.h103 bool shouldCombineMemoryType(EVT VT) const;
136 static EVT getEquivalentMemType(LLVMContext &Context, EVT VT);
150 std::pair<EVT, EVT> getSplitDestVTs(const EVT &VT, SelectionDAG &DAG) const;
155 const EVT &LoVT, const EVT &HighVT,
191 bool isFAbsFree(EVT VT) const override;
192 bool isFNegFree(EVT VT) const override;
193 bool isTruncateFree(EVT Src, EVT Dest) const override;
197 bool isZExtFree(EVT Src, EVT Dest) const override;
204 bool isNarrowingProfitable(EVT SrcVT, EVT DestVT) const override;
209 EVT getTypeForExtReturn(LLVMContext &Context, EVT VT,
[all …]
H A DSIISelLowering.h38 EVT VT) const override;
41 EVT VT) const override;
44 LLVMContext &Context, CallingConv::ID CC, EVT VT, EVT &IntermediateVT,
52 SDValue lowerKernargMemParameter(SelectionDAG &DAG, EVT VT, EVT MemVT,
66 EVT VT,
75 SDValue lowerSBuffer(EVT VT, SDLoc DL, SDValue Rsrc, SDValue Offset,
129 ArrayRef<SDValue> Ops, EVT MemVT,
140 EVT VT) const;
143 SelectionDAG &DAG, EVT VT, EVT MemVT, const SDLoc &SL, SDValue Val,
179 EVT MemVT,
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeVectorTypes.cpp251 EVT VT = LHS.getValueType().getVectorElementType(); in ScalarizeVecRes_CMP()
283 EVT VT0 = N->getValueType(0); in ScalarizeVecRes_FFREXP()
284 EVT VT1 = N->getValueType(1); in ScalarizeVecRes_FFREXP()
294 EVT OtherVT = N->getValueType(OtherNo); in ScalarizeVecRes_FFREXP()
307 EVT VT = N->getValueType(0).getVectorElementType(); in ScalarizeVecRes_StrictFPOp()
310 EVT ValueVTs[] = {VT, MVT::Other}; in ScalarizeVecRes_StrictFPOp()
321 EVT OperVT = Oper.getValueType(); in ScalarizeVecRes_StrictFPOp()
347 EVT ResVT = N->getValueType(0); in ScalarizeVecRes_OverflowOp()
348 EVT OvVT = N->getValueType(1); in ScalarizeVecRes_OverflowOp()
370 EVT OtherV in ScalarizeVecRes_OverflowOp()
[all...]
H A DLegalizeTypesGeneric.cpp41 EVT OutVT = N->getValueType(0); in ExpandRes_BITCAST()
42 EVT NOutVT = TLI.getTypeToTransformTo(*DAG.getContext(), OutVT); 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()
116 ElemVT = EVT::getIntegerVT(*DAG.getContext(), NewSizeInBits); in ExpandRes_BITCAST()
117 NVT = EVT::getVectorVT(*DAG.getContext(), ElemVT, NumElems); in ExpandRes_BITCAST()
141 EVT in ExpandRes_BITCAST()
[all...]
H A DLegalizeFloatTypes.cpp32 static RTLIB::Libcall GetFPLibCall(EVT VT, in GetFPLibCall()
182 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_Unary()
189 EVT OpVT = N->getOperand(0 + Offset).getValueType(); in SoftenFloatRes_Unary()
201 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_Binary()
209 EVT OpsVT[2] = { N->getOperand(0 + Offset).getValueType(), in SoftenFloatRes_Binary()
225 EVT Ty = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_FREEZE()
231 EVT Ty = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_ARITH_FENCE()
293 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in SoftenFloatRes_FABS()
376 EVT LVT = LHS.getValueType(); in SoftenFloatRes_FCOPYSIGN()
377 EVT RVT = RHS.getValueType(); in SoftenFloatRes_FCOPYSIGN()
[all …]
H A DLegalizeIntegerTypes.cpp368 EVT ResVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(0)); in PromoteIntRes_Atomic0()
415 EVT SVT = getSetCCResultType(N->getOperand(2).getValueType()); in PromoteIntRes_AtomicCmpSwap()
416 EVT NVT = TLI.getTypeToTransformTo(*DAG.getContext(), N->getValueType(1)); in PromoteIntRes_AtomicCmpSwap()
464 EVT InVT = InOp.getValueType(); in PromoteIntRes_BITCAST()
465 EVT NInVT = TLI.getTypeToTransformTo(*DAG.getContext(), InVT); in PromoteIntRes_BITCAST()
466 EVT OutVT = N->getValueType(0); in PromoteIntRes_BITCAST()
467 EVT NOutVT = TLI.getTypeToTransformTo(*DAG.getContext(), OutVT); in PromoteIntRes_BITCAST()
514 EVT::getIntegerVT(*DAG.getContext(), in PromoteIntRes_BITCAST()
547 EVT WideOutVT = in PromoteIntRes_BITCAST()
548 EVT::getVectorVT(*DAG.getContext(), OutVT.getVectorElementType(), in PromoteIntRes_BITCAST()
[all …]
H A DMatchContext.h41 bool isOperationLegal(unsigned Op, EVT VT) const { in isOperationLegal()
45 bool isOperationLegalOrCustom(unsigned Op, EVT VT,
111 SDValue getNode(unsigned Opcode, const SDLoc &DL, EVT VT, SDValue Operand) { in getNode()
119 SDValue getNode(unsigned Opcode, const SDLoc &DL, EVT VT, SDValue N1, in getNode()
127 SDValue getNode(unsigned Opcode, const SDLoc &DL, EVT VT, SDValue N1, in getNode()
136 SDValue getNode(unsigned Opcode, const SDLoc &DL, EVT VT, SDValue Operand, in getNode()
145 SDValue getNode(unsigned Opcode, const SDLoc &DL, EVT VT, SDValue N1, in getNode()
154 SDValue getNode(unsigned Opcode, const SDLoc &DL, EVT VT, SDValue N1, in getNode()
163 bool isOperationLegal(unsigned Op, EVT VT) const { in isOperationLegal()
168 bool isOperationLegalOrCustom(unsigned Op, EVT VT,
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64ISelLowering.h599 MVT getScalarShiftAmountTy(const DataLayout &DL, EVT) const override;
604 EVT VT, unsigned AddrSpace = 0, Align Alignment = Align(1),
627 bool isFPImmLegal(const APFloat &Imm, EVT VT,
632 bool isShuffleMaskLegal(ArrayRef<int> M, EVT VT) const override;
636 bool isVectorClearMaskLegal(ArrayRef<int> M, EVT VT) const override;
639 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &Context,
640 EVT VT) const override;
676 EVT NewVT) const override;
681 bool isTruncateFree(EVT VT1, EVT VT2) const override;
686 bool isZExtFree(EVT VT1, EVT VT2) const override;
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/CSKY/
H A DCSKYISelLowering.h51 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 getTargetNode(ConstantPoolSDNode *N, SDLoc DL, EVT Ty,
116 SDValue getTargetConstantPoolValue(GlobalAddressSDNode *N, EVT Ty,
119 SDValue getTargetConstantPoolValue(ExternalSymbolSDNode *N, EVT Ty,
122 SDValue getTargetConstantPoolValue(JumpTableSDNode *N, EVT T
[all...]
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVISelLowering.h499 bool isTruncateFree(EVT SrcVT, EVT DstVT) const override;
500 bool isTruncateFree(SDValue Val, EVT VT2) const override;
501 bool isZExtFree(SDValue Val, EVT VT2) const override;
502 bool isSExtCheaperThanZExt(EVT SrcVT, EVT DstVT) const override;
523 std::pair<int, bool> getLegalZfaFPImm(const APFloat &Imm, EVT VT) const;
524 bool isFPImmLegal(const APFloat &Imm, EVT VT,
526 bool isExtractSubvectorCheap(EVT ResVT, EVT SrcVT,
529 bool isIntDivCheap(EVT VT, AttributeList Attr) const override;
538 EVT VT) const override;
544 EVT VT) const override;
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFISelLowering.h64 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &Context,
65 EVT VT) const override;
67 MVT getScalarShiftAmountTy(const DataLayout &, EVT) const override;
116 EVT getOptimalMemOpType(const MemOp &Op, in getOptimalMemOpType()
121 bool isIntDivCheap(EVT VT, AttributeList Attr) const override { return true; } in isIntDivCheap()
137 EVT NewVT) const override { in shouldReduceLoadWidth()
149 bool isTruncateFree(EVT VT1, EVT VT2) const override;
153 bool isZExtFree(EVT VT1, EVT VT2) const override;
154 bool isZExtFree(SDValue Val, EVT VT2) const override;
/freebsd/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZISelLowering.h416 MVT getScalarShiftAmountTy(const DataLayout &, EVT) const override { in getScalarShiftAmountTy() argument
442 getNumRegisters(LLVMContext &Context, EVT VT, in getNumRegisters()
450 EVT VT) const override { in getRegisterTypeForCallingConv()
465 bool convertSetCCLogicToBitwiseLogic(EVT VT) const override { in convertSetCCLogicToBitwiseLogic()
468 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &,
469 EVT) const override;
471 EVT VT) const override;
472 bool isFPImmLegal(const APFloat &Imm, EVT VT,
474 bool ShouldShrinkFPConstant(EVT VT) const override { in ShouldShrinkFPConstant()
489 bool allowsMisalignedMemoryAccesses(EVT VT, unsigned AS, Align Alignment,
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMipsISelLowering.h281 MVT getScalarShiftAmountTy(const DataLayout &, EVT) const override { in getScalarShiftAmountTy() argument
285 EVT getTypeForExtReturn(LLVMContext &Context, EVT VT,
297 EVT VT) const override;
303 EVT VT) const override;
307 LLVMContext &Context, CallingConv::ID CC, EVT VT, EVT &IntermediateVT,
337 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &Context,
338 EVT VT) const override;
377 SDValue getGlobalReg(SelectionDAG &DAG, EVT Ty) const;
384 SDValue getAddrLocal(NodeTy *N, const SDLoc &DL, EVT Ty, SelectionDAG &DAG, in getAddrLocal()
403 SDValue getAddrGlobal(NodeTy *N, const SDLoc &DL, EVT Ty, SelectionDAG &DAG, in getAddrGlobal()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMISelLowering.h422 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &Context,
423 EVT VT) const override;
447 bool isDesirableToTransformToIntegerOp(unsigned Opc, EVT VT) const override;
452 bool allowsMisalignedMemoryAccesses(EVT VT, unsigned AddrSpace,
457 EVT getOptimalMemOpType(const MemOp &Op,
461 bool isTruncateFree(EVT SrcVT, EVT DstVT) const override;
462 bool isZExtFree(SDValue Val, EVT VT2) const override;
467 bool isFNegFree(EVT VT) const override;
480 bool isLegalT2ScaledAddressingMode(const AddrMode &AM, EVT VT) const;
484 bool isLegalT1ScaledAddressingMode(const AddrMode &AM, EVT VT) const;
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchISelLowering.h196 EVT getSetCCResultType(const DataLayout &DL, LLVMContext &Context,
197 EVT VT) const override;
211 EVT VT) const override;
229 bool decomposeMulByConstant(LLVMContext &Context, EVT VT,
240 bool isZExtFree(SDValue Val, EVT VT2) const override;
241 bool isSExtCheaperThanZExt(EVT SrcVT, EVT DstVT) const override;
246 bool convertSelectOfConstantsToMath(EVT VT) const override { return true; } in convertSelectOfConstantsToMath()
249 EVT VT, unsigned AddrSpace = 0, Align Alignment = Align(1),
253 bool isShuffleMaskLegal(ArrayRef<int> Mask, EVT VT) const override { in isShuffleMaskLegal()
257 bool shouldSignExtendTypeInLibCall(EVT Type, bool IsSigned) const override;
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/
H A DSPIRVISelLowering.h37 EVT) const override { in isFMAFasterThanFMulAndFAdd() argument
51 EVT VT) const override;
53 EVT VT) const override;
62 getNumRegisters(LLVMContext &Context, EVT VT,
73 EVT ConditionVT) const override { in getPreferredSwitchConditionType()

12345678