fix: add labels from NOP instructions in fallback mode (#666)
This commit is contained in:
@@ -241,10 +241,11 @@ public class MethodGen {
|
||||
}
|
||||
|
||||
public static void addFallbackInsns(CodeWriter code, MethodNode mth, InsnNode[] insnArr, boolean addLabels) {
|
||||
code.incIndent();
|
||||
InsnGen insnGen = new InsnGen(getFallbackMethodGen(mth), true);
|
||||
InsnNode prevInsn = null;
|
||||
for (InsnNode insn : insnArr) {
|
||||
if (insn == null || insn.getType() == InsnType.NOP) {
|
||||
if (insn == null) {
|
||||
continue;
|
||||
}
|
||||
if (addLabels && needLabel(insn, prevInsn)) {
|
||||
@@ -252,6 +253,9 @@ public class MethodGen {
|
||||
code.startLine(getLabelName(insn.getOffset()) + ':');
|
||||
code.incIndent();
|
||||
}
|
||||
if (insn.getType() == InsnType.NOP) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
code.startLine();
|
||||
RegisterArg resArg = insn.getResult();
|
||||
@@ -272,6 +276,7 @@ public class MethodGen {
|
||||
}
|
||||
prevInsn = insn;
|
||||
}
|
||||
code.decIndent();
|
||||
}
|
||||
|
||||
private static boolean needLabel(InsnNode insn, InsnNode prevInsn) {
|
||||
|
||||
Reference in New Issue
Block a user