com.ibm.wala.ipa.callgraph.propagation.cfa
Class ContextInsensitiveSSAInterpreter
java.lang.Object
com.ibm.wala.ipa.callgraph.propagation.rta.ContextInsensitiveRTAInterpreter
com.ibm.wala.ipa.callgraph.propagation.cfa.ContextInsensitiveSSAInterpreter
- All Implemented Interfaces:
- RTAContextInterpreter, SSAContextInterpreter
- Direct Known Subclasses:
- AstContextInsensitiveSSAContextInterpreter
public class ContextInsensitiveSSAInterpreter
- extends ContextInsensitiveRTAInterpreter
- implements SSAContextInterpreter
Default implementation of SSAContextInterpreter for context-insensitive
analysis
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
options
protected final AnalysisOptions options
ContextInsensitiveSSAInterpreter
public ContextInsensitiveSSAInterpreter(AnalysisOptions options,
AnalysisCache cache)
getIR
public IR getIR(CGNode node)
- Specified by:
getIR in interface SSAContextInterpreter
- Returns:
- the IR that models the method context, or null if it's an unmodelled native method
getNumberOfStatements
public int getNumberOfStatements(CGNode node)
- Specified by:
getNumberOfStatements in interface SSAContextInterpreter
- Returns:
- the number of the statements in the IR, or -1 if it's an unmodelled native method.
recordFactoryType
public boolean recordFactoryType(CGNode node,
IClass klass)
- Description copied from interface:
RTAContextInterpreter
- record that the "factory" method of a node should be interpreted to allocate a particular class.
TODO: this is a little ugly, is there a better place to move this?
- Specified by:
recordFactoryType in interface RTAContextInterpreter- Overrides:
recordFactoryType in class ContextInsensitiveRTAInterpreter
- Returns:
- true iff a NEW type was recorded, false if the type was previously recorded.
getCFG
public ControlFlowGraph<SSAInstruction,ISSABasicBlock> getCFG(CGNode N)
- Specified by:
getCFG in interface SSAContextInterpreter
getDU
public DefUse getDU(CGNode node)
- Specified by:
getDU in interface SSAContextInterpreter
- Returns:
- DefUse for the IR that models the method context, or null if it's an unmodelled native method