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