Modifier and Type | Field and Description |
---|---|
protected Chain<Local> |
Body.localChain
The chain of locals for this Body.
|
protected Chain<Local> |
Body.localChain
The chain of locals for this Body.
|
protected Map<Local,Integer> |
AbstractJasminClass.localToColor |
protected Map<Local,Integer> |
AbstractJasminClass.localToColor |
protected Map<Local,Object> |
AbstractJasminClass.localToGroup |
protected Map<Local,Object> |
AbstractJasminClass.localToGroup |
protected Map<Local,Integer> |
AbstractJasminClass.localToSlot |
protected Map<Local,Integer> |
AbstractJasminClass.localToSlot |
Modifier and Type | Method and Description |
---|---|
Local |
Body.getParameterLocal(int i)
Return LHS of the first identity stmt assigning from \@parameter i.
|
Local |
Body.getParameterLocal(int i)
Return LHS of the first identity stmt assigning from \@parameter i.
|
Local |
Body.getThisLocal()
Return LHS of the first identity stmt assigning from \@this.
|
Local |
Body.getThisLocal()
Return LHS of the first identity stmt assigning from \@this.
|
Modifier and Type | Method and Description |
---|---|
ArrayNumberer<Local> |
Scene.getLocalNumberer() |
ArrayNumberer<Local> |
Scene.getLocalNumberer() |
Chain<Local> |
Body.getLocals()
Returns a backed chain of the locals declared in this Body.
|
Chain<Local> |
Body.getLocals()
Returns a backed chain of the locals declared in this Body.
|
List<Local> |
Body.getParameterLocals()
Get all the LHS of the identity statements assigning from parameter references.
|
List<Local> |
Body.getParameterLocals()
Get all the LHS of the identity statements assigning from parameter references.
|
Modifier and Type | Method and Description |
---|---|
void |
AbstractUnitPrinter.local(Local l) |
void |
UnitPrinter.local(Local l) |
void |
UnitPrinter.local(Local l) |
void |
AbstractUnitPrinter.local(Local l) |
PointsToSet |
PointsToAnalysis.reachingObjects(Context c,
Local l)
Returns the set of objects pointed to by variable l in context c.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Context c,
Local l)
Returns the set of objects pointed to by variable l in context c.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Context c,
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.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Context c,
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.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Local l)
Returns the set of objects pointed to by variable l.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Local l)
Returns the set of objects pointed to by variable l.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
PointsToSet |
PointsToAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
Modifier and Type | Field and Description |
---|---|
protected Map<Local,Integer> |
BafASMBackend.localToSlot |
protected Map<Local,Integer> |
BafASMBackend.localToSlot |
Modifier and Type | Method and Description |
---|---|
Local |
IncInst.getLocal() |
Local |
LoadInst.getLocal() |
Local |
StoreInst.getLocal() |
Local |
IncInst.getLocal() |
Local |
StoreInst.getLocal() |
Local |
LoadInst.getLocal() |
Local |
Baf.newLocal(String name,
Type t)
Constructs a Local with the given name and type.
|
Local |
Baf.newLocal(String name,
Type t)
Constructs a Local with the given name and type.
|
Modifier and Type | Method and Description |
---|---|
IncInst |
Baf.newIncInst(Local aLocal,
Constant aConstant) |
IncInst |
Baf.newIncInst(Local aLocal,
Constant aConstant) |
LoadInst |
Baf.newLoadInst(Type opType,
Local l) |
LoadInst |
Baf.newLoadInst(Type opType,
Local l) |
StoreInst |
Baf.newStoreInst(Type opType,
Local l) |
StoreInst |
Baf.newStoreInst(Type opType,
Local l) |
void |
IncInst.setLocal(Local l) |
void |
LoadInst.setLocal(Local l) |
void |
StoreInst.setLocal(Local l) |
void |
IncInst.setLocal(Local l) |
void |
StoreInst.setLocal(Local l) |
void |
LoadInst.setLocal(Local l) |
Modifier and Type | Class and Description |
---|---|
class |
BafLocal |
Modifier and Type | Method and Description |
---|---|
Local |
BIncInst.getLocal() |
Local |
BLoadInst.getLocal() |
Local |
BStoreInst.getLocal() |
Local |
BIncInst.getLocal() |
Local |
BStoreInst.getLocal() |
Local |
BLoadInst.getLocal() |
Local |
BafLocal.getOriginalLocal() |
Local |
BafLocal.getOriginalLocal() |
Modifier and Type | Method and Description |
---|---|
void |
BIncInst.setLocal(Local l) |
void |
BLoadInst.setLocal(Local l) |
void |
BStoreInst.setLocal(Local l) |
void |
BIncInst.setLocal(Local l) |
void |
BStoreInst.setLocal(Local l) |
void |
BLoadInst.setLocal(Local l) |
void |
BafLocal.setOriginalLocal(Local l) |
void |
BafLocal.setOriginalLocal(Local l) |
Constructor and Description |
---|
BIncInst(Local local,
Constant constant) |
BIncInst(Local local,
Constant constant) |
BLoadInst(Type opType,
Local local) |
BLoadInst(Type opType,
Local local) |
BStoreInst(Type opType,
Local local) |
BStoreInst(Type opType,
Local local) |
Modifier and Type | Method and Description |
---|---|
Local |
DavaBody.get_ControlLocal() |
Local |
DavaBody.get_ControlLocal() |
Local |
Dava.newLocal(String name,
Type t) |
Local |
Dava.newLocal(String name,
Type t) |
Modifier and Type | Method and Description |
---|---|
Local |
ASTSynchronizedBlockNode.getLocal() |
Local |
ASTSynchronizedBlockNode.getLocal() |
Modifier and Type | Method and Description |
---|---|
void |
ASTMethodNode.addToDontPrintLocalsList(Local toAdd) |
void |
ASTMethodNode.addToDontPrintLocalsList(Local toAdd) |
void |
ASTMethodNode.removeDeclaredLocal(Local local) |
void |
ASTMethodNode.removeDeclaredLocal(Local local) |
void |
ASTSynchronizedBlockNode.setLocal(Local local) |
void |
ASTSynchronizedBlockNode.setLocal(Local local) |
Modifier and Type | Method and Description |
---|---|
void |
ASTMethodNode.setDontPrintLocals(List<Local> list) |
void |
ASTMethodNode.setDontPrintLocals(List<Local> list) |
Modifier and Type | Method and Description |
---|---|
void |
DVariableDeclarationStmt.addLocal(Local add) |
void |
DVariableDeclarationStmt.addLocal(Local add) |
void |
DVariableDeclarationStmt.removeLocal(Local remove) |
void |
DVariableDeclarationStmt.removeLocal(Local remove) |
Modifier and Type | Method and Description |
---|---|
Local |
ReachingCopies.LocalPair.getLeftLocal() |
Local |
ReachingCopies.LocalPair.getLeftLocal() |
Local |
CPVariable.getLocal() |
Local |
CPVariable.getLocal() |
Local |
ReachingCopies.LocalPair.getRightLocal() |
Local |
ReachingCopies.LocalPair.getRightLocal() |
Modifier and Type | Method and Description |
---|---|
boolean |
ReachingCopies.LocalPair.contains(Local local)
Method checks whether local occurs in the left or right side of the
localpair different semantics than the usual contains method which
checks something in a list
|
boolean |
ReachingCopies.LocalPair.contains(Local local)
Method checks whether local occurs in the left or right side of the
localpair different semantics than the usual contains method which
checks something in a list
|
void |
ReachingCopies.gen(DavaFlowSet in,
Local left,
Local right) |
void |
ReachingCopies.gen(DavaFlowSet in,
Local left,
Local right) |
List<DefinitionStmt> |
ReachingDefs.getReachingDefs(Local local,
Object node) |
List<DefinitionStmt> |
ReachingDefs.getReachingDefs(Local local,
Object node) |
void |
ReachingCopies.kill(DavaFlowSet<ReachingCopies.LocalPair> in,
Local redefined) |
void |
ReachingCopies.kill(DavaFlowSet<ReachingCopies.LocalPair> in,
Local redefined) |
void |
ReachingDefs.kill(DavaFlowSet<Stmt> in,
Local redefined) |
void |
ReachingDefs.kill(DavaFlowSet<Stmt> in,
Local redefined) |
Object |
CP.killButGetValueForUse(Local left,
CPFlowSet toReturn) |
Object |
CP.killButGetValueForUse(Local left,
CPFlowSet toReturn) |
DavaFlowSet |
CP.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
MustMayInitialize.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
UnreachableCodeFinder.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
CP.processSynchronizedLocal(Local local,
DavaFlowSet input) |
DavaFlowSet |
ReachingCopies.processSynchronizedLocal(Local local,
DavaFlowSet input) |
abstract DavaFlowSet<E> |
StructuredAnalysis.processSynchronizedLocal(Local local,
DavaFlowSet<E> input)
To deal with the local used for synch blocks
|
abstract DavaFlowSet<E> |
StructuredAnalysis.processSynchronizedLocal(Local local,
DavaFlowSet<E> input)
To deal with the local used for synch blocks
|
DavaFlowSet<Stmt> |
ReachingDefs.processSynchronizedLocal(Local local,
DavaFlowSet<Stmt> inSet) |
DavaFlowSet<Stmt> |
ReachingDefs.processSynchronizedLocal(Local local,
DavaFlowSet<Stmt> inSet) |
Constructor and Description |
---|
CPVariable(Local local) |
CPVariable(Local local) |
LocalPair(Local left,
Local right) |
LocalPair(Local left,
Local right) |
Modifier and Type | Method and Description |
---|---|
AugmentedStmt |
SuperFirstStmtHandler.createStmtAccordingToType(Type tempType,
Value tempVal,
Local newLocal,
SootMethodRef getMethodRef) |
AugmentedStmt |
SuperFirstStmtHandler.createStmtAccordingToType(Type tempType,
Value tempVal,
Local newLocal,
SootMethodRef getMethodRef) |
List<DefinitionStmt> |
LocalVariableCleaner.getDefs(Local var) |
List<DefinitionStmt> |
LocalVariableCleaner.getDefs(Local var) |
Modifier and Type | Method and Description |
---|---|
void |
ASTUsesAndDefs.createUDDUChain(Local local,
Object useNodeOrStatement) |
void |
ASTUsesAndDefs.createUDDUChain(Local local,
Object useNodeOrStatement) |
List |
AllVariableUses.getUsesForLocal(Local local) |
List |
AllVariableUses.getUsesForLocal(Local local) |
void |
CopyPropagation.modifyUseBoxes(Local from,
Local to,
List useBoxes) |
void |
CopyPropagation.modifyUseBoxes(Local from,
Local to,
List useBoxes) |
void |
CopyPropagation.modifyUses(Local from,
Local to,
ASTCondition cond) |
void |
CopyPropagation.modifyUses(Local from,
Local to,
ASTCondition cond) |
void |
CopyPropagation.replace(Local from,
Local to,
Object use) |
void |
CopyPropagation.replace(Local from,
Local to,
Object use) |
Modifier and Type | Method and Description |
---|---|
Iterator<Local> |
heuristicSet.getLocalsIterator() |
Iterator<Local> |
heuristicSet.getLocalsIterator() |
Modifier and Type | Method and Description |
---|---|
void |
heuristicSet.add(Local var,
int bits) |
void |
heuristicSet.add(Local var,
int bits) |
void |
heuristicSet.addCastString(Local var,
String castString) |
void |
heuristicSet.addCastString(Local var,
String castString) |
boolean |
heuristicSet.contains(Local var) |
boolean |
heuristicSet.contains(Local var) |
List<String> |
heuristicSet.getCastStrings(Local var) |
List<String> |
heuristicSet.getCastStrings(Local var) |
List<String> |
heuristicSet.getFieldName(Local var) |
List<String> |
heuristicSet.getFieldName(Local var) |
boolean |
heuristicSet.getHeuristic(Local var,
int bitIndex) |
boolean |
heuristicSet.getHeuristic(Local var,
int bitIndex) |
List<String> |
heuristicSet.getMethodName(Local var) |
List<String> |
heuristicSet.getMethodName(Local var) |
List<String> |
heuristicSet.getObjectClassName(Local var) |
List<String> |
heuristicSet.getObjectClassName(Local var) |
boolean |
heuristicSet.isAnyHeuristicSet(Local var) |
boolean |
heuristicSet.isAnyHeuristicSet(Local var) |
void |
heuristicSet.setFieldName(Local var,
String fieldName) |
void |
heuristicSet.setFieldName(Local var,
String fieldName) |
void |
heuristicSet.setHeuristic(Local var,
int bitIndex) |
void |
heuristicSet.setHeuristic(Local var,
int bitIndex) |
void |
heuristicSet.setMethodName(Local var,
String methodName) |
void |
heuristicSet.setMethodName(Local var,
String methodName) |
void |
heuristicSet.setObjectClassName(Local var,
String objectClassName) |
void |
heuristicSet.setObjectClassName(Local var,
String objectClassName) |
Modifier and Type | Method and Description |
---|---|
Local |
DexBody.getRegisterLocal(int num)
Return the Local that are associated with the number in the current
register state.
|
Local |
DexBody.getRegisterLocal(int num)
Return the Local that are associated with the number in the current
register state.
|
Local[] |
DexBody.getRegisterLocals()
Return the Locals that are associated with the current register state.
|
Local[] |
DexBody.getRegisterLocals()
Return the Locals that are associated with the current register state.
|
Local |
DexBody.getStoreResultLocal() |
Local |
DexBody.getStoreResultLocal() |
Modifier and Type | Method and Description |
---|---|
protected Set<Unit> |
DexDefUseAnalysis.collectDefinitionsWithAliases(Local l)
Collect definitions of l in body including the definitions of aliases of
l.
|
protected Set<Unit> |
DexDefUseAnalysis.collectDefinitionsWithAliases(Local l)
Collect definitions of l in body including the definitions of aliases of
l.
|
protected List<Unit> |
DexTransformer.collectDefinitionsWithAliases(Local l,
LocalDefs localDefs,
LocalUses localUses,
Body body)
Collect definitions of l in body including the definitions of aliases of
l.
|
protected List<Unit> |
DexTransformer.collectDefinitionsWithAliases(Local l,
LocalDefs localDefs,
LocalUses localUses,
Body body)
Collect definitions of l in body including the definitions of aliases of
l.
|
List<Unit> |
DexDefUseAnalysis.getDefsOf(Local l) |
List<Unit> |
DexDefUseAnalysis.getDefsOf(Local l) |
List<Unit> |
DexDefUseAnalysis.getDefsOfAt(Local l,
Unit s) |
List<Unit> |
DexDefUseAnalysis.getDefsOfAt(Local l,
Unit s) |
Set<Unit> |
DexDefUseAnalysis.getUsesOf(Local l) |
Set<Unit> |
DexDefUseAnalysis.getUsesOf(Local l) |
Modifier and Type | Method and Description |
---|---|
protected List<Local> |
MethodInvocationInstruction.buildParameters(DexBody body,
boolean isStatic)
Build the parameters of this invocation.
|
protected List<Local> |
MethodInvocationInstruction.buildParameters(DexBody body,
boolean isStatic)
Build the parameters of this invocation.
|
Modifier and Type | Method and Description |
---|---|
protected AssignStmt |
FieldInstruction.getAssignStmt(DexBody body,
Local sourceValue,
ConcreteRef instanceField)
Check if the field type equals the type of the value that will be stored in the field.
|
protected AssignStmt |
FieldInstruction.getAssignStmt(DexBody body,
Local sourceValue,
ConcreteRef instanceField)
Check if the field type equals the type of the value that will be stored in the field.
|
protected Stmt |
PackedSwitchInstruction.switchStatement(DexBody body,
Instruction targetData,
Local key) |
protected Stmt |
SparseSwitchInstruction.switchStatement(DexBody body,
Instruction targetData,
Local key) |
protected abstract Stmt |
SwitchInstruction.switchStatement(DexBody body,
Instruction targetData,
Local key)
Return a switch statement based on given target data on the given key.
|
protected Stmt |
SparseSwitchInstruction.switchStatement(DexBody body,
Instruction targetData,
Local key) |
protected Stmt |
PackedSwitchInstruction.switchStatement(DexBody body,
Instruction targetData,
Local key) |
protected abstract Stmt |
SwitchInstruction.switchStatement(DexBody body,
Instruction targetData,
Local key)
Return a switch statement based on given target data on the given key.
|
Modifier and Type | Method and Description |
---|---|
Local |
Grimp.newLocal(String name,
Type t)
Constructs a Local with the given name and type.
|
Local |
Grimp.newLocal(String name,
Type t)
Constructs a Local with the given name and type.
|
Modifier and Type | Method and Description |
---|---|
InterfaceInvokeExpr |
Grimp.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
List args)
Constructs a InterfaceInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
InterfaceInvokeExpr |
Grimp.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
List args)
Constructs a InterfaceInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
SpecialInvokeExpr |
Grimp.newSpecialInvokeExpr(Local base,
SootMethodRef method,
List args)
Constructs a SpecialInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
SpecialInvokeExpr |
Grimp.newSpecialInvokeExpr(Local base,
SootMethodRef method,
List args)
Constructs a SpecialInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
VirtualInvokeExpr |
Grimp.newVirtualInvokeExpr(Local base,
SootMethodRef method,
List args)
Constructs a VirtualInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
VirtualInvokeExpr |
Grimp.newVirtualInvokeExpr(Local base,
SootMethodRef method,
List args)
Constructs a VirtualInvokeExpr(Local base, SootMethodRef method, List of Expr) grammar chunk.
|
Modifier and Type | Field and Description |
---|---|
protected Local |
JimpleBodyBuilder.outerClassParamLocal |
protected Local |
JimpleBodyBuilder.outerClassParamLocal |
protected Local |
JimpleBodyBuilder.specialThisLocal |
protected Local |
JimpleBodyBuilder.specialThisLocal |
Modifier and Type | Field and Description |
---|---|
protected HashMap<polyglot.util.IdentityKey,Local> |
JimpleBodyBuilder.localsMap |
protected HashMap<polyglot.util.IdentityKey,Local> |
JimpleBodyBuilder.localsMap |
Modifier and Type | Method and Description |
---|---|
protected Local |
AbstractJimpleBodyBuilder.generateLocal(Type sootType) |
protected Local |
AbstractJimpleBodyBuilder.generateLocal(polyglot.types.Type polyglotType) |
protected Local |
JimpleBodyBuilder.generateLocal(polyglot.types.Type polyglotType)
Extra Local Variables Generation
|
protected Local |
JimpleBodyBuilder.generateLocal(Type sootType) |
Local |
LocalGenerator.generateLocal(Type type)
generates a new soot local given the type
|
Local |
LocalGenerator.generateLocal(Type type)
generates a new soot local given the type
|
protected Local |
JimpleBodyBuilder.generateLocal(polyglot.types.Type polyglotType)
Extra Local Variables Generation
|
protected Local |
JimpleBodyBuilder.generateLocal(Type sootType) |
protected Local |
AbstractJimpleBodyBuilder.generateLocal(Type sootType) |
protected Local |
AbstractJimpleBodyBuilder.generateLocal(polyglot.types.Type polyglotType) |
Local |
PolyglotMethodSource.getOuterClassThisInit() |
Local |
PolyglotMethodSource.getOuterClassThisInit() |
static Local |
Util.getPrivateAccessFieldInvoke(SootMethodRef toInvoke,
ArrayList params,
Body body,
LocalGenerator lg) |
static Local |
Util.getPrivateAccessFieldInvoke(SootMethodRef toInvoke,
ArrayList params,
Body body,
LocalGenerator lg) |
protected Local |
AbstractJimpleBodyBuilder.getThis(Type sootType) |
protected Local |
JimpleBodyBuilder.getThis(Type sootType) |
protected Local |
JimpleBodyBuilder.getThis(Type sootType) |
protected Local |
AbstractJimpleBodyBuilder.getThis(Type sootType) |
static Local |
Util.getThis(Type sootType,
Body body,
HashMap getThisMap,
LocalGenerator lg) |
static Local |
Util.getThis(Type sootType,
Body body,
HashMap getThisMap,
LocalGenerator lg) |
static Local |
Util.getThisGivenOuter(Type sootType,
HashMap getThisMap,
Body body,
LocalGenerator lg,
Local t2) |
static Local |
Util.getThisGivenOuter(Type sootType,
HashMap getThisMap,
Body body,
LocalGenerator lg,
Local t2) |
protected Local |
AbstractJimpleBodyBuilder.handlePrivateFieldAssignSet(polyglot.ast.Assign assign) |
protected Local |
AccessFieldJBB.handlePrivateFieldAssignSet(polyglot.ast.Assign assign) |
protected Local |
JimpleBodyBuilder.handlePrivateFieldAssignSet(polyglot.ast.Assign assign) |
protected Local |
AccessFieldJBB.handlePrivateFieldAssignSet(polyglot.ast.Assign assign) |
protected Local |
JimpleBodyBuilder.handlePrivateFieldAssignSet(polyglot.ast.Assign assign) |
protected Local |
AbstractJimpleBodyBuilder.handlePrivateFieldAssignSet(polyglot.ast.Assign assign) |
protected Local |
AbstractJimpleBodyBuilder.handlePrivateFieldSet(polyglot.ast.Expr expr,
Value right,
Value base) |
protected Local |
AccessFieldJBB.handlePrivateFieldSet(polyglot.ast.Expr expr,
Value right,
Value baseLocal) |
protected Local |
JimpleBodyBuilder.handlePrivateFieldSet(polyglot.ast.Expr expr,
Value right,
Value base) |
protected Local |
AccessFieldJBB.handlePrivateFieldSet(polyglot.ast.Expr expr,
Value right,
Value baseLocal) |
protected Local |
JimpleBodyBuilder.handlePrivateFieldSet(polyglot.ast.Expr expr,
Value right,
Value base) |
protected Local |
AbstractJimpleBodyBuilder.handlePrivateFieldSet(polyglot.ast.Expr expr,
Value right,
Value base) |
protected Local |
AbstractJimpleBodyBuilder.handlePrivateFieldUnarySet(polyglot.ast.Unary unary) |
protected Local |
AccessFieldJBB.handlePrivateFieldUnarySet(polyglot.ast.Unary unary) |
protected Local |
JimpleBodyBuilder.handlePrivateFieldUnarySet(polyglot.ast.Unary unary) |
protected Local |
AccessFieldJBB.handlePrivateFieldUnarySet(polyglot.ast.Unary unary) |
protected Local |
JimpleBodyBuilder.handlePrivateFieldUnarySet(polyglot.ast.Unary unary) |
protected Local |
AbstractJimpleBodyBuilder.handlePrivateFieldUnarySet(polyglot.ast.Unary unary) |
Modifier and Type | Method and Description |
---|---|
protected Value |
AbstractJimpleBodyBuilder.getAssignRightLocal(polyglot.ast.Assign assign,
Local leftLocal) |
protected Value |
JimpleBodyBuilder.getAssignRightLocal(polyglot.ast.Assign assign,
Local leftLocal) |
protected Value |
JimpleBodyBuilder.getAssignRightLocal(polyglot.ast.Assign assign,
Local leftLocal) |
protected Value |
AbstractJimpleBodyBuilder.getAssignRightLocal(polyglot.ast.Assign assign,
Local leftLocal) |
static Local |
Util.getThisGivenOuter(Type sootType,
HashMap getThisMap,
Body body,
LocalGenerator lg,
Local t2) |
static Local |
Util.getThisGivenOuter(Type sootType,
HashMap getThisMap,
Body body,
LocalGenerator lg,
Local t2) |
void |
PolyglotMethodSource.setOuterClassThisInit(Local l) |
void |
PolyglotMethodSource.setOuterClassThisInit(Local l) |
Modifier and Type | Field and Description |
---|---|
static Map<SootMethod,Map<Local,Local>> |
Main.methods2Baf2JLocals |
static Map<SootMethod,Map<Local,Local>> |
Main.methods2Baf2JLocals |
static Map<SootMethod,Map<Local,Local>> |
Main.methods2Baf2JLocals |
static Map<SootMethod,Map<Local,Local>> |
Main.methods2Baf2JLocals |
static Map<SootMethod,List<Local>> |
Main.methods2JLocals |
static Map<SootMethod,List<Local>> |
Main.methods2JLocals |
Modifier and Type | Field and Description |
---|---|
Map<Local,Local> |
StackTypeHeightCalculator.StackEffectSwitch.bafToJLocals |
Map<Local,Local> |
StackTypeHeightCalculator.StackEffectSwitch.bafToJLocals |
Map<Local,Local> |
StackTypeHeightCalculator.StackEffectSwitch.bafToJLocals |
Map<Local,Local> |
StackTypeHeightCalculator.StackEffectSwitch.bafToJLocals |
Modifier and Type | Method and Description |
---|---|
static PushInst |
FixUndefinedLocals.getPushInitializer(Local l,
Type t) |
static PushInst |
FixUndefinedLocals.getPushInitializer(Local l,
Type t) |
Modifier and Type | Method and Description |
---|---|
static Map<Unit,Stack<Type>> |
StackTypeHeightCalculator.calculateStackHeights(Body b,
Map<Local,Local> b2JLocs) |
static Map<Unit,Stack<Type>> |
StackTypeHeightCalculator.calculateStackHeights(Body b,
Map<Local,Local> b2JLocs) |
static Map<Unit,Stack<Type>> |
StackTypeHeightCalculator.calculateStackHeights(Body b,
Map<Local,Local> b2JLocs) |
static Map<Unit,Stack<Type>> |
StackTypeHeightCalculator.calculateStackHeights(Body b,
Map<Local,Local> b2JLocs) |
Modifier and Type | Method and Description |
---|---|
static Local |
BodyBuilder.buildThisLocal(PatchingChain<Unit> units,
ThisRef tr,
Collection<Local> locals) |
static Local |
BodyBuilder.buildThisLocal(PatchingChain<Unit> units,
ThisRef tr,
Collection<Local> locals) |
Modifier and Type | Method and Description |
---|---|
static List<Local> |
BodyBuilder.buildParameterLocals(PatchingChain<Unit> units,
Collection<Local> locals,
List<Type> paramTypes) |
static List<Local> |
BodyBuilder.buildParameterLocals(PatchingChain<Unit> units,
Collection<Local> locals,
List<Type> paramTypes) |
Modifier and Type | Method and Description |
---|---|
static List<Local> |
BodyBuilder.buildParameterLocals(PatchingChain<Unit> units,
Collection<Local> locals,
List<Type> paramTypes) |
static List<Local> |
BodyBuilder.buildParameterLocals(PatchingChain<Unit> units,
Collection<Local> locals,
List<Type> paramTypes) |
static Local |
BodyBuilder.buildThisLocal(PatchingChain<Unit> units,
ThisRef tr,
Collection<Local> locals) |
static Local |
BodyBuilder.buildThisLocal(PatchingChain<Unit> units,
ThisRef tr,
Collection<Local> locals) |
Modifier and Type | Method and Description |
---|---|
Local |
JimpleToBafContext.getBafLocalOfJimpleLocal(Local jimpleLocal) |
Local |
JimpleToBafContext.getBafLocalOfJimpleLocal(Local jimpleLocal) |
Local |
Jimple.newLocal(String name,
Type t)
Constructs a Local with the given name and type.
|
Local |
Jimple.newLocal(String name,
Type t)
Constructs a Local with the given name and type.
|
Modifier and Type | Method and Description |
---|---|
protected abstract void |
PointerStmtSwitch.caseAnyNewStmt(Local dest,
Expr e)
Any type of new statement (NewStmt, NewArrayStmt, NewMultiArrayStmt)
|
protected abstract void |
PointerStmtSwitch.caseAnyNewStmt(Local dest,
Expr e)
Any type of new statement (NewStmt, NewArrayStmt, NewMultiArrayStmt)
|
protected abstract void |
PointerStmtSwitch.caseArrayLoadStmt(Local dest,
ArrayRef src)
A statement of the form l1 = l2[i];
|
protected abstract void |
PointerStmtSwitch.caseArrayLoadStmt(Local dest,
ArrayRef src)
A statement of the form l1 = l2[i];
|
protected abstract void |
PointerStmtSwitch.caseArrayStoreStmt(ArrayRef dest,
Local src)
A statement of the form l1[i] = l2;
|
protected abstract void |
PointerStmtSwitch.caseArrayStoreStmt(ArrayRef dest,
Local src)
A statement of the form l1[i] = l2;
|
protected void |
PointerStmtSwitch.caseCastStmt(Local dest,
Local src,
CastExpr c)
A statement of the form l = (cl) v;
|
protected void |
PointerStmtSwitch.caseCastStmt(Local dest,
Local src,
CastExpr c)
A statement of the form l = (cl) v;
|
protected void |
PointerStmtSwitch.caseCatchStmt(Local dest,
CaughtExceptionRef cer)
A catch statement
|
protected void |
PointerStmtSwitch.caseCatchStmt(Local dest,
CaughtExceptionRef cer)
A catch statement
|
protected abstract void |
PointerStmtSwitch.caseCopyStmt(Local dest,
Local src)
A statement of the form l = v;
|
protected abstract void |
PointerStmtSwitch.caseCopyStmt(Local dest,
Local src)
A statement of the form l = v;
|
protected abstract void |
PointerStmtSwitch.caseGlobalLoadStmt(Local dest,
StaticFieldRef src)
A statement of the form l = cl.f;
|
protected abstract void |
PointerStmtSwitch.caseGlobalLoadStmt(Local dest,
StaticFieldRef src)
A statement of the form l = cl.f;
|
protected abstract void |
PointerStmtSwitch.caseGlobalStoreStmt(StaticFieldRef dest,
Local src)
A statement of the form cl.f = l;
|
protected abstract void |
PointerStmtSwitch.caseGlobalStoreStmt(StaticFieldRef dest,
Local src)
A statement of the form cl.f = l;
|
protected abstract void |
PointerStmtSwitch.caseIdentityStmt(Local dest,
IdentityRef src)
An identity statement assigning a parameter to a local.
|
protected abstract void |
PointerStmtSwitch.caseIdentityStmt(Local dest,
IdentityRef src)
An identity statement assigning a parameter to a local.
|
protected abstract void |
PointerStmtSwitch.caseInvokeStmt(Local dest,
InvokeExpr e)
A method invocation.
|
protected abstract void |
PointerStmtSwitch.caseInvokeStmt(Local dest,
InvokeExpr e)
A method invocation.
|
protected abstract void |
PointerStmtSwitch.caseLoadStmt(Local dest,
InstanceFieldRef src)
A statement of the form l1 = l2.f;
|
protected abstract void |
PointerStmtSwitch.caseLoadStmt(Local dest,
InstanceFieldRef src)
A statement of the form l1 = l2.f;
|
void |
AbstractJimpleValueSwitch.caseLocal(Local v) |
void |
JimpleValueSwitch.caseLocal(Local l) |
void |
AbstractJimpleValueSwitch.caseLocal(Local v) |
void |
JimpleValueSwitch.caseLocal(Local l) |
protected void |
PointerStmtSwitch.caseNewArrayStmt(Local dest,
NewArrayExpr e)
A newarray statement
|
protected void |
PointerStmtSwitch.caseNewArrayStmt(Local dest,
NewArrayExpr e)
A newarray statement
|
protected void |
PointerStmtSwitch.caseNewMultiArrayStmt(Local dest,
NewMultiArrayExpr e)
A anewarray statement
|
protected void |
PointerStmtSwitch.caseNewMultiArrayStmt(Local dest,
NewMultiArrayExpr e)
A anewarray statement
|
protected void |
PointerStmtSwitch.caseNewStmt(Local dest,
NewExpr e)
A new statement
|
protected void |
PointerStmtSwitch.caseNewStmt(Local dest,
NewExpr e)
A new statement
|
protected abstract void |
PointerStmtSwitch.caseReturnStmt(Local val)
A return statement.
|
protected abstract void |
PointerStmtSwitch.caseReturnStmt(Local val)
A return statement.
|
protected abstract void |
PointerStmtSwitch.caseStoreStmt(InstanceFieldRef dest,
Local src)
A statement of the form l1.f = l2;
|
protected abstract void |
PointerStmtSwitch.caseStoreStmt(InstanceFieldRef dest,
Local src)
A statement of the form l1.f = l2;
|
protected void |
PointerStmtSwitch.caseThrowStmt(Local thrownException)
A throw statement
|
protected void |
PointerStmtSwitch.caseThrowStmt(Local thrownException)
A throw statement
|
Local |
JimpleToBafContext.getBafLocalOfJimpleLocal(Local jimpleLocal) |
Local |
JimpleToBafContext.getBafLocalOfJimpleLocal(Local jimpleLocal) |
boolean |
EqualLocals.isLocalEqualToAt(Local l1,
Local l2,
Stmt s) |
boolean |
EqualLocals.isLocalEqualToAt(Local l1,
Local l2,
Stmt s) |
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method) |
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method) |
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
List<? extends Value> args)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method,
List of Immediate) grammar chunk.
|
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
List<? extends Value> args)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method,
List of Immediate) grammar chunk.
|
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
Value... args)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method,
List of Immediate) grammar chunk.
|
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
Value... args)
Constructs a NewInterfaceInvokeExpr(Local base, SootMethodRef method,
List of Immediate) grammar chunk.
|
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
Value arg) |
InterfaceInvokeExpr |
Jimple.newInterfaceInvokeExpr(Local base,
SootMethodRef method,
Value arg) |
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method) |
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method) |
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method,
List<? extends Value> args)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method,
List<? extends Value> args)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method,
Value... args)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method,
Value... args)
Constructs a NewSpecialInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method,
Value arg) |
SpecialInvokeExpr |
Jimple.newSpecialInvokeExpr(Local base,
SootMethodRef method,
Value arg) |
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method) |
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method) |
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method,
List<? extends Value> args)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method,
List<? extends Value> args)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method,
Value... args)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method,
Value... args)
Constructs a NewVirtualInvokeExpr(Local base, SootMethodRef method, List
of Immediate) grammar chunk.
|
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method,
Value arg) |
VirtualInvokeExpr |
Jimple.newVirtualInvokeExpr(Local base,
SootMethodRef method,
Value arg) |
void |
JimpleToBafContext.setBafLocalOfJimpleLocal(Local jimpleLocal,
Local bafLocal) |
void |
JimpleToBafContext.setBafLocalOfJimpleLocal(Local jimpleLocal,
Local bafLocal) |
void |
ArrayRef.setBase(Local base) |
void |
ArrayRef.setBase(Local base) |
Constructor and Description |
---|
LocalStmtPair(Local local,
Stmt stmt) |
LocalStmtPair(Local local,
Stmt stmt) |
Modifier and Type | Class and Description |
---|---|
class |
JimpleLocal |
Modifier and Type | Method and Description |
---|---|
void |
JArrayRef.setBase(Local base) |
void |
JArrayRef.setBase(Local base) |
Constructor and Description |
---|
JSpecialInvokeExpr(Local base,
SootMethodRef methodRef,
List<? extends Value> args) |
JSpecialInvokeExpr(Local base,
SootMethodRef methodRef,
List<? extends Value> args) |
Modifier and Type | Method and Description |
---|---|
void |
MethodNodeFactory.caseLocal(Local l) |
void |
MethodNodeFactory.caseLocal(Local l) |
Modifier and Type | Method and Description |
---|---|
boolean |
GeomQueries.contexsByAnyCallEdge(Edge sootEdge,
Local l,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contexsByAnyCallEdge(Edge sootEdge,
Local l,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contextsByAnyCallEdge(Edge sootEdge,
Local l,
SparkField field,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contextsByAnyCallEdge(Edge sootEdge,
Local l,
SparkField field,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contextsByCallChain(Edge[] callEdgeChain,
Local l,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contextsByCallChain(Edge[] callEdgeChain,
Local l,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contextsByCallChain(Edge[] callEdgeChain,
Local l,
SparkField field,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contextsByCallChain(Edge[] callEdgeChain,
Local l,
SparkField field,
PtSensVisitor visitor)
Deprecated.
|
boolean |
GeomQueries.contextsGoBy(Edge sootEdge,
Local l,
PtSensVisitor visitor)
Answer contexts-go-by query.
|
boolean |
GeomQueries.contextsGoBy(Edge sootEdge,
Local l,
PtSensVisitor visitor)
Answer contexts-go-by query.
|
boolean |
GeomQueries.contextsGoBy(Edge sootEdge,
Local l,
SparkField field,
PtSensVisitor visitor)
Searching the points-to results for field expression such as p.f.
|
boolean |
GeomQueries.contextsGoBy(Edge sootEdge,
Local l,
SparkField field,
PtSensVisitor visitor)
Searching the points-to results for field expression such as p.f.
|
boolean |
GeomQueries.isAlias(Local l1,
Local l2)
Decide if under any contexts, pointers @param l1 and @param l2 can be an alias.
|
boolean |
GeomQueries.isAlias(Local l1,
Local l2)
Decide if under any contexts, pointers @param l1 and @param l2 can be an alias.
|
boolean |
GeomQueries.isAliasCI(Local l1,
Local l2)
Are the two pointers an alias with context insensitive points-to information?
|
boolean |
GeomQueries.isAliasCI(Local l1,
Local l2)
Are the two pointers an alias with context insensitive points-to information?
|
boolean |
GeomQueries.kCFA(Edge[] callEdgeChain,
Local l,
PtSensVisitor visitor)
Standard K-CFA querying for arbitrary K.
|
boolean |
GeomQueries.kCFA(Edge[] callEdgeChain,
Local l,
PtSensVisitor visitor)
Standard K-CFA querying for arbitrary K.
|
boolean |
GeomQueries.kCFA(Edge[] callEdgeChain,
Local l,
SparkField field,
PtSensVisitor visitor)
Standard K-CFA querying for field expression.
|
boolean |
GeomQueries.kCFA(Edge[] callEdgeChain,
Local l,
SparkField field,
PtSensVisitor visitor)
Standard K-CFA querying for field expression.
|
PointsToSet |
GeomPointsTo.reachingObjects(Context c,
Local l) |
PointsToSet |
GeomPointsTo.reachingObjects(Context c,
Local l) |
PointsToSet |
GeomPointsTo.reachingObjects(Context c,
Local l,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(Context c,
Local l,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(Local l) |
PointsToSet |
GeomPointsTo.reachingObjects(Local l) |
PointsToSet |
GeomPointsTo.reachingObjects(Local l,
SootField f) |
PointsToSet |
GeomPointsTo.reachingObjects(Local l,
SootField f) |
Modifier and Type | Field and Description |
---|---|
protected Map<Local,PointsToSet> |
DemandCSPointsTo.reachingObjectsCache |
protected Map<Local,PointsToSet> |
DemandCSPointsTo.reachingObjectsCache |
protected Map<Local,PointsToSet> |
DemandCSPointsTo.reachingObjectsCacheNoCGRefinement |
protected Map<Local,PointsToSet> |
DemandCSPointsTo.reachingObjectsCacheNoCGRefinement |
Modifier and Type | Method and Description |
---|---|
protected PointsToSet |
DemandCSPointsTo.computeReachingObjects(Local l)
Computes the possibly refined set of reaching objects for l.
|
protected PointsToSet |
DemandCSPointsTo.computeReachingObjects(Local l)
Computes the possibly refined set of reaching objects for l.
|
PointsToSet |
DemandCSPointsTo.doReachingObjects(Local l) |
PointsToSet |
DemandCSPointsTo.doReachingObjects(Local l) |
PointsToSet |
DemandCSPointsTo.reachingObjects(Context c,
Local l)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Context c,
Local l)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Context c,
Local l,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Context c,
Local l,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Local l) |
PointsToSet |
DemandCSPointsTo.reachingObjects(Local l) |
PointsToSet |
DemandCSPointsTo.reachingObjects(Local l,
SootField f)
Currently not implemented.
|
PointsToSet |
DemandCSPointsTo.reachingObjects(Local l,
SootField f)
Currently not implemented.
|
Constructor and Description |
---|
LazyContextSensitivePointsToSet(Local l,
EqualsSupportingPointsToSet contextInsensitiveSet,
DemandCSPointsTo demandCSPointsTo) |
LazyContextSensitivePointsToSet(Local l,
EqualsSupportingPointsToSet contextInsensitiveSet,
DemandCSPointsTo demandCSPointsTo) |
Modifier and Type | Method and Description |
---|---|
PointsToSet |
PAG.reachingObjects(Context c,
Local l)
Returns the set of objects pointed to by variable l in context c.
|
PointsToSet |
PAG.reachingObjects(Context c,
Local l)
Returns the set of objects pointed to by variable l in context c.
|
PointsToSet |
PAG.reachingObjects(Context c,
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.
|
PointsToSet |
PAG.reachingObjects(Context c,
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.
|
PointsToSet |
PAG.reachingObjects(Local l)
Returns the set of objects pointed to by variable l.
|
PointsToSet |
PAG.reachingObjects(Local l)
Returns the set of objects pointed to by variable l.
|
PointsToSet |
PAG.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
pointed to by l.
|
PointsToSet |
PAG.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f of the objects
pointed to by l.
|
Modifier and Type | Method and Description |
---|---|
protected boolean |
PurityGraph.localsPut(Local local,
PurityNode node) |
protected boolean |
PurityGraph.localsPut(Local local,
PurityNode node) |
protected boolean |
PurityGraph.localsPutAll(Local local,
Set nodes) |
protected boolean |
PurityGraph.localsPutAll(Local local,
Set nodes) |
protected boolean |
PurityGraph.localsRemove(Local local) |
protected boolean |
PurityGraph.localsRemove(Local local) |
Modifier and Type | Method and Description |
---|---|
Local |
InvokeCallSite.argArray() |
Local |
InvokeCallSite.argArray() |
Local |
InvokeCallSite.base() |
Local |
InvokeCallSite.base() |
Modifier and Type | Method and Description |
---|---|
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToInvokeArgs() |
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToInvokeArgs() |
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToInvokeBases() |
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToInvokeBases() |
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToReceivers() |
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToReceivers() |
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToStringConstants() |
LargeNumberedMap<SootMethod,List<Local>> |
OnFlyCallGraphBuilder.methodToStringConstants() |
Modifier and Type | Method and Description |
---|---|
void |
OnFlyCallGraphBuilder.addBaseType(Local base,
Context context,
Type ty) |
void |
OnFlyCallGraphBuilder.addBaseType(Local base,
Context context,
Type ty) |
void |
OnFlyCallGraphBuilder.addInvokeArgDotField(Local receiver,
AllocDotField dot) |
void |
OnFlyCallGraphBuilder.addInvokeArgDotField(Local receiver,
AllocDotField dot) |
void |
OnFlyCallGraphBuilder.addInvokeArgType(Local argArray,
Context context,
Type t) |
void |
OnFlyCallGraphBuilder.addInvokeArgType(Local argArray,
Context context,
Type t) |
void |
OnFlyCallGraphBuilder.addPossibleArgArraySize(Local argArray,
int value,
Context context) |
void |
OnFlyCallGraphBuilder.addPossibleArgArraySize(Local argArray,
int value,
Context context) |
void |
OnFlyCallGraphBuilder.addStringConstant(Local l,
Context srcContext,
String constant) |
void |
OnFlyCallGraphBuilder.addStringConstant(Local l,
Context srcContext,
String constant) |
void |
OnFlyCallGraphBuilder.addType(Local receiver,
Context srcContext,
Type type,
Context typeContext) |
void |
OnFlyCallGraphBuilder.addType(Local receiver,
Context srcContext,
Type type,
Context typeContext) |
ConstantArrayAnalysis.ArrayTypes |
ConstantArrayAnalysis.getArrayTypesBefore(Stmt s,
Local arrayLocal) |
ConstantArrayAnalysis.ArrayTypes |
ConstantArrayAnalysis.getArrayTypesBefore(Stmt s,
Local arrayLocal) |
boolean |
ConstantArrayAnalysis.isConstantBefore(Stmt s,
Local arrayLocal) |
boolean |
ConstantArrayAnalysis.isConstantBefore(Stmt s,
Local arrayLocal) |
void |
OnFlyCallGraphBuilder.setArgArrayNonDetSize(Local argArray,
Context context) |
void |
OnFlyCallGraphBuilder.setArgArrayNonDetSize(Local argArray,
Context context) |
boolean |
OnFlyCallGraphBuilder.wantInvokeArg(Local receiver) |
boolean |
OnFlyCallGraphBuilder.wantInvokeArg(Local receiver) |
boolean |
OnFlyCallGraphBuilder.wantStringConstants(Local stringConst) |
boolean |
OnFlyCallGraphBuilder.wantStringConstants(Local stringConst) |
boolean |
OnFlyCallGraphBuilder.wantTypes(Local receiver) |
boolean |
OnFlyCallGraphBuilder.wantTypes(Local receiver) |
Constructor and Description |
---|
InvokeCallSite(Stmt stmt,
SootMethod container,
InstanceInvokeExpr iie,
Local base) |
InvokeCallSite(Stmt stmt,
SootMethod container,
InstanceInvokeExpr iie,
Local base) |
InvokeCallSite(Stmt stmt,
SootMethod container,
InstanceInvokeExpr iie,
Local base,
ConstantArrayAnalysis.ArrayTypes reachingArgTypes,
int nullnessCode) |
InvokeCallSite(Stmt stmt,
SootMethod container,
InstanceInvokeExpr iie,
Local base,
ConstantArrayAnalysis.ArrayTypes reachingArgTypes,
int nullnessCode) |
InvokeCallSite(Stmt stmt,
SootMethod container,
InstanceInvokeExpr iie,
Local base,
Local argArray,
int nullnessCode) |
InvokeCallSite(Stmt stmt,
SootMethod container,
InstanceInvokeExpr iie,
Local base,
Local argArray,
int nullnessCode) |
Modifier and Type | Method and Description |
---|---|
Local |
IFDSLocalInfoFlow.createZeroValue() |
Local |
IFDSUninitializedVariables.createZeroValue() |
Local |
IFDSUninitializedVariables.createZeroValue() |
Local |
IFDSLocalInfoFlow.createZeroValue() |
Modifier and Type | Method and Description |
---|---|
heros.FlowFunctions<Unit,Local,SootMethod> |
IFDSLocalInfoFlow.createFlowFunctionsFactory() |
heros.FlowFunctions<Unit,Local,SootMethod> |
IFDSUninitializedVariables.createFlowFunctionsFactory() |
heros.FlowFunctions<Unit,Local,SootMethod> |
IFDSUninitializedVariables.createFlowFunctionsFactory() |
heros.FlowFunctions<Unit,Local,SootMethod> |
IFDSLocalInfoFlow.createFlowFunctionsFactory() |
Map<Unit,Set<Local>> |
IFDSLocalInfoFlow.initialSeeds() |
Map<Unit,Set<Local>> |
IFDSUninitializedVariables.initialSeeds() |
Map<Unit,Set<Local>> |
IFDSUninitializedVariables.initialSeeds() |
Map<Unit,Set<Local>> |
IFDSLocalInfoFlow.initialSeeds() |
Modifier and Type | Class and Description |
---|---|
class |
FakeJimpleLocal |
Modifier and Type | Method and Description |
---|---|
Local |
FakeJimpleLocal.getRealLocal() |
Local |
FakeJimpleLocal.getRealLocal() |
Modifier and Type | Method and Description |
---|---|
static EquivalentValue |
InfoFlowAnalysis.getNodeForFieldRef(SootMethod sm,
SootField sf,
Local realLocal) |
static EquivalentValue |
InfoFlowAnalysis.getNodeForFieldRef(SootMethod sm,
SootField sf,
Local realLocal) |
Constructor and Description |
---|
FakeJimpleLocal(String name,
Type t,
Local realLocal)
Constructs a FakeJimpleLocal of the given name and type.
|
FakeJimpleLocal(String name,
Type t,
Local realLocal)
Constructs a FakeJimpleLocal of the given name and type.
|
FakeJimpleLocal(String name,
Type t,
Local realLocal,
Object info) |
FakeJimpleLocal(String name,
Type t,
Local realLocal,
Object info) |
Modifier and Type | Method and Description |
---|---|
Local |
SynchronizerManager.addStmtsToFetchClassBefore(JimpleBody jb,
Stmt target)
Adds code to fetch the static Class object to the given JimpleBody
before the target Stmt.
|
Local |
SynchronizerManager.addStmtsToFetchClassBefore(JimpleBody jb,
Stmt target)
Adds code to fetch the static Class object to the given JimpleBody
before the target Stmt.
|
Modifier and Type | Method and Description |
---|---|
void |
SynchronizerManager.synchronizeStmtOn(Stmt stmt,
JimpleBody b,
Local lock)
Wraps stmt around a monitor associated with local lock.
|
void |
SynchronizerManager.synchronizeStmtOn(Stmt stmt,
JimpleBody b,
Local lock)
Wraps stmt around a monitor associated with local lock.
|
Modifier and Type | Field and Description |
---|---|
protected Local |
InstanceKey.assignedLocal |
protected Local |
InstanceKey.assignedLocal |
Modifier and Type | Field and Description |
---|---|
protected Set<Local> |
LocalMustNotAliasAnalysis.locals |
protected Set<Local> |
LocalMustNotAliasAnalysis.locals |
Modifier and Type | Method and Description |
---|---|
Local |
InstanceKey.getLocal() |
Local |
InstanceKey.getLocal() |
Modifier and Type | Method and Description |
---|---|
protected HashMap<Local,Set<NewExpr>> |
LocalMustNotAliasAnalysis.entryInitialFlow() |
protected HashMap<Local,Set<NewExpr>> |
LocalMustNotAliasAnalysis.entryInitialFlow() |
protected HashMap<Local,Set<NewExpr>> |
LocalMustNotAliasAnalysis.newInitialFlow() |
protected HashMap<Local,Set<NewExpr>> |
LocalMustNotAliasAnalysis.newInitialFlow() |
Modifier and Type | Method and Description |
---|---|
RefType |
LocalMustNotAliasAnalysis.concreteType(Local l,
Stmt s)
If the given local at the given statement was initialized with a single, concrete new-expression
then the type of this expression is returned.
|
RefType |
LocalMustNotAliasAnalysis.concreteType(Local l,
Stmt s)
If the given local at the given statement was initialized with a single, concrete new-expression
then the type of this expression is returned.
|
boolean |
LocalMustAliasAnalysis.hasInfoOn(Local l,
Stmt s)
Returns true if this analysis has any information about local l
at statement s.
|
boolean |
LocalMustNotAliasAnalysis.hasInfoOn(Local l,
Stmt s)
Returns true if this analysis has any information about local l
at statement s (i.e.
|
boolean |
LocalMustAliasAnalysis.hasInfoOn(Local l,
Stmt s)
Returns true if this analysis has any information about local l
at statement s.
|
boolean |
LocalMustNotAliasAnalysis.hasInfoOn(Local l,
Stmt s)
Returns true if this analysis has any information about local l
at statement s (i.e.
|
String |
LocalMustAliasAnalysis.instanceKeyString(Local l,
Stmt s)
Returns a string (natural number) representation of the instance key associated with l
at statement s or
null if there is no such key associated. |
String |
StrongLocalMustAliasAnalysis.instanceKeyString(Local l,
Stmt s)
Returns a string (natural number) representation of the instance key associated with l
at statement s or
null if there is no such key associated. |
String |
LocalMustAliasAnalysis.instanceKeyString(Local l,
Stmt s)
Returns a string (natural number) representation of the instance key associated with l
at statement s or
null if there is no such key associated. |
String |
StrongLocalMustAliasAnalysis.instanceKeyString(Local l,
Stmt s)
Returns a string (natural number) representation of the instance key associated with l
at statement s or
null if there is no such key associated. |
boolean |
LocalMustAliasAnalysis.mustAlias(Local l1,
Stmt s1,
Local l2,
Stmt s2) |
boolean |
StrongLocalMustAliasAnalysis.mustAlias(Local l1,
Stmt s1,
Local l2,
Stmt s2) |
boolean |
LocalMustAliasAnalysis.mustAlias(Local l1,
Stmt s1,
Local l2,
Stmt s2) |
boolean |
StrongLocalMustAliasAnalysis.mustAlias(Local l1,
Stmt s1,
Local l2,
Stmt s2) |
boolean |
LocalMustNotAliasAnalysis.notMayAlias(Local l1,
Stmt s1,
Local l2,
Stmt s2) |
boolean |
LocalMustNotAliasAnalysis.notMayAlias(Local l1,
Stmt s1,
Local l2,
Stmt s2) |
PointsToSet |
DumbPointerAnalysis.reachingObjects(Context c,
Local l)
Returns the set of objects pointed to by variable l in context c.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Context c,
Local l)
Returns the set of objects pointed to by variable l in context c.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Context c,
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.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Context c,
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.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Local l)
Returns the set of objects pointed to by variable l.
|
protected PointsToSet |
PASideEffectTester.reachingObjects(Local l) |
protected PointsToSet |
PASideEffectTester.reachingObjects(Local l) |
PointsToSet |
DumbPointerAnalysis.reachingObjects(Local l)
Returns the set of objects pointed to by variable l.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
PointsToSet |
DumbPointerAnalysis.reachingObjects(Local l,
SootField f)
Returns the set of objects pointed to by instance field f
of the objects pointed to by l.
|
Modifier and Type | Method and Description |
---|---|
protected void |
LocalMustNotAliasAnalysis.copy(HashMap<Local,Set<NewExpr>> source,
HashMap<Local,Set<NewExpr>> dest) |
protected void |
LocalMustNotAliasAnalysis.copy(HashMap<Local,Set<NewExpr>> source,
HashMap<Local,Set<NewExpr>> dest) |
protected void |
LocalMustNotAliasAnalysis.copy(HashMap<Local,Set<NewExpr>> source,
HashMap<Local,Set<NewExpr>> dest) |
protected void |
LocalMustNotAliasAnalysis.copy(HashMap<Local,Set<NewExpr>> source,
HashMap<Local,Set<NewExpr>> dest) |
protected void |
LocalMustNotAliasAnalysis.flowThrough(HashMap<Local,Set<NewExpr>> in,
Unit unit,
HashMap<Local,Set<NewExpr>> out) |
protected void |
LocalMustNotAliasAnalysis.flowThrough(HashMap<Local,Set<NewExpr>> in,
Unit unit,
HashMap<Local,Set<NewExpr>> out) |
protected void |
LocalMustNotAliasAnalysis.flowThrough(HashMap<Local,Set<NewExpr>> in,
Unit unit,
HashMap<Local,Set<NewExpr>> out) |
protected void |
LocalMustNotAliasAnalysis.flowThrough(HashMap<Local,Set<NewExpr>> in,
Unit unit,
HashMap<Local,Set<NewExpr>> out) |
protected void |
LocalMustNotAliasAnalysis.merge(HashMap<Local,Set<NewExpr>> in1,
HashMap<Local,Set<NewExpr>> in2,
HashMap<Local,Set<NewExpr>> o) |
protected void |
LocalMustNotAliasAnalysis.merge(HashMap<Local,Set<NewExpr>> in1,
HashMap<Local,Set<NewExpr>> in2,
HashMap<Local,Set<NewExpr>> o) |
protected void |
LocalMustNotAliasAnalysis.merge(HashMap<Local,Set<NewExpr>> in1,
HashMap<Local,Set<NewExpr>> in2,
HashMap<Local,Set<NewExpr>> o) |
protected void |
LocalMustNotAliasAnalysis.merge(HashMap<Local,Set<NewExpr>> in1,
HashMap<Local,Set<NewExpr>> in2,
HashMap<Local,Set<NewExpr>> o) |
protected void |
LocalMustNotAliasAnalysis.merge(HashMap<Local,Set<NewExpr>> in1,
HashMap<Local,Set<NewExpr>> in2,
HashMap<Local,Set<NewExpr>> o) |
protected void |
LocalMustNotAliasAnalysis.merge(HashMap<Local,Set<NewExpr>> in1,
HashMap<Local,Set<NewExpr>> in2,
HashMap<Local,Set<NewExpr>> o) |
Constructor and Description |
---|
InstanceKey(Local local,
Stmt stmt,
SootMethod owner,
LocalMustAliasAnalysis lmaa,
LocalMustNotAliasAnalysis lmna)
Creates a new instance key representing the value stored in local, just before
stmt.
|
InstanceKey(Local local,
Stmt stmt,
SootMethod owner,
LocalMustAliasAnalysis lmaa,
LocalMustNotAliasAnalysis lmna)
Creates a new instance key representing the value stored in local, just before
stmt.
|
Modifier and Type | Method and Description |
---|---|
Local |
LocalCreation.newLocal(String prefix,
Type type)
returns a new local with the given prefix and the given type.
the returned local will automatically added to the locals-chain. |
Local |
LocalCreation.newLocal(String prefix,
Type type)
returns a new local with the given prefix and the given type.
the returned local will automatically added to the locals-chain. |
Local |
LocalCreation.newLocal(Type type)
returns a new local with the prefix given to the constructor (or the
default-prefix if none has been given) and the given type.
The returned local will automatically added to the locals-chain. The local will be of the form: prefixX (where the last X is a number, so the localname is unique). |
Local |
LocalCreation.newLocal(Type type)
returns a new local with the prefix given to the constructor (or the
default-prefix if none has been given) and the given type.
The returned local will automatically added to the locals-chain. The local will be of the form: prefixX (where the last X is a number, so the localname is unique). |
Modifier and Type | Method and Description |
---|---|
boolean |
EqualUsesAnalysis.areEqualUses(Stmt firstStmt,
Local firstLocal,
Stmt secondStmt,
Local secondLocal)
Deprecated.
|
boolean |
EqualUsesAnalysis.areEqualUses(Stmt firstStmt,
Local firstLocal,
Stmt secondStmt,
Local secondLocal)
Deprecated.
|
boolean |
EqualUsesAnalysis.areEqualUses(Stmt firstStmt,
Local firstLocal,
Stmt secondStmt,
Local secondLocal,
List boundaryStmts)
Deprecated.
|
boolean |
EqualUsesAnalysis.areEqualUses(Stmt firstStmt,
Local firstLocal,
Stmt secondStmt,
Local secondLocal,
List boundaryStmts)
Deprecated.
|
List |
EqualLocalsAnalysis.getCopiesOfAt(Local l,
Stmt s)
Returns a list of EquivalentValue wrapped Locals and Refs that must always be equal to l at s
|
List |
EqualLocalsAnalysis.getCopiesOfAt(Local l,
Stmt s)
Returns a list of EquivalentValue wrapped Locals and Refs that must always be equal to l at s
|
Modifier and Type | Method and Description |
---|---|
boolean |
EqualUsesAnalysis.areEqualUses(Map<Stmt,Local> stmtToLocal)
Deprecated.
|
boolean |
EqualUsesAnalysis.areEqualUses(Map<Stmt,Local> stmtToLocal)
Deprecated.
|
boolean |
EqualUsesAnalysis.areEqualUses(Map<Stmt,Local> stmtToLocal,
List boundaryStmts)
Deprecated.
|
boolean |
EqualUsesAnalysis.areEqualUses(Map<Stmt,Local> stmtToLocal,
List boundaryStmts)
Deprecated.
|
Constructor and Description |
---|
LocalCreation(Collection<Local> locals)
all actions are done on the given locals-chain.
|
LocalCreation(Collection<Local> locals)
all actions are done on the given locals-chain.
|
LocalCreation(Collection<Local> locals,
String prefix)
whenever
newLocal(type) will be called, the given prefix is
used. |
LocalCreation(Collection<Local> locals,
String prefix)
whenever
newLocal(type) will be called, the given prefix is
used. |
Modifier and Type | Method and Description |
---|---|
Type |
Typing.get(Local v) |
Type |
Typing.get(Local v) |
Type |
Typing.set(Local v,
Type t) |
Type |
Typing.set(Local v,
Type t) |
Constructor and Description |
---|
Typing(Collection<Local> vs) |
Typing(Collection<Local> vs) |
Modifier and Type | Method and Description |
---|---|
static Local |
Shimple.getLhsLocal(Unit unit)
Returns the corresponding left Local if the unit is a Shimple node,
null otherwise.
|
static Local |
Shimple.getLhsLocal(Unit unit)
Returns the corresponding left Local if the unit is a Shimple node,
null otherwise.
|
Modifier and Type | Method and Description |
---|---|
PhiExpr |
Shimple.newPhiExpr(Local leftLocal,
List<Block> preds)
Create a trivial PhiExpr, where preds are an ordered list of
the control predecessor Blocks of the Phi expression.
|
PhiExpr |
Shimple.newPhiExpr(Local leftLocal,
List<Block> preds)
Create a trivial PhiExpr, where preds are an ordered list of
the control predecessor Blocks of the Phi expression.
|
PiExpr |
Shimple.newPiExpr(Local local,
Unit predicate,
Object targetKey) |
PiExpr |
Shimple.newPiExpr(Local local,
Unit predicate,
Object targetKey) |
Modifier and Type | Field and Description |
---|---|
protected Map<String,Local> |
ShimpleBodyBuilder.newLocals
Maps new name Strings to Locals.
|
protected Map<String,Local> |
ShimpleBodyBuilder.newLocals
Maps new name Strings to Locals.
|
protected Map<Local,Local> |
ShimpleBodyBuilder.newLocalsToOldLocal
Maps renamed Locals to original Locals.
|
protected Map<Local,Local> |
ShimpleBodyBuilder.newLocalsToOldLocal
Maps renamed Locals to original Locals.
|
protected Map<Local,Local> |
ShimpleBodyBuilder.newLocalsToOldLocal
Maps renamed Locals to original Locals.
|
protected Map<Local,Local> |
ShimpleBodyBuilder.newLocalsToOldLocal
Maps renamed Locals to original Locals.
|
protected List<Local> |
ShimpleBodyBuilder.origLocals
A fixed list of all original Locals.
|
protected List<Local> |
ShimpleBodyBuilder.origLocals
A fixed list of all original Locals.
|
protected MultiMap<Local,Block> |
PhiNodeManager.varToBlocks |
protected MultiMap<Local,Block> |
PiNodeManager.varToBlocks |
protected MultiMap<Local,Block> |
PiNodeManager.varToBlocks |
protected MultiMap<Local,Block> |
PhiNodeManager.varToBlocks |
Modifier and Type | Method and Description |
---|---|
protected Local |
ShimpleBodyBuilder.fetchNewLocal(Local local,
Integer subscript)
Clever convenience function to fetch or create new Local's
given a Local and the desired subscript.
|
protected Local |
ShimpleBodyBuilder.fetchNewLocal(Local local,
Integer subscript)
Clever convenience function to fetch or create new Local's
given a Local and the desired subscript.
|
Modifier and Type | Method and Description |
---|---|
protected Local |
ShimpleBodyBuilder.fetchNewLocal(Local local,
Integer subscript)
Clever convenience function to fetch or create new Local's
given a Local and the desired subscript.
|
protected Local |
ShimpleBodyBuilder.fetchNewLocal(Local local,
Integer subscript)
Clever convenience function to fetch or create new Local's
given a Local and the desired subscript.
|
void |
PiNodeManager.insertPiNodes(Local local,
Block frontierBlock) |
void |
PiNodeManager.insertPiNodes(Local local,
Block frontierBlock) |
void |
PiNodeManager.piHandleIfStmt(Local local,
IfStmt u) |
void |
PiNodeManager.piHandleIfStmt(Local local,
IfStmt u) |
void |
PiNodeManager.piHandleSwitchStmt(Local local,
Unit u) |
void |
PiNodeManager.piHandleSwitchStmt(Local local,
Unit u) |
void |
PhiNodeManager.prependTrivialPhiNode(Local local,
Block frontierBlock)
Inserts a trivial Phi node with the appropriate number of
arguments.
|
void |
PhiNodeManager.prependTrivialPhiNode(Local local,
Block frontierBlock)
Inserts a trivial Phi node with the appropriate number of
arguments.
|
Constructor and Description |
---|
SPhiExpr(Local leftLocal,
List<Block> preds)
Create a trivial Phi expression for leftLocal.
|
SPhiExpr(Local leftLocal,
List<Block> preds)
Create a trivial Phi expression for leftLocal.
|
Modifier and Type | Method and Description |
---|---|
Local |
ValueGraph.getLocal(ValueGraph.Node node) |
Local |
ValueGraph.getLocal(ValueGraph.Node node) |
Modifier and Type | Method and Description |
---|---|
boolean |
GlobalValueNumberer.areEqual(Local local1,
Local local2) |
boolean |
SimpleGlobalValueNumberer.areEqual(Local local1,
Local local2) |
boolean |
GlobalValueNumberer.areEqual(Local local1,
Local local2) |
boolean |
SimpleGlobalValueNumberer.areEqual(Local local1,
Local local2) |
int |
GlobalValueNumberer.getGlobalValueNumber(Local local) |
int |
SimpleGlobalValueNumberer.getGlobalValueNumber(Local local) |
int |
GlobalValueNumberer.getGlobalValueNumber(Local local) |
int |
SimpleGlobalValueNumberer.getGlobalValueNumber(Local local) |
Modifier and Type | Field and Description |
---|---|
protected Map<Local,ArrayList> |
ShimpleLocalUses.localToUses |
protected Map<Local,ArrayList> |
ShimpleLocalUses.localToUses |
Modifier and Type | Method and Description |
---|---|
List<Unit> |
ShimpleLocalDefs.getDefsOf(Local l)
Unconditionally returns the definition site of a local (as a
singleton list).
|
List<Unit> |
ShimpleLocalDefs.getDefsOf(Local l)
Unconditionally returns the definition site of a local (as a
singleton list).
|
List<Unit> |
ShimpleLocalDefs.getDefsOfAt(Local l,
Unit s)
Returns the definition site for a Local at a certain point
(Unit) in a method as a singleton list.
|
List<Unit> |
ShimpleLocalDefs.getDefsOfAt(Local l,
Unit s)
Returns the definition site for a Local at a certain point
(Unit) in a method as a singleton list.
|
List |
ShimpleLocalUses.getUsesOf(Local local)
Returns all the uses of the given Local as a list of
UnitValueBoxPairs, each containing a Unit that uses the local
and the corresponding ValueBox containing the Local.
|
List |
ShimpleLocalUses.getUsesOf(Local local)
Returns all the uses of the given Local as a list of
UnitValueBoxPairs, each containing a Unit that uses the local
and the corresponding ValueBox containing the Local.
|
Modifier and Type | Method and Description |
---|---|
static Constant |
SEvaluator.getFuzzyConstantValueOf(Value v,
Map<Local,Constant> localToConstant)
Get the constant value of the expression given the assumptions
in the localToConstant map (may contain Top and Bottom).
|
static Constant |
SEvaluator.getFuzzyConstantValueOf(Value v,
Map<Local,Constant> localToConstant)
Get the constant value of the expression given the assumptions
in the localToConstant map (may contain Top and Bottom).
|
protected void |
SConstantPropagatorAndFolder.propagateResults(Map<Local,Constant> localToConstant)
Propagates constants to the definition and uses of the relevant
locals given a mapping.
|
protected void |
SConstantPropagatorAndFolder.propagateResults(Map<Local,Constant> localToConstant)
Propagates constants to the definition and uses of the relevant
locals given a mapping.
|
Modifier and Type | Method and Description |
---|---|
void |
ValueTemplatePrinter.caseLocal(Local l) |
void |
ValueTemplatePrinter.caseLocal(Local l) |
Modifier and Type | Method and Description |
---|---|
Local |
LocalRegisterAssignmentInformation.getLocal() |
Local |
LocalRegisterAssignmentInformation.getLocal() |
Modifier and Type | Method and Description |
---|---|
Register |
RegisterAllocator.asLocal(Local v) |
Register |
RegisterAllocator.asLocal(Local v) |
void |
RegisterAllocator.asParameter(SootMethod sm,
Local l) |
void |
RegisterAllocator.asParameter(SootMethod sm,
Local l) |
static LocalRegisterAssignmentInformation |
LocalRegisterAssignmentInformation.v(Register register,
Local l) |
static LocalRegisterAssignmentInformation |
LocalRegisterAssignmentInformation.v(Register register,
Local l) |
Constructor and Description |
---|
LocalRegisterAssignmentInformation(Register register,
Local local) |
LocalRegisterAssignmentInformation(Register register,
Local local) |
Modifier and Type | Method and Description |
---|---|
void |
UnitThrowAnalysis.ValueSwitch.caseLocal(Local l) |
void |
UnitThrowAnalysis.ValueSwitch.caseLocal(Local l) |
Modifier and Type | Method and Description |
---|---|
Local |
LocalUnitPair.getLocal() |
Local |
LocalUnitPair.getLocal() |
Modifier and Type | Method and Description |
---|---|
protected FlowSet<Local> |
InitAnalysis.entryInitialFlow() |
protected FlowSet<Local> |
InitAnalysis.entryInitialFlow() |
List<Local> |
CombinedDUAnalysis.getLiveLocalsAfter(Unit u) |
List<Local> |
LiveLocals.getLiveLocalsAfter(Unit s)
Returns the list of Locals that are live after the specified
Unit.
|
List<Local> |
SimpleLiveLocals.getLiveLocalsAfter(Unit s) |
List<Local> |
CombinedDUAnalysis.getLiveLocalsAfter(Unit u) |
List<Local> |
SimpleLiveLocals.getLiveLocalsAfter(Unit s) |
List<Local> |
LiveLocals.getLiveLocalsAfter(Unit s)
Returns the list of Locals that are live after the specified
Unit.
|
List<Local> |
CombinedDUAnalysis.getLiveLocalsBefore(Unit u) |
List<Local> |
LiveLocals.getLiveLocalsBefore(Unit s)
Returns the list of Locals that are live before the specified
Unit.
|
List<Local> |
SimpleLiveLocals.getLiveLocalsBefore(Unit s) |
List<Local> |
CombinedDUAnalysis.getLiveLocalsBefore(Unit u) |
List<Local> |
SimpleLiveLocals.getLiveLocalsBefore(Unit s) |
List<Local> |
LiveLocals.getLiveLocalsBefore(Unit s)
Returns the list of Locals that are live before the specified
Unit.
|
Set<Local> |
SimpleLocalUses.getUnusedVariables()
Gets all variables that are not used in this body
|
Set<Local> |
SimpleLocalUses.getUnusedVariables()
Gets all variables that are not used in this body
|
Set<Local> |
SimpleLocalUses.getUsedVariables()
Gets all variables that are used in this body
|
Set<Local> |
SimpleLocalUses.getUsedVariables()
Gets all variables that are used in this body
|
protected FlowSet<Local> |
InitAnalysis.newInitialFlow() |
protected FlowSet<Local> |
InitAnalysis.newInitialFlow() |
Modifier and Type | Method and Description |
---|---|
List<Unit> |
CombinedDUAnalysis.getDefsOf(Local l) |
List<Unit> |
LocalDefs.getDefsOf(Local l)
Returns the definition sites for a Local merged over all points
in a method.
|
List<Unit> |
SimpleLocalDefs.getDefsOf(Local l) |
List<Unit> |
SmartLocalDefs.getDefsOf(Local l) |
List<Unit> |
SimpleLocalDefs.getDefsOf(Local l) |
List<Unit> |
CombinedDUAnalysis.getDefsOf(Local l) |
List<Unit> |
LocalDefs.getDefsOf(Local l)
Returns the definition sites for a Local merged over all points
in a method.
|
List<Unit> |
SmartLocalDefs.getDefsOf(Local l) |
List<Unit> |
CombinedDUAnalysis.getDefsOfAt(Local l,
Unit s) |
List<Unit> |
LocalDefs.getDefsOfAt(Local l,
Unit s)
Returns the definition sites for a Local at a certain
point (Unit) in a method.
|
List<Unit> |
SimpleLocalDefs.getDefsOfAt(Local l,
Unit s) |
List<Unit> |
SmartLocalDefs.getDefsOfAt(Local l,
Unit s) |
List<Unit> |
SimpleLocalDefs.getDefsOfAt(Local l,
Unit s) |
List<Unit> |
CombinedDUAnalysis.getDefsOfAt(Local l,
Unit s) |
List<Unit> |
LocalDefs.getDefsOfAt(Local l,
Unit s)
Returns the definition sites for a Local at a certain
point (Unit) in a method.
|
List<Unit> |
SmartLocalDefs.getDefsOfAt(Local l,
Unit s) |
Modifier and Type | Method and Description |
---|---|
static void |
FastColorer.assignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides an economical coloring for the locals of
unitBody . |
static void |
FastColorer.assignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides an economical coloring for the locals of
unitBody . |
static void |
FastColorer.assignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides an economical coloring for the locals of
unitBody . |
static void |
FastColorer.assignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides an economical coloring for the locals of
unitBody . |
protected void |
InitAnalysis.copy(FlowSet<Local> source,
FlowSet<Local> dest) |
protected void |
InitAnalysis.copy(FlowSet<Local> source,
FlowSet<Local> dest) |
protected void |
InitAnalysis.copy(FlowSet<Local> source,
FlowSet<Local> dest) |
protected void |
InitAnalysis.copy(FlowSet<Local> source,
FlowSet<Local> dest) |
protected void |
InitAnalysis.flowThrough(FlowSet<Local> in,
Unit unit,
FlowSet<Local> out) |
protected void |
InitAnalysis.flowThrough(FlowSet<Local> in,
Unit unit,
FlowSet<Local> out) |
protected void |
InitAnalysis.flowThrough(FlowSet<Local> in,
Unit unit,
FlowSet<Local> out) |
protected void |
InitAnalysis.flowThrough(FlowSet<Local> in,
Unit unit,
FlowSet<Local> out) |
protected void |
InitAnalysis.merge(FlowSet<Local> in1,
FlowSet<Local> in2,
FlowSet<Local> out) |
protected void |
InitAnalysis.merge(FlowSet<Local> in1,
FlowSet<Local> in2,
FlowSet<Local> out) |
protected void |
InitAnalysis.merge(FlowSet<Local> in1,
FlowSet<Local> in2,
FlowSet<Local> out) |
protected void |
InitAnalysis.merge(FlowSet<Local> in1,
FlowSet<Local> in2,
FlowSet<Local> out) |
protected void |
InitAnalysis.merge(FlowSet<Local> in1,
FlowSet<Local> in2,
FlowSet<Local> out) |
protected void |
InitAnalysis.merge(FlowSet<Local> in1,
FlowSet<Local> in2,
FlowSet<Local> out) |
static void |
FastColorer.unsplitAssignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides a coloring for the locals of
unitBody , attempting
to not split locals assigned the same name in the original Jimple. |
static void |
FastColorer.unsplitAssignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides a coloring for the locals of
unitBody , attempting
to not split locals assigned the same name in the original Jimple. |
static void |
FastColorer.unsplitAssignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides a coloring for the locals of
unitBody , attempting
to not split locals assigned the same name in the original Jimple. |
static void |
FastColorer.unsplitAssignColorsToLocals(Body unitBody,
Map<Local,Object> localToGroup,
Map<Local,Integer> localToColor,
Map<Object,Integer> groupToColorCount)
Provides a coloring for the locals of
unitBody , attempting
to not split locals assigned the same name in the original Jimple. |
Constructor and Description |
---|
LocalUnitPair(Local local,
Unit unit)
Constructs a LocalUnitPair from a Unit object and a Local object.
|
LocalUnitPair(Local local,
Unit unit)
Constructs a LocalUnitPair from a Unit object and a Local object.
|