set(system_libs)
if(CMAKE_HOST_UNIX AND LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD)
  set(system_libs ${system_libs} pthread)
endif()

add_llvm_library(LLVMCodeGen
  AggressiveAntiDepBreaker.cpp
  AllocationOrder.cpp
  Analysis.cpp
  AtomicExpandPass.cpp
  BasicTargetTransformInfo.cpp
  BranchFolding.cpp
  CalcSpillWeights.cpp
  CallingConvLower.cpp
  CodeGen.cpp
  CodeGenPrepare.cpp
  CoreCLRGC.cpp
  CriticalAntiDepBreaker.cpp
  DFAPacketizer.cpp
  DeadMachineInstructionElim.cpp
  DwarfEHPrepare.cpp
  EarlyIfConversion.cpp
  EdgeBundles.cpp
  ErlangGC.cpp
  ExecutionDepsFix.cpp
  ExpandISelPseudos.cpp
  ExpandPostRAPseudos.cpp
  LiveDebugValues.cpp
  FaultMaps.cpp
  FuncletLayout.cpp
  GCMetadata.cpp
  GCMetadataPrinter.cpp
  GCRootLowering.cpp
  GCStrategy.cpp
  GlobalMerge.cpp
  IfConversion.cpp
  ImplicitNullChecks.cpp
  InlineSpiller.cpp
  InterferenceCache.cpp
  InterleavedAccessPass.cpp
  IntrinsicLowering.cpp
  LLVMTargetMachine.cpp
  LatencyPriorityQueue.cpp
  LexicalScopes.cpp
  LiveDebugVariables.cpp
  LiveInterval.cpp
  LiveIntervalAnalysis.cpp
  LiveIntervalUnion.cpp
  LiveRangeCalc.cpp
  LiveRangeEdit.cpp
  LiveRegMatrix.cpp
  LivePhysRegs.cpp
  LiveStackAnalysis.cpp
  LiveVariables.cpp
  LocalStackSlotAllocation.cpp
  MachineBasicBlock.cpp
  MachineBlockFrequencyInfo.cpp
  MachineBlockPlacement.cpp
  MachineBranchProbabilityInfo.cpp
  MachineCSE.cpp
  MachineCombiner.cpp
  MachineCopyPropagation.cpp
  MachineDominators.cpp
  MachineDominanceFrontier.cpp
  MachineFunction.cpp
  MachineFunctionAnalysis.cpp
  MachineFunctionPass.cpp
  MachineFunctionPrinterPass.cpp
  MachineInstr.cpp
  MachineInstrBundle.cpp
  MachineLICM.cpp
  MachineLoopInfo.cpp
  MachineModuleInfo.cpp
  MachineModuleInfoImpls.cpp
  MachinePassRegistry.cpp
  MachinePostDominators.cpp
  MachineRegisterInfo.cpp
  MachineRegionInfo.cpp
  MachineSSAUpdater.cpp
  MachineScheduler.cpp
  MachineSink.cpp
  MachineTraceMetrics.cpp
  MachineVerifier.cpp
  MIRPrinter.cpp
  MIRPrintingPass.cpp
  OcamlGC.cpp
  OptimizePHIs.cpp
  PHIElimination.cpp
  PHIEliminationUtils.cpp
  ParallelCG.cpp
  Passes.cpp
  PeepholeOptimizer.cpp
  PostRASchedulerList.cpp
  ProcessImplicitDefs.cpp
  PrologEpilogInserter.cpp
  PseudoSourceValue.cpp
  RegAllocBase.cpp
  RegAllocBasic.cpp
  RegAllocFast.cpp
  RegAllocGreedy.cpp
  RegAllocPBQP.cpp
  RegisterClassInfo.cpp
  RegisterCoalescer.cpp
  RegisterPressure.cpp
  RegisterScavenging.cpp
  ScheduleDAG.cpp
  ScheduleDAGInstrs.cpp
  ScheduleDAGPrinter.cpp
  ScoreboardHazardRecognizer.cpp
  ShrinkWrap.cpp
  ShadowStackGC.cpp
  ShadowStackGCLowering.cpp
  SjLjEHPrepare.cpp
  SlotIndexes.cpp
  SpillPlacement.cpp
  SplitKit.cpp
  StackColoring.cpp
  StackProtector.cpp
  StackSlotColoring.cpp
  StackMapLivenessAnalysis.cpp
  StackMaps.cpp
  StatepointExampleGC.cpp
  TailDuplication.cpp
  TargetFrameLoweringImpl.cpp
  TargetInstrInfo.cpp
  TargetLoweringBase.cpp
  TargetLoweringObjectFileImpl.cpp
  TargetOptionsImpl.cpp
  TargetRegisterInfo.cpp
  TargetSchedule.cpp
  TwoAddressInstructionPass.cpp
  UnreachableBlockElim.cpp
  VirtRegMap.cpp
  WinEHPrepare.cpp

  ADDITIONAL_HEADER_DIRS
  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen
  ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP

  LINK_LIBS ${system_libs}
  )

add_dependencies(LLVMCodeGen intrinsics_gen)

add_subdirectory(SelectionDAG)
add_subdirectory(AsmPrinter)
add_subdirectory(MIRParser)
