Class SsaConverter
java.lang.Object
com.android.dx.ssa.SsaConverter
Converts ROP methods to SSA Methods
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic SsaMethodconvertToSsaMethod(RopMethod rmeth, int paramWidth, boolean isStatic) Returns an SSA representation, edge-split and with phi functions placed.static SsaMethodtestEdgeSplit(RopMethod rmeth, int paramWidth, boolean isStatic) Returns an SSA represention with only the edge-splitter run.static SsaMethodtestPhiPlacement(RopMethod rmeth, int paramWidth, boolean isStatic) Returns an SSA represention with only the steps through the phi placement run.static voidupdateSsaMethod(SsaMethod ssaMeth, int threshold) Updates an SSA representation, placing phi functions and renaming all registers above a certain threshold number.
-
Field Details
-
DEBUG
public static final boolean DEBUG- See Also:
-
-
Constructor Details
-
SsaConverter
public SsaConverter()
-
-
Method Details
-
convertToSsaMethod
Returns an SSA representation, edge-split and with phi functions placed.- Parameters:
rmeth- inputparamWidth- the total width, in register-units, of the method's parametersisStatic-trueif this method has nothispointer argument- Returns:
- output in SSA form
-
updateSsaMethod
Updates an SSA representation, placing phi functions and renaming all registers above a certain threshold number.- Parameters:
ssaMeth- inputthreshold- registers below this number are unchanged
-
testEdgeSplit
Returns an SSA represention with only the edge-splitter run.- Parameters:
rmeth- method to processparamWidth- width of all arguments in the methodisStatic-trueif this method has nothispointer argument- Returns:
- an SSA represention with only the edge-splitter run
-
testPhiPlacement
Returns an SSA represention with only the steps through the phi placement run.- Parameters:
rmeth- method to processparamWidth- width of all arguments in the methodisStatic-trueif this method has nothispointer argument- Returns:
- an SSA represention with only the edge-splitter run
-