public class SConstantPropagatorAndFolder extends BodyTransformer
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
debug |
protected ShimpleBody |
sb |
| Constructor and Description |
|---|
SConstantPropagatorAndFolder(Singletons.Global g) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
internalTransform(Body b,
String phaseName,
Map<String,String> options)
This method is called to perform the transformation itself.
|
protected void |
propagateResults(Map<Local,Constant> localToConstant)
Propagates constants to the definition and uses of the relevant locals given a mapping.
|
protected void |
removeStmts(List<IfStmt> deadStmts)
Removes the given list of fall through IfStmts from the body.
|
protected void |
replaceStmts(Map<Stmt,GotoStmt> stmtsToReplace)
Replaces conditional branches by unconditional branches as given by the mapping.
|
static SConstantPropagatorAndFolder |
v() |
transform, transform, transformprotected ShimpleBody sb
protected boolean debug
public SConstantPropagatorAndFolder(Singletons.Global g)
public static SConstantPropagatorAndFolder v()
protected void internalTransform(Body b, String phaseName, Map<String,String> options)
BodyTransformerinternalTransform in class BodyTransformerb - the body on which to apply the transformationphaseName - the phasename for this transform; not typically used by implementations.options - the actual computed options; a combination of default options and Scene specified options.protected void propagateResults(Map<Local,Constant> localToConstant)
protected void removeStmts(List<IfStmt> deadStmts)
Copyright © 2020 Soot OSS. All rights reserved.