2 if(CMAKE_HOST_UNIX AND LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD)
3 set(system_libs ${system_libs} pthread)
6 add_llvm_library(LLVMCodeGen
7 AggressiveAntiDepBreaker.cpp
11 BasicTargetTransformInfo.cpp
18 CriticalAntiDepBreaker.cpp
20 DeadMachineInstructionElim.cpp
27 ExpandPostRAPseudos.cpp
37 ImplicitNullChecks.cpp
40 InterleavedAccessPass.cpp
43 LatencyPriorityQueue.cpp
45 LiveDebugVariables.cpp
47 LiveIntervalAnalysis.cpp
55 LocalStackSlotAllocation.cpp
57 MachineBlockFrequencyInfo.cpp
58 MachineBlockPlacement.cpp
59 MachineBranchProbabilityInfo.cpp
62 MachineCopyPropagation.cpp
64 MachineDominanceFrontier.cpp
66 MachineFunctionAnalysis.cpp
67 MachineFunctionPass.cpp
68 MachineFunctionPrinterPass.cpp
70 MachineInstrBundle.cpp
74 MachineModuleInfoImpls.cpp
75 MachinePassRegistry.cpp
76 MachinePostDominators.cpp
77 MachineRegisterInfo.cpp
82 MachineTraceMetrics.cpp
89 PHIEliminationUtils.cpp
93 PostRASchedulerList.cpp
94 ProcessImplicitDefs.cpp
95 PrologEpilogInserter.cpp
102 RegisterClassInfo.cpp
103 RegisterCoalescer.cpp
105 RegisterScavenging.cpp
107 ScheduleDAGInstrs.cpp
108 ScheduleDAGPrinter.cpp
109 ScoreboardHazardRecognizer.cpp
112 ShadowStackGCLowering.cpp
119 StackSlotColoring.cpp
120 StackMapLivenessAnalysis.cpp
122 StatepointExampleGC.cpp
124 TaintRelaxedAtomicsUtils.cpp
125 TargetFrameLoweringImpl.cpp
127 TargetLoweringBase.cpp
128 TargetLoweringObjectFileImpl.cpp
129 TargetOptionsImpl.cpp
130 TargetRegisterInfo.cpp
132 TwoAddressInstructionPass.cpp
133 UnreachableBlockElim.cpp
137 ADDITIONAL_HEADER_DIRS
138 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen
139 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP
141 LINK_LIBS ${system_libs}
144 add_dependencies(LLVMCodeGen intrinsics_gen)
146 add_subdirectory(SelectionDAG)
147 add_subdirectory(AsmPrinter)
148 add_subdirectory(MIRParser)