Lines Matching refs:TTIImpl
185 : TTIImpl(new Model<NoTTIImpl>(NoTTIImpl(DL))) {} in TargetTransformInfo()
190 : TTIImpl(std::move(Arg.TTIImpl)) {} in TargetTransformInfo()
193 TTIImpl = std::move(RHS.TTIImpl); in operator =()
198 return TTIImpl->getInliningThresholdMultiplier(); in getInliningThresholdMultiplier()
203 return TTIImpl->adjustInliningThreshold(CB); in adjustInliningThreshold()
207 return TTIImpl->getInlinerVectorBonusPercent(); in getInlinerVectorBonusPercent()
214 return TTIImpl->getGEPCost(PointeeType, Ptr, Operands, CostKind); in getGEPCost()
220 return TTIImpl->getEstimatedNumberOfCaseClusters(SI, JTSize, PSI, BFI); in getEstimatedNumberOfCaseClusters()
227 InstructionCost Cost = TTIImpl->getUserCost(U, Operands, CostKind); in getUserCost()
234 return TTIImpl->getPredictableBranchThreshold(); in getPredictableBranchThreshold()
238 return TTIImpl->hasBranchDivergence(); in hasBranchDivergence()
242 return TTIImpl->useGPUDivergenceAnalysis(); in useGPUDivergenceAnalysis()
246 return TTIImpl->isSourceOfDivergence(V); in isSourceOfDivergence()
250 return TTIImpl->isAlwaysUniform(V); in isAlwaysUniform()
254 return TTIImpl->getFlatAddressSpace(); in getFlatAddressSpace()
259 return TTIImpl->collectFlatAddressOperands(OpIndexes, IID); in collectFlatAddressOperands()
264 return TTIImpl->isNoopAddrSpaceCast(FromAS, ToAS); in isNoopAddrSpaceCast()
269 return TTIImpl->canHaveNonUndefGlobalInitializerInAddressSpace(AS); in canHaveNonUndefGlobalInitializerInAddressSpace()
273 return TTIImpl->getAssumedAddrSpace(V); in getAssumedAddrSpace()
278 return TTIImpl->getPredicatedAddrSpace(V); in getPredicatedAddrSpace()
283 return TTIImpl->rewriteIntrinsicWithAddressSpace(II, OldV, NewV); in rewriteIntrinsicWithAddressSpace()
287 return TTIImpl->isLoweredToCall(F); in isLoweredToCall()
293 return TTIImpl->isHardwareLoopProfitable(L, SE, AC, LibInfo, HWLoopInfo); in isHardwareLoopProfitable()
300 return TTIImpl->preferPredicateOverEpilogue(L, LI, SE, AC, TLI, DT, LVL); in preferPredicateOverEpilogue()
304 return TTIImpl->emitGetActiveLaneMask(); in emitGetActiveLaneMask()
310 return TTIImpl->instCombineIntrinsic(IC, II); in instCombineIntrinsic()
316 return TTIImpl->simplifyDemandedUseBitsIntrinsic(IC, II, DemandedMask, Known, in simplifyDemandedUseBitsIntrinsic()
325 return TTIImpl->simplifyDemandedVectorEltsIntrinsic( in simplifyDemandedVectorEltsIntrinsic()
333 return TTIImpl->getUnrollingPreferences(L, SE, UP, ORE); in getUnrollingPreferences()
338 return TTIImpl->getPeelingPreferences(L, SE, PP); in getPeelingPreferences()
342 return TTIImpl->isLegalAddImmediate(Imm); in isLegalAddImmediate()
346 return TTIImpl->isLegalICmpImmediate(Imm); in isLegalICmpImmediate()
354 return TTIImpl->isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg, in isLegalAddressingMode()
360 return TTIImpl->isLSRCostLess(C1, C2); in isLSRCostLess()
364 return TTIImpl->isNumRegsMajorCostOfLSR(); in isNumRegsMajorCostOfLSR()
368 return TTIImpl->isProfitableLSRChainElement(I); in isProfitableLSRChainElement()
372 return TTIImpl->canMacroFuseCmp(); in canMacroFuseCmp()
379 return TTIImpl->canSaveCmp(L, BI, SE, LI, DT, AC, LibInfo); in canSaveCmp()
385 return TTIImpl->getPreferredAddressingMode(L, SE); in getPreferredAddressingMode()
390 return TTIImpl->isLegalMaskedStore(DataType, Alignment); in isLegalMaskedStore()
395 return TTIImpl->isLegalMaskedLoad(DataType, Alignment); in isLegalMaskedLoad()
400 return TTIImpl->isLegalNTStore(DataType, Alignment); in isLegalNTStore()
404 return TTIImpl->isLegalNTLoad(DataType, Alignment); in isLegalNTLoad()
409 return TTIImpl->isLegalBroadcastLoad(ElementTy, NumElements); in isLegalBroadcastLoad()
414 return TTIImpl->isLegalMaskedGather(DataType, Alignment); in isLegalMaskedGather()
420 return TTIImpl->isLegalAltInstr(VecTy, Opcode0, Opcode1, OpcodeMask); in isLegalAltInstr()
425 return TTIImpl->isLegalMaskedScatter(DataType, Alignment); in isLegalMaskedScatter()
430 return TTIImpl->forceScalarizeMaskedGather(DataType, Alignment); in forceScalarizeMaskedGather()
435 return TTIImpl->forceScalarizeMaskedScatter(DataType, Alignment); in forceScalarizeMaskedScatter()
439 return TTIImpl->isLegalMaskedCompressStore(DataType); in isLegalMaskedCompressStore()
443 return TTIImpl->isLegalMaskedExpandLoad(DataType); in isLegalMaskedExpandLoad()
447 return TTIImpl->enableOrderedReductions(); in enableOrderedReductions()
451 return TTIImpl->hasDivRemOp(DataType, IsSigned); in hasDivRemOp()
456 return TTIImpl->hasVolatileVariant(I, AddrSpace); in hasVolatileVariant()
460 return TTIImpl->prefersVectorizedAddressing(); in prefersVectorizedAddressing()
466 InstructionCost Cost = TTIImpl->getScalingFactorCost( in getScalingFactorCost()
473 return TTIImpl->LSRWithInstrQueries(); in LSRWithInstrQueries()
477 return TTIImpl->isTruncateFree(Ty1, Ty2); in isTruncateFree()
481 return TTIImpl->isProfitableToHoist(I); in isProfitableToHoist()
484 bool TargetTransformInfo::useAA() const { return TTIImpl->useAA(); } in useAA()
487 return TTIImpl->isTypeLegal(Ty); in isTypeLegal()
491 return TTIImpl->getRegUsageForType(Ty); in getRegUsageForType()
495 return TTIImpl->shouldBuildLookupTables(); in shouldBuildLookupTables()
500 return TTIImpl->shouldBuildLookupTablesForConstant(C); in shouldBuildLookupTablesForConstant()
504 return TTIImpl->shouldBuildRelLookupTables(); in shouldBuildRelLookupTables()
508 return TTIImpl->useColdCCForColdCall(F); in useColdCCForColdCall()
515 return TTIImpl->getScalarizationOverhead(Ty, DemandedElts, Insert, Extract); in getScalarizationOverhead()
520 return TTIImpl->getOperandsScalarizationOverhead(Args, Tys); in getOperandsScalarizationOverhead()
524 return TTIImpl->supportsEfficientVectorElementLoadStore(); in supportsEfficientVectorElementLoadStore()
528 return TTIImpl->supportsTailCalls(); in supportsTailCalls()
533 return TTIImpl->enableAggressiveInterleaving(LoopHasReductions); in enableAggressiveInterleaving()
538 return TTIImpl->enableMemCmpExpansion(OptSize, IsZeroCmp); in enableMemCmpExpansion()
542 return TTIImpl->enableInterleavedAccessVectorization(); in enableInterleavedAccessVectorization()
546 return TTIImpl->enableMaskedInterleavedAccessVectorization(); in enableMaskedInterleavedAccessVectorization()
550 return TTIImpl->isFPVectorizationPotentiallyUnsafe(); in isFPVectorizationPotentiallyUnsafe()
558 return TTIImpl->allowsMisalignedMemoryAccesses(Context, BitWidth, in allowsMisalignedMemoryAccesses()
564 return TTIImpl->getPopcntSupport(IntTyWidthInBit); in getPopcntSupport()
568 return TTIImpl->haveFastSqrt(Ty); in haveFastSqrt()
572 return TTIImpl->isFCmpOrdCheaperThanFCmpZero(Ty); in isFCmpOrdCheaperThanFCmpZero()
576 InstructionCost Cost = TTIImpl->getFPOpCost(Ty); in getFPOpCost()
585 InstructionCost Cost = TTIImpl->getIntImmCodeSizeCost(Opcode, Idx, Imm, Ty); in getIntImmCodeSizeCost()
593 InstructionCost Cost = TTIImpl->getIntImmCost(Imm, Ty, CostKind); in getIntImmCost()
602 TTIImpl->getIntImmCostInst(Opcode, Idx, Imm, Ty, CostKind, Inst); in getIntImmCostInst()
612 TTIImpl->getIntImmCostIntrin(IID, Idx, Imm, Ty, CostKind); in getIntImmCostIntrin()
618 return TTIImpl->getNumberOfRegisters(ClassID); in getNumberOfRegisters()
623 return TTIImpl->getRegisterClassForType(Vector, Ty); in getRegisterClassForType()
627 return TTIImpl->getRegisterClassName(ClassID); in getRegisterClassName()
632 return TTIImpl->getRegisterBitWidth(K); in getRegisterBitWidth()
636 return TTIImpl->getMinVectorRegisterBitWidth(); in getMinVectorRegisterBitWidth()
640 return TTIImpl->getMaxVScale(); in getMaxVScale()
644 return TTIImpl->getVScaleForTuning(); in getVScaleForTuning()
649 return TTIImpl->shouldMaximizeVectorBandwidth(K); in shouldMaximizeVectorBandwidth()
654 return TTIImpl->getMinimumVF(ElemWidth, IsScalable); in getMinimumVF()
659 return TTIImpl->getMaximumVF(ElemWidth, Opcode); in getMaximumVF()
664 return TTIImpl->getStoreMinimumVF(VF, ScalarMemTy, ScalarValTy); in getStoreMinimumVF()
669 return TTIImpl->shouldConsiderAddressTypePromotion( in shouldConsiderAddressTypePromotion()
675 : TTIImpl->getCacheLineSize(); in getCacheLineSize()
680 return TTIImpl->getCacheSize(Level); in getCacheSize()
685 return TTIImpl->getCacheAssociativity(Level); in getCacheAssociativity()
689 return TTIImpl->getPrefetchDistance(); in getPrefetchDistance()
695 return TTIImpl->getMinPrefetchStride(NumMemAccesses, NumStridedMemAccesses, in getMinPrefetchStride()
700 return TTIImpl->getMaxPrefetchIterationsAhead(); in getMaxPrefetchIterationsAhead()
704 return TTIImpl->enableWritePrefetching(); in enableWritePrefetching()
708 return TTIImpl->getMaxInterleaveFactor(VF); in getMaxInterleaveFactor()
767 TTIImpl->getArithmeticInstrCost(Opcode, Ty, CostKind, Opd1Info, Opd2Info, in getArithmeticInstrCost()
777 TTIImpl->getShuffleCost(Kind, Ty, Mask, Index, SubTp, Args); in getShuffleCost()
832 TTIImpl->getCastInstrCost(Opcode, Dst, Src, CCH, CostKind, I); in getCastInstrCost()
840 TTIImpl->getExtractWithExtendCost(Opcode, Dst, VecTy, Index); in getExtractWithExtendCost()
849 InstructionCost Cost = TTIImpl->getCFInstrCost(Opcode, CostKind, I); in getCFInstrCost()
860 TTIImpl->getCmpSelInstrCost(Opcode, ValTy, CondTy, VecPred, CostKind, I); in getCmpSelInstrCost()
868 InstructionCost Cost = TTIImpl->getVectorInstrCost(Opcode, Val, Index); in getVectorInstrCost()
876 InstructionCost Cost = TTIImpl->getReplicationShuffleCost( in getReplicationShuffleCost()
887 InstructionCost Cost = TTIImpl->getMemoryOpCost(Opcode, Src, Alignment, in getMemoryOpCost()
896 InstructionCost Cost = TTIImpl->getMaskedMemoryOpCost(Opcode, Src, Alignment, in getMaskedMemoryOpCost()
905 InstructionCost Cost = TTIImpl->getGatherScatterOpCost( in getGatherScatterOpCost()
915 InstructionCost Cost = TTIImpl->getInterleavedMemoryOpCost( in getInterleavedMemoryOpCost()
925 InstructionCost Cost = TTIImpl->getIntrinsicInstrCost(ICA, CostKind); in getIntrinsicInstrCost()
934 InstructionCost Cost = TTIImpl->getCallInstrCost(F, RetTy, Tys, CostKind); in getCallInstrCost()
940 return TTIImpl->getNumberOfParts(Tp); in getNumberOfParts()
946 InstructionCost Cost = TTIImpl->getAddressComputationCost(Tp, SE, Ptr); in getAddressComputationCost()
952 InstructionCost Cost = TTIImpl->getMemcpyCost(I); in getMemcpyCost()
961 TTIImpl->getArithmeticReductionCost(Opcode, Ty, FMF, CostKind); in getArithmeticReductionCost()
970 TTIImpl->getMinMaxReductionCost(Ty, CondTy, IsUnsigned, CostKind); in getMinMaxReductionCost()
978 return TTIImpl->getExtendedAddReductionCost(IsMLA, IsUnsigned, ResTy, Ty, in getExtendedAddReductionCost()
984 return TTIImpl->getCostOfKeepingLiveOverCall(Tys); in getCostOfKeepingLiveOverCall()
989 return TTIImpl->getTgtMemIntrinsic(Inst, Info); in getTgtMemIntrinsic()
993 return TTIImpl->getAtomicMemIntrinsicMaxElementSize(); in getAtomicMemIntrinsicMaxElementSize()
998 return TTIImpl->getOrCreateResultFromMemIntrinsic(Inst, ExpectedType); in getOrCreateResultFromMemIntrinsic()
1005 return TTIImpl->getMemcpyLoopLoweringType(Context, Length, SrcAddrSpace, in getMemcpyLoopLoweringType()
1015 TTIImpl->getMemcpyLoopResidualLoweringType( in getMemcpyLoopResidualLoweringType()
1022 return TTIImpl->areInlineCompatible(Caller, Callee); in areInlineCompatible()
1028 return TTIImpl->areTypesABICompatible(Caller, Callee, Types); in areTypesABICompatible()
1033 return TTIImpl->isIndexedLoadLegal(Mode, Ty); in isIndexedLoadLegal()
1038 return TTIImpl->isIndexedStoreLegal(Mode, Ty); in isIndexedStoreLegal()
1042 return TTIImpl->getLoadStoreVecRegBitWidth(AS); in getLoadStoreVecRegBitWidth()
1046 return TTIImpl->isLegalToVectorizeLoad(LI); in isLegalToVectorizeLoad()
1050 return TTIImpl->isLegalToVectorizeStore(SI); in isLegalToVectorizeStore()
1055 return TTIImpl->isLegalToVectorizeLoadChain(ChainSizeInBytes, Alignment, in isLegalToVectorizeLoadChain()
1061 return TTIImpl->isLegalToVectorizeStoreChain(ChainSizeInBytes, Alignment, in isLegalToVectorizeStoreChain()
1067 return TTIImpl->isLegalToVectorizeReduction(RdxDesc, VF); in isLegalToVectorizeReduction()
1071 return TTIImpl->isElementTypeLegalForScalableVector(Ty); in isElementTypeLegalForScalableVector()
1078 return TTIImpl->getLoadVectorFactor(VF, LoadSize, ChainSizeInBytes, VecTy); in getLoadVectorFactor()
1085 return TTIImpl->getStoreVectorFactor(VF, StoreSize, ChainSizeInBytes, VecTy); in getStoreVectorFactor()
1090 return TTIImpl->preferInLoopReduction(Opcode, Ty, Flags); in preferInLoopReduction()
1095 return TTIImpl->preferPredicatedReductionSelect(Opcode, Ty, Flags); in preferPredicatedReductionSelect()
1100 return TTIImpl->getVPLegalizationStrategy(VPI); in getVPLegalizationStrategy()
1104 return TTIImpl->shouldExpandReduction(II); in shouldExpandReduction()
1108 return TTIImpl->getGISelRematGlobalCost(); in getGISelRematGlobalCost()
1112 return TTIImpl->getMinTripCountTailFoldingThreshold(); in getMinTripCountTailFoldingThreshold()
1116 return TTIImpl->supportsScalableVectors(); in supportsScalableVectors()
1120 return TTIImpl->enableScalableVectorization(); in enableScalableVectorization()
1125 return TTIImpl->hasActiveVectorLength(Opcode, DataType, Alignment); in hasActiveVectorLength()
1130 return TTIImpl->getInstructionLatency(I); in getInstructionLatency()