|
|||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
Class Summary | |
---|---|
BlockCountSpillCost | An object that returns an estimate of the relative cost of spilling a symbolic register, based on basic block frequencies. |
BrainDeadSpillCost | An object that returns an estimate of the relative cost of spilling a symbolic register. |
Coalesce | Utility to help coalesce registers. |
CoalesceGraph | This class represents a graph, where the nodes are registers the edge weights represent affinities between registers. |
CoalesceGraph.Edge | |
CoalesceGraph.Node | |
CoalesceMoves | Coalesce registers in move instructions where possible. |
ExpandCallingConvention | Phase for expanding the calling convention |
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 | Class to manage the allocation of the "compiler-independent" portion of the stackframe. |
GenericStackManager.ScratchRegister | Class to represent a physical register currently allocated as a scratch register. |
LinearScan | Main driver for linear scan register allocation. |
LinearScan.ActiveSet | "Active set" for linear scan register allocation. |
LinearScan.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. |
LinearScan.CompoundInterval | Implements a live interval with holes; ie; a list of basic live intervals. |
LinearScan.IncreasingEndMappedIntervalSet | Implements a set of Basic Intervals, sorted by end number. |
LinearScan.IncreasingEndMappedIntervalSet.EndComparator | |
LinearScan.IncreasingStartIntervalSet | Implements a set of Basic Intervals, sorted by start number. |
LinearScan.IncreasingStartIntervalSet.StartComparator | |
LinearScan.IncreasingStartMappedIntervalSet | Implements a set of Basic Intervals, sorted by start number. |
LinearScan.IncreasingStartMappedIntervalSet.StartComparator | |
LinearScan.IntervalAnalysis | phase to compute linear scan intervals. |
LinearScan.IntervalSet | |
LinearScan.LinearScanPhase | |
LinearScan.LinearScanState | |
LinearScan.MappedBasicInterval | A basic interval contained in a CompoundInterval. |
LinearScan.RegisterRestrictionsPhase | A phase to compute register restrictions. |
LinearScan.SpillCode | Insert Spill Code after register assignment. |
LinearScan.SpillLocationInterval | The following represents the intervals assigned to a particular spill location |
LinearScan.SpillLocationManager | The following class manages allocation and reuse of spill locations. |
LinearScan.UpdateGCMaps1 | Update GC maps after register allocation but before inserting spill code. |
LinearScan.UpdateGCMaps2 | Update GC Maps again, to account for changes induced by spill code. |
LinearScan.UpdateOSRMaps | Update GC maps after register allocation but before inserting spill code. |
LiveIntervalElement | This class defines a LiveInterval node created by Live Variable analysis and used in Linear Scan. |
PrologueEpilogueCreator | This class is a phase that inserts prologues and epilogues |
RegisterAllocator | Driver routine for register allocation |
RegisterAllocator.RegisterAllocPreparation | |
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 |
ScratchMap.PhysicalInterval | An object that represents an interval where a physical register's contents are evicted so that the physical register can be used as a scratch. |
ScratchMap.SymbolicInterval | An object that represents an interval where a symbolic register resides in a scratch register. |
SimpleSpillCost | An object that returns an estimate of the relative cost of spilling a symbolic register. |
SpillCostEstimator | An object that returns an estimate of the relative cost of spilling a symbolic register. |
|
|||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |