proguard.optimize.peephole
Class GotoReturnReplacer
java.lang.Object
proguard.optimize.peephole.GotoReturnReplacer
- All Implemented Interfaces:
- InstructionVisitor
- public class GotoReturnReplacer
- extends Object
- implements InstructionVisitor
This InstructionVisitor replaces unconditional branches to return instructions
by these same return instructions.
|
Method Summary |
void |
visitBranchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
BranchInstruction branchInstruction)
|
void |
visitCpInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
CpInstruction cpInstruction)
|
void |
visitLookUpSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
LookUpSwitchInstruction lookUpSwitchInstruction)
|
void |
visitSimpleInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
SimpleInstruction simpleInstruction)
|
void |
visitTableSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
TableSwitchInstruction tableSwitchInstruction)
|
void |
visitVariableInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
VariableInstruction variableInstruction)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
GotoReturnReplacer
public GotoReturnReplacer(CodeAttrInfoEditor codeAttrInfoEditor)
- Creates a new GotoReturnReplacer.
- Parameters:
codeAttrInfoEditor - a code editor that can be used for
accumulating changes to the code.
visitSimpleInstruction
public void visitSimpleInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
SimpleInstruction simpleInstruction)
- Specified by:
visitSimpleInstruction in interface InstructionVisitor
visitCpInstruction
public void visitCpInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
CpInstruction cpInstruction)
- Specified by:
visitCpInstruction in interface InstructionVisitor
visitVariableInstruction
public void visitVariableInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
VariableInstruction variableInstruction)
- Specified by:
visitVariableInstruction in interface InstructionVisitor
visitTableSwitchInstruction
public void visitTableSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
TableSwitchInstruction tableSwitchInstruction)
- Specified by:
visitTableSwitchInstruction in interface InstructionVisitor
visitLookUpSwitchInstruction
public void visitLookUpSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
LookUpSwitchInstruction lookUpSwitchInstruction)
- Specified by:
visitLookUpSwitchInstruction in interface InstructionVisitor
visitBranchInstruction
public void visitBranchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
BranchInstruction branchInstruction)
- Specified by:
visitBranchInstruction in interface InstructionVisitor