| if (DEFINED LLVM_HAVE_TF_AOT OR LLVM_HAVE_TFLITE) |
| include(TensorFlowCompile) |
| set(LLVM_RAEVICT_MODEL_PATH_DEFAULT "models/regalloc-eviction") |
| |
| set(LLVM_RAEVICT_MODEL_CURRENT_URL "<UNSPECIFIED>" CACHE STRING "URL to download the LLVM register allocator eviction model") |
| |
| if (DEFINED LLVM_HAVE_TF_AOT) |
| tf_find_and_compile( |
| ${LLVM_RAEVICT_MODEL_PATH} |
| ${LLVM_RAEVICT_MODEL_CURRENT_URL} |
| ${LLVM_RAEVICT_MODEL_PATH_DEFAULT} |
| "../Analysis/models/gen-regalloc-eviction-test-model.py" |
| serve |
| action |
| RegallocEvictModel |
| llvm::RegallocEvictModel |
| ) |
| endif() |
| |
| if (LLVM_HAVE_TFLITE) |
| list(APPEND MLLinkDeps ${tensorflow_c_api} ${tensorflow_fx}) |
| endif() |
| endif() |
| |
| # This provides the implementation of MVT and LLT. |
| # Be careful to append deps on this, since Targets' tablegens depend on this. |
| add_llvm_component_library(LLVMCodeGenTypes |
| LowLevelType.cpp |
| PARTIAL_SOURCES_INTENDED |
| |
| DEPENDS |
| vt_gen |
| |
| LINK_COMPONENTS |
| Support |
| ) |
| |
| add_llvm_component_library(LLVMCodeGen |
| AggressiveAntiDepBreaker.cpp |
| AllocationOrder.cpp |
| Analysis.cpp |
| AssignmentTrackingAnalysis.cpp |
| AtomicExpandPass.cpp |
| BasicTargetTransformInfo.cpp |
| BranchFolding.cpp |
| BranchRelaxation.cpp |
| BreakFalseDeps.cpp |
| BasicBlockSections.cpp |
| BasicBlockSectionsProfileReader.cpp |
| CalcSpillWeights.cpp |
| CallBrPrepare.cpp |
| CallingConvLower.cpp |
| CFGuardLongjmp.cpp |
| CFIFixup.cpp |
| CFIInstrInserter.cpp |
| CodeGen.cpp |
| CodeGenCommonISel.cpp |
| CodeGenPassBuilder.cpp |
| CodeGenPrepare.cpp |
| CommandFlags.cpp |
| ComplexDeinterleavingPass.cpp |
| CriticalAntiDepBreaker.cpp |
| DeadMachineInstructionElim.cpp |
| DetectDeadLanes.cpp |
| DFAPacketizer.cpp |
| DwarfEHPrepare.cpp |
| EarlyIfConversion.cpp |
| EdgeBundles.cpp |
| EHContGuardCatchret.cpp |
| ExecutionDomainFix.cpp |
| ExpandLargeDivRem.cpp |
| ExpandLargeFpConvert.cpp |
| ExpandMemCmp.cpp |
| ExpandPostRAPseudos.cpp |
| ExpandReductions.cpp |
| ExpandVectorPredication.cpp |
| FaultMaps.cpp |
| FEntryInserter.cpp |
| FinalizeISel.cpp |
| FixupStatepointCallerSaved.cpp |
| FuncletLayout.cpp |
| GCMetadata.cpp |
| GCMetadataPrinter.cpp |
| GCRootLowering.cpp |
| GlobalMerge.cpp |
| HardwareLoops.cpp |
| IfConversion.cpp |
| ImplicitNullChecks.cpp |
| IndirectBrExpandPass.cpp |
| InlineSpiller.cpp |
| InterferenceCache.cpp |
| InterleavedAccessPass.cpp |
| InterleavedLoadCombinePass.cpp |
| IntrinsicLowering.cpp |
| JMCInstrumenter.cpp |
| KCFI.cpp |
| LatencyPriorityQueue.cpp |
| LazyMachineBlockFrequencyInfo.cpp |
| LexicalScopes.cpp |
| LiveDebugVariables.cpp |
| LiveIntervals.cpp |
| LiveInterval.cpp |
| LiveIntervalUnion.cpp |
| LivePhysRegs.cpp |
| LiveRangeCalc.cpp |
| LiveIntervalCalc.cpp |
| LiveRangeEdit.cpp |
| LiveRangeShrink.cpp |
| LiveRegMatrix.cpp |
| LiveRegUnits.cpp |
| LiveStacks.cpp |
| LiveVariables.cpp |
| LLVMTargetMachine.cpp |
| LocalStackSlotAllocation.cpp |
| LoopTraversal.cpp |
| LowLevelTypeUtils.cpp |
| LowerEmuTLS.cpp |
| MachineBasicBlock.cpp |
| MachineBlockFrequencyInfo.cpp |
| MachineBlockPlacement.cpp |
| MachineBranchProbabilityInfo.cpp |
| MachineCFGPrinter.cpp |
| MachineCombiner.cpp |
| MachineCopyPropagation.cpp |
| MachineCSE.cpp |
| MachineCheckDebugify.cpp |
| MachineCycleAnalysis.cpp |
| MachineDebugify.cpp |
| MachineDominanceFrontier.cpp |
| MachineDominators.cpp |
| MachineFrameInfo.cpp |
| MachineFunction.cpp |
| MachineFunctionPass.cpp |
| MachineFunctionPrinterPass.cpp |
| MachineFunctionSplitter.cpp |
| MachineInstrBundle.cpp |
| MachineInstr.cpp |
| MachineLateInstrsCleanup.cpp |
| MachineLICM.cpp |
| MachineLoopInfo.cpp |
| MachineLoopUtils.cpp |
| MachineModuleInfo.cpp |
| MachineModuleInfoImpls.cpp |
| MachineModuleSlotTracker.cpp |
| MachineOperand.cpp |
| MachineOptimizationRemarkEmitter.cpp |
| MachineOutliner.cpp |
| MachinePassManager.cpp |
| MachinePipeliner.cpp |
| MachinePostDominators.cpp |
| MachineRegionInfo.cpp |
| MachineRegisterInfo.cpp |
| MachineScheduler.cpp |
| MachineSink.cpp |
| MachineSizeOpts.cpp |
| MachineSSAContext.cpp |
| MachineSSAUpdater.cpp |
| MachineStripDebug.cpp |
| MachineTraceMetrics.cpp |
| MachineUniformityAnalysis.cpp |
| MachineVerifier.cpp |
| MIRFSDiscriminator.cpp |
| MIRSampleProfile.cpp |
| MIRYamlMapping.cpp |
| MLRegallocEvictAdvisor.cpp |
| MLRegallocPriorityAdvisor.cpp |
| ModuloSchedule.cpp |
| MultiHazardRecognizer.cpp |
| PatchableFunction.cpp |
| MBFIWrapper.cpp |
| MIRPrinter.cpp |
| MIRPrintingPass.cpp |
| MacroFusion.cpp |
| NonRelocatableStringpool.cpp |
| OptimizePHIs.cpp |
| ParallelCG.cpp |
| PeepholeOptimizer.cpp |
| PHIElimination.cpp |
| PHIEliminationUtils.cpp |
| PostRAHazardRecognizer.cpp |
| PostRASchedulerList.cpp |
| PreISelIntrinsicLowering.cpp |
| ProcessImplicitDefs.cpp |
| PrologEpilogInserter.cpp |
| PseudoProbeInserter.cpp |
| PseudoSourceValue.cpp |
| RDFGraph.cpp |
| RDFLiveness.cpp |
| RDFRegisters.cpp |
| ReachingDefAnalysis.cpp |
| RegAllocBase.cpp |
| RegAllocBasic.cpp |
| RegAllocEvictionAdvisor.cpp |
| RegAllocFast.cpp |
| RegAllocGreedy.cpp |
| RegAllocPBQP.cpp |
| RegAllocPriorityAdvisor.cpp |
| RegAllocScore.cpp |
| RegisterClassInfo.cpp |
| RegisterCoalescer.cpp |
| RegisterPressure.cpp |
| RegisterScavenging.cpp |
| RemoveRedundantDebugValues.cpp |
| RenameIndependentSubregs.cpp |
| MachineStableHash.cpp |
| MIRVRegNamerUtils.cpp |
| MIRNamerPass.cpp |
| MIRCanonicalizerPass.cpp |
| RegisterUsageInfo.cpp |
| RegUsageInfoCollector.cpp |
| RegUsageInfoPropagate.cpp |
| ReplaceWithVeclib.cpp |
| ResetMachineFunctionPass.cpp |
| RegisterBank.cpp |
| RegisterBankInfo.cpp |
| SafeStack.cpp |
| SafeStackLayout.cpp |
| SanitizerBinaryMetadata.cpp |
| ScheduleDAG.cpp |
| ScheduleDAGInstrs.cpp |
| ScheduleDAGPrinter.cpp |
| ScoreboardHazardRecognizer.cpp |
| SelectOptimize.cpp |
| ShadowStackGCLowering.cpp |
| ShrinkWrap.cpp |
| SjLjEHPrepare.cpp |
| SlotIndexes.cpp |
| SpillPlacement.cpp |
| SplitKit.cpp |
| StackColoring.cpp |
| StackFrameLayoutAnalysisPass.cpp |
| StackMapLivenessAnalysis.cpp |
| StackMaps.cpp |
| StackProtector.cpp |
| StackSlotColoring.cpp |
| SwiftErrorValueTracking.cpp |
| SwitchLoweringUtils.cpp |
| TailDuplication.cpp |
| TailDuplicator.cpp |
| TargetFrameLoweringImpl.cpp |
| TargetInstrInfo.cpp |
| TargetLoweringBase.cpp |
| TargetLoweringObjectFileImpl.cpp |
| TargetOptionsImpl.cpp |
| TargetPassConfig.cpp |
| TargetRegisterInfo.cpp |
| TargetSchedule.cpp |
| TargetSubtargetInfo.cpp |
| TwoAddressInstructionPass.cpp |
| TypePromotion.cpp |
| UnreachableBlockElim.cpp |
| ValueTypes.cpp |
| VLIWMachineScheduler.cpp |
| VirtRegMap.cpp |
| WasmEHPrepare.cpp |
| WinEHPrepare.cpp |
| XRayInstrumentation.cpp |
| ${GeneratedMLSources} |
| |
| LiveDebugValues/LiveDebugValues.cpp |
| LiveDebugValues/VarLocBasedImpl.cpp |
| LiveDebugValues/InstrRefBasedImpl.cpp |
| |
| ADDITIONAL_HEADER_DIRS |
| ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen |
| ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP |
| |
| LINK_LIBS ${LLVM_PTHREAD_LIB} ${MLLinkDeps} |
| |
| DEPENDS |
| intrinsics_gen |
| ${MLDeps} |
| |
| LINK_COMPONENTS |
| Analysis |
| BitReader |
| BitWriter |
| CodeGenTypes |
| Core |
| MC |
| ObjCARC |
| ProfileData |
| Scalar |
| Support |
| Target |
| TargetParser |
| TransformUtils |
| ) |
| |
| add_subdirectory(SelectionDAG) |
| add_subdirectory(AsmPrinter) |
| add_subdirectory(MIRParser) |
| add_subdirectory(GlobalISel) |