edu.umd.cs.findbugs.ba.vna

Class ValueNumberCache

public class ValueNumberCache extends Object

A 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
static classValueNumberCache.Entry
An entry in the cache.
Method Summary
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

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 entry outputValueList the list of output values produced by the entry's instruction and input values

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

FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.