blob: 26da748fa244312594c2fb3a28965465638e20be [file] [log] [blame]
Oscar Fuentesa229b3c2008-09-22 01:08:49 +00001add_llvm_library(LLVMCodeGen
David Goodwinde11f362009-10-26 19:32:42 +00002 AggressiveAntiDepBreaker.cpp
Jakob Stoklund Olesen0c67e012010-12-10 18:36:02 +00003 AllocationOrder.cpp
Ted Kremenekd52caa52010-06-15 04:08:14 +00004 Analysis.cpp
Robin Morisset59c23cd2014-08-21 21:50:01 +00005 AtomicExpandPass.cpp
Chandler Carruth664e3542013-01-07 01:37:14 +00006 BasicTargetTransformInfo.cpp
Nemanja Ivanovicb223cfa2017-03-01 20:29:34 +00007 BranchCoalescing.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +00008 BranchFolding.cpp
Matt Arsenault36919a42016-10-06 15:38:53 +00009 BranchRelaxation.cpp
Philip Reames31955002016-01-19 03:57:18 +000010 BuiltinGCs.cpp
Lang Hamesc73ca2b2009-12-14 07:43:25 +000011 CalcSpillWeights.cpp
Dan Gohman498e5f82010-07-07 15:15:27 +000012 CallingConvLower.cpp
Owen Anderson80fc0762010-10-07 18:41:20 +000013 CodeGen.cpp
Quentin Colombeta3490842014-02-22 00:07:45 +000014 CodeGenPrepare.cpp
Hal Finkel40d7f5c2016-09-01 09:42:39 +000015 CountingFunctionInserter.cpp
David Goodwin83704852009-10-26 16:59:04 +000016 CriticalAntiDepBreaker.cpp
Benjamin Kramer56b31bd2013-01-11 20:05:37 +000017 DeadMachineInstructionElim.cpp
Matthias Braunfbe85ae2016-04-28 03:07:16 +000018 DetectDeadLanes.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000019 DFAPacketizer.cpp
Duncan Sandsd6fb6502009-05-22 20:36:31 +000020 DwarfEHPrepare.cpp
Jakob Stoklund Olesenf8a63a12012-07-04 00:09:54 +000021 EarlyIfConversion.cpp
Jakob Stoklund Olesenf96ae682011-01-04 21:10:05 +000022 EdgeBundles.cpp
Jakob Stoklund Olesen934b7d72011-09-28 00:01:54 +000023 ExecutionDepsFix.cpp
Dan Gohmanc2b78612010-11-18 18:45:06 +000024 ExpandISelPseudos.cpp
Jakob Stoklund Olesenf152df12011-09-25 16:46:00 +000025 ExpandPostRAPseudos.cpp
Sanjoy Dasc63244d2015-06-15 18:44:08 +000026 FaultMaps.cpp
Nirav Davea7c041d2017-01-31 17:00:27 +000027 FEntryInserter.cpp
David Majnemer97890232015-09-17 20:45:18 +000028 FuncletLayout.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000029 GCMetadata.cpp
30 GCMetadataPrinter.cpp
Philip Reamesf27f3732015-01-15 19:29:42 +000031 GCRootLowering.cpp
Philip Reames56a03932015-01-26 18:26:35 +000032 GCStrategy.cpp
Jiangning Liu96e92c12014-06-13 22:57:59 +000033 GlobalMerge.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000034 IfConversion.cpp
Sanjoy Das69fad072015-06-15 18:44:27 +000035 ImplicitNullChecks.cpp
Jakob Stoklund Olesenf8889112010-06-29 23:58:39 +000036 InlineSpiller.cpp
Jakob Stoklund Olesen91cbcaf2011-04-02 06:03:35 +000037 InterferenceCache.cpp
Hao Liu1c1e0c92015-06-26 02:10:27 +000038 InterleavedAccessPass.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000039 IntrinsicLowering.cpp
Dan Gohman60cb69e2008-11-19 23:18:57 +000040 LatencyPriorityQueue.cpp
Adam Nemetbbb141c2017-02-14 17:21:09 +000041 LazyMachineBlockFrequencyInfo.cpp
Devang Patele1649c32011-08-10 19:04:06 +000042 LexicalScopes.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000043 LiveDebugValues.cpp
Jakob Stoklund Olesend4900a62010-11-30 02:17:10 +000044 LiveDebugVariables.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000045 LiveIntervalAnalysis.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000046 LiveInterval.cpp
Andrew Trick1c246052010-10-22 23:09:15 +000047 LiveIntervalUnion.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000048 LivePhysRegs.cpp
Benjamin Kramer56b31bd2013-01-11 20:05:37 +000049 LiveRangeCalc.cpp
50 LiveRangeEdit.cpp
Jakob Stoklund Olesenc26fbbf2012-06-09 02:13:10 +000051 LiveRegMatrix.cpp
Matthias Braun710a4c12017-01-20 00:16:14 +000052 LiveRegUnits.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000053 LiveStackAnalysis.cpp
54 LiveVariables.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000055 LLVMTargetMachine.cpp
Ted Kremenekda2eba52010-08-14 01:55:09 +000056 LocalStackSlotAllocation.cpp
Tim Northover62ae5682016-07-20 19:09:30 +000057 LowLevelType.cpp
Chih-Hung Hsieh57886402016-01-13 23:56:37 +000058 LowerEmuTLS.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000059 MachineBasicBlock.cpp
Jakub Staszak875ebd52011-07-25 19:25:40 +000060 MachineBlockFrequencyInfo.cpp
Chandler Carruth10281422011-10-21 06:46:38 +000061 MachineBlockPlacement.cpp
Jakub Staszak12a43bd2011-06-16 20:22:37 +000062 MachineBranchProbabilityInfo.cpp
Gerolf Hoflehner5e1207e2014-08-03 21:35:39 +000063 MachineCombiner.cpp
Evan Cheng00b1a3c2012-01-07 03:02:36 +000064 MachineCopyPropagation.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000065 MachineCSE.cpp
Matt Arsenault4181ea32014-07-12 21:59:52 +000066 MachineDominanceFrontier.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000067 MachineDominators.cpp
Matthias Braune4e14ae2017-04-26 23:36:58 +000068 MachineFrameInfo.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000069 MachineFunction.cpp
Ted Kremenekdefdbdc2009-07-31 18:50:22 +000070 MachineFunctionPass.cpp
David Greene9b063df2010-04-02 23:17:14 +000071 MachineFunctionPrinterPass.cpp
NAKAMURA Takumi4c5ab7b2011-12-14 03:50:53 +000072 MachineInstrBundle.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000073 MachineInstr.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000074 MachineLICM.cpp
75 MachineLoopInfo.cpp
76 MachineModuleInfo.cpp
Xerxes Ranby230c7172009-09-16 10:18:36 +000077 MachineModuleInfoImpls.cpp
Adam Nemeta9640662017-01-25 23:20:33 +000078 MachineOptimizationRemarkEmitter.cpp
Jessica Paquette596f4832017-03-06 21:31:18 +000079 MachineOutliner.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000080 MachinePassRegistry.cpp
Brendon Cahoon254f8892016-07-29 16:44:44 +000081 MachinePipeliner.cpp
Benjamin Kramer56b31bd2013-01-11 20:05:37 +000082 MachinePostDominators.cpp
Matt Arsenault1b8d8372014-07-19 18:29:29 +000083 MachineRegionInfo.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000084 MachineRegisterInfo.cpp
Andrew Tricke77e84e2012-01-13 06:30:30 +000085 MachineScheduler.cpp
Ted Kremenek451a9652010-01-13 01:02:47 +000086 MachineSink.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000087 MachineSSAUpdater.cpp
Jakob Stoklund Olesenf9029fe2012-07-26 18:38:11 +000088 MachineTraceMetrics.cpp
Jakob Stoklund Olesen36c027a2009-05-16 00:33:53 +000089 MachineVerifier.cpp
Sanjoy Dasc0441c22016-04-19 05:24:47 +000090 PatchableFunction.cpp
Alex Lorenz345c1442015-06-15 23:52:35 +000091 MIRPrinter.cpp
Alex Lorenz2bdb4e12015-05-27 18:02:19 +000092 MIRPrintingPass.cpp
Bob Wilson0827e042010-02-12 01:30:21 +000093 OptimizePHIs.cpp
Peter Collingbournec269ed52015-08-27 23:37:36 +000094 ParallelCG.cpp
Bill Wendling88451402010-08-10 05:16:06 +000095 PeepholeOptimizer.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +000096 PHIElimination.cpp
97 PHIEliminationUtils.cpp
Tom Stellardee346802016-04-22 14:43:50 +000098 PostRAHazardRecognizer.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +000099 PostRASchedulerList.cpp
Peter Collingbourne7dd8dbf2016-04-22 21:18:02 +0000100 PreISelIntrinsicLowering.cpp
Douglas Gregor90790c72009-11-04 01:32:06 +0000101 ProcessImplicitDefs.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +0000102 PrologEpilogInserter.cpp
103 PseudoSourceValue.cpp
Jakob Stoklund Olesena818d802012-01-11 22:28:30 +0000104 RegAllocBase.cpp
Andrew Trick1c246052010-10-22 23:09:15 +0000105 RegAllocBasic.cpp
Jakob Stoklund Olesen8a070a52010-04-21 18:02:42 +0000106 RegAllocFast.cpp
Jakob Stoklund Olesenb8812a12010-12-08 03:26:16 +0000107 RegAllocGreedy.cpp
Oscar Fuentesb5abd782008-10-04 21:18:50 +0000108 RegAllocPBQP.cpp
Jakob Stoklund Olesenc58894b2011-06-02 02:19:35 +0000109 RegisterClassInfo.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +0000110 RegisterCoalescer.cpp
Andrew Trick26bdff92012-04-24 18:06:49 +0000111 RegisterPressure.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +0000112 RegisterScavenging.cpp
Matthias Braunf9acaca2016-05-31 22:38:06 +0000113 RenameIndependentSubregs.cpp
Mehdi Aminibbacddf2016-06-10 16:19:46 +0000114 RegisterUsageInfo.cpp
115 RegUsageInfoCollector.cpp
Mehdi Amini1d396832016-06-10 18:37:21 +0000116 RegUsageInfoPropagate.cpp
Quentin Colombet374796d2016-08-27 00:18:31 +0000117 ResetMachineFunctionPass.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +0000118 SafeStack.cpp
Evgeniy Stepanova5da2562016-06-29 20:37:43 +0000119 SafeStackColoring.cpp
120 SafeStackLayout.cpp
Dan Gohman60cb69e2008-11-19 23:18:57 +0000121 ScheduleDAG.cpp
Dan Gohman60cb69e2008-11-19 23:18:57 +0000122 ScheduleDAGInstrs.cpp
123 ScheduleDAGPrinter.cpp
Chris Lattner878665b2011-01-09 21:31:39 +0000124 ScoreboardHazardRecognizer.cpp
Philip Reames23cf2e22015-01-28 19:28:03 +0000125 ShadowStackGCLowering.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +0000126 ShrinkWrap.cpp
Benjamin Kramer436bd9f2009-08-17 18:47:11 +0000127 SjLjEHPrepare.cpp
Douglas Gregor90790c72009-11-04 01:32:06 +0000128 SlotIndexes.cpp
Jakob Stoklund Olesen8e236ea2011-01-06 01:21:53 +0000129 SpillPlacement.cpp
Jakob Stoklund Olesen36d12c62010-07-20 15:41:07 +0000130 SplitKit.cpp
Benjamin Kramer56b31bd2013-01-11 20:05:37 +0000131 StackColoring.cpp
Juergen Ributzkae8294752013-12-14 06:53:06 +0000132 StackMapLivenessAnalysis.cpp
Andrew Trick153ebe62013-10-31 22:11:56 +0000133 StackMaps.cpp
Benjamin Kramer390c33c2016-01-27 16:53:42 +0000134 StackProtector.cpp
135 StackSlotColoring.cpp
Bob Wilson2d4ff122009-11-26 00:32:21 +0000136 TailDuplication.cpp
Kyle Butt3232dbb2016-04-08 20:35:01 +0000137 TailDuplicator.cpp
Nick Lewyckyc9e935c2011-12-15 22:58:58 +0000138 TargetFrameLoweringImpl.cpp
Jakob Stoklund Olesenfcf14e82012-11-28 02:35:09 +0000139 TargetInstrInfo.cpp
Benjamin Kramer56b31bd2013-01-11 20:05:37 +0000140 TargetLoweringBase.cpp
Anton Korobeynikov1be2063a2010-02-15 22:55:13 +0000141 TargetLoweringObjectFileImpl.cpp
Nick Lewyckyc9e935c2011-12-15 22:58:58 +0000142 TargetOptionsImpl.cpp
Matthias Braun31d19d42016-05-10 03:21:59 +0000143 TargetPassConfig.cpp
Jakob Stoklund Olesenfcf14e82012-11-28 02:35:09 +0000144 TargetRegisterInfo.cpp
Andrew Trickd2a19da2012-09-14 20:26:46 +0000145 TargetSchedule.cpp
Matthias Braun7f423442016-11-22 22:09:03 +0000146 TargetSubtargetInfo.cpp
Oscar Fuentesa229b3c2008-09-22 01:08:49 +0000147 TwoAddressInstructionPass.cpp
148 UnreachableBlockElim.cpp
149 VirtRegMap.cpp
Reid Kleckner1185fce2015-01-29 00:41:44 +0000150 WinEHPrepare.cpp
Dean Michael Berris52735fc2016-07-14 04:06:33 +0000151 XRayInstrumentation.cpp
Zachary Turner3bd47ce2015-02-11 03:28:02 +0000152
153 ADDITIONAL_HEADER_DIRS
154 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen
155 ${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP
Peter Collingbourne79bf1132015-08-29 22:34:34 +0000156
Eric Fiselier87c87f42017-02-10 01:59:20 +0000157 LINK_LIBS ${LLVM_PTHREAD_LIB}
Oscar Fuentes5ed96262011-02-18 22:06:14 +0000158
Chris Bieneman05c279fc2016-11-17 04:36:50 +0000159 DEPENDS
160 intrinsics_gen
161 )
NAKAMURA Takumi704de072012-06-24 13:32:01 +0000162
Oscar Fuentes5ed96262011-02-18 22:06:14 +0000163add_subdirectory(SelectionDAG)
164add_subdirectory(AsmPrinter)
Alex Lorenz2bdb4e12015-05-27 18:02:19 +0000165add_subdirectory(MIRParser)
Quentin Colombetbde158c2016-02-11 19:18:27 +0000166add_subdirectory(GlobalISel)