Package soot.jimple.spark.solver
Class PropAlias
- java.lang.Object
-
- soot.jimple.spark.solver.Propagator
-
- soot.jimple.spark.solver.PropAlias
-
public class PropAlias extends Propagator
Propagates points-to sets along pointer assignment graph using a relevant aliases.- Author:
- Ondrej Lhotak
-
-
Field Summary
Fields Modifier and Type Field Description protected MultiMap<FieldRefNode,FieldRefNode>aliasEdgesprotected Set<VarNode>aliasWorkListprotected Set<FieldRefNode>fieldRefWorkListprotected MultiMap<SparkField,VarNode>fieldToBaseprotected Map<FieldRefNode,PointsToSetInternal>loadSetsprotected OnFlyCallGraphofcgprotected Set<FieldRefNode>outFieldRefWorkListprotected PAGpagprotected Set<VarNode>varNodeWorkList
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected PointsToSetInternalgetP2Set(FieldRefNode n)protected booleanhandleAllocNode(AllocNode src)Propagates new points-to information of node src to all its successors.protected booleanhandleVarNode(VarNode src)Propagates new points-to information of node src to all its successors.protected PointsToSetInternalmakeP2Set(FieldRefNode n)voidpropagate()Actually does the propagation.
-
-
-
Field Detail
-
fieldRefWorkList
protected Set<FieldRefNode> fieldRefWorkList
-
outFieldRefWorkList
protected Set<FieldRefNode> outFieldRefWorkList
-
pag
protected PAG pag
-
fieldToBase
protected MultiMap<SparkField,VarNode> fieldToBase
-
aliasEdges
protected MultiMap<FieldRefNode,FieldRefNode> aliasEdges
-
loadSets
protected Map<FieldRefNode,PointsToSetInternal> loadSets
-
ofcg
protected OnFlyCallGraph ofcg
-
-
Constructor Detail
-
PropAlias
public PropAlias(PAG pag)
-
-
Method Detail
-
propagate
public void propagate()
Actually does the propagation.- Specified by:
propagatein classPropagator
-
handleAllocNode
protected boolean handleAllocNode(AllocNode src)
Propagates new points-to information of node src to all its successors.
-
handleVarNode
protected boolean handleVarNode(VarNode src)
Propagates new points-to information of node src to all its successors.
-
makeP2Set
protected final PointsToSetInternal makeP2Set(FieldRefNode n)
-
getP2Set
protected final PointsToSetInternal getP2Set(FieldRefNode n)
-
-