1add_llvm_component_library(LLVMCodeGen 2 AggressiveAntiDepBreaker.cpp 3 AllocationOrder.cpp 4 Analysis.cpp 5 AtomicExpandPass.cpp 6 BasicTargetTransformInfo.cpp 7 BranchFolding.cpp 8 BranchRelaxation.cpp 9 BreakFalseDeps.cpp 10 BasicBlockSections.cpp 11 CalcSpillWeights.cpp 12 CallingConvLower.cpp 13 CFGuardLongjmp.cpp 14 CFIInstrInserter.cpp 15 CodeGen.cpp 16 CodeGenCommonISel.cpp 17 CodeGenPassBuilder.cpp 18 CodeGenPrepare.cpp 19 CommandFlags.cpp 20 CriticalAntiDepBreaker.cpp 21 DeadMachineInstructionElim.cpp 22 DetectDeadLanes.cpp 23 DFAPacketizer.cpp 24 DwarfEHPrepare.cpp 25 EarlyIfConversion.cpp 26 EdgeBundles.cpp 27 EHContGuardCatchret.cpp 28 ExecutionDomainFix.cpp 29 ExpandMemCmp.cpp 30 ExpandPostRAPseudos.cpp 31 ExpandReductions.cpp 32 ExpandVectorPredication.cpp 33 FaultMaps.cpp 34 FEntryInserter.cpp 35 FinalizeISel.cpp 36 FixupStatepointCallerSaved.cpp 37 FuncletLayout.cpp 38 GCMetadata.cpp 39 GCMetadataPrinter.cpp 40 GCRootLowering.cpp 41 GlobalMerge.cpp 42 HardwareLoops.cpp 43 IfConversion.cpp 44 ImplicitNullChecks.cpp 45 IndirectBrExpandPass.cpp 46 InlineSpiller.cpp 47 InterferenceCache.cpp 48 InterleavedAccessPass.cpp 49 InterleavedLoadCombinePass.cpp 50 IntrinsicLowering.cpp 51 LatencyPriorityQueue.cpp 52 LazyMachineBlockFrequencyInfo.cpp 53 LexicalScopes.cpp 54 LiveDebugVariables.cpp 55 LiveIntervals.cpp 56 LiveInterval.cpp 57 LiveIntervalUnion.cpp 58 LivePhysRegs.cpp 59 LiveRangeCalc.cpp 60 LiveIntervalCalc.cpp 61 LiveRangeEdit.cpp 62 LiveRangeShrink.cpp 63 LiveRegMatrix.cpp 64 LiveRegUnits.cpp 65 LiveStacks.cpp 66 LiveVariables.cpp 67 LLVMTargetMachine.cpp 68 LocalStackSlotAllocation.cpp 69 LoopTraversal.cpp 70 LowLevelType.cpp 71 LowerEmuTLS.cpp 72 MachineBasicBlock.cpp 73 MachineBlockFrequencyInfo.cpp 74 MachineBlockPlacement.cpp 75 MachineBranchProbabilityInfo.cpp 76 MachineCombiner.cpp 77 MachineCopyPropagation.cpp 78 MachineCSE.cpp 79 MachineCheckDebugify.cpp 80 MachineCycleAnalysis.cpp 81 MachineDebugify.cpp 82 MachineDominanceFrontier.cpp 83 MachineDominators.cpp 84 MachineFrameInfo.cpp 85 MachineFunction.cpp 86 MachineFunctionPass.cpp 87 MachineFunctionPrinterPass.cpp 88 MachineFunctionSplitter.cpp 89 MachineInstrBundle.cpp 90 MachineInstr.cpp 91 MachineLICM.cpp 92 MachineLoopInfo.cpp 93 MachineLoopUtils.cpp 94 MachineModuleInfo.cpp 95 MachineModuleInfoImpls.cpp 96 MachineModuleSlotTracker.cpp 97 MachineOperand.cpp 98 MachineOptimizationRemarkEmitter.cpp 99 MachineOutliner.cpp 100 MachinePassManager.cpp 101 MachinePipeliner.cpp 102 MachinePostDominators.cpp 103 MachineRegionInfo.cpp 104 MachineRegisterInfo.cpp 105 MachineScheduler.cpp 106 MachineSink.cpp 107 MachineSizeOpts.cpp 108 MachineSSAContext.cpp 109 MachineSSAUpdater.cpp 110 MachineStripDebug.cpp 111 MachineTraceMetrics.cpp 112 MachineVerifier.cpp 113 MIRFSDiscriminator.cpp 114 MIRSampleProfile.cpp 115 MIRYamlMapping.cpp 116 MLRegallocEvictAdvisor.cpp 117 ModuloSchedule.cpp 118 MultiHazardRecognizer.cpp 119 PatchableFunction.cpp 120 MBFIWrapper.cpp 121 MIRPrinter.cpp 122 MIRPrintingPass.cpp 123 MacroFusion.cpp 124 NonRelocatableStringpool.cpp 125 OptimizePHIs.cpp 126 ParallelCG.cpp 127 PeepholeOptimizer.cpp 128 PHIElimination.cpp 129 PHIEliminationUtils.cpp 130 PostRAHazardRecognizer.cpp 131 PostRASchedulerList.cpp 132 PreISelIntrinsicLowering.cpp 133 ProcessImplicitDefs.cpp 134 PrologEpilogInserter.cpp 135 PseudoProbeInserter.cpp 136 PseudoSourceValue.cpp 137 RDFGraph.cpp 138 RDFLiveness.cpp 139 RDFRegisters.cpp 140 ReachingDefAnalysis.cpp 141 RegAllocBase.cpp 142 RegAllocBasic.cpp 143 RegAllocEvictionAdvisor.cpp 144 RegAllocFast.cpp 145 RegAllocGreedy.cpp 146 RegAllocPBQP.cpp 147 RegAllocScore.cpp 148 RegisterClassInfo.cpp 149 RegisterCoalescer.cpp 150 RegisterPressure.cpp 151 RegisterScavenging.cpp 152 RemoveRedundantDebugValues.cpp 153 RenameIndependentSubregs.cpp 154 MachineStableHash.cpp 155 MIRVRegNamerUtils.cpp 156 MIRNamerPass.cpp 157 MIRCanonicalizerPass.cpp 158 RegisterUsageInfo.cpp 159 RegUsageInfoCollector.cpp 160 RegUsageInfoPropagate.cpp 161 ReplaceWithVeclib.cpp 162 ResetMachineFunctionPass.cpp 163 SafeStack.cpp 164 SafeStackLayout.cpp 165 ScheduleDAG.cpp 166 ScheduleDAGInstrs.cpp 167 ScheduleDAGPrinter.cpp 168 ScoreboardHazardRecognizer.cpp 169 ShadowStackGCLowering.cpp 170 ShrinkWrap.cpp 171 SjLjEHPrepare.cpp 172 SlotIndexes.cpp 173 SpillPlacement.cpp 174 SplitKit.cpp 175 StackColoring.cpp 176 StackMapLivenessAnalysis.cpp 177 StackMaps.cpp 178 StackProtector.cpp 179 StackSlotColoring.cpp 180 SwiftErrorValueTracking.cpp 181 SwitchLoweringUtils.cpp 182 TailDuplication.cpp 183 TailDuplicator.cpp 184 TargetFrameLoweringImpl.cpp 185 TargetInstrInfo.cpp 186 TargetLoweringBase.cpp 187 TargetLoweringObjectFileImpl.cpp 188 TargetOptionsImpl.cpp 189 TargetPassConfig.cpp 190 TargetRegisterInfo.cpp 191 TargetSchedule.cpp 192 TargetSubtargetInfo.cpp 193 TypePromotion.cpp 194 TwoAddressInstructionPass.cpp 195 UnreachableBlockElim.cpp 196 ValueTypes.cpp 197 VLIWMachineScheduler.cpp 198 VirtRegMap.cpp 199 WasmEHPrepare.cpp 200 WinEHPrepare.cpp 201 XRayInstrumentation.cpp 202 203 LiveDebugValues/LiveDebugValues.cpp 204 LiveDebugValues/VarLocBasedImpl.cpp 205 LiveDebugValues/InstrRefBasedImpl.cpp 206 207 ADDITIONAL_HEADER_DIRS 208 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen 209 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP 210 211 LINK_LIBS ${LLVM_PTHREAD_LIB} 212 213 DEPENDS 214 intrinsics_gen 215 216 LINK_COMPONENTS 217 Analysis 218 BitReader 219 BitWriter 220 Core 221 MC 222 ProfileData 223 Scalar 224 Support 225 Target 226 TransformUtils 227 ) 228 229add_subdirectory(SelectionDAG) 230add_subdirectory(AsmPrinter) 231add_subdirectory(MIRParser) 232add_subdirectory(GlobalISel) 233