public final class PropAlias extends Propagator
Modifier and Type | Field and Description |
---|---|
protected MultiMap<FieldRefNode,FieldRefNode> |
aliasEdges |
protected java.util.Set<VarNode> |
aliasWorkList |
protected java.util.Set<FieldRefNode> |
fieldRefWorkList |
protected MultiMap<SparkField,VarNode> |
fieldToBase |
protected LargeNumberedMap<FieldRefNode,PointsToSetInternal> |
loadSets |
protected OnFlyCallGraph |
ofcg |
protected java.util.Set<FieldRefNode> |
outFieldRefWorkList |
protected PAG |
pag |
protected java.util.Set<VarNode> |
varNodeWorkList |
Modifier and Type | Method and Description |
---|---|
protected PointsToSetInternal |
getP2Set(FieldRefNode n) |
protected boolean |
handleAllocNode(AllocNode src)
Propagates new points-to information of node src to all its successors.
|
protected boolean |
handleVarNode(VarNode src)
Propagates new points-to information of node src to all its successors.
|
protected PointsToSetInternal |
makeP2Set(FieldRefNode n) |
void |
propagate()
Actually does the propagation.
|
protected final java.util.Set<VarNode> varNodeWorkList
protected java.util.Set<VarNode> aliasWorkList
protected java.util.Set<FieldRefNode> fieldRefWorkList
protected java.util.Set<FieldRefNode> outFieldRefWorkList
protected PAG pag
protected MultiMap<SparkField,VarNode> fieldToBase
protected MultiMap<FieldRefNode,FieldRefNode> aliasEdges
protected LargeNumberedMap<FieldRefNode,PointsToSetInternal> loadSets
protected OnFlyCallGraph ofcg
public PropAlias(PAG pag)
public final void propagate()
propagate
in class Propagator
protected final boolean handleAllocNode(AllocNode src)
protected final boolean handleVarNode(VarNode src)
protected final PointsToSetInternal makeP2Set(FieldRefNode n)
protected final PointsToSetInternal getP2Set(FieldRefNode n)