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 BBSectionsPrepare.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 LiveDebugValues.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 MachineDebugify.cpp 79 MachineDominanceFrontier.cpp 80 MachineDominators.cpp 81 MachineFrameInfo.cpp 82 MachineFunction.cpp 83 MachineFunctionPass.cpp 84 MachineFunctionPrinterPass.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 MachinePipeliner.cpp 96 MachinePostDominators.cpp 97 MachineRegionInfo.cpp 98 MachineRegisterInfo.cpp 99 MachineScheduler.cpp 100 MachineSink.cpp 101 MachineSizeOpts.cpp 102 MachineSSAUpdater.cpp 103 MachineStripDebug.cpp 104 MachineTraceMetrics.cpp 105 MachineVerifier.cpp 106 ModuloSchedule.cpp 107 PatchableFunction.cpp 108 MBFIWrapper.cpp 109 MIRPrinter.cpp 110 MIRPrintingPass.cpp 111 MacroFusion.cpp 112 NonRelocatableStringpool.cpp 113 OptimizePHIs.cpp 114 ParallelCG.cpp 115 PeepholeOptimizer.cpp 116 PHIElimination.cpp 117 PHIEliminationUtils.cpp 118 PostRAHazardRecognizer.cpp 119 PostRASchedulerList.cpp 120 PreISelIntrinsicLowering.cpp 121 ProcessImplicitDefs.cpp 122 PrologEpilogInserter.cpp 123 PseudoSourceValue.cpp 124 RDFGraph.cpp 125 RDFLiveness.cpp 126 RDFRegisters.cpp 127 ReachingDefAnalysis.cpp 128 RegAllocBase.cpp 129 RegAllocBasic.cpp 130 RegAllocFast.cpp 131 RegAllocGreedy.cpp 132 RegAllocPBQP.cpp 133 RegisterClassInfo.cpp 134 RegisterCoalescer.cpp 135 RegisterPressure.cpp 136 RegisterScavenging.cpp 137 RenameIndependentSubregs.cpp 138 MIRVRegNamerUtils.cpp 139 MIRNamerPass.cpp 140 MIRCanonicalizerPass.cpp 141 RegisterUsageInfo.cpp 142 RegUsageInfoCollector.cpp 143 RegUsageInfoPropagate.cpp 144 ResetMachineFunctionPass.cpp 145 SafeStack.cpp 146 SafeStackColoring.cpp 147 SafeStackLayout.cpp 148 ScalarizeMaskedMemIntrin.cpp 149 ScheduleDAG.cpp 150 ScheduleDAGInstrs.cpp 151 ScheduleDAGPrinter.cpp 152 ScoreboardHazardRecognizer.cpp 153 ShadowStackGCLowering.cpp 154 ShrinkWrap.cpp 155 SjLjEHPrepare.cpp 156 SlotIndexes.cpp 157 SpillPlacement.cpp 158 SplitKit.cpp 159 StackColoring.cpp 160 StackMapLivenessAnalysis.cpp 161 StackMaps.cpp 162 StackProtector.cpp 163 StackSlotColoring.cpp 164 SwiftErrorValueTracking.cpp 165 SwitchLoweringUtils.cpp 166 TailDuplication.cpp 167 TailDuplicator.cpp 168 TargetFrameLoweringImpl.cpp 169 TargetInstrInfo.cpp 170 TargetLoweringBase.cpp 171 TargetLoweringObjectFileImpl.cpp 172 TargetOptionsImpl.cpp 173 TargetPassConfig.cpp 174 TargetRegisterInfo.cpp 175 TargetSchedule.cpp 176 TargetSubtargetInfo.cpp 177 TypePromotion.cpp 178 TwoAddressInstructionPass.cpp 179 UnreachableBlockElim.cpp 180 ValueTypes.cpp 181 VirtRegMap.cpp 182 WasmEHPrepare.cpp 183 WinEHPrepare.cpp 184 XRayInstrumentation.cpp 185 186 ADDITIONAL_HEADER_DIRS 187 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen 188 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP 189 190 LINK_LIBS ${LLVM_PTHREAD_LIB} 191 192 DEPENDS 193 intrinsics_gen 194 ) 195 196add_subdirectory(SelectionDAG) 197add_subdirectory(AsmPrinter) 198add_subdirectory(MIRParser) 199add_subdirectory(GlobalISel) 200