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  Passes.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  SafeStack.cpp
105  ScheduleDAG.cpp
106  ScheduleDAGInstrs.cpp
107  ScheduleDAGPrinter.cpp
108  ScoreboardHazardRecognizer.cpp
109  ShadowStackGCLowering.cpp
110  ShrinkWrap.cpp
111  SjLjEHPrepare.cpp
112  SlotIndexes.cpp
113  SpillPlacement.cpp
114  SplitKit.cpp
115  StackColoring.cpp
116  StackMapLivenessAnalysis.cpp
117  StackMaps.cpp
118  StackProtector.cpp
119  StackSlotColoring.cpp
120  TailDuplication.cpp
121  TailDuplicator.cpp
122  TargetFrameLoweringImpl.cpp
123  TargetInstrInfo.cpp
124  TargetLoweringBase.cpp
125  TargetLoweringObjectFileImpl.cpp
126  TargetOptionsImpl.cpp
127  TargetRegisterInfo.cpp
128  TargetSchedule.cpp
129  TwoAddressInstructionPass.cpp
130  UnreachableBlockElim.cpp
131  VirtRegMap.cpp
132  WinEHPrepare.cpp
133
134  ADDITIONAL_HEADER_DIRS
135  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen
136  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP
137
138  LINK_LIBS ${PTHREAD_LIB}
139  )
140
141add_dependencies(LLVMCodeGen intrinsics_gen)
142
143add_subdirectory(SelectionDAG)
144add_subdirectory(AsmPrinter)
145add_subdirectory(MIRParser)
146add_subdirectory(GlobalISel)
147