1add_llvm_library(LLVMCodeGen
2  AggressiveAntiDepBreaker.cpp
3  AllocationOrder.cpp
4  Analysis.cpp
5  AtomicExpandPass.cpp
6  BasicTargetTransformInfo.cpp
7  BranchFolding.cpp
8  BuiltinGCs.cpp
9  CalcSpillWeights.cpp
10  CallingConvLower.cpp
11  CodeGen.cpp
12  CodeGenPrepare.cpp
13  CriticalAntiDepBreaker.cpp
14  DeadMachineInstructionElim.cpp
15  DetectDeadLanes.cpp
16  DFAPacketizer.cpp
17  DwarfEHPrepare.cpp
18  EarlyIfConversion.cpp
19  EdgeBundles.cpp
20  ExecutionDepsFix.cpp
21  ExpandISelPseudos.cpp
22  ExpandPostRAPseudos.cpp
23  FaultMaps.cpp
24  FuncletLayout.cpp
25  GCMetadata.cpp
26  GCMetadataPrinter.cpp
27  GCRootLowering.cpp
28  GCStrategy.cpp
29  GlobalMerge.cpp
30  IfConversion.cpp
31  ImplicitNullChecks.cpp
32  InlineSpiller.cpp
33  InterferenceCache.cpp
34  InterleavedAccessPass.cpp
35  IntrinsicLowering.cpp
36  LatencyPriorityQueue.cpp
37  LexicalScopes.cpp
38  LiveDebugValues.cpp
39  LiveDebugVariables.cpp
40  LiveIntervalAnalysis.cpp
41  LiveInterval.cpp
42  LiveIntervalUnion.cpp
43  LivePhysRegs.cpp
44  LiveRangeCalc.cpp
45  LiveRangeEdit.cpp
46  LiveRegMatrix.cpp
47  LiveStackAnalysis.cpp
48  LiveVariables.cpp
49  LLVMTargetMachine.cpp
50  LocalStackSlotAllocation.cpp
51  LowerEmuTLS.cpp
52  MachineBasicBlock.cpp
53  MachineBlockFrequencyInfo.cpp
54  MachineBlockPlacement.cpp
55  MachineBranchProbabilityInfo.cpp
56  MachineCombiner.cpp
57  MachineCopyPropagation.cpp
58  MachineCSE.cpp
59  MachineDominanceFrontier.cpp
60  MachineDominators.cpp
61  MachineFunctionAnalysis.cpp
62  MachineFunction.cpp
63  MachineFunctionPass.cpp
64  MachineFunctionPrinterPass.cpp
65  MachineInstrBundle.cpp
66  MachineInstr.cpp
67  MachineLICM.cpp
68  MachineLoopInfo.cpp
69  MachineModuleInfo.cpp
70  MachineModuleInfoImpls.cpp
71  MachinePassRegistry.cpp
72  MachinePipeliner.cpp
73  MachinePostDominators.cpp
74  MachineRegionInfo.cpp
75  MachineRegisterInfo.cpp
76  MachineScheduler.cpp
77  MachineSink.cpp
78  MachineSSAUpdater.cpp
79  MachineTraceMetrics.cpp
80  MachineVerifier.cpp
81  PatchableFunction.cpp
82  MIRPrinter.cpp
83  MIRPrintingPass.cpp
84  OptimizePHIs.cpp
85  ParallelCG.cpp
86  PeepholeOptimizer.cpp
87  PHIElimination.cpp
88  PHIEliminationUtils.cpp
89  PostRAHazardRecognizer.cpp
90  PostRASchedulerList.cpp
91  PreISelIntrinsicLowering.cpp
92  ProcessImplicitDefs.cpp
93  PrologEpilogInserter.cpp
94  PseudoSourceValue.cpp
95  RegAllocBase.cpp
96  RegAllocBasic.cpp
97  RegAllocFast.cpp
98  RegAllocGreedy.cpp
99  RegAllocPBQP.cpp
100  RegisterClassInfo.cpp
101  RegisterCoalescer.cpp
102  RegisterPressure.cpp
103  RegisterScavenging.cpp
104  RenameIndependentSubregs.cpp
105  RegisterUsageInfo.cpp
106  RegUsageInfoCollector.cpp
107  RegUsageInfoPropagate.cpp
108  SafeStack.cpp
109  SafeStackColoring.cpp
110  SafeStackLayout.cpp
111  ScheduleDAG.cpp
112  ScheduleDAGInstrs.cpp
113  ScheduleDAGPrinter.cpp
114  ScoreboardHazardRecognizer.cpp
115  ShadowStackGCLowering.cpp
116  ShrinkWrap.cpp
117  SjLjEHPrepare.cpp
118  SlotIndexes.cpp
119  SpillPlacement.cpp
120  SplitKit.cpp
121  StackColoring.cpp
122  StackMapLivenessAnalysis.cpp
123  StackMaps.cpp
124  StackProtector.cpp
125  StackSlotColoring.cpp
126  TailDuplication.cpp
127  TailDuplicator.cpp
128  TargetFrameLoweringImpl.cpp
129  TargetInstrInfo.cpp
130  TargetLoweringBase.cpp
131  TargetLoweringObjectFileImpl.cpp
132  TargetOptionsImpl.cpp
133  TargetPassConfig.cpp
134  TargetRegisterInfo.cpp
135  TargetSchedule.cpp
136  TwoAddressInstructionPass.cpp
137  UnreachableBlockElim.cpp
138  VirtRegMap.cpp
139  WinEHPrepare.cpp
140  XRayInstrumentation.cpp
141
142  ADDITIONAL_HEADER_DIRS
143  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen
144  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP
145
146  LINK_LIBS ${PTHREAD_LIB}
147  )
148
149add_dependencies(LLVMCodeGen intrinsics_gen)
150
151add_subdirectory(SelectionDAG)
152add_subdirectory(AsmPrinter)
153add_subdirectory(MIRParser)
154add_subdirectory(GlobalISel)
155