coins.backend.regalo
Class RegisterAllocation

java.lang.Object
  extended bycoins.backend.regalo.RegisterAllocation

public class RegisterAllocation
extends java.lang.Object

Register allocation session object.


Nested Class Summary
(package private) static class RegisterAllocation.CopyPair
          Copy pair
 
Field Summary
static coins.backend.regalo.RegisterAllocation.Trigger trig
          Trigger class singleton.
(package private) static int VAR_ASSIGNED
           
(package private) static int VAR_COALESCED
           
(package private) static int VAR_ONSTACK
           
(package private) static int VAR_SPILLED
           
(package private) static int VAR_WORKING
           
 
Constructor Summary
RegisterAllocation()
           
 
Method Summary
(package private)  boolean conservative(int x, int y)
          Return true if x and y are safely coalescable
(package private)  boolean isAlreadySplit(Symbol sym)
          Return true if symbol is already split variable (has two %s).
(package private)  int nameOf(int x)
          Return real name (coalesced) of x
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

trig

public static final coins.backend.regalo.RegisterAllocation.Trigger trig
Trigger class singleton.


VAR_WORKING

static final int VAR_WORKING
See Also:
Constant Field Values

VAR_ONSTACK

static final int VAR_ONSTACK
See Also:
Constant Field Values

VAR_COALESCED

static final int VAR_COALESCED
See Also:
Constant Field Values

VAR_SPILLED

static final int VAR_SPILLED
See Also:
Constant Field Values

VAR_ASSIGNED

static final int VAR_ASSIGNED
See Also:
Constant Field Values
Constructor Detail

RegisterAllocation

public RegisterAllocation()
Method Detail

conservative

boolean conservative(int x,
                     int y)
Return true if x and y are safely coalescable


nameOf

int nameOf(int x)
Return real name (coalesced) of x


isAlreadySplit

boolean isAlreadySplit(Symbol sym)
Return true if symbol is already split variable (has two %s).