Class and Description |
---|
GenericStackManager
Class to manage the allocation of the "compiler-independent" portion of
the stackframe.
|
LinearScanState |
LiveIntervalElement
This class defines a LiveInterval node created by Live Variable analysis
and used in Linear Scan.
|
RegisterAllocatorState
The register allocator currently caches a bunch of state in the IR;
This class provides accessors to this state.
|
Class and Description |
---|
LiveIntervalElement
This class defines a LiveInterval node created by Live Variable analysis
and used in Linear Scan.
|
Class and Description |
---|
ActiveSet
"Active set" for linear scan register allocation.
|
BasicInterval
Implements a basic live interval (no holes), which is a pair
begin - the starting point of the interval
end - the ending point of the interval
Begin and end are numbers given to each instruction by a numbering pass.
|
CoalesceGraph
This class represents a graph, where
the nodes are registers
the edge weights represent affinities between registers.
|
CoalesceGraph.Edge |
CoalesceGraph.Node |
CompoundInterval
Implements a live interval with holes; i.e. an ordered set of basic live
intervals.
|
GenericRegisterPreferences
This class helps manage register preferences for coalescing and
register allocation.
|
GenericRegisterRestrictions
An instance of this class provides a mapping from symbolic register to
a set of restricted registers.
|
GenericRegisterRestrictions.RestrictedRegisterSet
An instance of this class represents restrictions on physical register
assignment.
|
GenericStackManager.ScratchRegister
Class to represent a physical register currently allocated as a
scratch register.
|
IncreasingEndMappedIntervalSet
Implements a set of Basic Intervals, sorted by end number.
|
IncreasingEndMappedIntervalSet.EndComparator
Imposes an ascending ordering based on the end points of basic intervals.
|
IncreasingStartIntervalSet
Implements a set of Basic Intervals, sorted by start number.
|
IncreasingStartIntervalSet.StartComparator
Imposes an ascending ordering based on the start points of basic intervals.
|
IntervalSet |
LiveIntervalElement
This class defines a LiveInterval node created by Live Variable analysis
and used in Linear Scan.
|
MappedBasicInterval
A basic interval contained in a CompoundInterval.
|
RegisterAllocatorState
The register allocator currently caches a bunch of state in the IR;
This class provides accessors to this state.
|
ScratchMap
This class holds information on scratch register usage, needed to
adjust GC Maps.
|
ScratchMap.Interval
Super class of physical and symbolic intervals
|
SpillCostEstimator
An object that returns an estimate of the relative cost of spilling a
symbolic register.
|
SpillLocationInterval
The following represents the intervals assigned to a particular spill
location
|
SpillLocationManager
The following class manages allocation and reuse of spill locations.
|
Class and Description |
---|
GenericRegisterPreferences
This class helps manage register preferences for coalescing and
register allocation.
|
GenericRegisterRestrictions
An instance of this class provides a mapping from symbolic register to
a set of restricted registers.
|
GenericStackManager
Class to manage the allocation of the "compiler-independent" portion of
the stackframe.
|
LiveIntervalElement
This class defines a LiveInterval node created by Live Variable analysis
and used in Linear Scan.
|