|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.jikesrvm.compilers.opt.regalloc.RegisterAllocatorState
public class RegisterAllocatorState
The register allocator currently caches a bunch of state in the IR; This class provides accessors to this state. TODO: Consider caching the state in a lookaside structure. TODO: Currently, the physical registers are STATIC! fix this.
| Constructor Summary | |
|---|---|
RegisterAllocatorState()
|
|
| Method Summary | |
|---|---|
(package private) static void |
clearOneToOne(Register r)
Clear any 1-to-1 mapping for register R. |
(package private) static Register |
getMapping(Register r)
|
static int |
getSpill(Register reg)
|
(package private) static void |
mapOneToOne(Register A,
Register B)
Record that register A and register B are associated with each other in a bijection. |
(package private) static void |
resetPhysicalRegisters(IR ir)
Resets the physical register info |
(package private) static void |
setSpill(Register reg,
int spill)
Special use of scratchObject field as "resurrect lists" for real registers TODO: use another field for safety; scratchObject is also used by clan LinearScanLiveAnalysis |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public RegisterAllocatorState()
| Method Detail |
|---|
static void resetPhysicalRegisters(IR ir)
static void setSpill(Register reg,
int spill)
public static int getSpill(Register reg)
static void mapOneToOne(Register A,
Register B)
static Register getMapping(Register r)
static void clearOneToOne(Register r)
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||