public abstract class SSAInference<T extends com.ibm.wala.fixpoint.IVariable<T>>
extends com.ibm.wala.fixedpoint.impl.DefaultFixedPointSolver<T>
A client will subclass an SSAInference by providing factories that generate IVariables corresponding to SSA value numbers, and AbstractOperators corresponding to
SSA instructions. This class will set up a dataflow system induced by the SSA def-use graph, and
solve the system by iterating to a fixed point.
| Modifier and Type | Class and Description |
|---|---|
static interface |
SSAInference.OperatorFactory<T extends com.ibm.wala.fixpoint.IVariable<T>> |
static interface |
SSAInference.VariableFactory<T extends com.ibm.wala.fixpoint.IVariable<T>> |
| Constructor and Description |
|---|
SSAInference() |
| Modifier and Type | Method and Description |
|---|---|
protected T |
getVariable(int valueNumber) |
protected void |
init(IR ir,
SSAInference.VariableFactory<T> varFactory,
SSAInference.OperatorFactory<T> opFactory)
initializer for SSA Inference equations.
|
java.lang.String |
toString()
Return a string representation of the system
|
getFixedPointSystemaddAllStatementsToWorkList, addToWorkList, changedVariable, emptyWorkList, getMaxEvalBetweenTopo, getMinSizeForTopSort, getNumberOfEvaluations, getPeriodicMaintainInterval, getStatements, getTopologicalGrowthFactor, getVerboseInterval, incNumberOfEvaluations, initForFirstSolve, initializeVariables, initializeWorkList, isChanged, isFixed, isSideEffect, lineBreak, makeStmtRHS, newStatement, newStatement, newStatement, newStatement, newStatement, orderStatements, performVerboseAction, periodicMaintenance, removeStatement, setMaxEvalBetweenTopo, setMinEquationsForTopSort, setTopologicalGrowthFactor, solveprotected void init(IR ir, SSAInference.VariableFactory<T> varFactory, SSAInference.OperatorFactory<T> opFactory)
protected T getVariable(int valueNumber)