public class TracedVariables extends Variables
Variables
saves additional information with variables, to keep track of their
origins.
The class stores a given producer Value along with each Value it stores. It then generalizes a given collected Value with the producer Value of each Value it loads. The producer Value and the initial collected Value can be set; the generalized collected Value can be retrieved.
Modifier and Type | Field and Description |
---|---|
static int |
NONE |
Constructor and Description |
---|
TracedVariables(int size)
Creates a new TracedVariables with a given size.
|
TracedVariables(TracedVariables tracedVariables)
Creates a new TracedVariables that is a copy of the given TracedVariables.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object object) |
boolean |
generalize(TracedVariables other,
boolean clearConflictingOtherVariables) |
Value |
getProducerValue(int index)
Gets the producer Value for the specified variable, without disturbing it.
|
int |
hashCode() |
void |
initialize(TracedVariables other) |
void |
reset(int size)
Resets this Variables object, so that it can be reused.
|
void |
setProducerValue(int index,
Value value)
Sets the given producer Value for the specified variable, without disturbing it.
|
void |
setProducerValue(Value producerValue)
Sets the Value that will be stored along with all store instructions.
|
void |
store(int index,
Value value)
Stores the given Value at the given variable index.
|
java.lang.String |
toString() |
aload, dload, fload, generalize, getValue, iload, initialize, lload, load, oload, replaceReferences, size
public static final int NONE
public TracedVariables(int size)
public TracedVariables(TracedVariables tracedVariables)
public void setProducerValue(Value producerValue)
public Value getProducerValue(int index)
index
- the variable index.public void setProducerValue(int index, Value value)
index
- the variable index.value
- the producer value to set.public void reset(int size)
Variables
public void initialize(TracedVariables other)
public boolean generalize(TracedVariables other, boolean clearConflictingOtherVariables)
public void store(int index, Value value)
Variables