Class RemoveDeterministicJumps
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters.RemoveDeterministicJumps
-
public class RemoveDeterministicJumps extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description RemoveDeterministicJumps()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.util.List<Op03SimpleStatement>
apply(Method method, java.util.List<Op03SimpleStatement> statements)
private static boolean
propagateLiteralReturn(Method method, Op03SimpleStatement original, java.util.Map<LValue,Literal> display)
private static boolean
propagateLiteralReturn(Method method, Op03SimpleStatement original, Op03SimpleStatement orignext, LValue originalLValue, Expression originalRValue, java.util.Map<LValue,Literal> display)
static void
propagateToReturn(Method method, java.util.List<Op03SimpleStatement> statements)
private static void
replace(Op03SimpleStatement source, boolean isIf, ReturnStatement returnNothingStatement)
private static void
replaceAssignmentReturn(Op03SimpleStatement assignment, ReturnStatement returnStatement)
private static void
replaceConditionalReturn(Op03SimpleStatement conditional, ReturnStatement returnStatement)
-
-
-
Method Detail
-
apply
public static java.util.List<Op03SimpleStatement> apply(Method method, java.util.List<Op03SimpleStatement> statements)
-
propagateLiteralReturn
private static boolean propagateLiteralReturn(Method method, Op03SimpleStatement original, java.util.Map<LValue,Literal> display)
-
replaceConditionalReturn
private static void replaceConditionalReturn(Op03SimpleStatement conditional, ReturnStatement returnStatement)
-
replaceAssignmentReturn
private static void replaceAssignmentReturn(Op03SimpleStatement assignment, ReturnStatement returnStatement)
-
replace
private static void replace(Op03SimpleStatement source, boolean isIf, ReturnStatement returnNothingStatement)
-
propagateLiteralReturn
private static boolean propagateLiteralReturn(Method method, Op03SimpleStatement original, Op03SimpleStatement orignext, LValue originalLValue, Expression originalRValue, java.util.Map<LValue,Literal> display)
-
propagateToReturn
public static void propagateToReturn(Method method, java.util.List<Op03SimpleStatement> statements)
-
-