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