|
|
@ -203,7 +203,7 @@ public class RemovePopAnalyzer implements CodeAnalyzer, Opcodes { |
|
|
|
case opc_istore: |
|
|
|
case opc_istore: |
|
|
|
case opc_fstore: case opc_astore: |
|
|
|
case opc_fstore: case opc_astore: |
|
|
|
case opc_pop: |
|
|
|
case opc_pop: |
|
|
|
count ++; |
|
|
|
count++; |
|
|
|
break; |
|
|
|
break; |
|
|
|
|
|
|
|
|
|
|
|
case opc_lstore: case opc_dstore: |
|
|
|
case opc_lstore: case opc_dstore: |
|
|
@ -405,7 +405,7 @@ public class RemovePopAnalyzer implements CodeAnalyzer, Opcodes { |
|
|
|
continue; |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (instr.opcode == opc_pop |
|
|
|
if (instr.opcode == opc_pop && instr.preds == null |
|
|
|
&& instr.prevByAddr.opcode == opc_pop) { |
|
|
|
&& instr.prevByAddr.opcode == opc_pop) { |
|
|
|
/* merge two single pops together. */ |
|
|
|
/* merge two single pops together. */ |
|
|
|
instr.prevByAddr.removeInstruction(); |
|
|
|
instr.prevByAddr.removeInstruction(); |
|
|
|