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  MachinePostDominators.cpp
73  MachineRegionInfo.cpp
74  MachineRegisterInfo.cpp
75  MachineScheduler.cpp
76  MachineSink.cpp
77  MachineSSAUpdater.cpp
78  MachineTraceMetrics.cpp
79  MachineVerifier.cpp
80  PatchableFunction.cpp
81  MIRPrinter.cpp
82  MIRPrintingPass.cpp
83  OptimizePHIs.cpp
84  ParallelCG.cpp
85  PeepholeOptimizer.cpp
86  PHIElimination.cpp
87  PHIEliminationUtils.cpp
88  PostRAHazardRecognizer.cpp
89  PostRASchedulerList.cpp
90  PreISelIntrinsicLowering.cpp
91  ProcessImplicitDefs.cpp
92  PrologEpilogInserter.cpp
93  PseudoSourceValue.cpp
94  RegAllocBase.cpp
95  RegAllocBasic.cpp
96  RegAllocFast.cpp
97  RegAllocGreedy.cpp
98  RegAllocPBQP.cpp
99  RegisterClassInfo.cpp
100  RegisterCoalescer.cpp
101  RegisterPressure.cpp
102  RegisterScavenging.cpp
103  RenameIndependentSubregs.cpp
104  RegisterUsageInfo.cpp
105  RegUsageInfoCollector.cpp
106  RegUsageInfoPropagate.cpp
107  SafeStack.cpp
108  ScheduleDAG.cpp
109  ScheduleDAGInstrs.cpp
110  ScheduleDAGPrinter.cpp
111  ScoreboardHazardRecognizer.cpp
112  ShadowStackGCLowering.cpp
113  ShrinkWrap.cpp
114  SjLjEHPrepare.cpp
115  SlotIndexes.cpp
116  SpillPlacement.cpp
117  SplitKit.cpp
118  StackColoring.cpp
119  StackMapLivenessAnalysis.cpp
120  StackMaps.cpp
121  StackProtector.cpp
122  StackSlotColoring.cpp
123  TailDuplication.cpp
124  TailDuplicator.cpp
125  TargetFrameLoweringImpl.cpp
126  TargetInstrInfo.cpp
127  TargetLoweringBase.cpp
128  TargetLoweringObjectFileImpl.cpp
129  TargetOptionsImpl.cpp
130  TargetPassConfig.cpp
131  TargetRegisterInfo.cpp
132  TargetSchedule.cpp
133  TwoAddressInstructionPass.cpp
134  UnreachableBlockElim.cpp
135  VirtRegMap.cpp
136  WinEHPrepare.cpp
137
138  ADDITIONAL_HEADER_DIRS
139  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen
140  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP
141
142  LINK_LIBS ${PTHREAD_LIB}
143  )
144
145add_dependencies(LLVMCodeGen intrinsics_gen)
146
147add_subdirectory(SelectionDAG)
148add_subdirectory(AsmPrinter)
149add_subdirectory(MIRParser)
150add_subdirectory(GlobalISel)
151