mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-12 07:41:14 +00:00
![Jim Grosbach](/assets/img/avatar_default.png)
experimental pass that allocates locals relative to one another before register allocation and then assigns them to actual stack slots as a block later in PEI. This will eventually allow targets with limited index offset range to allocate additional base registers (not just FP and SP) to more efficiently reference locals, as well as handle situations where locals cannot be referenced via SP or FP at all (dynamic stack realignment together with variable sized objects, for example). It's currently incomplete and almost certainly buggy. Work in progress. Disabled by default and gated via the -enable-local-stack-alloc command line option. rdar://8277890 llvm-svn: 111059
87 lines
1.9 KiB
CMake
87 lines
1.9 KiB
CMake
add_llvm_library(LLVMCodeGen
|
|
AggressiveAntiDepBreaker.cpp
|
|
Analysis.cpp
|
|
BranchFolding.cpp
|
|
CalcSpillWeights.cpp
|
|
CallingConvLower.cpp
|
|
CodePlacementOpt.cpp
|
|
CriticalAntiDepBreaker.cpp
|
|
DeadMachineInstructionElim.cpp
|
|
DwarfEHPrepare.cpp
|
|
ELFCodeEmitter.cpp
|
|
ELFWriter.cpp
|
|
GCMetadata.cpp
|
|
GCMetadataPrinter.cpp
|
|
GCStrategy.cpp
|
|
IfConversion.cpp
|
|
InlineSpiller.cpp
|
|
IntrinsicLowering.cpp
|
|
LLVMTargetMachine.cpp
|
|
LatencyPriorityQueue.cpp
|
|
LiveInterval.cpp
|
|
LiveIntervalAnalysis.cpp
|
|
LiveStackAnalysis.cpp
|
|
LiveVariables.cpp
|
|
LocalStackAllocation.cpp
|
|
LowerSubregs.cpp
|
|
MachineBasicBlock.cpp
|
|
MachineCSE.cpp
|
|
MachineDominators.cpp
|
|
MachineFunction.cpp
|
|
MachineFunctionAnalysis.cpp
|
|
MachineFunctionPass.cpp
|
|
MachineFunctionPrinterPass.cpp
|
|
MachineInstr.cpp
|
|
MachineLICM.cpp
|
|
MachineLoopInfo.cpp
|
|
MachineModuleInfo.cpp
|
|
MachineModuleInfoImpls.cpp
|
|
MachinePassRegistry.cpp
|
|
MachineRegisterInfo.cpp
|
|
MachineSSAUpdater.cpp
|
|
MachineSink.cpp
|
|
MachineVerifier.cpp
|
|
ObjectCodeEmitter.cpp
|
|
OcamlGC.cpp
|
|
OptimizePHIs.cpp
|
|
PHIElimination.cpp
|
|
Passes.cpp
|
|
PeepholeOptimizer.cpp
|
|
PostRAHazardRecognizer.cpp
|
|
PostRASchedulerList.cpp
|
|
PreAllocSplitting.cpp
|
|
ProcessImplicitDefs.cpp
|
|
PrologEpilogInserter.cpp
|
|
PseudoSourceValue.cpp
|
|
RegAllocFast.cpp
|
|
RegAllocLinearScan.cpp
|
|
RegAllocPBQP.cpp
|
|
RegisterCoalescer.cpp
|
|
RegisterScavenging.cpp
|
|
RenderMachineFunction.cpp
|
|
ScheduleDAG.cpp
|
|
ScheduleDAGEmit.cpp
|
|
ScheduleDAGInstrs.cpp
|
|
ScheduleDAGPrinter.cpp
|
|
ShadowStackGC.cpp
|
|
ShrinkWrapping.cpp
|
|
SimpleRegisterCoalescing.cpp
|
|
SjLjEHPrepare.cpp
|
|
SlotIndexes.cpp
|
|
Spiller.cpp
|
|
SplitKit.cpp
|
|
Splitter.cpp
|
|
StackProtector.cpp
|
|
StackSlotColoring.cpp
|
|
StrongPHIElimination.cpp
|
|
TailDuplication.cpp
|
|
TargetInstrInfoImpl.cpp
|
|
TargetLoweringObjectFileImpl.cpp
|
|
TwoAddressInstructionPass.cpp
|
|
UnreachableBlockElim.cpp
|
|
VirtRegMap.cpp
|
|
VirtRegRewriter.cpp
|
|
)
|
|
|
|
target_link_libraries (LLVMCodeGen LLVMCore LLVMScalarOpts)
|