Public Methods | |
SlicingMethod (MethodInfo mdInfo) | |
Static Public Methods | |
boolean | isBanderaInvoke (Stmt nodeStmt) |
CallSite | isCallSite (Map callSiteMap, Stmt node) |
List | reachableStmtFrom (Stmt stmt, StmtGraph stmtGraphAsPara) |
SliceTraceNode | sliceTraceContains (SliceTraceNode traceNode) |
Private Methods | |
void | addCalledMdToWorkList (MethodInfo targetMdInfo, LinkedList workList, Set calculated) |
void | addToSliceTrace (Set stmtSet, Set callSites, Integer kind, MethodInfo mdin) |
void | addToSliceTrace (Set stmtSet, BitSet assgnSet, Integer kind, MethodInfo mdin) |
void | addToSliceTrace (SliceTraceNode stn, Stmt stmt, Integer kind, MethodInfo mdin) |
void | addToSliceTrace (SliceTraceNode stn, LinkedList stmts, Integer kind, MethodInfo mdin) |
void | addToSliceTrace (SliceTraceNode stn, Set stmtSet, Integer kind, MethodInfo mdin) |
void | addToSliceTrace (SliceTraceNode stn, BitSet stmtBitSet, Integer kind, MethodInfo mdin) |
void | addToWorkList (LinkedList wkList, BitSet nodes, Set calculatedNodes) |
BitSet | assToRelVars (Set varList, Map locAssMap, Map relVarMap) |
BitSet | assToVarsNoRelVars (int stmtListSize, List varList, Map locAssMap) |
boolean | callerIsRelevant (CallSite callSite) |
List | callSiteInSlice (Map callSiteIndexMap, BitSet sliceSet) |
Set | collectCallSitesFrom (Set readyCallSites) |
Set | collectCallSitesMdInfoFrom (Set readyCallSites) |
void | ctrlRelVarCompute (Map relVars, Stmt nodeControled, BitSet cdNodes) |
Set | dataRelVarCompute (Map relVars, Stmt refNode, Set dd) |
boolean | existCallPathFromOriginalMd (MethodInfo toMd) |
List | extractingAssertLine (Set lineList) |
List | extractingVarsInAssert (List assertList) |
void | generateNewCriterion (MethodInfo methodInfo, Stmt interStmt, Set newRelVars) |
void | generateNewCriterionForCaller (CallSite callSite, MethodInfo calleeMdInfo, Map relVarMapOfCallee) |
void | genNewCritForExit (CallSite callSite, Map relevantVarMap, Set relVarsInCaller, MethodInfo callerMdInfo, MethodInfo targetMdInfo, Set exitStmtSet, Set localCopiesInCaller) |
Set | getAllVariables (BitSet stmtIndexSet, StmtList localStmtList) |
Value | getBaseFrom (CallSite site) |
Set | getCompleteLocalCopiesList (MethodInfo mdInfo, Set linePropList) |
Set | getCopiesOfTheBase (Value base, Set localCopies) |
Set | getNewInsFieldRefSet (InstanceFieldRef insField, Set copiesOfBase) |
Set | getTraceNodeSetFrom (Set stmtSet, MethodInfo mdin) |
String | getValueString (Value value) |
BitSet | indexSetOf (Set dataBoxSet) |
void | instanceFdInTargetMd (Set relVarsAtCallSite, Set instanceFields, Set relVarsInTargetMd, InvokeExpr invokeExpr, Set localCopiesInCaller) |
void | mdCallsInSlice (MethodInfo methodInfo, BitSet sliceSet, Map relVarMap, Set localCopiesInCaller) |
boolean | oneParaFdIsRelevant (MethodInfo mdInfo, Map relMap, BitSet sSet) |
void | paraFdInTargetMd (Set paraFieldsInTargetMd, Set relVarsAtCallSite, Set relVarsInTargetMd, InvokeExpr invokeExpr, Local[] paraLocals, SimpleLocalCopies simpleLocalCopiesInTargetMd) |
void | putToRelVarMap (Object var, BitSet assToVar, Map relVarMap) |
void | putUsedVarIntoRelSet (Stmt stmt, Set varSet) |
Set | rmAssInSlice (Set relVarSet, BitSet keepedPoints, BitSet sliceSet, Map localAssMap) |
void | slicingMethod (boolean goingup) |
void | slicingMethodAgain () |
Stmt | startNodeAfterSlicing (MethodInfo methodInfo) |
void | staticFdInTargetMd (Set relVarsAtCallSite, Set fdsInTargetMd, Set relVarsInTargetMd) |
boolean | varsContainArg (Set vars, CallSite cs) |
Static Private Methods | |
Set | allLocalVarsOf (Stmt stmt) |
Set | allMODREFFields (Set modFields, Set refFields) |
Map | callSiteIndex (Map callSiteMap) |
Set | defVarsOf (Stmt stmt) |
Set | reachableStmtSetFrom (Stmt stmt, StmtGraph stmtGraphAsPara) |
Set | refVarsOf (Stmt stmt) |
Private Attributes | |
StmtList | stmtList |
int | stmtListSize |
IndexMaps | indexMaps |
MethodInfo | methodInfo |
Set | originalMethodsFromReady = new ArraySet() |
Static Private Attributes | |
boolean | criterionChanged |
Set | alreadyGenCritByReadyCallSite |
Set | alreadyGenerateCriterionForExits |
Definition at line 53 of file SlicingMethod.java.
|
Definition at line 83 of file SlicingMethod.java. |
|
Add a set of statements into a work list.
Definition at line 206 of file SlicingMethod.java. Referenced by slicingMethod(), and slicingMethodAgain().
|
|
Get all local variables in one statement.
Definition at line 221 of file SlicingMethod.java. Referenced by getAllVariables().
|
|
Get all MOD and REF fields from given sets.
Definition at line 233 of file SlicingMethod.java. Referenced by genNewCritForExit(), and generateNewCriterionForCaller().
|
|
Get all assignments to a list of varibles.
Definition at line 255 of file SlicingMethod.java. Referenced by slicingMethod().
|
|
Get all assignments to a list of varibles without considering relevant variables.
Definition at line 276 of file SlicingMethod.java. Referenced by slicingMethod().
|
|
Get all call site in a set of statements.
Definition at line 354 of file SlicingMethod.java. Referenced by mdCallsInSlice().
|
|
Get call sites indexed by call statements.
Definition at line 339 of file SlicingMethod.java. Referenced by isCallSite(), and mdCallsInSlice().
|
|
Insert the method's description here. Creation date: (00-10-20 19:24:31) Definition at line 291 of file SlicingMethod.java. |
|
Collect call site statement from a set of CallSite.
Definition at line 374 of file SlicingMethod.java. Referenced by slicingMethod().
|
|
Collect all methods where call sites are.
Definition at line 390 of file SlicingMethod.java. Referenced by slicingMethod().
|
|
Compute relevant variables for control dependence.
Definition at line 409 of file SlicingMethod.java. Referenced by slicingMethod(), and slicingMethodAgain().
|
|
Compute relevant variables for data dependence.
Definition at line 443 of file SlicingMethod.java. Referenced by slicingMethod(), and slicingMethodAgain().
|
|
Get all variables defined in a given statement.
Definition at line 520 of file SlicingMethod.java. Referenced by allLocalVarsOf(), and dataRelVarCompute().
|
|
Extract the line like
Definition at line 649 of file SlicingMethod.java. Referenced by slicingMethod().
|
|
Extract variables used in all
Definition at line 664 of file SlicingMethod.java. Referenced by slicingMethod().
|
|
Generate new slice criterion for a callee in terms of a call site.
Definition at line 867 of file SlicingMethod.java. Referenced by mdCallsInSlice().
|
|
Generate new slice criterion for given method from given statement and a set of relevant variables.
Definition at line 686 of file SlicingMethod.java. Referenced by genNewCritForExit(), generateNewCriterionForCaller(), slicingMethod(), and slicingMethodAgain().
|
|
Generate new slice criterion for a caller in terms of a call site.
Definition at line 764 of file SlicingMethod.java. Referenced by slicingMethod().
|
|
Get all variables appeared in a set statement..
Definition at line 979 of file SlicingMethod.java. Referenced by generateNewCriterion().
|
|
Get base value for a call site.
Definition at line 995 of file SlicingMethod.java. Referenced by ctrlRelVarCompute(), dataRelVarCompute(), slicingMethod(), and slicingMethodAgain().
|
|
Get all the local copies before all the slice points, using the work list algorithm.
Definition at line 1009 of file SlicingMethod.java. Referenced by slicingMethod(), and slicingMethodAgain().
|
|
Get all local copies of a value.
Definition at line 1047 of file SlicingMethod.java. Referenced by instanceFdInTargetMd().
|
|
Change the base of given instance field reference into a set of give locals.
Definition at line 1080 of file SlicingMethod.java. Referenced by instanceFdInTargetMd().
|
|
Get string representation of a value.
Definition at line 1107 of file SlicingMethod.java. |
|
Get statement index set of a given data box set.
Definition at line 1131 of file SlicingMethod.java. Referenced by slicingMethod(), and slicingMethodAgain().
|
|
Get all relevant instance field from a given instance field set.
Definition at line 1148 of file SlicingMethod.java. Referenced by genNewCritForExit().
|
|
See if a statement is
Definition at line 1174 of file SlicingMethod.java. Referenced by extractingAssertLine().
|
|
See if a statement is a call site.
Definition at line 1195 of file SlicingMethod.java. Referenced by ctrlRelVarCompute(), dataRelVarCompute(), slicingMethod(), and slicingMethodAgain().
|
|
Analyse method calls in slice.
Definition at line 1211 of file SlicingMethod.java. Referenced by slicingMethod(), and slicingMethodAgain().
|
|
See if there is one parameter field is relevant.
Definition at line 1252 of file SlicingMethod.java. |
|
Put a given variable into relevant variable map.
Definition at line 1301 of file SlicingMethod.java. Referenced by assToRelVars().
|
|
Add all used variables in a statement into a set.
Definition at line 1320 of file SlicingMethod.java. Referenced by genNewCritForExit().
|
|
Calculate all reachable statements from a given statement.
Definition at line 1334 of file SlicingMethod.java. Referenced by reachableStmtSetFrom().
|
|
Calculate all reachable statements from a given statement.
Definition at line 1360 of file SlicingMethod.java. |
|
Get all variables used in one statement.
Definition at line 1402 of file SlicingMethod.java. Referenced by allLocalVarsOf(), ctrlRelVarCompute(), dataRelVarCompute(), slicingMethod(), and slicingMethodAgain().
|
|
Slice one method. Definition at line 1440 of file SlicingMethod.java. Referenced by slicingMethodAgain(), and Slicer::slicingMethods().
|
|
Slice one method again because of new generated slice criterion. Definition at line 1748 of file SlicingMethod.java. Referenced by Slicer::slicingMethods().
|
|
Insert the method's description here. Creation date: (00-8-3 7:22:29)
Definition at line 2031 of file SlicingMethod.java. Referenced by dataRelVarCompute().
|
|
A Set of CallSite which has been generated slice criterion because of ready call site. Definition at line 73 of file SlicingMethod.java. |
|
A Set of MethodInfo such that has been generated slice criterion for exit of the method. Definition at line 79 of file SlicingMethod.java. |
|
A Set of MethodInfo such that some statement in other method ready dependent on one statement in the method Definition at line 63 of file SlicingMethod.java. |