Package qilin.core
Class PTA
java.lang.Object
qilin.core.PTA
- All Implemented Interfaces:
PointsToAnalysis
- Direct Known Subclasses:
CorePTA
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected OnFlyCallGraphprotected CallGraphBuilderprotected ExceptionHandlerprotected PAGprotected AllocNodeprotected PTASceneFields inherited from interface qilin.core.PointsToAnalysis
EXCEPTION_NODE, MAIN_THREAD_GROUP_NODE_LOCAL, RETURN_NODE, STRING_NODE, THIS_NODE, THROW_NODE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract ContextcreateCalleeCtx(ContextMethod caller, AllocNode receiverNode, CallSite callSite, SootMethod target) protected abstract CallGraphBuilderprotected abstract PAGabstract CtxConstructorabstract CtxSelectorabstract ContextgetCgb()getPag()protected abstract Propagatorabstract AllocNodegetScene()getView()abstract HeapAbstractorabstract Nodeparameterize(Node n, Context context) abstract ContextMethodparameterize(SootMethod method, Context context) voidpureRun()reachingObjects(Context c, SootMethod m, Local l) Returns the set of objects pointed to by variable l in context c.reachingObjects(Context c, SootMethod m, Local l, SootField f) Returns the set of objects pointed to by instance field f of the objects pointed to by l in context c.Returns the set of objects pointed by n: case 1: n is an insensitive node, return objects pointed by n under every possible context. case 2: n is a context-sensitive node, return objects pointed by n under the given context.Returns the set of objects pointed to by instance field f of the objects in the PointsToSet s.Returns the set of objects pointed to by static field f.reachingObjects(SootMethod m, Local l) Returns the set of objects pointed to by variable l.reachingObjects(SootMethod m, Local l, SootField f) Returns the set of objects pointed to by instance field f of the objects pointed to by l.reachingObjectsInternal(AllocNode heap, SparkField f) reachingObjectsInternal(PointsToSet bases, SparkField f) Returns the set of objects pointed to by elements of the arrays in the PointsToSet s.voidrun()
-
Field Details
-
scene
-
rootNode
-
pag
-
callGraph
-
cgb
-
eh
-
-
Constructor Details
-
PTA
-
-
Method Details
-
createPAG
-
createCallGraphBuilder
-
run
public void run() -
pureRun
public void pureRun() -
getPag
-
getView
-
getScene
-
getCgb
-
getExceptionHandler
-
getCallGraph
-
getReachableMethods
-
getNakedReachableMethods
-
getPropagator
-
parameterize
-
parameterize
-
getRootNode
-
emptyContext
-
createCalleeCtx
public abstract Context createCalleeCtx(ContextMethod caller, AllocNode receiverNode, CallSite callSite, SootMethod target) -
heapAbstractor
-
ctxConstructor
-
ctxSelector
-
reachingObjects
Returns the set of objects pointed to by variable l.- Specified by:
reachingObjectsin interfacePointsToAnalysis
-
reachingObjects
Returns the set of objects pointed by n: case 1: n is an insensitive node, return objects pointed by n under every possible context. case 2: n is a context-sensitive node, return objects pointed by n under the given context.- Specified by:
reachingObjectsin interfacePointsToAnalysis
-
reachingObjectsOfArrayElement
Returns the set of objects pointed to by elements of the arrays in the PointsToSet s.- Specified by:
reachingObjectsOfArrayElementin interfacePointsToAnalysis
-
reachingObjects
Returns the set of objects pointed to by variable l in context c.- Specified by:
reachingObjectsin interfacePointsToAnalysis
-
reachingObjects
Returns the set of objects pointed to by instance field f of the objects pointed to by l.- Specified by:
reachingObjectsin interfacePointsToAnalysis
-
reachingObjects
Returns the set of objects pointed to by instance field f of the objects in the PointsToSet s.- Specified by:
reachingObjectsin interfacePointsToAnalysis
-
reachingObjects
Returns the set of objects pointed to by instance field f of the objects pointed to by l in context c.- Specified by:
reachingObjectsin interfacePointsToAnalysis
-
reachingObjects
Description copied from interface:PointsToAnalysisReturns the set of objects pointed to by static field f.- Specified by:
reachingObjectsin interfacePointsToAnalysis
-
reachingObjectsInternal
-
reachingObjectsInternal
-