if (DEFINED LLVM_HAVE_TF_AOT OR LLVM_HAVE_TFLITE) include(TensorFlowCompile) set(LLVM_INLINER_MODEL_PATH_DEFAULT "models/inliner-Oz") set(LLVM_INLINER_MODEL_CURRENT_URL "" CACHE STRING "URL to download the LLVM inliner model") if (DEFINED LLVM_HAVE_TF_AOT) tf_find_and_compile( ${LLVM_INLINER_MODEL_PATH} ${LLVM_INLINER_MODEL_CURRENT_URL} ${LLVM_INLINER_MODEL_PATH_DEFAULT} "models/gen-inline-oz-test-model.py" serve action InlinerSizeModel llvm::InlinerSizeModel ) endif() if (LLVM_HAVE_TFLITE) list(APPEND MLLinkDeps tensorflow-lite::tensorflow-lite) endif() endif() add_llvm_component_library(LLVMAnalysis AliasAnalysis.cpp AliasAnalysisEvaluator.cpp AliasAnalysisSummary.cpp AliasSetTracker.cpp Analysis.cpp AssumeBundleQueries.cpp AssumptionCache.cpp BasicAliasAnalysis.cpp BlockFrequencyInfo.cpp BlockFrequencyInfoImpl.cpp BranchProbabilityInfo.cpp CFG.cpp CFGPrinter.cpp CFGSCCPrinter.cpp CGSCCPassManager.cpp CallGraph.cpp CallGraphSCCPass.cpp CallPrinter.cpp CaptureTracking.cpp CmpInstAnalysis.cpp CostModel.cpp CodeMetrics.cpp ConstantFolding.cpp CycleAnalysis.cpp DDG.cpp DDGPrinter.cpp ConstraintSystem.cpp Delinearization.cpp DemandedBits.cpp DependenceAnalysis.cpp DependenceGraphBuilder.cpp DevelopmentModeInlineAdvisor.cpp DivergenceAnalysis.cpp DomPrinter.cpp DomTreeUpdater.cpp DominanceFrontier.cpp EHPersonalities.cpp FunctionPropertiesAnalysis.cpp GlobalsModRef.cpp GuardUtils.cpp HeatUtils.cpp IRSimilarityIdentifier.cpp IVDescriptors.cpp IVUsers.cpp ImportedFunctionsInliningStatistics.cpp IndirectCallPromotionAnalysis.cpp InlineCost.cpp InlineAdvisor.cpp InlineOrder.cpp InlineSizeEstimatorAnalysis.cpp InstCount.cpp InstructionPrecedenceTracking.cpp InstructionSimplify.cpp Interval.cpp IntervalPartition.cpp LazyBranchProbabilityInfo.cpp LazyBlockFrequencyInfo.cpp LazyCallGraph.cpp LazyValueInfo.cpp LegacyDivergenceAnalysis.cpp Lint.cpp Loads.cpp Local.cpp LoopAccessAnalysis.cpp LoopAnalysisManager.cpp LoopCacheAnalysis.cpp LoopNestAnalysis.cpp LoopUnrollAnalyzer.cpp LoopInfo.cpp LoopPass.cpp MLInlineAdvisor.cpp MemDepPrinter.cpp MemDerefPrinter.cpp MemoryBuiltins.cpp MemoryDependenceAnalysis.cpp MemoryLocation.cpp MemoryProfileInfo.cpp MemorySSA.cpp MemorySSAUpdater.cpp ModelUnderTrainingRunner.cpp ModuleDebugInfoPrinter.cpp ModuleSummaryAnalysis.cpp MustExecute.cpp NoInferenceModelRunner.cpp ObjCARCAliasAnalysis.cpp ObjCARCAnalysisUtils.cpp ObjCARCInstKind.cpp OptimizationRemarkEmitter.cpp OverflowInstAnalysis.cpp PHITransAddr.cpp PhiValues.cpp PostDominators.cpp ProfileSummaryInfo.cpp PtrUseVisitor.cpp RegionInfo.cpp RegionPass.cpp RegionPrinter.cpp ReplayInlineAdvisor.cpp ScalarEvolution.cpp ScalarEvolutionAliasAnalysis.cpp ScalarEvolutionDivision.cpp ScalarEvolutionNormalization.cpp StackLifetime.cpp StackSafetyAnalysis.cpp SyncDependenceAnalysis.cpp SyntheticCountsUtils.cpp TFLiteUtils.cpp TargetLibraryInfo.cpp TargetTransformInfo.cpp TensorSpec.cpp Trace.cpp TrainingLogger.cpp TypeBasedAliasAnalysis.cpp TypeMetadataUtils.cpp UniformityAnalysis.cpp ScopedNoAliasAA.cpp ValueLattice.cpp ValueLatticeUtils.cpp ValueTracking.cpp VectorUtils.cpp VFABIDemangling.cpp ${GeneratedMLSources} ADDITIONAL_HEADER_DIRS ${LLVM_MAIN_INCLUDE_DIR}/llvm/Analysis DEPENDS intrinsics_gen ${MLDeps} LINK_LIBS ${MLLinkDeps} LINK_COMPONENTS BinaryFormat Core Object ProfileData Support TargetParser )