Cleanup (warnings; formatting; unneeded comments)
This commit is contained in:
@@ -59,23 +59,24 @@ public class Instruction implements CodeConstants {
|
|||||||
opcode != opc_jsr && opcode != opc_tableswitch && opcode != opc_lookupswitch;
|
opcode != opc_jsr && opcode != opc_tableswitch && opcode != opc_lookupswitch;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
|
StringBuilder res = new StringBuilder();
|
||||||
String res = wide ? "@wide " : "";
|
if (wide) res.append("@wide ");
|
||||||
res += "@" + TextUtil.getInstructionName(opcode);
|
res.append("@").append(TextUtil.getInstructionName(opcode));
|
||||||
|
|
||||||
int len = operandsCount();
|
int len = operandsCount();
|
||||||
for (int i = 0; i < len; i++) {
|
for (int i = 0; i < len; i++) {
|
||||||
int op = operands[i];
|
int op = operands[i];
|
||||||
if (op < 0) {
|
if (op < 0) {
|
||||||
res += " -" + Integer.toHexString(-op);
|
res.append(" -").append(Integer.toHexString(-op));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
res += " " + Integer.toHexString(op);
|
res.append(" ").append(Integer.toHexString(op));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return res;
|
return res.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
// Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
// Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||||
package org.jetbrains.java.decompiler.code.cfg;
|
package org.jetbrains.java.decompiler.code.cfg;
|
||||||
|
|
||||||
|
import org.jetbrains.java.decompiler.main.DecompilerContext;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import org.jetbrains.java.decompiler.main.DecompilerContext;
|
|
||||||
|
|
||||||
public class ExceptionRangeCFG {
|
public class ExceptionRangeCFG {
|
||||||
private final List<BasicBlock> protectedRange; // FIXME: replace with set
|
private final List<BasicBlock> protectedRange; // FIXME: replace with set
|
||||||
private BasicBlock handler;
|
private BasicBlock handler;
|
||||||
@@ -25,10 +25,9 @@ public class ExceptionRangeCFG {
|
|||||||
return protectedRange.contains(handler);
|
return protectedRange.contains(handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
|
|
||||||
String new_line_separator = DecompilerContext.getNewLineSeparator();
|
String new_line_separator = DecompilerContext.getNewLineSeparator();
|
||||||
|
|
||||||
StringBuilder buf = new StringBuilder();
|
StringBuilder buf = new StringBuilder();
|
||||||
|
|
||||||
buf.append("exceptionType:");
|
buf.append("exceptionType:");
|
||||||
@@ -39,8 +38,8 @@ public class ExceptionRangeCFG {
|
|||||||
|
|
||||||
buf.append("handler: ").append(handler.id).append(new_line_separator);
|
buf.append("handler: ").append(handler.id).append(new_line_separator);
|
||||||
buf.append("range: ");
|
buf.append("range: ");
|
||||||
for (int i = 0; i < protectedRange.size(); i++) {
|
for (BasicBlock block : protectedRange) {
|
||||||
buf.append(protectedRange.get(i).id).append(" ");
|
buf.append(block.id).append(" ");
|
||||||
}
|
}
|
||||||
buf.append(new_line_separator);
|
buf.append(new_line_separator);
|
||||||
|
|
||||||
|
|||||||
@@ -78,208 +78,207 @@ public class TextUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static final String[] opcodeNames = {
|
private static final String[] opcodeNames = {
|
||||||
"nop", // "nop",
|
"nop",
|
||||||
"aconst_null", // "aconst_null",
|
"aconst_null",
|
||||||
"iconst_m1", // "iconst_m1",
|
"iconst_m1",
|
||||||
"iconst_0", // "iconst_0",
|
"iconst_0",
|
||||||
"iconst_1", // "iconst_1",
|
"iconst_1",
|
||||||
"iconst_2", // "iconst_2",
|
"iconst_2",
|
||||||
"iconst_3", // "iconst_3",
|
"iconst_3",
|
||||||
"iconst_4", // "iconst_4",
|
"iconst_4",
|
||||||
"iconst_5", // "iconst_5",
|
"iconst_5",
|
||||||
"lconst_0", // "lconst_0",
|
"lconst_0",
|
||||||
"lconst_1", // "lconst_1",
|
"lconst_1",
|
||||||
"fconst_0", // "fconst_0",
|
"fconst_0",
|
||||||
"fconst_1", // "fconst_1",
|
"fconst_1",
|
||||||
"fconst_2", // "fconst_2",
|
"fconst_2",
|
||||||
"dconst_0", // "dconst_0",
|
"dconst_0",
|
||||||
"dconst_1", // "dconst_1",
|
"dconst_1",
|
||||||
"bipush", // "bipush",
|
"bipush",
|
||||||
"sipush", // "sipush",
|
"sipush",
|
||||||
"ldc", // "ldc",
|
"ldc",
|
||||||
"ldc_w", // "ldc_w",
|
"ldc_w",
|
||||||
"ldc2_w", // "ldc2_w",
|
"ldc2_w",
|
||||||
"iload", // "iload",
|
"iload",
|
||||||
"lload", // "lload",
|
"lload",
|
||||||
"fload", // "fload",
|
"fload",
|
||||||
"dload", // "dload",
|
"dload",
|
||||||
"aload", // "aload",
|
"aload",
|
||||||
"iload_0", // "iload_0",
|
"iload_0",
|
||||||
"iload_1", // "iload_1",
|
"iload_1",
|
||||||
"iload_2", // "iload_2",
|
"iload_2",
|
||||||
"iload_3", // "iload_3",
|
"iload_3",
|
||||||
"lload_0", // "lload_0",
|
"lload_0",
|
||||||
"lload_1", // "lload_1",
|
"lload_1",
|
||||||
"lload_2", // "lload_2",
|
"lload_2",
|
||||||
"lload_3", // "lload_3",
|
"lload_3",
|
||||||
"fload_0", // "fload_0",
|
"fload_0",
|
||||||
"fload_1", // "fload_1",
|
"fload_1",
|
||||||
"fload_2", // "fload_2",
|
"fload_2",
|
||||||
"fload_3", // "fload_3",
|
"fload_3",
|
||||||
"dload_0", // "dload_0",
|
"dload_0",
|
||||||
"dload_1", // "dload_1",
|
"dload_1",
|
||||||
"dload_2", // "dload_2",
|
"dload_2",
|
||||||
"dload_3", // "dload_3",
|
"dload_3",
|
||||||
"aload_0", // "aload_0",
|
"aload_0",
|
||||||
"aload_1", // "aload_1",
|
"aload_1",
|
||||||
"aload_2", // "aload_2",
|
"aload_2",
|
||||||
"aload_3", // "aload_3",
|
"aload_3",
|
||||||
"iaload", // "iaload",
|
"iaload",
|
||||||
"laload", // "laload",
|
"laload",
|
||||||
"faload", // "faload",
|
"faload",
|
||||||
"daload", // "daload",
|
"daload",
|
||||||
"aaload", // "aaload",
|
"aaload",
|
||||||
"baload", // "baload",
|
"baload",
|
||||||
"caload", // "caload",
|
"caload",
|
||||||
"saload", // "saload",
|
"saload",
|
||||||
"istore", // "istore",
|
"istore",
|
||||||
"lstore", // "lstore",
|
"lstore",
|
||||||
"fstore", // "fstore",
|
"fstore",
|
||||||
"dstore", // "dstore",
|
"dstore",
|
||||||
"astore", // "astore",
|
"astore",
|
||||||
"istore_0", // "istore_0",
|
"istore_0",
|
||||||
"istore_1", // "istore_1",
|
"istore_1",
|
||||||
"istore_2", // "istore_2",
|
"istore_2",
|
||||||
"istore_3", // "istore_3",
|
"istore_3",
|
||||||
"lstore_0", // "lstore_0",
|
"lstore_0",
|
||||||
"lstore_1", // "lstore_1",
|
"lstore_1",
|
||||||
"lstore_2", // "lstore_2",
|
"lstore_2",
|
||||||
"lstore_3", // "lstore_3",
|
"lstore_3",
|
||||||
"fstore_0", // "fstore_0",
|
"fstore_0",
|
||||||
"fstore_1", // "fstore_1",
|
"fstore_1",
|
||||||
"fstore_2", // "fstore_2",
|
"fstore_2",
|
||||||
"fstore_3", // "fstore_3",
|
"fstore_3",
|
||||||
"dstore_0", // "dstore_0",
|
"dstore_0",
|
||||||
"dstore_1", // "dstore_1",
|
"dstore_1",
|
||||||
"dstore_2", // "dstore_2",
|
"dstore_2",
|
||||||
"dstore_3", // "dstore_3",
|
"dstore_3",
|
||||||
"astore_0", // "astore_0",
|
"astore_0",
|
||||||
"astore_1", // "astore_1",
|
"astore_1",
|
||||||
"astore_2", // "astore_2",
|
"astore_2",
|
||||||
"astore_3", // "astore_3",
|
"astore_3",
|
||||||
"iastore", // "iastore",
|
"iastore",
|
||||||
"lastore", // "lastore",
|
"lastore",
|
||||||
"fastore", // "fastore",
|
"fastore",
|
||||||
"dastore", // "dastore",
|
"dastore",
|
||||||
"aastore", // "aastore",
|
"aastore",
|
||||||
"bastore", // "bastore",
|
"bastore",
|
||||||
"castore", // "castore",
|
"castore",
|
||||||
"sastore", // "sastore",
|
"sastore",
|
||||||
"pop", // "pop",
|
"pop",
|
||||||
"pop2", // "pop2",
|
"pop2",
|
||||||
"dup", // "dup",
|
"dup",
|
||||||
"dup_x1", // "dup_x1",
|
"dup_x1",
|
||||||
"dup_x2", // "dup_x2",
|
"dup_x2",
|
||||||
"dup2", // "dup2",
|
"dup2",
|
||||||
"dup2_x1", // "dup2_x1",
|
"dup2_x1",
|
||||||
"dup2_x2", // "dup2_x2",
|
"dup2_x2",
|
||||||
"swap", // "swap",
|
"swap",
|
||||||
"iadd", // "iadd",
|
"iadd",
|
||||||
"ladd", // "ladd",
|
"ladd",
|
||||||
"fadd", // "fadd",
|
"fadd",
|
||||||
"dadd", // "dadd",
|
"dadd",
|
||||||
"isub", // "isub",
|
"isub",
|
||||||
"lsub", // "lsub",
|
"lsub",
|
||||||
"fsub", // "fsub",
|
"fsub",
|
||||||
"dsub", // "dsub",
|
"dsub",
|
||||||
"imul", // "imul",
|
"imul",
|
||||||
"lmul", // "lmul",
|
"lmul",
|
||||||
"fmul", // "fmul",
|
"fmul",
|
||||||
"dmul", // "dmul",
|
"dmul",
|
||||||
"idiv", // "idiv",
|
"idiv",
|
||||||
"ldiv", // "ldiv",
|
"ldiv",
|
||||||
"fdiv", // "fdiv",
|
"fdiv",
|
||||||
"ddiv", // "ddiv",
|
"ddiv",
|
||||||
"irem", // "irem",
|
"irem",
|
||||||
"lrem", // "lrem",
|
"lrem",
|
||||||
"frem", // "frem",
|
"frem",
|
||||||
"drem", // "drem",
|
"drem",
|
||||||
"ineg", // "ineg",
|
"ineg",
|
||||||
"lneg", // "lneg",
|
"lneg",
|
||||||
"fneg", // "fneg",
|
"fneg",
|
||||||
"dneg", // "dneg",
|
"dneg",
|
||||||
"ishl", // "ishl",
|
"ishl",
|
||||||
"lshl", // "lshl",
|
"lshl",
|
||||||
"ishr", // "ishr",
|
"ishr",
|
||||||
"lshr", // "lshr",
|
"lshr",
|
||||||
"iushr", // "iushr",
|
"iushr",
|
||||||
"lushr", // "lushr",
|
"lushr",
|
||||||
"iand", // "iand",
|
"iand",
|
||||||
"land", // "land",
|
"land",
|
||||||
"ior", // "ior",
|
"ior",
|
||||||
"lor", // "lor",
|
"lor",
|
||||||
"ixor", // "ixor",
|
"ixor",
|
||||||
"lxor", // "lxor",
|
"lxor",
|
||||||
"iinc", // "iinc",
|
"iinc",
|
||||||
"i2l", // "i2l",
|
"i2l",
|
||||||
"i2f", // "i2f",
|
"i2f",
|
||||||
"i2d", // "i2d",
|
"i2d",
|
||||||
"l2i", // "l2i",
|
"l2i",
|
||||||
"l2f", // "l2f",
|
"l2f",
|
||||||
"l2d", // "l2d",
|
"l2d",
|
||||||
"f2i", // "f2i",
|
"f2i",
|
||||||
"f2l", // "f2l",
|
"f2l",
|
||||||
"f2d", // "f2d",
|
"f2d",
|
||||||
"d2i", // "d2i",
|
"d2i",
|
||||||
"d2l", // "d2l",
|
"d2l",
|
||||||
"d2f", // "d2f",
|
"d2f",
|
||||||
"i2b", // "i2b",
|
"i2b",
|
||||||
"i2c", // "i2c",
|
"i2c",
|
||||||
"i2s", // "i2s",
|
"i2s",
|
||||||
"lcmp", // "lcmp",
|
"lcmp",
|
||||||
"fcmpl", // "fcmpl",
|
"fcmpl",
|
||||||
"fcmpg", // "fcmpg",
|
"fcmpg",
|
||||||
"dcmpl", // "dcmpl",
|
"dcmpl",
|
||||||
"dcmpg", // "dcmpg",
|
"dcmpg",
|
||||||
"ifeq", // "ifeq",
|
"ifeq",
|
||||||
"ifne", // "ifne",
|
"ifne",
|
||||||
"iflt", // "iflt",
|
"iflt",
|
||||||
"ifge", // "ifge",
|
"ifge",
|
||||||
"ifgt", // "ifgt",
|
"ifgt",
|
||||||
"ifle", // "ifle",
|
"ifle",
|
||||||
"if_icmpeq", // "if_icmpeq",
|
"if_icmpeq",
|
||||||
"if_icmpne", // "if_icmpne",
|
"if_icmpne",
|
||||||
"if_icmplt", // "if_icmplt",
|
"if_icmplt",
|
||||||
"if_icmpge", // "if_icmpge",
|
"if_icmpge",
|
||||||
"if_icmpgt", // "if_icmpgt",
|
"if_icmpgt",
|
||||||
"if_icmple", // "if_icmple",
|
"if_icmple",
|
||||||
"if_acmpeq", // "if_acmpeq",
|
"if_acmpeq",
|
||||||
"if_acmpne", // "if_acmpne",
|
"if_acmpne",
|
||||||
"goto", // "goto",
|
"goto",
|
||||||
"jsr", // "jsr",
|
"jsr",
|
||||||
"ret", // "ret",
|
"ret",
|
||||||
"tableswitch", // "tableswitch",
|
"tableswitch",
|
||||||
"lookupswitch", // "lookupswitch",
|
"lookupswitch",
|
||||||
"ireturn", // "ireturn",
|
"ireturn",
|
||||||
"lreturn", // "lreturn",
|
"lreturn",
|
||||||
"freturn", // "freturn",
|
"freturn",
|
||||||
"dreturn", // "dreturn",
|
"dreturn",
|
||||||
"areturn", // "areturn",
|
"areturn",
|
||||||
"return", // "return",
|
"return",
|
||||||
"getstatic", // "getstatic",
|
"getstatic",
|
||||||
"putstatic", // "putstatic",
|
"putstatic",
|
||||||
"getfield", // "getfield",
|
"getfield",
|
||||||
"putfield", // "putfield",
|
"putfield",
|
||||||
"invokevirtual", // "invokevirtual",
|
"invokevirtual",
|
||||||
"invokespecial", // "invokespecial",
|
"invokespecial",
|
||||||
"invokestatic", // "invokestatic",
|
"invokestatic",
|
||||||
"invokeinterface", // "invokeinterface",
|
"invokeinterface",
|
||||||
//"xxxunusedxxx", // "xxxunusedxxx", Java 6 and before
|
"invokedynamic", // since Java 7
|
||||||
"invokedynamic", // "invokedynamic", Java 7 and later
|
"new",
|
||||||
"new", // "new",
|
"newarray",
|
||||||
"newarray", // "newarray",
|
"anewarray",
|
||||||
"anewarray", // "anewarray",
|
"arraylength",
|
||||||
"arraylength", // "arraylength",
|
"athrow",
|
||||||
"athrow", // "athrow",
|
"checkcast",
|
||||||
"checkcast", // "checkcast",
|
"instanceof",
|
||||||
"instanceof", // "instanceof",
|
"monitorenter",
|
||||||
"monitorenter", // "monitorenter",
|
"monitorexit",
|
||||||
"monitorexit", // "monitorexit",
|
"wide",
|
||||||
"wide", // "wide",
|
"multianewarray",
|
||||||
"multianewarray", // "multianewarray",
|
"ifnull",
|
||||||
"ifnull", // "ifnull",
|
"ifnonnull",
|
||||||
"ifnonnull", // "ifnonnull",
|
"goto_w",
|
||||||
"goto_w", // "goto_w",
|
"jsr_w"
|
||||||
"jsr_w" // "jsr_w"
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user