reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Analysis/TargetTransformInfo.cpp
  141     : TTIImpl(std::move(Arg.TTIImpl)) {}
  144   TTIImpl = std::move(RHS.TTIImpl);
  144   TTIImpl = std::move(RHS.TTIImpl);
  150   int Cost = TTIImpl->getOperationCost(Opcode, Ty, OpTy);
  157   int Cost = TTIImpl->getCallCost(FTy, NumArgs, U);
  165   int Cost = TTIImpl->getCallCost(F, Arguments, U);
  171   return TTIImpl->getInliningThresholdMultiplier();
  175   return TTIImpl->getInlinerVectorBonusPercent();
  180   return TTIImpl->getGEPCost(PointeeType, Ptr, Operands);
  185   return TTIImpl->getExtCost(I, Src);
  191   int Cost = TTIImpl->getIntrinsicCost(IID, RetTy, Arguments, U);
  199   return TTIImpl->getEstimatedNumberOfCaseClusters(SI, JTSize);
  204   int Cost = TTIImpl->getUserCost(U, Operands);
  210   return TTIImpl->hasBranchDivergence();
  214   return TTIImpl->isSourceOfDivergence(V);
  218   return TTIImpl->isAlwaysUniform(V);
  222   return TTIImpl->getFlatAddressSpace();
  227   return TTIImpl->collectFlatAddressOperands(OpIndexes, IID);
  232   return TTIImpl->rewriteIntrinsicWithAddressSpace(II, OldV, NewV);
  236   return TTIImpl->isLoweredToCall(F);
  242   return TTIImpl->isHardwareLoopProfitable(L, SE, AC, LibInfo, HWLoopInfo);
  247   return TTIImpl->getUnrollingPreferences(L, SE, UP);
  251   return TTIImpl->isLegalAddImmediate(Imm);
  255   return TTIImpl->isLegalICmpImmediate(Imm);
  264   return TTIImpl->isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
  269   return TTIImpl->isLSRCostLess(C1, C2);
  273   return TTIImpl->canMacroFuseCmp();
  280   return TTIImpl->canSaveCmp(L, BI, SE, LI, DT, AC, LibInfo);
  284   return TTIImpl->shouldFavorPostInc();
  288   return TTIImpl->shouldFavorBackedgeIndex(L);
  293   return TTIImpl->isLegalMaskedStore(DataType, Alignment);
  298   return TTIImpl->isLegalMaskedLoad(DataType, Alignment);
  303   return TTIImpl->isLegalNTStore(DataType, Alignment);
  307   return TTIImpl->isLegalNTLoad(DataType, Alignment);
  311   return TTIImpl->isLegalMaskedGather(DataType);
  315   return TTIImpl->isLegalMaskedScatter(DataType);
  319   return TTIImpl->isLegalMaskedCompressStore(DataType);
  323   return TTIImpl->isLegalMaskedExpandLoad(DataType);
  327   return TTIImpl->hasDivRemOp(DataType, IsSigned);
  332   return TTIImpl->hasVolatileVariant(I, AddrSpace);
  336   return TTIImpl->prefersVectorizedAddressing();
  344   int Cost = TTIImpl->getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
  351   return TTIImpl->LSRWithInstrQueries();
  355   return TTIImpl->isTruncateFree(Ty1, Ty2);
  359   return TTIImpl->isProfitableToHoist(I);
  362 bool TargetTransformInfo::useAA() const { return TTIImpl->useAA(); }
  365   return TTIImpl->isTypeLegal(Ty);
  369   return TTIImpl->shouldBuildLookupTables();
  372   return TTIImpl->shouldBuildLookupTablesForConstant(C);
  376   return TTIImpl->useColdCCForColdCall(F);
  381   return TTIImpl->getScalarizationOverhead(Ty, Insert, Extract);
  387   return TTIImpl->getOperandsScalarizationOverhead(Args, VF);
  391   return TTIImpl->supportsEfficientVectorElementLoadStore();
  395   return TTIImpl->enableAggressiveInterleaving(LoopHasReductions);
  400   return TTIImpl->enableMemCmpExpansion(OptSize, IsZeroCmp);
  404   return TTIImpl->enableInterleavedAccessVectorization();
  408   return TTIImpl->enableMaskedInterleavedAccessVectorization();
  412   return TTIImpl->isFPVectorizationPotentiallyUnsafe();
  420   return TTIImpl->allowsMisalignedMemoryAccesses(Context, BitWidth, AddressSpace,
  426   return TTIImpl->getPopcntSupport(IntTyWidthInBit);
  430   return TTIImpl->haveFastSqrt(Ty);
  434   return TTIImpl->isFCmpOrdCheaperThanFCmpZero(Ty);
  438   int Cost = TTIImpl->getFPOpCost(Ty);
  446   int Cost = TTIImpl->getIntImmCodeSizeCost(Opcode, Idx, Imm, Ty);
  452   int Cost = TTIImpl->getIntImmCost(Imm, Ty);
  459   int Cost = TTIImpl->getIntImmCost(Opcode, Idx, Imm, Ty);
  466   int Cost = TTIImpl->getIntImmCost(IID, Idx, Imm, Ty);
  472   return TTIImpl->getNumberOfRegisters(ClassID);
  476   return TTIImpl->getRegisterClassForType(Vector, Ty);
  480   return TTIImpl->getRegisterClassName(ClassID);
  484   return TTIImpl->getRegisterBitWidth(Vector);
  488   return TTIImpl->getMinVectorRegisterBitWidth();
  492   return TTIImpl->shouldMaximizeVectorBandwidth(OptSize);
  496   return TTIImpl->getMinimumVF(ElemWidth);
  501   return TTIImpl->shouldConsiderAddressTypePromotion(
  506   return TTIImpl->getCacheLineSize();
  511   return TTIImpl->getCacheSize(Level);
  516   return TTIImpl->getCacheAssociativity(Level);
  520   return TTIImpl->getPrefetchDistance();
  524   return TTIImpl->getMinPrefetchStride();
  528   return TTIImpl->getMaxPrefetchIterationsAhead();
  532   return TTIImpl->getMaxInterleaveFactor(VF);
  589   int Cost = TTIImpl->getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
  597   int Cost = TTIImpl->getShuffleCost(Kind, Ty, Index, SubTp);
  606   int Cost = TTIImpl->getCastInstrCost(Opcode, Dst, Src, I);
  614   int Cost = TTIImpl->getExtractWithExtendCost(Opcode, Dst, VecTy, Index);
  620   int Cost = TTIImpl->getCFInstrCost(Opcode);
  629   int Cost = TTIImpl->getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
  636   int Cost = TTIImpl->getVectorInstrCost(Opcode, Val, Index);
  647   int Cost = TTIImpl->getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
  656       TTIImpl->getMaskedMemoryOpCost(Opcode, Src, Alignment, AddressSpace);
  664   int Cost = TTIImpl->getGatherScatterOpCost(Opcode, DataTy, Ptr, VariableMask,
  674   int Cost = TTIImpl->getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
  685   int Cost = TTIImpl->getIntrinsicInstrCost(ID, RetTy, Tys, FMF,
  693   int Cost = TTIImpl->getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
  700   int Cost = TTIImpl->getCallInstrCost(F, RetTy, Tys);
  706   return TTIImpl->getNumberOfParts(Tp);
  712   int Cost = TTIImpl->getAddressComputationCost(Tp, SE, Ptr);
  718   int Cost = TTIImpl->getMemcpyCost(I);
  725   int Cost = TTIImpl->getArithmeticReductionCost(Opcode, Ty, IsPairwiseForm);
  734       TTIImpl->getMinMaxReductionCost(Ty, CondTy, IsPairwiseForm, IsUnsigned);
  741   return TTIImpl->getCostOfKeepingLiveOverCall(Tys);
  746   return TTIImpl->getTgtMemIntrinsic(Inst, Info);
  750   return TTIImpl->getAtomicMemIntrinsicMaxElementSize();
  755   return TTIImpl->getOrCreateResultFromMemIntrinsic(Inst, ExpectedType);
  762   return TTIImpl->getMemcpyLoopLoweringType(Context, Length, SrcAlign,
  769   TTIImpl->getMemcpyLoopResidualLoweringType(OpsOut, Context, RemainingBytes,
  775   return TTIImpl->areInlineCompatible(Caller, Callee);
  781   return TTIImpl->areFunctionArgsABICompatible(Caller, Callee, Args);
  786   return TTIImpl->isIndexedLoadLegal(Mode, Ty);
  791   return TTIImpl->isIndexedStoreLegal(Mode, Ty);
  795   return TTIImpl->getLoadStoreVecRegBitWidth(AS);
  799   return TTIImpl->isLegalToVectorizeLoad(LI);
  803   return TTIImpl->isLegalToVectorizeStore(SI);
  808   return TTIImpl->isLegalToVectorizeLoadChain(ChainSizeInBytes, Alignment,
  814   return TTIImpl->isLegalToVectorizeStoreChain(ChainSizeInBytes, Alignment,
  822   return TTIImpl->getLoadVectorFactor(VF, LoadSize, ChainSizeInBytes, VecTy);
  829   return TTIImpl->getStoreVectorFactor(VF, StoreSize, ChainSizeInBytes, VecTy);
  834   return TTIImpl->useReductionIntrinsic(Opcode, Ty, Flags);
  838   return TTIImpl->shouldExpandReduction(II);
  842   return TTIImpl->getGISelRematGlobalCost();
  846   return TTIImpl->getInstructionLatency(I);
 1295       return TTIImpl->getShuffleCost(SK_ExtractSubvector, SrcTy, SubIndex, Ty);
 1304       return TTIImpl->getShuffleCost(SK_Reverse, Ty, 0, nullptr);
 1307       return TTIImpl->getShuffleCost(SK_Select, Ty, 0, nullptr);
 1310       return TTIImpl->getShuffleCost(SK_Transpose, Ty, 0, nullptr);
 1313       return TTIImpl->getShuffleCost(SK_Broadcast, Ty, 0, nullptr);
 1316       return TTIImpl->getShuffleCost(SK_PermuteSingleSrc, Ty, 0, nullptr);
 1318     return TTIImpl->getShuffleCost(SK_PermuteTwoSrc, Ty, 0, nullptr);