ValueNumberAnalysisFeatures
public class ValueNumberFrame extends Frame<ValueNumber> implements ValueNumberAnalysisFeatures
ValueNumber
,
ValueNumberAnalysis
Modifier and Type | Field | Description |
---|---|---|
boolean |
phiNodeForLoads |
REDUNDANT_LOAD_ELIMINATION, RLE_DEBUG
Constructor | Description |
---|---|
ValueNumberFrame(int numLocals) |
Modifier and Type | Method | Description |
---|---|---|
void |
addAvailableLoad(AvailableLoad availableLoad,
ValueNumber[] value) |
Add an available load.
|
java.lang.String |
availableLoadMapAsString() |
|
void |
copyFrom(Frame<ValueNumber> other) |
Make this Frame exactly the same as the one given as a parameter.
|
boolean |
fromMatchingFields(ValueNumber v1,
ValueNumber v2) |
|
boolean |
fromMatchingLoads(ValueNumber v1,
ValueNumber v2) |
|
boolean |
fuzzyMatch(ValueNumber v1,
ValueNumber v2) |
|
ValueNumber[] |
getAvailableLoad(AvailableLoad availableLoad) |
Look for an available load.
|
AvailableLoad |
getLoad(ValueNumber v) |
|
boolean |
haveMatchingFlags(ValueNumber v1,
ValueNumber v2) |
|
void |
killAllLoads() |
Kill all loads.
|
void |
killAllLoadsExceptFor(ValueNumber v) |
|
void |
killAllLoadsOf(ValueNumber v) |
Kill all loads.
|
void |
killLoadsOf(java.util.Set<XField> fieldsToKill) |
|
void |
killLoadsOfField(XField field) |
Kill all loads of given field.
|
void |
killLoadsWithSimilarName(java.lang.String className,
java.lang.String methodName) |
|
java.lang.String |
toString() |
Convert to string.
|
java.util.Collection<ValueNumber> |
valueNumbersForLoads() |
|
boolean |
veryFuzzyMatch(ValueNumber v1,
ValueNumber v2) |
allSlots, clearStack, contains, getArgument, getArgument, getArgumentSet, getArgumentSlot, getInstance, getInstanceSlot, getInstanceStackLocation, getLastUpdateTimestamp, getNumArguments, getNumArgumentsIncludingObjectInstance, getNumLocals, getNumSlots, getOperand, getStackDepth, getStackLocation, getStackValue, getTopStackWords, getTopValue, getValue, isBottom, isTop, isValid, popValue, pushValue, sameAs, setBottom, setLastUpdateTimestamp, setTop, setValid, setValue, valueToString
public java.lang.String availableLoadMapAsString()
@CheckForNull public AvailableLoad getLoad(ValueNumber v)
public ValueNumber[] getAvailableLoad(AvailableLoad availableLoad)
availableLoad
- the AvailableLoad (reference and field)public void addAvailableLoad(AvailableLoad availableLoad, @NonNull ValueNumber[] value)
availableLoad
- the AvailableLoad (reference and field)value
- the value(s) loadedpublic void killLoadsOfField(XField field)
field
- the fieldpublic void killAllLoads()
public void killAllLoadsExceptFor(@CheckForNull ValueNumber v)
public void killAllLoadsOf(@CheckForNull ValueNumber v)
public void killLoadsOf(java.util.Set<XField> fieldsToKill)
public void killLoadsWithSimilarName(java.lang.String className, java.lang.String methodName)
public void copyFrom(Frame<ValueNumber> other)
Frame
copyFrom
in class Frame<ValueNumber>
other
- the Frame to make this object the same aspublic java.lang.String toString()
Frame
toString
in class Frame<ValueNumber>
public boolean fuzzyMatch(ValueNumber v1, ValueNumber v2)
public boolean veryFuzzyMatch(ValueNumber v1, ValueNumber v2)
public boolean fromMatchingLoads(ValueNumber v1, ValueNumber v2)
public boolean fromMatchingFields(ValueNumber v1, ValueNumber v2)
public boolean haveMatchingFlags(ValueNumber v1, ValueNumber v2)
v1
- v2
- public java.util.Collection<ValueNumber> valueNumbersForLoads()
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.