avrora.core.isdl.dep
Class StateUse.Index

java.lang.Object
  extended byavrora.core.isdl.dep.StateUse.Index
Direct Known Subclasses:
StateUse.Index.Constant, StateUse.Index.Operand, StateUse.Index.OperandPlusConstant, StateUse.Index.UNKNOWN
Enclosing class:
StateUse

public static class StateUse.Index
extends java.lang.Object

The Index class represents a possible expr into a map (such as the register file or memory). An expr might be a constant, an instruction operand, a linear combination of an operand and a constant, or it could be an unknown (dynamically computed) value.


Nested Class Summary
static class StateUse.Index.Constant
           
static class StateUse.Index.Operand
           
static class StateUse.Index.OperandPlusConstant
           
static class StateUse.Index.UNKNOWN
           
 
Constructor Summary
StateUse.Index()
           
 
Method Summary
 boolean isConstant()
          The isConstant() method returns whether this expr is a constant that is not dependent on either operands to the instruction or runtime values
 boolean isKnown()
          The isKnown() method returns whether this expr is known statically given the instruction operands.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StateUse.Index

public StateUse.Index()
Method Detail

isConstant

public boolean isConstant()
The isConstant() method returns whether this expr is a constant that is not dependent on either operands to the instruction or runtime values

Returns:
true if this expr is a constant that is not dependent on either instruction operands or runtime values; false otherwise

isKnown

public boolean isKnown()
The isKnown() method returns whether this expr is known statically given the instruction operands. Thus, for a given instruction instance, this expr can be computed without runtime values.

Returns:
true if this expr can be computed solely from instruction operands.