Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

#	$NetBSD: Makefile,v 1.34 2018/07/17 18:55:27 joerg Exp $

LIB=	LLVMCodeGen

.include <bsd.init.mk>

.PATH: ${LLVM_SRCDIR}/lib/CodeGen

SRCS+=	AggressiveAntiDepBreaker.cpp \
	AllocationOrder.cpp \
	Analysis.cpp \
	AtomicExpandPass.cpp \
	BasicTargetTransformInfo.cpp \
	BranchFolding.cpp \
	BranchRelaxation.cpp \
	BreakFalseDeps.cpp \
	BuiltinGCs.cpp \
	CalcSpillWeights.cpp \
	CallingConvLower.cpp \
	CFIInstrInserter.cpp \
	CodeGen.cpp \
	CodeGenPrepare.cpp \
	CriticalAntiDepBreaker.cpp \
	DeadMachineInstructionElim.cpp \
	DetectDeadLanes.cpp \
	DFAPacketizer.cpp \
	DwarfEHPrepare.cpp \
	EarlyIfConversion.cpp \
	EdgeBundles.cpp \
	ExecutionDomainFix.cpp \
	ExpandISelPseudos.cpp \
	ExpandMemCmp.cpp \
	ExpandPostRAPseudos.cpp \
	ExpandReductions.cpp \
	FaultMaps.cpp \
	FEntryInserter.cpp \
	FuncletLayout.cpp \
	GCMetadata.cpp \
	GCMetadataPrinter.cpp \
	GCRootLowering.cpp \
	GCStrategy.cpp \
	GlobalMerge.cpp \
	IfConversion.cpp \
	ImplicitNullChecks.cpp \
	IndirectBrExpandPass.cpp \
	InlineSpiller.cpp \
	InterferenceCache.cpp \
	InterleavedAccessPass.cpp \
	IntrinsicLowering.cpp \
	LatencyPriorityQueue.cpp \
	LazyMachineBlockFrequencyInfo.cpp \
	LexicalScopes.cpp \
	LiveDebugValues.cpp \
	LiveDebugVariables.cpp \
	LiveInterval.cpp \
	LiveIntervals.cpp \
	LiveIntervalUnion.cpp \
	LivePhysRegs.cpp \
	LiveRangeCalc.cpp \
	LiveRangeEdit.cpp \
	LiveRangeShrink.cpp \
	LiveRegMatrix.cpp \
	LiveRegUnits.cpp \
	LiveStacks.cpp \
	LiveVariables.cpp \
	LLVMTargetMachine.cpp \
	LocalStackSlotAllocation.cpp \
	LoopTraversal.cpp \
	LowerEmuTLS.cpp \
	LowLevelType.cpp \
	MachineBasicBlock.cpp \
	MachineBlockFrequencyInfo.cpp \
	MachineBlockPlacement.cpp \
	MachineBranchProbabilityInfo.cpp \
	MachineCombiner.cpp \
	MachineCopyPropagation.cpp \
	MachineCSE.cpp \
	MachineDominanceFrontier.cpp \
	MachineDominators.cpp \
	MachineFrameInfo.cpp \
	MachineFunction.cpp \
	MachineFunctionPass.cpp \
	MachineFunctionPrinterPass.cpp \
	MachineInstrBundle.cpp \
	MachineInstr.cpp \
	MachineLICM.cpp \
	MachineLoopInfo.cpp \
	MachineModuleInfo.cpp \
	MachineModuleInfoImpls.cpp \
	MachineOperand.cpp \
	MachineOptimizationRemarkEmitter.cpp \
	MachineOutliner.cpp \
	MachinePassRegistry.cpp \
	MachinePipeliner.cpp \
	MachinePostDominators.cpp \
	MachineRegionInfo.cpp \
	MachineRegisterInfo.cpp \
	MachineScheduler.cpp \
	MachineSink.cpp \
	MachineSSAUpdater.cpp \
	MachineTraceMetrics.cpp \
	MachineVerifier.cpp \
	MacroFusion.cpp \
	MIRCanonicalizerPass.cpp \
	MIRPrinter.cpp \
	MIRPrintingPass.cpp \
	OptimizePHIs.cpp \
	ParallelCG.cpp \
	PatchableFunction.cpp \
	PeepholeOptimizer.cpp \
	PHIElimination.cpp \
	PHIEliminationUtils.cpp \
	PostRAHazardRecognizer.cpp \
	PostRASchedulerList.cpp \
	PreISelIntrinsicLowering.cpp \
	ProcessImplicitDefs.cpp \
	PrologEpilogInserter.cpp \
	PseudoSourceValue.cpp \
	ReachingDefAnalysis.cpp \
	RegAllocBase.cpp \
	RegAllocBasic.cpp \
	RegAllocFast.cpp \
	RegAllocGreedy.cpp \
	RegAllocPBQP.cpp \
	RegisterClassInfo.cpp \
	RegisterCoalescer.cpp \
	RegisterPressure.cpp \
	RegisterScavenging.cpp \
	RegisterUsageInfo.cpp \
	RegUsageInfoCollector.cpp \
	RegUsageInfoPropagate.cpp \
	RenameIndependentSubregs.cpp \
	ResetMachineFunctionPass.cpp \
	SafeStackColoring.cpp \
	SafeStack.cpp \
	SafeStackLayout.cpp \
	ScalarizeMaskedMemIntrin.cpp \
	ScheduleDAG.cpp \
	ScheduleDAGInstrs.cpp \
	ScheduleDAGPrinter.cpp \
	ScoreboardHazardRecognizer.cpp \
	ShadowStackGCLowering.cpp \
	ShrinkWrap.cpp \
	SjLjEHPrepare.cpp \
	SlotIndexes.cpp \
	SpillPlacement.cpp \
	SplitKit.cpp \
	StackColoring.cpp \
	StackMapLivenessAnalysis.cpp \
	StackMaps.cpp \
	StackProtector.cpp \
	StackSlotColoring.cpp \
	TailDuplication.cpp \
	TailDuplicator.cpp \
	TargetFrameLoweringImpl.cpp \
	TargetInstrInfo.cpp \
	TargetLoweringBase.cpp \
	TargetLoweringObjectFileImpl.cpp \
	TargetOptionsImpl.cpp \
	TargetPassConfig.cpp \
	TargetRegisterInfo.cpp \
	TargetSchedule.cpp \
	TargetSubtargetInfo.cpp \
	TwoAddressInstructionPass.cpp \
	UnreachableBlockElim.cpp \
	ValueTypes.cpp \
	VirtRegMap.cpp \
	WasmEHPrepare.cpp \
	WinEHPrepare.cpp \
	XRayInstrumentation.cpp

.if defined(HOSTLIB)
.include <bsd.hostlib.mk>
# Crashes some versions of GCC
CPPFLAGS.RenderMachineFunction.cpp+= -O0
.else
.include <bsd.lib.mk>
.endif