| Interface | Description |
|---|---|
| Cfg.DfsVisitor | |
| Cfg.FrameVisitor<T> | |
| Cfg.OnAssignCallBack | |
| Cfg.OnUseCallBack | |
| Cfg.TravelCallBack | |
| Transformer |
TODO DOC
|
| Class | Description |
|---|---|
| AggTransformer | |
| Cfg |
TODO DOC
|
| CleanLabel |
Clean unused
LabelStmt |
| ConstTransformer |
Replace must-be-constant local to constant
|
| DeadCodeTransformer | |
| EndRemover | |
| ExceptionHandlerTrim |
Trim Exception handler.
|
| FixVar | |
| Ir2JRegAssignTransformer |
Share same reg between locals with same type.
@This always assign as 0, and not share with others.
long/double tasks two index
|
| Ir2JRegAssignTransformer.Reg | |
| JimpleTransformer |
transform IR to simple 3-addr format
|
| MultiArrayTransformer |
dex does have the instruction to create a multi-array.
|
| NewTransformer |
simply merge
|
| NpeTransformer |
Replace MUST be NullPointerException stmt to 'throw new NullPointerException()'
|
| RemoveConstantFromSSA |
1.
|
| RemoveLocalFromSSA | |
| SSATransformer |
Transform Stmt to SSA form and count local read
|
| StatedTransformer | |
| TypeTransformer |
Type and correct Exprs
|
| TypeTransformer.TypeRef | |
| UniqueQueue<T> | |
| UnSSATransformer |
Remove
PhiExprs, add a=x to each CFG from. |
| UnSSATransformer.LiveA | |
| UnSSATransformer.RegAssign |
designed for assign index to Local, each Object is related to a Local
|
| VoidInvokeTransformer |
convert
|
| ZeroTransformer |
dex mix use as integer 0 and object null.
|