| Package | Description |
|---|---|
| soot.baf |
Public classes for the Baf intermediate representation.
|
| soot.coffi |
Contains classes from the Coffi tool, by Clark Verbrugge.
|
| soot.dexpler | |
| soot.JastAddJ | |
| soot.javaToJimple | |
| soot.jimple |
Public classes for the Jimple intermediate representation.
|
| soot.jimple.parser |
An interface to the Jimple parser.
|
| soot.jimple.toolkits.invoke |
A toolkit to deal with Jimple and invoke statements.
|
| soot.jimple.toolkits.typing |
Implements a typing algorithm for Jimple.
|
| soot.jimple.toolkits.typing.fast | |
| soot.jimple.toolkits.typing.integer | |
| soot.shimple |
Public classes for the SSA Shimple intermediate representation.
|
| soot.util.cfgcmd |
| Modifier and Type | Method and Description |
|---|---|
BafBody |
Baf.newBody(JimpleBody b)
Returns a BafBody constructed from b.
|
BafBody |
Baf.newBody(JimpleBody b,
String phase)
Returns a BafBody constructed from b.
|
| Constructor and Description |
|---|
BafBody(JimpleBody body,
Map<String,String> options) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
CFG.jimplify(soot.coffi.cp_info[] constant_pool,
int this_class,
soot.coffi.BootstrapMethods_attribute bootstrap_methods_attribute,
JimpleBody listBody)
Main.v() entry point for converting list of Instructions to Jimple statements; performs flow analysis, constructs Jimple
statements, and fixes jumps.
|
| Modifier and Type | Field and Description |
|---|---|
protected JimpleBody |
DexBody.jBody |
| Constructor and Description |
|---|
Body(TypeDecl typeDecl,
JimpleBody body,
ASTNode container) |
| Modifier and Type | Field and Description |
|---|---|
protected JimpleBody |
AbstractJimpleBodyBuilder.body |
| Modifier and Type | Method and Description |
|---|---|
JimpleBody |
AnonInitBodyBuilder.createBody(SootMethod sootMethod) |
JimpleBody |
JimpleBodyBuilder.createJimpleBody(polyglot.ast.Block block,
List formals,
SootMethod sootMethod)
Jimple Body Creation
|
protected JimpleBody |
AbstractJimpleBodyBuilder.createJimpleBody(polyglot.ast.Block block,
List formals,
SootMethod sootMethod) |
| Modifier and Type | Method and Description |
|---|---|
JimpleBody |
Jimple.newBody()
Returns an empty JimpleBody with no associated method.
|
JimpleBody |
Jimple.newBody(SootMethod m)
Returns an empty JimpleBody associated with method m.
|
| Constructor and Description |
|---|
BodyExtractorWalker(SootClass sc,
SootResolver resolver,
Map<SootMethod,JimpleBody> methodToParsedBodyMap)
Constructs a walker, and attaches it to the given SootClass, sending bodies to the given methodToParsedBodyMap.
|
| 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.
|
static Stmt |
ThrowManager.getNullPointerExceptionThrower(JimpleBody b)
Iterate through the statements in b (starting at the end), returning the last instance of the following pattern:
r928 = new java.lang.NullPointerException; specialinvoke r928."
|
void |
SynchronizerManager.synchronizeStmtOn(Stmt stmt,
JimpleBody b,
Local lock)
Wraps stmt around a monitor associated with local lock.
|
| Modifier and Type | Method and Description |
|---|---|
static void |
TypeResolverBV.resolve(JimpleBody stmtBody,
Scene scene)
Deprecated.
|
static void |
TypeResolver.resolve(JimpleBody stmtBody,
Scene scene) |
| Modifier and Type | Field and Description |
|---|---|
protected JimpleBody |
TypeResolver.jb |
protected JimpleBody |
TypeResolver.CastInsertionUseVisitor.jb |
| Modifier and Type | Method and Description |
|---|---|
static Type |
AugEvalFunction.eval_(Typing tg,
Value expr,
Stmt stmt,
JimpleBody jb) |
| Constructor and Description |
|---|
AugEvalFunction(JimpleBody jb) |
CastInsertionUseVisitor(boolean countOnly,
JimpleBody jb,
Typing tg,
IHierarchy h) |
TypeResolver(JimpleBody jb) |
UseChecker(JimpleBody jb) |
| Modifier and Type | Method and Description |
|---|---|
static void |
TypeResolver.resolve(JimpleBody stmtBody) |
| Modifier and Type | Method and Description |
|---|---|
JimpleBody |
Shimple.newJimpleBody(ShimpleBody body)
Constructs a JimpleBody from a ShimpleBody.
|
JimpleBody |
ShimpleBody.toJimpleBody()
Returns an equivalent unbacked JimpleBody of the current Body by eliminating the Phi nodes.
|
| Modifier and Type | Method and Description |
|---|---|
abstract Body |
CFGIntermediateRep.getBody(JimpleBody b)
Converts a
JimpleBody into the corresponding Body in this intermediate representation. |
Copyright © 2020 Soot OSS. All rights reserved.