public class TraceSimpleLifetimeAnalysisPhase extends TraceLinearScanLifetimeAnalysisPhase
AllocationPhase.AllocationContextLIRPhase.Optionsallocator| Constructor and Description |
|---|
TraceSimpleLifetimeAnalysisPhase(LinearScan allocator,
TraceBuilder.TraceBuilderResult<?> traceBuilderResult) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addDef(AllocatableValue operand,
LIRInstruction op,
Interval.RegisterPriority registerPriority,
LIRKind kind) |
protected void |
addTemp(AllocatableValue operand,
int tempPos,
Interval.RegisterPriority registerPriority,
LIRKind kind) |
protected void |
addUse(AllocatableValue operand,
int from,
int to,
Interval.RegisterPriority registerPriority,
LIRKind kind) |
protected void |
buildIntervals() |
protected <B extends AbstractBlockBase<B>> |
run(TargetDescription target,
LIRGenerationResult lirGenRes,
List<B> codeEmittingOrder,
List<B> linearScanOrder,
LIRGeneratorTool.SpillMoveFactory spillMoveFactory,
RegisterAllocationConfig registerAllocationConfig) |
changeSpillDefinitionPos, computeGlobalLiveSets, handleMethodArguments, postBuildIntervals, registerPriorityOfOutputOperand, setHintaddRegisterHint, getMaterializedValue, numberInstructions, registerPriorityOfInputOperand, reportFailure, verifyLivenessrunapply, apply, createName, getNamepublic TraceSimpleLifetimeAnalysisPhase(LinearScan allocator, TraceBuilder.TraceBuilderResult<?> traceBuilderResult)
protected <B extends AbstractBlockBase<B>> void run(TargetDescription target, LIRGenerationResult lirGenRes, List<B> codeEmittingOrder, List<B> linearScanOrder, LIRGeneratorTool.SpillMoveFactory spillMoveFactory, RegisterAllocationConfig registerAllocationConfig)
run in class LinearScanLifetimeAnalysisPhaseprotected void addUse(AllocatableValue operand, int from, int to, Interval.RegisterPriority registerPriority, LIRKind kind)
addUse in class LinearScanLifetimeAnalysisPhaseprotected void addTemp(AllocatableValue operand, int tempPos, Interval.RegisterPriority registerPriority, LIRKind kind)
addTemp in class LinearScanLifetimeAnalysisPhaseprotected void addDef(AllocatableValue operand, LIRInstruction op, Interval.RegisterPriority registerPriority, LIRKind kind)
addDef in class LinearScanLifetimeAnalysisPhaseprotected void buildIntervals()
buildIntervals in class TraceLinearScanLifetimeAnalysisPhase