| Package | Description |
|---|---|
| com.android.dx.ssa | |
| com.android.dx.ssa.back |
| Modifier and Type | Method and Description |
|---|---|
static SsaMethod |
SsaConverter.convertToSsaMethod(RopMethod rmeth,
int paramWidth,
boolean isStatic)
Returns an SSA representation, edge-split and with phi
functions placed.
|
static SsaMethod |
Optimizer.debugDeadCodeRemover(RopMethod rmeth,
int paramWidth,
boolean isStatic,
boolean inPreserveLocals,
TranslationAdvice inAdvice) |
static SsaMethod |
Optimizer.debugEdgeSplit(RopMethod rmeth,
int paramWidth,
boolean isStatic,
boolean inPreserveLocals,
TranslationAdvice inAdvice) |
static SsaMethod |
Optimizer.debugNoRegisterAllocation(RopMethod rmeth,
int paramWidth,
boolean isStatic,
boolean inPreserveLocals,
TranslationAdvice inAdvice,
java.util.EnumSet<Optimizer.OptionalStep> steps) |
static SsaMethod |
Optimizer.debugPhiPlacement(RopMethod rmeth,
int paramWidth,
boolean isStatic,
boolean inPreserveLocals,
TranslationAdvice inAdvice) |
static SsaMethod |
Optimizer.debugRenaming(RopMethod rmeth,
int paramWidth,
boolean isStatic,
boolean inPreserveLocals,
TranslationAdvice inAdvice) |
SsaMethod |
SsaBasicBlock.getParent() |
static SsaMethod |
SsaMethod.newFromRopMethod(RopMethod ropMethod,
int paramWidth,
boolean isStatic) |
static SsaMethod |
SsaConverter.testEdgeSplit(RopMethod rmeth,
int paramWidth,
boolean isStatic)
Returns an SSA represention with only the edge-splitter run.
|
static SsaMethod |
SsaConverter.testPhiPlacement(RopMethod rmeth,
int paramWidth,
boolean isStatic)
Returns an SSA represention with only the steps through the
phi placement run.
|
| Modifier and Type | Method and Description |
|---|---|
static LocalVariableInfo |
LocalVariableExtractor.extract(SsaMethod method)
Extracts out all the local variable information from the given method.
|
static Dominators |
Dominators.make(SsaMethod meth,
DomFront.DomInfo[] domInfos,
boolean postdom)
Constructs a fully-initialized instance.
|
static SsaBasicBlock |
SsaBasicBlock.newFromRop(RopMethod rmeth,
int basicBlockIndex,
SsaMethod parent)
Creates a new SSA basic block from a ROP form basic block.
|
java.util.List<SsaBasicBlock> |
PhiInsn.predBlocksForReg(int reg,
SsaMethod ssaMeth)
Returns the list of predecessor blocks associated with all operands
that have
reg as an operand register. |
static void |
ConstCollector.process(SsaMethod ssaMethod)
Processes a method.
|
static void |
EscapeAnalysis.process(SsaMethod ssaMethod)
Performs escape analysis on a method.
|
static void |
SCCP.process(SsaMethod ssaMethod)
Performs sparse conditional constant propagation on a method.
|
static void |
LiteralOpUpgrader.process(SsaMethod ssaMethod)
Process a method.
|
static void |
MoveParamCombiner.process(SsaMethod ssaMethod)
Processes a method with this optimization step.
|
static void |
PhiTypeResolver.process(SsaMethod ssaMeth)
Resolves all phi types in the method
|
static void |
DeadCodeRemover.process(SsaMethod ssaMethod)
Process a method with the dead-code remver
|
void |
PhiInsn.updateSourcesToDefinitions(SsaMethod ssaMeth)
Updates the TypeBearers of all the sources (phi operands) to be
the current TypeBearer of the register-defining instruction's result.
|
static void |
SsaConverter.updateSsaMethod(SsaMethod ssaMeth,
int threshold)
Updates an SSA representation, placing phi functions and renaming all
registers above a certain threshold number.
|
| Constructor and Description |
|---|
DomFront(SsaMethod meth)
Constructs instance.
|
LocalVariableInfo(SsaMethod method)
Constructs an instance.
|
SsaBasicBlock(int basicBlockIndex,
int ropLabel,
SsaMethod parent)
Creates a new empty basic block.
|
SsaRenamer(SsaMethod ssaMeth)
Constructs an instance of the renamer
|
SsaRenamer(SsaMethod ssaMeth,
int thresh)
Constructs an instance of the renamer with threshold set
|
| Modifier and Type | Field and Description |
|---|---|
protected SsaMethod |
RegisterAllocator.ssaMeth
method being processed
|
| Modifier and Type | Method and Description |
|---|---|
static InterferenceGraph |
LivenessAnalyzer.constructInterferenceGraph(SsaMethod ssaMeth)
Runs register liveness algorithm for a method, updating the
live in/out information in
SsaBasicBlock instances and
returning an interference graph. |
static RopMethod |
SsaToRop.convertToRopMethod(SsaMethod ssaMeth,
boolean minimizeRegisters)
Converts a method in SSA form to ROP form.
|
| Constructor and Description |
|---|
FirstFitAllocator(SsaMethod ssaMeth,
InterferenceGraph interference) |
FirstFitLocalCombiningAllocator(SsaMethod ssaMeth,
InterferenceGraph interference,
boolean minimizeRegisters)
Constructs instance.
|
NullRegisterAllocator(SsaMethod ssaMeth,
InterferenceGraph interference) |
RegisterAllocator(SsaMethod ssaMeth,
InterferenceGraph interference)
Creates an instance.
|
Copyright © 2020. All Rights Reserved.