public class ValueNumberFrame extends Frame<ValueNumber> implements ValueNumberAnalysisFeatures
ValueNumber,
ValueNumberAnalysis| Modifier and Type | Field and Description |
|---|---|
boolean |
phiNodeForLoads |
REDUNDANT_LOAD_ELIMINATION, RLE_DEBUG| Constructor and Description |
|---|
ValueNumberFrame(int numLocals) |
| Modifier and Type | Method and 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 |
hasAvailableLoads() |
boolean |
haveMatchingFlags(ValueNumber v1,
ValueNumber v2) |
void |
killAllLoads()
Kill all loads.
|
void |
killAllLoads(boolean primitiveOnly) |
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) |
boolean |
sameAs(Frame<ValueNumber> other)
Return true if this stack frame is the same as the one given as a
parameter.
|
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, setBottom, setLastUpdateTimestamp, setTop, setValid, setValue, valueToStringpublic 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 killAllLoads(boolean primitiveOnly)
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)
FramecopyFrom in class Frame<ValueNumber>other - the Frame to make this object the same aspublic java.lang.String toString()
FrametoString 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)
public java.util.Collection<ValueNumber> valueNumbersForLoads()
public boolean sameAs(Frame<ValueNumber> other)
FramesameAs in class Frame<ValueNumber>other - the other Framepublic boolean hasAvailableLoads()
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.