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