1# $OpenBSD: Makefile,v 1.17 2023/11/11 18:35:36 robert Exp $
2
3LIB=	LLVMCodeGen
4NOPROFILE=
5
6CPPFLAGS+=-I${LLVM_SRC}/include/llvm/CodeGen
7CPPFLAGS+=-I${LLVM_SRC}/include/llvm/CodeGen/PBQP
8
9SRCS+=	AggressiveAntiDepBreaker.cpp \
10	AllocationOrder.cpp \
11	CodeGenAnalysis.cpp \
12	AssignmentTrackingAnalysis.cpp \
13	AtomicExpandPass.cpp \
14	BasicTargetTransformInfo.cpp \
15	BranchFolding.cpp \
16	BranchRelaxation.cpp \
17	BreakFalseDeps.cpp \
18	BasicBlockSections.cpp \
19	BasicBlockSectionsProfileReader.cpp \
20	CalcSpillWeights.cpp \
21	CallingConvLower.cpp \
22	CFGuardLongjmp.cpp \
23	CFIFixup.cpp \
24	CFIInstrInserter.cpp \
25	CodeGen.cpp \
26	CodeGenCommonISel.cpp \
27	CodeGenPassBuilder.cpp \
28	CodeGenPrepare.cpp \
29	CommandFlags.cpp \
30	ComplexDeinterleavingPass.cpp \
31	CriticalAntiDepBreaker.cpp \
32	DeadMachineInstructionElim.cpp \
33	DetectDeadLanes.cpp \
34	DFAPacketizer.cpp \
35	DwarfEHPrepare.cpp \
36	EarlyIfConversion.cpp \
37	EdgeBundles.cpp \
38	EHContGuardCatchret.cpp \
39	ExecutionDomainFix.cpp \
40	ExpandLargeDivRem.cpp \
41	ExpandLargeFpConvert.cpp \
42	ExpandMemCmp.cpp \
43	ExpandPostRAPseudos.cpp \
44	ExpandReductions.cpp \
45	ExpandVectorPredication.cpp \
46	FaultMaps.cpp \
47	FEntryInserter.cpp \
48	FinalizeISel.cpp \
49	FixupStatepointCallerSaved.cpp \
50	FuncletLayout.cpp \
51	GCMetadata.cpp \
52	GCMetadataPrinter.cpp \
53	GCRootLowering.cpp \
54	GlobalMerge.cpp \
55	HardwareLoops.cpp \
56	IfConversion.cpp \
57	ImplicitNullChecks.cpp \
58	IndirectBrExpandPass.cpp \
59	InlineSpiller.cpp \
60	InterferenceCache.cpp \
61	InterleavedAccessPass.cpp \
62	InterleavedLoadCombinePass.cpp \
63	IntrinsicLowering.cpp \
64	JMCInstrumenter.cpp \
65	LatencyPriorityQueue.cpp \
66	LazyMachineBlockFrequencyInfo.cpp \
67	LexicalScopes.cpp \
68	LiveDebugVariables.cpp \
69	LiveIntervals.cpp \
70	LiveInterval.cpp \
71	LiveIntervalUnion.cpp \
72	LivePhysRegs.cpp \
73	LiveRangeCalc.cpp \
74	LiveIntervalCalc.cpp \
75	LiveRangeEdit.cpp \
76	LiveRangeShrink.cpp \
77	LiveRegMatrix.cpp \
78	LiveRegUnits.cpp \
79	LiveStacks.cpp \
80	LiveVariables.cpp \
81	LLVMTargetMachine.cpp \
82	LocalStackSlotAllocation.cpp \
83	LoopTraversal.cpp \
84	CodeGenLowLevelType.cpp \
85	LowerEmuTLS.cpp \
86	MachineBasicBlock.cpp \
87	MachineBlockFrequencyInfo.cpp \
88	MachineBlockPlacement.cpp \
89	MachineBranchProbabilityInfo.cpp \
90	MachineCFGPrinter.cpp \
91	MachineCombiner.cpp \
92	MachineCopyPropagation.cpp \
93	MachineCSE.cpp \
94	MachineCheckDebugify.cpp \
95	MachineCycleAnalysis.cpp \
96	MachineDebugify.cpp \
97	MachineDominanceFrontier.cpp \
98	MachineDominators.cpp \
99	MachineFrameInfo.cpp \
100	MachineFunction.cpp \
101	MachineFunctionPass.cpp \
102	MachineFunctionPrinterPass.cpp \
103	MachineFunctionSplitter.cpp \
104	MachineInstrBundle.cpp \
105	MachineInstr.cpp \
106	MachineLateInstrsCleanup.cpp \
107	MachineLICM.cpp \
108	MachineLoopInfo.cpp \
109	MachineLoopUtils.cpp \
110	MachineModuleInfo.cpp \
111	MachineModuleInfoImpls.cpp \
112	MachineModuleSlotTracker.cpp \
113	MachineOperand.cpp \
114	MachineOptimizationRemarkEmitter.cpp \
115	MachineOutliner.cpp \
116	MachinePassManager.cpp \
117	MachinePipeliner.cpp \
118	MachinePostDominators.cpp \
119	MachineRegionInfo.cpp \
120	MachineRegisterInfo.cpp \
121	MachineScheduler.cpp \
122	MachineSink.cpp \
123	MachineSizeOpts.cpp \
124	MachineSSAContext.cpp \
125	MachineSSAUpdater.cpp \
126	MachineStripDebug.cpp \
127	MachineTraceMetrics.cpp \
128	MachineUniformityAnalysis.cpp \
129	MachineVerifier.cpp \
130	MIRFSDiscriminator.cpp \
131	MIRSampleProfile.cpp \
132	MIRYamlMapping.cpp \
133	MLRegallocEvictAdvisor.cpp \
134	MLRegallocPriorityAdvisor.cpp \
135	ModuloSchedule.cpp \
136	MultiHazardRecognizer.cpp \
137	PatchableFunction.cpp \
138	MBFIWrapper.cpp \
139	MIRPrinter.cpp \
140	MIRPrintingPass.cpp \
141	MacroFusion.cpp \
142	NonRelocatableStringpool.cpp \
143	OptimizePHIs.cpp \
144	ParallelCG.cpp \
145	PeepholeOptimizer.cpp \
146	PHIElimination.cpp \
147	PHIEliminationUtils.cpp \
148	PostRAHazardRecognizer.cpp \
149	PostRASchedulerList.cpp \
150	PreISelIntrinsicLowering.cpp \
151	ProcessImplicitDefs.cpp \
152	PrologEpilogInserter.cpp \
153	PseudoProbeInserter.cpp \
154	PseudoSourceValue.cpp \
155	RDFGraph.cpp \
156	RDFLiveness.cpp \
157	RDFRegisters.cpp \
158	ReachingDefAnalysis.cpp \
159	RegAllocBase.cpp \
160	RegAllocBasic.cpp \
161	RegAllocEvictionAdvisor.cpp \
162	RegAllocFast.cpp \
163	RegAllocGreedy.cpp \
164	RegAllocPBQP.cpp \
165	RegAllocPriorityAdvisor.cpp \
166	RegAllocScore.cpp \
167	RegisterClassInfo.cpp \
168	RegisterCoalescer.cpp \
169	RegisterPressure.cpp \
170	RegisterScavenging.cpp \
171	RemoveRedundantDebugValues.cpp \
172	RenameIndependentSubregs.cpp \
173	MachineStableHash.cpp \
174	MIRVRegNamerUtils.cpp \
175	MIRNamerPass.cpp \
176	MIRCanonicalizerPass.cpp \
177	RegisterUsageInfo.cpp \
178	RegUsageInfoCollector.cpp \
179	RegUsageInfoPropagate.cpp \
180	ReplaceWithVeclib.cpp \
181	ResetMachineFunctionPass.cpp \
182	ReturnProtectorLowering.cpp \
183	ReturnProtectorPass.cpp \
184	RegisterBank.cpp \
185	RegisterBankInfo.cpp \
186	SafeStack.cpp \
187	SafeStackLayout.cpp \
188	SanitizerBinaryMetadata.cpp \
189	ScheduleDAG.cpp \
190	ScheduleDAGInstrs.cpp \
191	ScheduleDAGPrinter.cpp \
192	ScoreboardHazardRecognizer.cpp \
193	SelectOptimize.cpp \
194	ShadowStackGCLowering.cpp \
195	ShrinkWrap.cpp \
196	SjLjEHPrepare.cpp \
197	SlotIndexes.cpp \
198	SpillPlacement.cpp \
199	SplitKit.cpp \
200	StackColoring.cpp \
201	StackFrameLayoutAnalysisPass.cpp \
202	StackMapLivenessAnalysis.cpp \
203	StackMaps.cpp \
204	StackProtector.cpp \
205	StackSlotColoring.cpp \
206	SwiftErrorValueTracking.cpp \
207	SwitchLoweringUtils.cpp \
208	TailDuplication.cpp \
209	TailDuplicator.cpp \
210	TargetFrameLoweringImpl.cpp \
211	TargetInstrInfo.cpp \
212	TargetLoweringBase.cpp \
213	TargetLoweringObjectFileImpl.cpp \
214	TargetOptionsImpl.cpp \
215	TargetPassConfig.cpp \
216	TargetRegisterInfo.cpp \
217	TargetSchedule.cpp \
218	TargetSubtargetInfo.cpp \
219	TwoAddressInstructionPass.cpp \
220	TypePromotion.cpp \
221	UnreachableBlockElim.cpp \
222	ValueTypes.cpp \
223	VLIWMachineScheduler.cpp \
224	VirtRegMap.cpp \
225	WasmEHPrepare.cpp \
226	WinEHPrepare.cpp \
227	XRayInstrumentation.cpp
228
229# LiveDebugValues
230SRCS+=	LiveDebugValues.cpp \
231	VarLocBasedImpl.cpp \
232	InstrRefBasedImpl.cpp
233
234CodeGenAnalysis.cpp:
235	ln -s ${LLVM_SRCS}/lib/CodeGen/Analysis.cpp $@
236
237CodeGenLowLevelType.cpp:
238	ln -s ${LLVM_SRCS}/lib/CodeGen/LowLevelType.cpp $@
239
240.PATH:	${.CURDIR}/../../../llvm/llvm/lib/CodeGen
241.PATH:	${.CURDIR}/../../../llvm/llvm/lib/CodeGen/LiveDebugValues
242
243CLEANFILES+= CodeGenAnalysis.cpp CodeGenLowLevelType.cpp
244