harpoon.Analysis.Quads
Class MustParamOracle

java.lang.Object
  extended by harpoon.Analysis.Quads.MustParamOracle

public class MustParamOracle
extends Object

A MustParamOracle tells you what method variables *must* contain the values passed in as parameters to the method. This can tell you which values must be the 'this' object, for non-static methods, or which values in (say) a field-set operation directly correspond to constructor parameters.

Version:
$Id: MustParamOracle.java,v 1.4 2002/04/10 03:00:59 cananian Exp $
Author:
C. Scott Ananian <cananian@alumni.princeton.edu>

Constructor Summary
MustParamOracle(HCode hc)
          Creates a MustParamOracle which gives you information on variables in HCode hc (which should be in SSI or SSA form, for best results).
 
Method Summary
 boolean isMustParam(Temp t)
          Returns true iff the given Temp *must* contain the value of some parameter.
 String toString()
           
 int whichMustParam(Temp t)
          Returns the parameter which the given Temp *must* contain the value of.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MustParamOracle

public MustParamOracle(HCode hc)
Creates a MustParamOracle which gives you information on variables in HCode hc (which should be in SSI or SSA form, for best results).

Method Detail

isMustParam

public boolean isMustParam(Temp t)
Returns true iff the given Temp *must* contain the value of some parameter.


whichMustParam

public int whichMustParam(Temp t)
Returns the parameter which the given Temp *must* contain the value of.


toString

public String toString()
Overrides:
toString in class Object