LLVM 19.0.0git
llvm::AArch64TTIImpl Member List

This is the complete list of members for llvm::AArch64TTIImpl, including all inherited members.

AArch64TTIImpl(const AArch64TargetMachine *TM, const Function &F)llvm::AArch64TTIImplinlineexplicit
addrspacesMayAlias(unsigned AS0, unsigned AS1) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
adjustInliningThreshold(const CallBase *CB)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::adjustInliningThreshold(const CallBase *CB) constllvm::TargetTransformInfoImplBaseinline
allowsMisalignedMemoryAccesses(LLVMContext &Context, unsigned BitWidth, unsigned AddressSpace, Align Alignment, unsigned *Fast) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
areInlineCompatible(const Function *Caller, const Function *Callee) constllvm::AArch64TTIImpl
areTypesABICompatible(const Function *Caller, const Function *Callee, const ArrayRef< Type * > &Types) constllvm::AArch64TTIImpl
BasicTTIImplBase(const TargetMachine *TM, const DataLayout &DL)llvm::BasicTTIImplBase< AArch64TTIImpl >inlineexplicitprotected
canHaveNonUndefGlobalInitializerInAddressSpace(unsigned AS) constllvm::TargetTransformInfoImplBaseinline
canMacroFuseCmp() constllvm::TargetTransformInfoImplBaseinline
canSaveCmp(Loop *L, BranchInst **BI, ScalarEvolution *SE, LoopInfo *LI, DominatorTree *DT, AssumptionCache *AC, TargetLibraryInfo *LibInfo) constllvm::TargetTransformInfoImplBaseinline
collectFlatAddressOperands(SmallVectorImpl< int > &OpIndexes, Intrinsic::ID IID) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
DLllvm::BasicTTIImplBase< AArch64TTIImpl >protected
enableAggressiveInterleaving(bool LoopHasReductions) constllvm::TargetTransformInfoImplBaseinline
enableInterleavedAccessVectorization()llvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::enableInterleavedAccessVectorization() constllvm::TargetTransformInfoImplBaseinline
enableMaskedInterleavedAccessVectorization()llvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::enableMaskedInterleavedAccessVectorization() constllvm::TargetTransformInfoImplBaseinline
enableMemCmpExpansion(bool OptSize, bool IsZeroCmp) constllvm::AArch64TTIImpl
enableOrderedReductions() constllvm::AArch64TTIImplinline
enableScalableVectorization() constllvm::AArch64TTIImplinline
enableSelectOptimize()llvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::enableSelectOptimize() constllvm::TargetTransformInfoImplBaseinline
enableWritePrefetching() constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
forceScalarizeMaskedGather(VectorType *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
forceScalarizeMaskedScatter(VectorType *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
getAddressComputationCost(Type *Ty, ScalarEvolution *SE, const SCEV *Ptr)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getAddressComputationCost(Type *Tp, ScalarEvolution *, const SCEV *) constllvm::TargetTransformInfoImplBaseinline
getAltInstrCost(VectorType *VecTy, unsigned Opcode0, unsigned Opcode1, const SmallBitVector &OpcodeMask, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getArithmeticInstrCost(unsigned Opcode, Type *Ty, TTI::TargetCostKind CostKind, TTI::OperandValueInfo Op1Info={TTI::OK_AnyValue, TTI::OP_None}, TTI::OperandValueInfo Op2Info={TTI::OK_AnyValue, TTI::OP_None}, ArrayRef< const Value * > Args=ArrayRef< const Value * >(), const Instruction *CxtI=nullptr)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getArithmeticInstrCost(unsigned Opcode, Type *Ty, TTI::TargetCostKind CostKind, TTI::OperandValueInfo Opd1Info, TTI::OperandValueInfo Opd2Info, ArrayRef< const Value * > Args, const Instruction *CxtI=nullptr) constllvm::TargetTransformInfoImplBaseinline
getArithmeticReductionCost(unsigned Opcode, VectorType *Ty, std::optional< FastMathFlags > FMF, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getArithmeticReductionCost(unsigned, VectorType *, std::optional< FastMathFlags > FMF, TTI::TargetCostKind) constllvm::TargetTransformInfoImplBaseinline
getArithmeticReductionCostSVE(unsigned Opcode, VectorType *ValTy, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
getAssumedAddrSpace(const Value *V) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
getAtomicMemIntrinsicMaxElementSize() constllvm::TargetTransformInfoImplBaseinline
getCacheAssociativity(TargetTransformInfo::CacheLevel Level) constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
getCacheLineSize() constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
getCacheSize(TargetTransformInfo::CacheLevel Level) constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
getCallerAllocaCost(const CallBase *CB, const AllocaInst *AI) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
getCallInstrCost(Function *F, Type *RetTy, ArrayRef< Type * > Tys, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getCallInstrCost(Function *F, Type *RetTy, ArrayRef< Type * > Tys, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getCastInstrCost(unsigned Opcode, Type *Dst, Type *Src, TTI::CastContextHint CCH, TTI::TargetCostKind CostKind, const Instruction *I=nullptr)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getCastInstrCost(unsigned Opcode, Type *Dst, Type *Src, TTI::CastContextHint CCH, TTI::TargetCostKind CostKind, const Instruction *I) constllvm::TargetTransformInfoImplBaseinline
getCFInstrCost(unsigned Opcode, TTI::TargetCostKind CostKind, const Instruction *I=nullptr)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getCFInstrCost(unsigned Opcode, TTI::TargetCostKind CostKind, const Instruction *I=nullptr) constllvm::TargetTransformInfoImplBaseinline
getCmpSelInstrCost(unsigned Opcode, Type *ValTy, Type *CondTy, CmpInst::Predicate VecPred, TTI::TargetCostKind CostKind, const Instruction *I=nullptr)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getCmpSelInstrCost(unsigned Opcode, Type *ValTy, Type *CondTy, CmpInst::Predicate VecPred, TTI::TargetCostKind CostKind, const Instruction *I) constllvm::TargetTransformInfoImplBaseinline
getConstantStrideStep(ScalarEvolution *SE, const SCEV *Ptr) constllvm::TargetTransformInfoImplBaseinlineprotected
getCostOfKeepingLiveOverCall(ArrayRef< Type * > Tys)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getCostOfKeepingLiveOverCall(ArrayRef< Type * > Tys) constllvm::TargetTransformInfoImplBaseinline
getDataLayout() constllvm::TargetTransformInfoImplBaseinline
getEstimatedNumberOfCaseClusters(const SwitchInst &SI, unsigned &JumpTableSize, ProfileSummaryInfo *PSI, BlockFrequencyInfo *BFI)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getEstimatedNumberOfCaseClusters(const SwitchInst &SI, unsigned &JTSize, ProfileSummaryInfo *PSI, BlockFrequencyInfo *BFI) constllvm::TargetTransformInfoImplBaseinline
getExtendedReductionCost(unsigned Opcode, bool IsUnsigned, Type *ResTy, VectorType *Ty, FastMathFlags FMF, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getExtendedReductionCost(unsigned Opcode, bool IsUnsigned, Type *ResTy, VectorType *Ty, FastMathFlags FMF, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getExtractWithExtendCost(unsigned Opcode, Type *Dst, VectorType *VecTy, unsigned Index)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getExtractWithExtendCost(unsigned Opcode, Type *Dst, VectorType *VecTy, unsigned Index) constllvm::TargetTransformInfoImplBaseinline
getFlatAddressSpace()llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getFlatAddressSpace() constllvm::TargetTransformInfoImplBaseinline
getFPOpCost(Type *Ty)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getFPOpCost(Type *Ty) constllvm::TargetTransformInfoImplBaseinline
getGatherScatterOpCost(unsigned Opcode, Type *DataTy, const Value *Ptr, bool VariableMask, Align Alignment, TTI::TargetCostKind CostKind, const Instruction *I=nullptr)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getGatherScatterOpCost(unsigned Opcode, Type *DataTy, const Value *Ptr, bool VariableMask, Align Alignment, TTI::TargetCostKind CostKind, const Instruction *I=nullptr) constllvm::TargetTransformInfoImplBaseinline
getGEPCost(Type *PointeeType, const Value *Ptr, ArrayRef< const Value * > Operands, Type *AccessType, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getGEPCost(Type *PointeeType, const Value *Ptr, ArrayRef< const Value * > Operands, Type *AccessType, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplCRTPBase< T >inline
getGISelRematGlobalCost() constllvm::AArch64TTIImplinline
getInlineCallPenalty(const Function *F, const CallBase &Call, unsigned DefaultCallPenalty) constllvm::AArch64TTIImpl
getInlinerVectorBonusPercent() constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
getInliningCostBenefitAnalysisProfitableMultiplier() constllvm::TargetTransformInfoImplBaseinline
getInliningCostBenefitAnalysisSavingsMultiplier() constllvm::TargetTransformInfoImplBaseinline
getInliningThresholdMultiplier() constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
getInstructionCost(const User *U, ArrayRef< const Value * > Operands, TTI::TargetCostKind CostKind)llvm::TargetTransformInfoImplCRTPBase< T >inline
getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef< unsigned > Indices, Align Alignment, unsigned AddressSpace, TTI::TargetCostKind CostKind, bool UseMaskForCond=false, bool UseMaskForGaps=false)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor, ArrayRef< unsigned > Indices, Align Alignment, unsigned AddressSpace, TTI::TargetCostKind CostKind, bool UseMaskForCond, bool UseMaskForGaps) constllvm::TargetTransformInfoImplBaseinline
getIntImmCodeSizeCost(unsigned Opcode, unsigned Idx, const APInt &Imm, Type *Ty) constllvm::TargetTransformInfoImplBaseinline
getIntImmCost(int64_t Val)llvm::AArch64TTIImpl
getIntImmCost(const APInt &Imm, Type *Ty, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getIntImmCost(const APInt &Imm, Type *Ty, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getIntImmCostInst(unsigned Opcode, unsigned Idx, const APInt &Imm, Type *Ty, TTI::TargetCostKind CostKind, Instruction *Inst=nullptr)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getIntImmCostInst(unsigned Opcode, unsigned Idx, const APInt &Imm, Type *Ty, TTI::TargetCostKind CostKind, Instruction *Inst=nullptr) constllvm::TargetTransformInfoImplBaseinline
getIntImmCostIntrin(Intrinsic::ID IID, unsigned Idx, const APInt &Imm, Type *Ty, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getIntImmCostIntrin(Intrinsic::ID IID, unsigned Idx, const APInt &Imm, Type *Ty, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getIntrinsicInstrCost(const IntrinsicCostAttributes &ICA, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getIntrinsicInstrCost(const IntrinsicCostAttributes &ICA, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getLoadStoreVecRegBitWidth(unsigned AddrSpace) constllvm::TargetTransformInfoImplBaseinline
getLoadVectorFactor(unsigned VF, unsigned LoadSize, unsigned ChainSizeInBytes, VectorType *VecTy) constllvm::TargetTransformInfoImplBaseinline
getMaskedMemoryOpCost(unsigned Opcode, Type *Src, Align Alignment, unsigned AddressSpace, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getMaskedMemoryOpCost(unsigned Opcode, Type *Src, Align Alignment, unsigned AddressSpace, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getMaximumVF(unsigned ElemWidth, unsigned Opcode) constllvm::TargetTransformInfoImplBaseinline
getMaxInterleaveFactor(ElementCount VF)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getMaxInterleaveFactor(ElementCount VF) constllvm::TargetTransformInfoImplBaseinline
getMaxMemIntrinsicInlineSizeThreshold() constllvm::TargetTransformInfoImplBaseinline
getMaxNumArgs() constllvm::TargetTransformInfoImplBaseinline
getMaxNumElements(ElementCount VF) constllvm::AArch64TTIImplinline
getMaxPrefetchIterationsAhead() constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
getMaxVScale() constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
getMemcpyCost(const Instruction *I) constllvm::TargetTransformInfoImplBaseinline
getMemcpyLoopLoweringType(LLVMContext &Context, Value *Length, unsigned SrcAddrSpace, unsigned DestAddrSpace, unsigned SrcAlign, unsigned DestAlign, std::optional< uint32_t > AtomicElementSize) constllvm::TargetTransformInfoImplBaseinline
getMemcpyLoopResidualLoweringType(SmallVectorImpl< Type * > &OpsOut, LLVMContext &Context, unsigned RemainingBytes, unsigned SrcAddrSpace, unsigned DestAddrSpace, unsigned SrcAlign, unsigned DestAlign, std::optional< uint32_t > AtomicCpySize) constllvm::TargetTransformInfoImplBaseinline
getMemoryOpCost(unsigned Opcode, Type *Src, MaybeAlign Alignment, unsigned AddressSpace, TTI::TargetCostKind CostKind, TTI::OperandValueInfo OpInfo={TTI::OK_AnyValue, TTI::OP_None}, const Instruction *I=nullptr)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getMemoryOpCost(unsigned Opcode, Type *Src, Align Alignment, unsigned AddressSpace, TTI::TargetCostKind CostKind, TTI::OperandValueInfo OpInfo, const Instruction *I) constllvm::TargetTransformInfoImplBaseinline
getMinimumVF(unsigned ElemWidth, bool IsScalable) constllvm::TargetTransformInfoImplBaseinline
getMinMaxReductionCost(Intrinsic::ID IID, VectorType *Ty, FastMathFlags FMF, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getMinMaxReductionCost(Intrinsic::ID IID, VectorType *, FastMathFlags, TTI::TargetCostKind) constllvm::TargetTransformInfoImplBaseinline
getMinPageSize() constllvm::AArch64TTIImplinline
getMinPrefetchStride(unsigned NumMemAccesses, unsigned NumStridedMemAccesses, unsigned NumPrefetches, bool HasCall) constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
getMinTripCountTailFoldingThreshold() constllvm::AArch64TTIImplinline
getMinVectorRegisterBitWidth() constllvm::AArch64TTIImplinline
getMulAccReductionCost(bool IsUnsigned, Type *ResTy, VectorType *Ty, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getMulAccReductionCost(bool IsUnsigned, Type *ResTy, VectorType *Ty, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getNumberOfParts(Type *Tp)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getNumberOfParts(Type *Tp) constllvm::TargetTransformInfoImplBaseinline
getNumberOfRegisters(unsigned ClassID) constllvm::AArch64TTIImplinline
getOperandsScalarizationOverhead(ArrayRef< const Value * > Args, ArrayRef< Type * > Tys, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getOperandsScalarizationOverhead(ArrayRef< const Value * > Args, ArrayRef< Type * > Tys, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getOrCreateResultFromMemIntrinsic(IntrinsicInst *Inst, Type *ExpectedType)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getOrCreateResultFromMemIntrinsic(IntrinsicInst *Inst, Type *ExpectedType) constllvm::TargetTransformInfoImplBaseinline
getOrderedReductionCost(unsigned Opcode, VectorType *Ty, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getPeelingPreferences(Loop *L, ScalarEvolution &SE, TTI::PeelingPreferences &PP)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getPeelingPreferences(Loop *, ScalarEvolution &, TTI::PeelingPreferences &) constllvm::TargetTransformInfoImplBaseinline
getPointersChainCost(ArrayRef< const Value * > Ptrs, const Value *Base, const TTI::PointersChainInfo &Info, Type *AccessTy, TTI::TargetCostKind CostKind)llvm::TargetTransformInfoImplCRTPBase< T >inline
getPopcntSupport(unsigned TyWidth)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getPopcntSupport(unsigned IntTyWidthInBit) constllvm::TargetTransformInfoImplBaseinline
getPredicatedAddrSpace(const Value *V) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
getPredictableBranchThreshold() constllvm::TargetTransformInfoImplBaseinline
getPreferredAddressingMode(const Loop *L, ScalarEvolution *SE) constllvm::TargetTransformInfoImplBaseinline
getPreferredLargeGEPBaseOffset(int64_t MinOffset, int64_t MaxOffset)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getPreferredTailFoldingStyle(bool IVUpdateMayOverflow) constllvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::getPreferredTailFoldingStyle(bool IVUpdateMayOverflow=true)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getPrefetchDistance() constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
getRegisterBitWidth(TargetTransformInfo::RegisterKind K) constllvm::AArch64TTIImpl
getRegisterClassForType(bool Vector, Type *Ty=nullptr) constllvm::TargetTransformInfoImplBaseinline
getRegisterClassName(unsigned ClassID) constllvm::TargetTransformInfoImplBaseinline
getRegUsageForType(Type *Ty)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getRegUsageForType(Type *Ty) constllvm::TargetTransformInfoImplBaseinline
getReplicationShuffleCost(Type *EltTy, int ReplicationFactor, int VF, const APInt &DemandedDstElts, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getScalarizationOverhead(VectorType *Ty, const APInt &DemandedElts, bool Insert, bool Extract, TTI::TargetCostKind CostKind)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getScalarizationOverhead(VectorType *InTy, bool Insert, bool Extract, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
BasicTTIImplBase< AArch64TTIImpl >::getScalarizationOverhead(VectorType *RetTy, ArrayRef< const Value * > Args, ArrayRef< Type * > Tys, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getScalarizationOverhead(VectorType *Ty, const APInt &DemandedElts, bool Insert, bool Extract, TTI::TargetCostKind CostKind) constllvm::TargetTransformInfoImplBaseinline
getScalingFactorCost(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset, bool HasBaseReg, int64_t Scale, unsigned AddrSpace) constllvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getScalingFactorCost(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset, bool HasBaseReg, int64_t Scale, unsigned AddrSpace)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getShuffleCost(TTI::ShuffleKind Kind, VectorType *Tp, ArrayRef< int > Mask, TTI::TargetCostKind CostKind, int Index, VectorType *SubTp, ArrayRef< const Value * > Args=std::nullopt)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getShuffleCost(TTI::ShuffleKind Kind, VectorType *Ty, ArrayRef< int > Mask, TTI::TargetCostKind CostKind, int Index, VectorType *SubTp, ArrayRef< const Value * > Args=std::nullopt) constllvm::TargetTransformInfoImplBaseinline
getSpliceCost(VectorType *Tp, int Index)llvm::AArch64TTIImpl
getStoreMinimumVF(unsigned VF, Type *ScalarMemTy, Type *ScalarValTy) constllvm::AArch64TTIImplinline
getStoreVectorFactor(unsigned VF, unsigned StoreSize, unsigned ChainSizeInBytes, VectorType *VecTy) constllvm::TargetTransformInfoImplBaseinline
getStridedMemoryOpCost(unsigned Opcode, Type *DataTy, const Value *Ptr, bool VariableMask, Align Alignment, TTI::TargetCostKind CostKind, const Instruction *I)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::getStridedMemoryOpCost(unsigned Opcode, Type *DataTy, const Value *Ptr, bool VariableMask, Align Alignment, TTI::TargetCostKind CostKind, const Instruction *I=nullptr) constllvm::TargetTransformInfoImplBaseinline
getTgtMemIntrinsic(IntrinsicInst *Inst, MemIntrinsicInfo &Info)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::getTgtMemIntrinsic(IntrinsicInst *Inst, MemIntrinsicInfo &Info) constllvm::TargetTransformInfoImplBaseinline
getTreeReductionCost(unsigned Opcode, VectorType *Ty, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getTypeBasedIntrinsicInstrCost(const IntrinsicCostAttributes &ICA, TTI::TargetCostKind CostKind)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getTypeLegalizationCost(Type *Ty) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
getUnrollingPreferences(Loop *L, ScalarEvolution &SE, TTI::UnrollingPreferences &UP, OptimizationRemarkEmitter *ORE)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getUnrollingPreferences(Loop *, ScalarEvolution &, TTI::UnrollingPreferences &, OptimizationRemarkEmitter *) constllvm::TargetTransformInfoImplBaseinline
getVectorInstrCost(unsigned Opcode, Type *Val, TTI::TargetCostKind CostKind, unsigned Index, Value *Op0, Value *Op1)llvm::AArch64TTIImpl
getVectorInstrCost(const Instruction &I, Type *Val, TTI::TargetCostKind CostKind, unsigned Index)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::getVectorInstrCost(unsigned Opcode, Type *Val, TTI::TargetCostKind CostKind, unsigned Index, Value *Op0, Value *Op1) constllvm::TargetTransformInfoImplBaseinline
llvm::TargetTransformInfoImplCRTPBase::getVectorInstrCost(const Instruction &I, Type *Val, TTI::TargetCostKind CostKind, unsigned Index) constllvm::TargetTransformInfoImplBaseinline
getVectorSplitCost()llvm::BasicTTIImplBase< AArch64TTIImpl >inline
getVPLegalizationStrategy(const VPIntrinsic &PI) constllvm::TargetTransformInfoImplBaseinline
getVPMemoryOpCost(unsigned Opcode, Type *Src, Align Alignment, unsigned AddressSpace, TTI::TargetCostKind CostKind, const Instruction *I) constllvm::TargetTransformInfoImplBaseinline
getVScaleForTuning() constllvm::AArch64TTIImplinline
hasActiveVectorLength(unsigned Opcode, Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
hasArmWideBranch(bool) constllvm::TargetTransformInfoImplBaseinline
hasBranchDivergence(const Function *F=nullptr)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::hasBranchDivergence(const Function *F=nullptr) constllvm::TargetTransformInfoImplBaseinline
hasDivRemOp(Type *DataType, bool IsSigned) constllvm::TargetTransformInfoImplBaseinline
hasVolatileVariant(Instruction *I, unsigned AddrSpace) constllvm::TargetTransformInfoImplBaseinline
haveFastSqrt(Type *Ty)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::haveFastSqrt(Type *Ty) constllvm::TargetTransformInfoImplBaseinline
improveShuffleKindFromMask(TTI::ShuffleKind Kind, ArrayRef< int > Mask, VectorType *Ty, int &Index, VectorType *&SubTy) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II) constllvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::instCombineIntrinsic(InstCombiner &IC, IntrinsicInst &II)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
isAlwaysUniform(const Value *V)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isAlwaysUniform(const Value *V) constllvm::TargetTransformInfoImplBaseinline
isConstantStridedAccessLessThan(ScalarEvolution *SE, const SCEV *Ptr, int64_t MergeDistance) constllvm::TargetTransformInfoImplBaseinlineprotected
isElementTypeLegalForScalableVector(Type *Ty) constllvm::AArch64TTIImplinline
isExpensiveToSpeculativelyExecute(const Instruction *I)llvm::TargetTransformInfoImplCRTPBase< T >inline
isExtPartOfAvgExpr(const Instruction *ExtUser, Type *Dst, Type *Src)llvm::AArch64TTIImpl
isFCmpOrdCheaperThanFCmpZero(Type *Ty)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isFCmpOrdCheaperThanFCmpZero(Type *Ty) constllvm::TargetTransformInfoImplBaseinline
isFPVectorizationPotentiallyUnsafe() constllvm::TargetTransformInfoImplBaseinline
isHardwareLoopProfitable(Loop *L, ScalarEvolution &SE, AssumptionCache &AC, TargetLibraryInfo *LibInfo, HardwareLoopInfo &HWLoopInfo)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isHardwareLoopProfitable(Loop *L, ScalarEvolution &SE, AssumptionCache &AC, TargetLibraryInfo *LibInfo, HardwareLoopInfo &HWLoopInfo) constllvm::TargetTransformInfoImplBaseinline
isIndexedLoadLegal(TTI::MemIndexedMode M, Type *Ty, const DataLayout &DL) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
isIndexedStoreLegal(TTI::MemIndexedMode M, Type *Ty, const DataLayout &DL) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
isLegalAddImmediate(int64_t imm)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isLegalAddImmediate(int64_t Imm) constllvm::TargetTransformInfoImplBaseinline
isLegalAddressingMode(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset, bool HasBaseReg, int64_t Scale, unsigned AddrSpace, Instruction *I=nullptr, int64_t ScalableOffset=0)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isLegalAddressingMode(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset, bool HasBaseReg, int64_t Scale, unsigned AddrSpace, Instruction *I=nullptr, int64_t ScalableOffset=0) constllvm::TargetTransformInfoImplBaseinline
isLegalAddScalableImmediate(int64_t Imm)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isLegalAddScalableImmediate(int64_t Imm) constllvm::TargetTransformInfoImplBaseinline
isLegalAltInstr(VectorType *VecTy, unsigned Opcode0, unsigned Opcode1, const SmallBitVector &OpcodeMask) constllvm::TargetTransformInfoImplBaseinline
isLegalBroadcastLoad(Type *ElementTy, ElementCount NumElements) constllvm::AArch64TTIImplinline
isLegalICmpImmediate(int64_t imm)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isLegalICmpImmediate(int64_t Imm) constllvm::TargetTransformInfoImplBaseinline
isLegalMaskedCompressStore(Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
isLegalMaskedExpandLoad(Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
isLegalMaskedGather(Type *DataType, Align Alignment) constllvm::AArch64TTIImplinline
isLegalMaskedGatherScatter(Type *DataType) constllvm::AArch64TTIImplinline
isLegalMaskedLoad(Type *DataType, Align Alignment)llvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::isLegalMaskedLoad(Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
isLegalMaskedLoadStore(Type *DataType, Align Alignment)llvm::AArch64TTIImplinline
isLegalMaskedScatter(Type *DataType, Align Alignment) constllvm::AArch64TTIImplinline
isLegalMaskedStore(Type *DataType, Align Alignment)llvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::isLegalMaskedStore(Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
isLegalNTLoad(Type *DataType, Align Alignment)llvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::isLegalNTLoad(Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
isLegalNTStore(Type *DataType, Align Alignment)llvm::AArch64TTIImplinline
BasicTTIImplBase< AArch64TTIImpl >::isLegalNTStore(Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
isLegalNTStoreLoad(Type *DataType, Align Alignment)llvm::AArch64TTIImplinline
isLegalStridedLoadStore(Type *DataType, Align Alignment) constllvm::TargetTransformInfoImplBaseinline
isLegalToVectorizeLoad(LoadInst *LI) constllvm::TargetTransformInfoImplBaseinline
isLegalToVectorizeLoadChain(unsigned ChainSizeInBytes, Align Alignment, unsigned AddrSpace) constllvm::TargetTransformInfoImplBaseinline
isLegalToVectorizeReduction(const RecurrenceDescriptor &RdxDesc, ElementCount VF) constllvm::AArch64TTIImpl
isLegalToVectorizeStore(StoreInst *SI) constllvm::TargetTransformInfoImplBaseinline
isLegalToVectorizeStoreChain(unsigned ChainSizeInBytes, Align Alignment, unsigned AddrSpace) constllvm::TargetTransformInfoImplBaseinline
isLoweredToCall(const Function *F) constllvm::TargetTransformInfoImplBaseinline
isLSRCostLess(TTI::LSRCost C1, TTI::LSRCost C2)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isLSRCostLess(const TTI::LSRCost &C1, const TTI::LSRCost &C2) constllvm::TargetTransformInfoImplBaseinline
isNoopAddrSpaceCast(unsigned FromAS, unsigned ToAS) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
isNumRegsMajorCostOfLSR()llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isNumRegsMajorCostOfLSR() constllvm::TargetTransformInfoImplBaseinline
isProfitableLSRChainElement(Instruction *I)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isProfitableLSRChainElement(Instruction *I) constllvm::TargetTransformInfoImplBaseinline
isProfitableToHoist(Instruction *I)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isProfitableToHoist(Instruction *I) constllvm::TargetTransformInfoImplBaseinline
isSingleThreaded() constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
isSourceOfDivergence(const Value *V)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isSourceOfDivergence(const Value *V) constllvm::TargetTransformInfoImplBaseinline
isStridedAccess(const SCEV *Ptr) constllvm::TargetTransformInfoImplBaseinlineprotected
isTruncateFree(Type *Ty1, Type *Ty2)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isTruncateFree(Type *Ty1, Type *Ty2) constllvm::TargetTransformInfoImplBaseinline
isTypeLegal(Type *Ty)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::isTypeLegal(Type *Ty) constllvm::TargetTransformInfoImplBaseinline
isValidAddrSpaceCast(unsigned FromAS, unsigned ToAS) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
isVScaleKnownToBeAPowerOfTwo() constllvm::AArch64TTIImplinline
LSRWithInstrQueries() constllvm::TargetTransformInfoImplBaseinline
minRequiredElementSize(const Value *Val, bool &isSigned) constllvm::TargetTransformInfoImplBaseinlineprotected
preferEpilogueVectorization() constllvm::TargetTransformInfoImplBaseinline
preferInLoopReduction(unsigned Opcode, Type *Ty, TTI::ReductionFlags Flags) constllvm::TargetTransformInfoImplBaseinline
preferPredicatedReductionSelect(unsigned Opcode, Type *Ty, TTI::ReductionFlags Flags) constllvm::AArch64TTIImplinline
preferPredicateOverEpilogue(TailFoldingInfo *TFI)llvm::AArch64TTIImpl
llvm::TargetTransformInfoImplCRTPBase::preferPredicateOverEpilogue(TailFoldingInfo *TFI) constllvm::TargetTransformInfoImplBaseinline
prefersVectorizedAddressing() constllvm::AArch64TTIImpl
preferToKeepConstantsAttached(const Instruction &Inst, const Function &Fn) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
rewriteIntrinsicWithAddressSpace(IntrinsicInst *II, Value *OldV, Value *NewV) constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
shouldBuildLookupTables()llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::shouldBuildLookupTables() constllvm::TargetTransformInfoImplBaseinline
shouldBuildLookupTablesForConstant(Constant *C) constllvm::TargetTransformInfoImplBaseinline
shouldBuildRelLookupTables() constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
shouldConsiderAddressTypePromotion(const Instruction &I, bool &AllowPromotionWithoutCommonHeader)llvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::shouldConsiderAddressTypePromotion(const Instruction &I, bool &AllowPromotionWithoutCommonHeader) constllvm::TargetTransformInfoImplBaseinline
shouldExpandReduction(const IntrinsicInst *II) constllvm::AArch64TTIImplinline
shouldFoldTerminatingConditionAfterLSR() constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
shouldMaximizeVectorBandwidth(TargetTransformInfo::RegisterKind K) constllvm::AArch64TTIImpl
shouldPrefetchAddressSpace(unsigned AS) constllvm::BasicTTIImplBase< AArch64TTIImpl >inlinevirtual
shouldTreatInstructionLikeSelect(const Instruction *I)llvm::AArch64TTIImpl
simplifyDemandedUseBitsIntrinsic(InstCombiner &IC, IntrinsicInst &II, APInt DemandedMask, KnownBits &Known, bool &KnownBitsComputed)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
llvm::TargetTransformInfoImplCRTPBase::simplifyDemandedUseBitsIntrinsic(InstCombiner &IC, IntrinsicInst &II, APInt DemandedMask, KnownBits &Known, bool &KnownBitsComputed) constllvm::TargetTransformInfoImplBaseinline
simplifyDemandedVectorEltsIntrinsic(InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts, APInt &UndefElts2, APInt &UndefElts3, std::function< void(Instruction *, unsigned, APInt, APInt &)> SimplifyAndSetOp) constllvm::AArch64TTIImpl
BasicTTIImplBase< AArch64TTIImpl >::simplifyDemandedVectorEltsIntrinsic(InstCombiner &IC, IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts, APInt &UndefElts2, APInt &UndefElts3, std::function< void(Instruction *, unsigned, APInt, APInt &)> SimplifyAndSetOp)llvm::BasicTTIImplBase< AArch64TTIImpl >inline
supportsEfficientVectorElementLoadStore() constllvm::TargetTransformInfoImplBaseinline
supportsScalableVectors() constllvm::AArch64TTIImplinline
supportsTailCallFor(const CallBase *CB) constllvm::TargetTransformInfoImplCRTPBase< T >inline
supportsTailCalls() constllvm::TargetTransformInfoImplBaseinline
TargetTransformInfoImplBase(const DataLayout &DL)llvm::TargetTransformInfoImplBaseinlineexplicitprotected
TargetTransformInfoImplBase(const TargetTransformInfoImplBase &Arg)=defaultllvm::TargetTransformInfoImplBase
TargetTransformInfoImplBase(TargetTransformInfoImplBase &&Arg)llvm::TargetTransformInfoImplBaseinline
TargetTransformInfoImplCRTPBase(const DataLayout &DL)llvm::TargetTransformInfoImplCRTPBase< T >inlineexplicitprotected
useAA() constllvm::BasicTTIImplBase< AArch64TTIImpl >inline
useColdCCForColdCall(Function &F) constllvm::TargetTransformInfoImplBaseinline
useNeonVector(const Type *Ty) constllvm::AArch64TTIImpl
~BasicTTIImplBase()=defaultllvm::BasicTTIImplBase< AArch64TTIImpl >protectedvirtual