edu.umd.cs.findbugs.ba.vna
public class ValueNumberAnalysis extends FrameDataflowAnalysis<ValueNumber,ValueNumberFrame>
ValueNumber class for an explanation
of what the value numbers mean, and when they can be compared.
This class is still experimental.
See Also: ValueNumber DominatorsAnalysis
| Field Summary | |
|---|---|
| static boolean | DEBUG |
| Constructor Summary | |
|---|---|
| ValueNumberAnalysis(MethodGen methodGen, DepthFirstSearch dfs, LoadedFieldSet loadedFieldSet, RepositoryLookupFailureCallback lookupFailureCallback) | |
| Method Summary | |
|---|---|
| void | compactValueNumbers(Dataflow<ValueNumberFrame,ValueNumberAnalysis> dataflow)
Compact the value numbers assigned.
|
| ValueNumberFrame | createFact() |
| Iterator<ValueNumberFrame> | factIterator()
Get an Iterator over all dataflow facts that we've recorded for
the Locations in the CFG. |
| ValueNumber | getClassObjectValue(String className) |
| ValueNumber | getEntryValue(int local) |
| ValueNumberFactory | getFactory() |
| MergeTree | getMergeTree() |
| int | getNumValuesAllocated() |
| ValueNumber | getThisValue() |
| void | initEntryFact(ValueNumberFrame result) |
| boolean | isThisValue(ValueNumber value) |
| static void | main(String[] argv)
Test driver. |
| void | meetInto(ValueNumberFrame fact, Edge edge, ValueNumberFrame result) |
| void | setMergeTree(MergeTree mergeTree) |
This method should be called at most once.
Parameters: dataflow the Dataflow object which executed this analysis (and has all of the block result values)