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 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 FaultMaps.cpp 33 FEntryInserter.cpp 34 FinalizeISel.cpp 35 FixupStatepointCallerSaved.cpp 36 FuncletLayout.cpp 37 GCMetadata.cpp 38 GCMetadataPrinter.cpp 39 GCRootLowering.cpp 40 GCStrategy.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 MachineDebugify.cpp 81 MachineDominanceFrontier.cpp 82 MachineDominators.cpp 83 MachineFrameInfo.cpp 84 MachineFunction.cpp 85 MachineFunctionPass.cpp 86 MachineFunctionPrinterPass.cpp 87 MachineFunctionSplitter.cpp 88 MachineInstrBundle.cpp 89 MachineInstr.cpp 90 MachineLICM.cpp 91 MachineLoopInfo.cpp 92 MachineLoopUtils.cpp 93 MachineModuleInfo.cpp 94 MachineModuleInfoImpls.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 ModuloSchedule.cpp 111 MultiHazardRecognizer.cpp 112 PatchableFunction.cpp 113 MBFIWrapper.cpp 114 MIRPrinter.cpp 115 MIRPrintingPass.cpp 116 MacroFusion.cpp 117 NonRelocatableStringpool.cpp 118 OptimizePHIs.cpp 119 ParallelCG.cpp 120 PeepholeOptimizer.cpp 121 PHIElimination.cpp 122 PHIEliminationUtils.cpp 123 PostRAHazardRecognizer.cpp 124 PostRASchedulerList.cpp 125 PreISelIntrinsicLowering.cpp 126 ProcessImplicitDefs.cpp 127 PrologEpilogInserter.cpp 128 PseudoProbeInserter.cpp 129 PseudoSourceValue.cpp 130 RDFGraph.cpp 131 RDFLiveness.cpp 132 RDFRegisters.cpp 133 ReachingDefAnalysis.cpp 134 RegAllocBase.cpp 135 RegAllocBasic.cpp 136 RegAllocFast.cpp 137 RegAllocGreedy.cpp 138 RegAllocPBQP.cpp 139 RegisterClassInfo.cpp 140 RegisterCoalescer.cpp 141 RegisterPressure.cpp 142 RegisterScavenging.cpp 143 RenameIndependentSubregs.cpp 144 MachineStableHash.cpp 145 MIRVRegNamerUtils.cpp 146 MIRNamerPass.cpp 147 MIRCanonicalizerPass.cpp 148 RegisterUsageInfo.cpp 149 RegUsageInfoCollector.cpp 150 RegUsageInfoPropagate.cpp 151 ReplaceWithVeclib.cpp 152 ResetMachineFunctionPass.cpp 153 SafeStack.cpp 154 SafeStackLayout.cpp 155 ScheduleDAG.cpp 156 ScheduleDAGInstrs.cpp 157 ScheduleDAGPrinter.cpp 158 ScoreboardHazardRecognizer.cpp 159 ShadowStackGCLowering.cpp 160 ShrinkWrap.cpp 161 SjLjEHPrepare.cpp 162 SlotIndexes.cpp 163 SpillPlacement.cpp 164 SplitKit.cpp 165 StackColoring.cpp 166 StackMapLivenessAnalysis.cpp 167 StackMaps.cpp 168 StackProtector.cpp 169 StackSlotColoring.cpp 170 SwiftErrorValueTracking.cpp 171 SwitchLoweringUtils.cpp 172 TailDuplication.cpp 173 TailDuplicator.cpp 174 TargetFrameLoweringImpl.cpp 175 TargetInstrInfo.cpp 176 TargetLoweringBase.cpp 177 TargetLoweringObjectFileImpl.cpp 178 TargetOptionsImpl.cpp 179 TargetPassConfig.cpp 180 TargetRegisterInfo.cpp 181 TargetSchedule.cpp 182 TargetSubtargetInfo.cpp 183 TypePromotion.cpp 184 TwoAddressInstructionPass.cpp 185 UnreachableBlockElim.cpp 186 ValueTypes.cpp 187 VirtRegMap.cpp 188 WasmEHPrepare.cpp 189 WinEHPrepare.cpp 190 XRayInstrumentation.cpp 191 192 LiveDebugValues/LiveDebugValues.cpp 193 LiveDebugValues/VarLocBasedImpl.cpp 194 LiveDebugValues/InstrRefBasedImpl.cpp 195 196 ADDITIONAL_HEADER_DIRS 197 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen 198 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP 199 200 LINK_LIBS ${LLVM_PTHREAD_LIB} 201 202 DEPENDS 203 intrinsics_gen 204 205 LINK_COMPONENTS 206 Analysis 207 BitReader 208 BitWriter 209 Core 210 MC 211 ProfileData 212 Scalar 213 Support 214 Target 215 TransformUtils 216 ) 217 218add_subdirectory(SelectionDAG) 219add_subdirectory(AsmPrinter) 220add_subdirectory(MIRParser) 221add_subdirectory(GlobalISel) 222