Minor: simplify code in RedundantGotoMethodTransformer
This commit is contained in:
+6
-10
@@ -34,18 +34,14 @@ class RedundantGotoMethodTransformer : MethodTransformer() {
|
|||||||
|
|
||||||
val currentLabels = hashSetOf<LabelNode>()
|
val currentLabels = hashSetOf<LabelNode>()
|
||||||
for (insn in insns) {
|
for (insn in insns) {
|
||||||
if (insn.isMeaningful) {
|
when {
|
||||||
if (insn.opcode == Opcodes.GOTO && (insn as JumpInsnNode).label in currentLabels) {
|
insn is LabelNode ->
|
||||||
|
currentLabels.add(insn)
|
||||||
|
insn.opcode == Opcodes.GOTO &&
|
||||||
|
(insn as JumpInsnNode).label in currentLabels ->
|
||||||
insnsToRemove.add(insn)
|
insnsToRemove.add(insn)
|
||||||
}
|
insn.isMeaningful ->
|
||||||
else {
|
|
||||||
currentLabels.clear()
|
currentLabels.clear()
|
||||||
}
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if (insn is LabelNode) {
|
|
||||||
currentLabels.add(insn)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user