org.jikesrvm.compilers.opt.ssa
Class IndexPropagationSystem.UpdateUseObjectOperator

java.lang.Object
  extended by org.jikesrvm.compilers.opt.dfsolver.DF_Operator
      extended by org.jikesrvm.compilers.opt.ssa.IndexPropagationSystem.UpdateUseObjectOperator
Enclosing class:
IndexPropagationSystem

static class IndexPropagationSystem.UpdateUseObjectOperator
extends DF_Operator

Represents an UPDATE_USE function over two ObjectCells.

Given a value number v, this function updates a heap variable lattice cell to indicate that element at address v is available, and doesn't kill any available indices


Field Summary
private  int valueNumber
          The value number used in the dataflow equation.
 
Constructor Summary
IndexPropagationSystem.UpdateUseObjectOperator(int valueNumber)
          Create an operator with a given value number
 
Method Summary
 boolean evaluate(DF_LatticeCell[] operands)
          Evaluate the dataflow equation with this operator.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

valueNumber

private final int valueNumber
The value number used in the dataflow equation.

Constructor Detail

IndexPropagationSystem.UpdateUseObjectOperator

IndexPropagationSystem.UpdateUseObjectOperator(int valueNumber)
Create an operator with a given value number

Parameters:
valueNumber -
Method Detail

toString

public String toString()
Overrides:
toString in class Object
Returns:
"UPDATE-USE"

evaluate

public boolean evaluate(DF_LatticeCell[] operands)
Evaluate the dataflow equation with this operator.

Specified by:
evaluate in class DF_Operator
Parameters:
operands - operands in the dataflow equation
Returns:
true iff the lhs changes from this evaluation