Package kilim.analysis
Class Value
java.lang.Object
kilim.analysis.Value
A SSA value that represents all objects produced at a particular
location in the code. Value objects are used by dataflow analysis
(@see BasicBlock)
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate intaddTo(int[] newSites, int site) intcategory()booleanint[]intinthashCode()booleanbooleanbooleanstatic Valuecreate a new Value with the given position and type and no constant valuestatic Valuecreate a new ValueProduces a new value (if necessary), if the instructions are different or the types are different.private intmergeSites(int[] newSites, Value other) toString()
-
Field Details
-
NO_VAL
-
V_UNDEFINED
-
typeDesc
-
constVal
-
numSites
private int numSites -
sites
private int[] sites
-
-
Constructor Details
-
Value
-
Value
-
-
Method Details
-
getNumSites
public int getNumSites() -
getCreationSites
public int[] getCreationSites() -
getTypeDesc
-
getConstVal
-
merge
Produces a new value (if necessary), if the instructions are different or the types are different. The types are merged to form a least common upper bound, and the instruction sets are unioned.- Parameters:
vb-- Returns:
- this if the result of the merge is no different, or the new value
-
mergeSites
-
addTo
private int addTo(int[] newSites, int site) -
equals
-
hashCode
public int hashCode() -
make
create a new Value with the given position and type and no constant value- Parameters:
pos- the position in the method for the corresponding instruction, or a unique value for method paramsdesc- the type descriptor- Returns:
- the new Value
-
make
create a new Value- Parameters:
pos- the position in the method for the corresponding instruction, or a unique value for method paramsdesc- the type descriptoraConstVal- the constant value- Returns:
- the new Value
-
isCategory2
public boolean isCategory2() -
isCategory1
public boolean isCategory1() -
toString
-
isConstant
public boolean isConstant() -
category
public int category()
-