Package edu.umd.cs.findbugs.ba.vna
Class ValueNumberCache
- java.lang.Object
-
- edu.umd.cs.findbugs.ba.vna.ValueNumberCache
-
public class ValueNumberCache extends java.lang.ObjectA cache mapping instructions and input values to the output values they produce. We must always produce the same output given identical input, or else value number analysis will not terminate.- Author:
- David Hovemeyer
- See Also:
ValueNumberAnalysis
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classValueNumberCache.EntryAn entry in the cache.
-
Constructor Summary
Constructors Constructor Description ValueNumberCache()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddOutputValues(ValueNumberCache.Entry entry, ValueNumber[] outputValueList)Add output values for given entry.ValueNumber[]lookupOutputValues(ValueNumberCache.Entry entry)Look up cached output values for given entry.
-
-
-
Method Detail
-
lookupOutputValues
public ValueNumber[] lookupOutputValues(ValueNumberCache.Entry entry)
Look up cached output values for given entry.- Parameters:
entry- the entry- Returns:
- the list of output values, or null if there is no matching entry in the cache
-
addOutputValues
public void addOutputValues(ValueNumberCache.Entry entry, ValueNumber[] outputValueList)
Add output values for given entry. Assumes that lookupOutputValues() has determined that the entry is not in the cache.- Parameters:
entry- the entryoutputValueList- the list of output values produced by the entry's instruction and input values
-
-