Public Methods | |
IndexMaps (SootMethod sm) | |
BitSet | exitNodes () |
BitSet | exitNodesWithoutThrow (BitSet exitNodeSet) |
Map | getCallSiteMap () |
Map | getJumpTargetMap () |
StmtGraph | getStmtGraph () |
Map | localAssMap () |
Static Public Methods | |
SootClass | lookupSootClassByName (String className) |
Public Attributes | |
ca mcgill sable soot SootMethod | sootMethod |
Static Protected Attributes | |
final int | ENTRY = -1 |
final int | SPECIALEXIT = -2 |
final Integer | specialExitNode = new Integer(SPECIALEXIT) |
final java lang Integer | EntryNode = new Integer(ENTRY) |
Private Methods | |
boolean | annotationContainsReturn (Annotation ann) |
void | buildCallSiteMap () |
void | buildJumpTargetMap () |
void | buildLocalAssIndexMap () |
void | collectFieldReferences () |
void | collectReturnAnnotations () |
void | collectSpecialInvokes () |
BitSet | getDefSetFrom (Value basev) |
SootMethod | getImplementedMd (InvokeExpr invokeExp) |
SootMethod | getImplementedMd (SootMethod abstractMd) |
SootClass | getImplementingClassByBOFA (Set impClasses) |
InvokeExpr | getInvokeExprFrom (Stmt stmt) |
SootMethod | getInvokeMethodForStart (InvokeExpr invokeExpr, Stmt invokeStmt) |
Fields | getMOD () |
StmtList | getOriginalStmtList () |
Stmt[] | getParaIdentityStmts () |
Local[] | getParaLocalSet () |
Fields | getREF () |
Set | getReturnAnnotations () |
InvokeStmt | getSpecialInvokeFor (Value base) |
InvokeStmt | getSpecialInvokeForThread (Value base, Stmt invokeStmt) |
List | getSpecialInvokeList () |
StmtList | getStmtList () |
Local | getThisRefLocal () |
Stmt | getThisRefStmt () |
Integer | getThisRefStmtIndex () |
BitSet | indexSetWithoutExceptionHandling () |
boolean | isParaField (InstanceFieldRef fieldRef, Stmt stmt) |
boolean | isParaField (Local baseLocal, Stmt stmt) |
SootClass | lookupSootClassByThread (NonStaticInvokeExpr startInvoke, Stmt invokeStmt) |
void | putTargetIntoMap (Stmt target, Stmt source) |
List | removeExceptionCaught (List actualSuccs) |
Private Attributes | |
Map | locAssIndex |
JimpleBody | jimpleBody |
StmtGraph | stmtGraph |
StmtList | stmtList |
StmtList | originalStmtList |
Local | paraLocalSet [] |
Stmt | paraIdentityStmt [] |
Local | thisRefLocal = null |
Integer | thisRefStmtIndex |
Stmt | thisRefStmt |
Map | callSiteMap |
Fields | MOD = new Fields() |
Fields | REF = new Fields() |
List | specialInvokeList = new ArrayList() |
Map | jumpTargetMap = new HashMap() |
Set | returnAnnotations = new ArraySet() |
Definition at line 48 of file IndexMaps.java.
|
Analyse one method: Definition at line 120 of file IndexMaps.java. |
|
Insert the method's description here. Creation date: (00-11-14 14:54:19)
Definition at line 147 of file IndexMaps.java. Referenced by collectReturnAnnotations().
|
|
Build call site map into callSiteMap. Definition at line 158 of file IndexMaps.java. Referenced by IndexMaps().
|
|
Build a map from jump target to jump sources into jumpTargetMap. Definition at line 207 of file IndexMaps.java. Referenced by IndexMaps().
|
|
Build local assignments map into locAssIndex; Definition at line 225 of file IndexMaps.java. Referenced by IndexMaps().
|
|
Get MOD/REF information on field references for one method. Definition at line 270 of file IndexMaps.java. Referenced by IndexMaps().
|
|
Insert the method's description here. Creation date: (00-11-14 12:55:28) Definition at line 393 of file IndexMaps.java. Referenced by IndexMaps().
|
|
Collect all special invoke statement/expression into specialInvokeList. Definition at line 411 of file IndexMaps.java. Referenced by IndexMaps().
|
|
Get all exit nodes including Definition at line 437 of file IndexMaps.java. Referenced by SlicingMethod::generateNewCriterion(), SlicingMethod::mdCallsInSlice(), and BuildPDG::prepareToBuild().
|
|
Exclude all
Definition at line 472 of file IndexMaps.java. Referenced by SlicingMethod::generateNewCriterion(), SlicingMethod::mdCallsInSlice(), and BuildPDG::prepareToBuild().
|
|
Get call site map.
Definition at line 489 of file IndexMaps.java. Referenced by SlicingMethod::ctrlRelVarCompute(), SlicingMethod::dataRelVarCompute(), BuildPDG::prepareToBuild(), SlicingMethod::slicingMethod(), and SlicingMethod::slicingMethodAgain().
|
|
Get all assignments to a variable.
Definition at line 499 of file IndexMaps.java. Referenced by getSpecialInvokeForThread().
|
|
Get the method that implements a given abstract method.
Definition at line 533 of file IndexMaps.java. |
|
Get the method that a invoke expression invokes: especially useful for methods rewrited in
Definition at line 517 of file IndexMaps.java. Referenced by buildCallSiteMap().
|
|
A temporary interface with BOFA.
Definition at line 548 of file IndexMaps.java. Referenced by getImplementedMd().
|
|
From all used value in one statement, extract one invoke expression, if any.
Definition at line 563 of file IndexMaps.java. Referenced by buildCallSiteMap().
|
|
Get invoke method for
Definition at line 600 of file IndexMaps.java. Referenced by buildCallSiteMap().
|
|
Get jump target map.
Definition at line 646 of file IndexMaps.java. Referenced by PostProcess::residualParameters().
|
|
Get MOD information of this method.
Definition at line 655 of file IndexMaps.java. Referenced by InfoAnalysis::InfoAnalysis().
|
|
Get original statement list before slicing.
Definition at line 664 of file IndexMaps.java. Referenced by InfoAnalysis::InfoAnalysis().
|
|
Get the array of parameter identity statements.
Definition at line 672 of file IndexMaps.java. Referenced by PostProcessOnAnnotation::makeMethodEmpty(), and PostProcess::makeMethodEmpty().
|
|
Get the set of parameter locals.
Definition at line 681 of file IndexMaps.java. Referenced by SlicingMethod::oneParaFdIsRelevant().
|
|
Get REF information of the method.
Definition at line 690 of file IndexMaps.java. Referenced by InfoAnalysis::InfoAnalysis().
|
|
Insert the method's description here. Creation date: (00-11-14 13:06:01)
Definition at line 699 of file IndexMaps.java. Referenced by PostProcessOnAnnotation::makeMethodEmpty(), and PostProcess::makeMethodEmpty().
|
|
Get special invoke statement such that of with the same given base value and invoke the mehtod
Definition at line 710 of file IndexMaps.java. Referenced by getSpecialInvokeForThread().
|
|
Get special invoke statement for a
Definition at line 741 of file IndexMaps.java. Referenced by lookupSootClassByThread().
|
|
Get special invoke statement list.
Definition at line 793 of file IndexMaps.java. Referenced by SlicingMethod::genNewCritForExit().
|
|
Get statement graph provided by Jimple.
Definition at line 802 of file IndexMaps.java. |
|
Get statement list.
Definition at line 811 of file IndexMaps.java. Referenced by InfoAnalysis::InfoAnalysis().
|
|
Get this reference local.
Definition at line 819 of file IndexMaps.java. Referenced by SlicingMethod::genNewCritForExit().
|
|
Get the index of this reference statement.
Definition at line 828 of file IndexMaps.java. |
|
Get the index of this reference statement.
Definition at line 836 of file IndexMaps.java. Referenced by PostProcessOnAnnotation::makeMethodEmpty(), and PostProcess::makeMethodEmpty().
|
|
Get all statements exception those for exception handling.
Definition at line 847 of file IndexMaps.java. |
|
See if an instance field reference is based on parameter. This method will call the other overloaded method isParaField().
Definition at line 891 of file IndexMaps.java. Referenced by collectFieldReferences().
|
|
Get the map from local to assignments.
Definition at line 929 of file IndexMaps.java. Referenced by MethodCallAnalysis::assignmentByMdCall(), SlicingMethod::generateNewCriterion(), and SlicingMethod::slicingMethod().
|
|
Look up sootclass by a given class name through Slicer.relevantClassArray.
Definition at line 942 of file IndexMaps.java. Referenced by getInvokeMethodForStart(), and lookupSootClassByThread().
|
|
Get the type of a thread for the case such that
Definition at line 978 of file IndexMaps.java. Referenced by getInvokeMethodForStart().
|
|
Put given jump target and source into the jump target map jumpTargetMap.
Definition at line 1037 of file IndexMaps.java. Referenced by buildJumpTargetMap().
|
|
Remove exception caught statement from a list of statement.
Definition at line 1053 of file IndexMaps.java. Referenced by indexSetWithoutExceptionHandling().
|
|
a map from CallSite to SootMethod where SootMethod is called in the CallSite. Definition at line 93 of file IndexMaps.java. |
|
a map from Stmt to BitSet representing a set of (control flow transfer) statements from which they can Definition at line 105 of file IndexMaps.java. |
|
a map from Value to BitSet representing all assignments for one local. Definition at line 52 of file IndexMaps.java. |
|
StmtList before slicing, since slicing will change the contents of stmtList. Definition at line 59 of file IndexMaps.java. |
|
an array of parameter identity statements.
Definition at line 76 of file IndexMaps.java. |
|
an array of all locals assigned value by parameters identity statements.
Definition at line 68 of file IndexMaps.java. |
|
a list of SpecialInvokeStmt. Definition at line 99 of file IndexMaps.java. |
|
local variable for this reference. Definition at line 83 of file IndexMaps.java. |
|
statement index of this reference statement. Definition at line 87 of file IndexMaps.java. |