public final class SSALinearScan extends LinearScan
LinearScan.BlockData, LinearScan.Optionsdebug, detailedAsserts, DOMINATOR_SPILL_MOVE_ID, intervalEndMarker, rangeEndMarker| Constructor and Description |
|---|
SSALinearScan(TargetDescription target,
LIRGenerationResult res,
MoveFactory spillMoveFactory,
RegisterAllocationConfig regAllocConfig,
AbstractBlockBase<?>[] sortedBlocks,
boolean neverSpillConstants) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
beforeSpillMoveElimination() |
protected LinearScanLifetimeAnalysisPhase |
createLifetimeAnalysisPhase() |
protected MoveResolver |
createMoveResolver() |
protected LinearScanResolveDataFlowPhase |
createResolveDataFlowPhase() |
protected LinearScanEliminateSpillMovePhase |
createSpillMoveEliminationPhase() |
allocate, attributes, blockAt, blockCount, blockForId, callKillsRegisters, createAssignLocationsPhase, createOptimizeSpillPositionPhase, createRegisterAllocationPhase, getBlockData, getDebug, getFirstLirInstructionId, getFrameMapBuilder, getLastLirInstructionId, getLIR, getLIRGenerationResult, getOptions, getOrCreateInterval, getRegisterAllocationConfig, getRegisters, getSpillMoveFactory, getVariableNumber, instructionForId, intervalEndMarker, intervalFor, intervals, isProcessed, isVariableOrRegister, liveSetSize, printIntervals, sortedBlocks, sortIntervalsBeforeAllocation, splitChildAtOpId, verifyIntervalspublic SSALinearScan(TargetDescription target,
LIRGenerationResult res,
MoveFactory spillMoveFactory,
RegisterAllocationConfig regAllocConfig,
AbstractBlockBase<?>[] sortedBlocks,
boolean neverSpillConstants)
protected MoveResolver createMoveResolver()
createMoveResolver in class LinearScanprotected LinearScanLifetimeAnalysisPhase createLifetimeAnalysisPhase()
createLifetimeAnalysisPhase in class LinearScanprotected LinearScanResolveDataFlowPhase createResolveDataFlowPhase()
createResolveDataFlowPhase in class LinearScanprotected LinearScanEliminateSpillMovePhase createSpillMoveEliminationPhase()
createSpillMoveEliminationPhase in class LinearScanprotected void beforeSpillMoveElimination()
beforeSpillMoveElimination in class LinearScan