summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dx/src/com/android/dx/command/findusages/FindUsages.java15
-rw-r--r--dx/src/com/android/dx/dex/code/Dop.java16
-rw-r--r--dx/src/com/android/dx/dex/code/Dops.java776
-rw-r--r--dx/src/com/android/dx/io/CodeReader.java5
-rw-r--r--dx/src/com/android/dx/io/OpcodeInfo.java555
-rw-r--r--dx/src/com/android/dx/merge/InstructionTransformer.java19
-rw-r--r--dx/tests/118-find-usages/expected.txt10
-rw-r--r--opcode-gen/opcode-gen.awk9
8 files changed, 582 insertions, 823 deletions
diff --git a/dx/src/com/android/dx/command/findusages/FindUsages.java b/dx/src/com/android/dx/command/findusages/FindUsages.java
index d9b0e1253..30c6030db 100644
--- a/dx/src/com/android/dx/command/findusages/FindUsages.java
+++ b/dx/src/com/android/dx/command/findusages/FindUsages.java
@@ -23,6 +23,7 @@ import com.android.dx.io.DecodedInstruction;
import com.android.dx.io.DexBuffer;
import com.android.dx.io.FieldId;
import com.android.dx.io.MethodId;
+import com.android.dx.io.OpcodeInfo;
import java.io.PrintStream;
import java.util.Collections;
import java.util.HashSet;
@@ -61,21 +62,23 @@ public final class FindUsages {
fieldIds = getFieldIds(dex, memberNameIndex, typeIndex);
codeReader.setFieldVisitor(new CodeReader.Visitor() {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all,
+ DecodedInstruction one) {
int fieldId = one.getIndex();
if (fieldIds.contains(fieldId)) {
- out.println(location() + ": field reference (" + instruction + ")");
+ out.println(location() + ": field reference ("
+ + OpcodeInfo.getName(one.getOpcode()) + ")");
}
}
});
codeReader.setMethodVisitor(new CodeReader.Visitor() {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all,
+ DecodedInstruction one) {
int methodId = one.getIndex();
if (methodIds.contains(methodId)) {
- out.println(location() + ": method reference (" + instruction + ")");
+ out.println(location() + ": method reference ("
+ + OpcodeInfo.getName(one.getOpcode()) + ")");
}
}
});
diff --git a/dx/src/com/android/dx/dex/code/Dop.java b/dx/src/com/android/dx/dex/code/Dop.java
index a7c8397e3..51d1b5160 100644
--- a/dx/src/com/android/dx/dex/code/Dop.java
+++ b/dx/src/com/android/dx/dex/code/Dop.java
@@ -16,6 +16,7 @@
package com.android.dx.dex.code;
+import com.android.dx.io.OpcodeInfo;
import com.android.dx.io.Opcodes;
/**
@@ -42,9 +43,6 @@ public final class Dop {
/** whether this opcode uses a result register */
private final boolean hasResult;
- /** {@code non-null;} the name */
- private final String name;
-
/**
* Constructs an instance.
*
@@ -58,10 +56,9 @@ public final class Dop {
* @param format {@code non-null;} the instruction format
* @param hasResult whether the opcode has a result register; if so it
* is always the first register
- * @param name {@code non-null;} the name
*/
public Dop(int opcode, int family, int nextOpcode, InsnFormat format,
- boolean hasResult, String name) {
+ boolean hasResult) {
if (!Opcodes.isValidShape(opcode)) {
throw new IllegalArgumentException("bogus opcode");
}
@@ -78,22 +75,17 @@ public final class Dop {
throw new NullPointerException("format == null");
}
- if (name == null) {
- throw new NullPointerException("name == null");
- }
-
this.opcode = opcode;
this.family = family;
this.nextOpcode = nextOpcode;
this.format = format;
this.hasResult = hasResult;
- this.name = name;
}
/** {@inheritDoc} */
@Override
public String toString() {
- return name;
+ return getName();
}
/**
@@ -139,7 +131,7 @@ public final class Dop {
* @return {@code non-null;} the opcode name
*/
public String getName() {
- return name;
+ return OpcodeInfo.getName(opcode);
}
/**
diff --git a/dx/src/com/android/dx/dex/code/Dops.java b/dx/src/com/android/dx/dex/code/Dops.java
index a19b02b39..667b32663 100644
--- a/dx/src/com/android/dx/dex/code/Dops.java
+++ b/dx/src/com/android/dx/dex/code/Dops.java
@@ -57,1297 +57,1041 @@ public final class Dops {
/**
* pseudo-opcode used for nonstandard formatted "instructions"
* (which are mostly not actually instructions, though they do
- * appear in instruction lists)
+ * appear in instruction lists). TODO: Retire the usage of this
+ * constant.
*/
public static final Dop SPECIAL_FORMAT =
new Dop(Opcodes.SPECIAL_FORMAT, Opcodes.SPECIAL_FORMAT,
- Opcodes.NO_NEXT, SpecialFormat.THE_ONE, false, "<special>");
+ Opcodes.NO_NEXT, SpecialFormat.THE_ONE, false);
// BEGIN(dops); GENERATED AUTOMATICALLY BY opcode-gen
public static final Dop NOP =
new Dop(Opcodes.NOP, Opcodes.NOP,
- Opcodes.NO_NEXT, Form10x.THE_ONE, false,
- "nop");
+ Opcodes.NO_NEXT, Form10x.THE_ONE, false);
public static final Dop MOVE =
new Dop(Opcodes.MOVE, Opcodes.MOVE,
- Opcodes.MOVE_FROM16, Form12x.THE_ONE, true,
- "move");
+ Opcodes.MOVE_FROM16, Form12x.THE_ONE, true);
public static final Dop MOVE_FROM16 =
new Dop(Opcodes.MOVE_FROM16, Opcodes.MOVE,
- Opcodes.MOVE_16, Form22x.THE_ONE, true,
- "move/from16");
+ Opcodes.MOVE_16, Form22x.THE_ONE, true);
public static final Dop MOVE_16 =
new Dop(Opcodes.MOVE_16, Opcodes.MOVE,
- Opcodes.NO_NEXT, Form32x.THE_ONE, true,
- "move/16");
+ Opcodes.NO_NEXT, Form32x.THE_ONE, true);
public static final Dop MOVE_WIDE =
new Dop(Opcodes.MOVE_WIDE, Opcodes.MOVE_WIDE,
- Opcodes.MOVE_WIDE_FROM16, Form12x.THE_ONE, true,
- "move-wide");
+ Opcodes.MOVE_WIDE_FROM16, Form12x.THE_ONE, true);
public static final Dop MOVE_WIDE_FROM16 =
new Dop(Opcodes.MOVE_WIDE_FROM16, Opcodes.MOVE_WIDE,
- Opcodes.MOVE_WIDE_16, Form22x.THE_ONE, true,
- "move-wide/from16");
+ Opcodes.MOVE_WIDE_16, Form22x.THE_ONE, true);
public static final Dop MOVE_WIDE_16 =
new Dop(Opcodes.MOVE_WIDE_16, Opcodes.MOVE_WIDE,
- Opcodes.NO_NEXT, Form32x.THE_ONE, true,
- "move-wide/16");
+ Opcodes.NO_NEXT, Form32x.THE_ONE, true);
public static final Dop MOVE_OBJECT =
new Dop(Opcodes.MOVE_OBJECT, Opcodes.MOVE_OBJECT,
- Opcodes.MOVE_OBJECT_FROM16, Form12x.THE_ONE, true,
- "move-object");
+ Opcodes.MOVE_OBJECT_FROM16, Form12x.THE_ONE, true);
public static final Dop MOVE_OBJECT_FROM16 =
new Dop(Opcodes.MOVE_OBJECT_FROM16, Opcodes.MOVE_OBJECT,
- Opcodes.MOVE_OBJECT_16, Form22x.THE_ONE, true,
- "move-object/from16");
+ Opcodes.MOVE_OBJECT_16, Form22x.THE_ONE, true);
public static final Dop MOVE_OBJECT_16 =
new Dop(Opcodes.MOVE_OBJECT_16, Opcodes.MOVE_OBJECT,
- Opcodes.NO_NEXT, Form32x.THE_ONE, true,
- "move-object/16");
+ Opcodes.NO_NEXT, Form32x.THE_ONE, true);
public static final Dop MOVE_RESULT =
new Dop(Opcodes.MOVE_RESULT, Opcodes.MOVE_RESULT,
- Opcodes.NO_NEXT, Form11x.THE_ONE, true,
- "move-result");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, true);
public static final Dop MOVE_RESULT_WIDE =
new Dop(Opcodes.MOVE_RESULT_WIDE, Opcodes.MOVE_RESULT_WIDE,
- Opcodes.NO_NEXT, Form11x.THE_ONE, true,
- "move-result-wide");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, true);
public static final Dop MOVE_RESULT_OBJECT =
new Dop(Opcodes.MOVE_RESULT_OBJECT, Opcodes.MOVE_RESULT_OBJECT,
- Opcodes.NO_NEXT, Form11x.THE_ONE, true,
- "move-result-object");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, true);
public static final Dop MOVE_EXCEPTION =
new Dop(Opcodes.MOVE_EXCEPTION, Opcodes.MOVE_EXCEPTION,
- Opcodes.NO_NEXT, Form11x.THE_ONE, true,
- "move-exception");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, true);
public static final Dop RETURN_VOID =
new Dop(Opcodes.RETURN_VOID, Opcodes.RETURN_VOID,
- Opcodes.NO_NEXT, Form10x.THE_ONE, false,
- "return-void");
+ Opcodes.NO_NEXT, Form10x.THE_ONE, false);
public static final Dop RETURN =
new Dop(Opcodes.RETURN, Opcodes.RETURN,
- Opcodes.NO_NEXT, Form11x.THE_ONE, false,
- "return");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, false);
public static final Dop RETURN_WIDE =
new Dop(Opcodes.RETURN_WIDE, Opcodes.RETURN_WIDE,
- Opcodes.NO_NEXT, Form11x.THE_ONE, false,
- "return-wide");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, false);
public static final Dop RETURN_OBJECT =
new Dop(Opcodes.RETURN_OBJECT, Opcodes.RETURN_OBJECT,
- Opcodes.NO_NEXT, Form11x.THE_ONE, false,
- "return-object");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, false);
public static final Dop CONST_4 =
new Dop(Opcodes.CONST_4, Opcodes.CONST,
- Opcodes.CONST_16, Form11n.THE_ONE, true,
- "const/4");
+ Opcodes.CONST_16, Form11n.THE_ONE, true);
public static final Dop CONST_16 =
new Dop(Opcodes.CONST_16, Opcodes.CONST,
- Opcodes.CONST_HIGH16, Form21s.THE_ONE, true,
- "const/16");
+ Opcodes.CONST_HIGH16, Form21s.THE_ONE, true);
public static final Dop CONST =
new Dop(Opcodes.CONST, Opcodes.CONST,
- Opcodes.NO_NEXT, Form31i.THE_ONE, true,
- "const");
+ Opcodes.NO_NEXT, Form31i.THE_ONE, true);
public static final Dop CONST_HIGH16 =
new Dop(Opcodes.CONST_HIGH16, Opcodes.CONST,
- Opcodes.CONST, Form21h.THE_ONE, true,
- "const/high16");
+ Opcodes.CONST, Form21h.THE_ONE, true);
public static final Dop CONST_WIDE_16 =
new Dop(Opcodes.CONST_WIDE_16, Opcodes.CONST_WIDE,
- Opcodes.CONST_WIDE_HIGH16, Form21s.THE_ONE, true,
- "const-wide/16");
+ Opcodes.CONST_WIDE_HIGH16, Form21s.THE_ONE, true);
public static final Dop CONST_WIDE_32 =
new Dop(Opcodes.CONST_WIDE_32, Opcodes.CONST_WIDE,
- Opcodes.CONST_WIDE, Form31i.THE_ONE, true,
- "const-wide/32");
+ Opcodes.CONST_WIDE, Form31i.THE_ONE, true);
public static final Dop CONST_WIDE =
new Dop(Opcodes.CONST_WIDE, Opcodes.CONST_WIDE,
- Opcodes.NO_NEXT, Form51l.THE_ONE, true,
- "const-wide");
+ Opcodes.NO_NEXT, Form51l.THE_ONE, true);
public static final Dop CONST_WIDE_HIGH16 =
new Dop(Opcodes.CONST_WIDE_HIGH16, Opcodes.CONST_WIDE,
- Opcodes.CONST_WIDE_32, Form21h.THE_ONE, true,
- "const-wide/high16");
+ Opcodes.CONST_WIDE_32, Form21h.THE_ONE, true);
public static final Dop CONST_STRING =
new Dop(Opcodes.CONST_STRING, Opcodes.CONST_STRING,
- Opcodes.CONST_STRING_JUMBO, Form21c.THE_ONE, true,
- "const-string");
+ Opcodes.CONST_STRING_JUMBO, Form21c.THE_ONE, true);
public static final Dop CONST_STRING_JUMBO =
new Dop(Opcodes.CONST_STRING_JUMBO, Opcodes.CONST_STRING,
- Opcodes.NO_NEXT, Form31c.THE_ONE, true,
- "const-string/jumbo");
+ Opcodes.NO_NEXT, Form31c.THE_ONE, true);
public static final Dop CONST_CLASS =
new Dop(Opcodes.CONST_CLASS, Opcodes.CONST_CLASS,
- Opcodes.CONST_CLASS_JUMBO, Form21c.THE_ONE, true,
- "const-class");
+ Opcodes.CONST_CLASS_JUMBO, Form21c.THE_ONE, true);
public static final Dop MONITOR_ENTER =
new Dop(Opcodes.MONITOR_ENTER, Opcodes.MONITOR_ENTER,
- Opcodes.NO_NEXT, Form11x.THE_ONE, false,
- "monitor-enter");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, false);
public static final Dop MONITOR_EXIT =
new Dop(Opcodes.MONITOR_EXIT, Opcodes.MONITOR_EXIT,
- Opcodes.NO_NEXT, Form11x.THE_ONE, false,
- "monitor-exit");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, false);
public static final Dop CHECK_CAST =
new Dop(Opcodes.CHECK_CAST, Opcodes.CHECK_CAST,
- Opcodes.CHECK_CAST_JUMBO, Form21c.THE_ONE, true,
- "check-cast");
+ Opcodes.CHECK_CAST_JUMBO, Form21c.THE_ONE, true);
public static final Dop INSTANCE_OF =
new Dop(Opcodes.INSTANCE_OF, Opcodes.INSTANCE_OF,
- Opcodes.INSTANCE_OF_JUMBO, Form22c.THE_ONE, true,
- "instance-of");
+ Opcodes.INSTANCE_OF_JUMBO, Form22c.THE_ONE, true);
public static final Dop ARRAY_LENGTH =
new Dop(Opcodes.ARRAY_LENGTH, Opcodes.ARRAY_LENGTH,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "array-length");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop NEW_INSTANCE =
new Dop(Opcodes.NEW_INSTANCE, Opcodes.NEW_INSTANCE,
- Opcodes.NEW_INSTANCE_JUMBO, Form21c.THE_ONE, true,
- "new-instance");
+ Opcodes.NEW_INSTANCE_JUMBO, Form21c.THE_ONE, true);
public static final Dop NEW_ARRAY =
new Dop(Opcodes.NEW_ARRAY, Opcodes.NEW_ARRAY,
- Opcodes.NEW_ARRAY_JUMBO, Form22c.THE_ONE, true,
- "new-array");
+ Opcodes.NEW_ARRAY_JUMBO, Form22c.THE_ONE, true);
public static final Dop FILLED_NEW_ARRAY =
new Dop(Opcodes.FILLED_NEW_ARRAY, Opcodes.FILLED_NEW_ARRAY,
- Opcodes.FILLED_NEW_ARRAY_RANGE, Form35c.THE_ONE, false,
- "filled-new-array");
+ Opcodes.FILLED_NEW_ARRAY_RANGE, Form35c.THE_ONE, false);
public static final Dop FILLED_NEW_ARRAY_RANGE =
new Dop(Opcodes.FILLED_NEW_ARRAY_RANGE, Opcodes.FILLED_NEW_ARRAY,
- Opcodes.FILLED_NEW_ARRAY_JUMBO, Form3rc.THE_ONE, false,
- "filled-new-array/range");
+ Opcodes.FILLED_NEW_ARRAY_JUMBO, Form3rc.THE_ONE, false);
public static final Dop FILL_ARRAY_DATA =
new Dop(Opcodes.FILL_ARRAY_DATA, Opcodes.FILL_ARRAY_DATA,
- Opcodes.NO_NEXT, Form31t.THE_ONE, false,
- "fill-array-data");
+ Opcodes.NO_NEXT, Form31t.THE_ONE, false);
public static final Dop THROW =
new Dop(Opcodes.THROW, Opcodes.THROW,
- Opcodes.NO_NEXT, Form11x.THE_ONE, false,
- "throw");
+ Opcodes.NO_NEXT, Form11x.THE_ONE, false);
public static final Dop GOTO =
new Dop(Opcodes.GOTO, Opcodes.GOTO,
- Opcodes.GOTO_16, Form10t.THE_ONE, false,
- "goto");
+ Opcodes.GOTO_16, Form10t.THE_ONE, false);
public static final Dop GOTO_16 =
new Dop(Opcodes.GOTO_16, Opcodes.GOTO,
- Opcodes.GOTO_32, Form20t.THE_ONE, false,
- "goto/16");
+ Opcodes.GOTO_32, Form20t.THE_ONE, false);
public static final Dop GOTO_32 =
new Dop(Opcodes.GOTO_32, Opcodes.GOTO,
- Opcodes.NO_NEXT, Form30t.THE_ONE, false,
- "goto/32");
+ Opcodes.NO_NEXT, Form30t.THE_ONE, false);
public static final Dop PACKED_SWITCH =
new Dop(Opcodes.PACKED_SWITCH, Opcodes.PACKED_SWITCH,
- Opcodes.NO_NEXT, Form31t.THE_ONE, false,
- "packed-switch");
+ Opcodes.NO_NEXT, Form31t.THE_ONE, false);
public static final Dop SPARSE_SWITCH =
new Dop(Opcodes.SPARSE_SWITCH, Opcodes.SPARSE_SWITCH,
- Opcodes.NO_NEXT, Form31t.THE_ONE, false,
- "sparse-switch");
+ Opcodes.NO_NEXT, Form31t.THE_ONE, false);
public static final Dop CMPL_FLOAT =
new Dop(Opcodes.CMPL_FLOAT, Opcodes.CMPL_FLOAT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "cmpl-float");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop CMPG_FLOAT =
new Dop(Opcodes.CMPG_FLOAT, Opcodes.CMPG_FLOAT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "cmpg-float");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop CMPL_DOUBLE =
new Dop(Opcodes.CMPL_DOUBLE, Opcodes.CMPL_DOUBLE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "cmpl-double");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop CMPG_DOUBLE =
new Dop(Opcodes.CMPG_DOUBLE, Opcodes.CMPG_DOUBLE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "cmpg-double");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop CMP_LONG =
new Dop(Opcodes.CMP_LONG, Opcodes.CMP_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "cmp-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop IF_EQ =
new Dop(Opcodes.IF_EQ, Opcodes.IF_EQ,
- Opcodes.NO_NEXT, Form22t.THE_ONE, false,
- "if-eq");
+ Opcodes.NO_NEXT, Form22t.THE_ONE, false);
public static final Dop IF_NE =
new Dop(Opcodes.IF_NE, Opcodes.IF_NE,
- Opcodes.NO_NEXT, Form22t.THE_ONE, false,
- "if-ne");
+ Opcodes.NO_NEXT, Form22t.THE_ONE, false);
public static final Dop IF_LT =
new Dop(Opcodes.IF_LT, Opcodes.IF_LT,
- Opcodes.NO_NEXT, Form22t.THE_ONE, false,
- "if-lt");
+ Opcodes.NO_NEXT, Form22t.THE_ONE, false);
public static final Dop IF_GE =
new Dop(Opcodes.IF_GE, Opcodes.IF_GE,
- Opcodes.NO_NEXT, Form22t.THE_ONE, false,
- "if-ge");
+ Opcodes.NO_NEXT, Form22t.THE_ONE, false);
public static final Dop IF_GT =
new Dop(Opcodes.IF_GT, Opcodes.IF_GT,
- Opcodes.NO_NEXT, Form22t.THE_ONE, false,
- "if-gt");
+ Opcodes.NO_NEXT, Form22t.THE_ONE, false);
public static final Dop IF_LE =
new Dop(Opcodes.IF_LE, Opcodes.IF_LE,
- Opcodes.NO_NEXT, Form22t.THE_ONE, false,
- "if-le");
+ Opcodes.NO_NEXT, Form22t.THE_ONE, false);
public static final Dop IF_EQZ =
new Dop(Opcodes.IF_EQZ, Opcodes.IF_EQZ,
- Opcodes.NO_NEXT, Form21t.THE_ONE, false,
- "if-eqz");
+ Opcodes.NO_NEXT, Form21t.THE_ONE, false);
public static final Dop IF_NEZ =
new Dop(Opcodes.IF_NEZ, Opcodes.IF_NEZ,
- Opcodes.NO_NEXT, Form21t.THE_ONE, false,
- "if-nez");
+ Opcodes.NO_NEXT, Form21t.THE_ONE, false);
public static final Dop IF_LTZ =
new Dop(Opcodes.IF_LTZ, Opcodes.IF_LTZ,
- Opcodes.NO_NEXT, Form21t.THE_ONE, false,
- "if-ltz");
+ Opcodes.NO_NEXT, Form21t.THE_ONE, false);
public static final Dop IF_GEZ =
new Dop(Opcodes.IF_GEZ, Opcodes.IF_GEZ,
- Opcodes.NO_NEXT, Form21t.THE_ONE, false,
- "if-gez");
+ Opcodes.NO_NEXT, Form21t.THE_ONE, false);
public static final Dop IF_GTZ =
new Dop(Opcodes.IF_GTZ, Opcodes.IF_GTZ,
- Opcodes.NO_NEXT, Form21t.THE_ONE, false,
- "if-gtz");
+ Opcodes.NO_NEXT, Form21t.THE_ONE, false);
public static final Dop IF_LEZ =
new Dop(Opcodes.IF_LEZ, Opcodes.IF_LEZ,
- Opcodes.NO_NEXT, Form21t.THE_ONE, false,
- "if-lez");
+ Opcodes.NO_NEXT, Form21t.THE_ONE, false);
public static final Dop AGET =
new Dop(Opcodes.AGET, Opcodes.AGET,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "aget");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AGET_WIDE =
new Dop(Opcodes.AGET_WIDE, Opcodes.AGET_WIDE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "aget-wide");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AGET_OBJECT =
new Dop(Opcodes.AGET_OBJECT, Opcodes.AGET_OBJECT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "aget-object");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AGET_BOOLEAN =
new Dop(Opcodes.AGET_BOOLEAN, Opcodes.AGET_BOOLEAN,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "aget-boolean");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AGET_BYTE =
new Dop(Opcodes.AGET_BYTE, Opcodes.AGET_BYTE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "aget-byte");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AGET_CHAR =
new Dop(Opcodes.AGET_CHAR, Opcodes.AGET_CHAR,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "aget-char");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AGET_SHORT =
new Dop(Opcodes.AGET_SHORT, Opcodes.AGET_SHORT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "aget-short");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop APUT =
new Dop(Opcodes.APUT, Opcodes.APUT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, false,
- "aput");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, false);
public static final Dop APUT_WIDE =
new Dop(Opcodes.APUT_WIDE, Opcodes.APUT_WIDE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, false,
- "aput-wide");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, false);
public static final Dop APUT_OBJECT =
new Dop(Opcodes.APUT_OBJECT, Opcodes.APUT_OBJECT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, false,
- "aput-object");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, false);
public static final Dop APUT_BOOLEAN =
new Dop(Opcodes.APUT_BOOLEAN, Opcodes.APUT_BOOLEAN,
- Opcodes.NO_NEXT, Form23x.THE_ONE, false,
- "aput-boolean");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, false);
public static final Dop APUT_BYTE =
new Dop(Opcodes.APUT_BYTE, Opcodes.APUT_BYTE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, false,
- "aput-byte");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, false);
public static final Dop APUT_CHAR =
new Dop(Opcodes.APUT_CHAR, Opcodes.APUT_CHAR,
- Opcodes.NO_NEXT, Form23x.THE_ONE, false,
- "aput-char");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, false);
public static final Dop APUT_SHORT =
new Dop(Opcodes.APUT_SHORT, Opcodes.APUT_SHORT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, false,
- "aput-short");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, false);
public static final Dop IGET =
new Dop(Opcodes.IGET, Opcodes.IGET,
- Opcodes.IGET_JUMBO, Form22c.THE_ONE, true,
- "iget");
+ Opcodes.IGET_JUMBO, Form22c.THE_ONE, true);
public static final Dop IGET_WIDE =
new Dop(Opcodes.IGET_WIDE, Opcodes.IGET_WIDE,
- Opcodes.IGET_WIDE_JUMBO, Form22c.THE_ONE, true,
- "iget-wide");
+ Opcodes.IGET_WIDE_JUMBO, Form22c.THE_ONE, true);
public static final Dop IGET_OBJECT =
new Dop(Opcodes.IGET_OBJECT, Opcodes.IGET_OBJECT,
- Opcodes.IGET_OBJECT_JUMBO, Form22c.THE_ONE, true,
- "iget-object");
+ Opcodes.IGET_OBJECT_JUMBO, Form22c.THE_ONE, true);
public static final Dop IGET_BOOLEAN =
new Dop(Opcodes.IGET_BOOLEAN, Opcodes.IGET_BOOLEAN,
- Opcodes.IGET_BOOLEAN_JUMBO, Form22c.THE_ONE, true,
- "iget-boolean");
+ Opcodes.IGET_BOOLEAN_JUMBO, Form22c.THE_ONE, true);
public static final Dop IGET_BYTE =
new Dop(Opcodes.IGET_BYTE, Opcodes.IGET_BYTE,
- Opcodes.IGET_BYTE_JUMBO, Form22c.THE_ONE, true,
- "iget-byte");
+ Opcodes.IGET_BYTE_JUMBO, Form22c.THE_ONE, true);
public static final Dop IGET_CHAR =
new Dop(Opcodes.IGET_CHAR, Opcodes.IGET_CHAR,
- Opcodes.IGET_CHAR_JUMBO, Form22c.THE_ONE, true,
- "iget-char");
+ Opcodes.IGET_CHAR_JUMBO, Form22c.THE_ONE, true);
public static final Dop IGET_SHORT =
new Dop(Opcodes.IGET_SHORT, Opcodes.IGET_SHORT,
- Opcodes.IGET_SHORT_JUMBO, Form22c.THE_ONE, true,
- "iget-short");
+ Opcodes.IGET_SHORT_JUMBO, Form22c.THE_ONE, true);
public static final Dop IPUT =
new Dop(Opcodes.IPUT, Opcodes.IPUT,
- Opcodes.IPUT_JUMBO, Form22c.THE_ONE, false,
- "iput");
+ Opcodes.IPUT_JUMBO, Form22c.THE_ONE, false);
public static final Dop IPUT_WIDE =
new Dop(Opcodes.IPUT_WIDE, Opcodes.IPUT_WIDE,
- Opcodes.IPUT_WIDE_JUMBO, Form22c.THE_ONE, false,
- "iput-wide");
+ Opcodes.IPUT_WIDE_JUMBO, Form22c.THE_ONE, false);
public static final Dop IPUT_OBJECT =
new Dop(Opcodes.IPUT_OBJECT, Opcodes.IPUT_OBJECT,
- Opcodes.IPUT_OBJECT_JUMBO, Form22c.THE_ONE, false,
- "iput-object");
+ Opcodes.IPUT_OBJECT_JUMBO, Form22c.THE_ONE, false);
public static final Dop IPUT_BOOLEAN =
new Dop(Opcodes.IPUT_BOOLEAN, Opcodes.IPUT_BOOLEAN,
- Opcodes.IPUT_BOOLEAN_JUMBO, Form22c.THE_ONE, false,
- "iput-boolean");
+ Opcodes.IPUT_BOOLEAN_JUMBO, Form22c.THE_ONE, false);
public static final Dop IPUT_BYTE =
new Dop(Opcodes.IPUT_BYTE, Opcodes.IPUT_BYTE,
- Opcodes.IPUT_BYTE_JUMBO, Form22c.THE_ONE, false,
- "iput-byte");
+ Opcodes.IPUT_BYTE_JUMBO, Form22c.THE_ONE, false);
public static final Dop IPUT_CHAR =
new Dop(Opcodes.IPUT_CHAR, Opcodes.IPUT_CHAR,
- Opcodes.IPUT_CHAR_JUMBO, Form22c.THE_ONE, false,
- "iput-char");
+ Opcodes.IPUT_CHAR_JUMBO, Form22c.THE_ONE, false);
public static final Dop IPUT_SHORT =
new Dop(Opcodes.IPUT_SHORT, Opcodes.IPUT_SHORT,
- Opcodes.IPUT_SHORT_JUMBO, Form22c.THE_ONE, false,
- "iput-short");
+ Opcodes.IPUT_SHORT_JUMBO, Form22c.THE_ONE, false);
public static final Dop SGET =
new Dop(Opcodes.SGET, Opcodes.SGET,
- Opcodes.SGET_JUMBO, Form21c.THE_ONE, true,
- "sget");
+ Opcodes.SGET_JUMBO, Form21c.THE_ONE, true);
public static final Dop SGET_WIDE =
new Dop(Opcodes.SGET_WIDE, Opcodes.SGET_WIDE,
- Opcodes.SGET_WIDE_JUMBO, Form21c.THE_ONE, true,
- "sget-wide");
+ Opcodes.SGET_WIDE_JUMBO, Form21c.THE_ONE, true);
public static final Dop SGET_OBJECT =
new Dop(Opcodes.SGET_OBJECT, Opcodes.SGET_OBJECT,
- Opcodes.SGET_OBJECT_JUMBO, Form21c.THE_ONE, true,
- "sget-object");
+ Opcodes.SGET_OBJECT_JUMBO, Form21c.THE_ONE, true);
public static final Dop SGET_BOOLEAN =
new Dop(Opcodes.SGET_BOOLEAN, Opcodes.SGET_BOOLEAN,
- Opcodes.SGET_BOOLEAN_JUMBO, Form21c.THE_ONE, true,
- "sget-boolean");
+ Opcodes.SGET_BOOLEAN_JUMBO, Form21c.THE_ONE, true);
public static final Dop SGET_BYTE =
new Dop(Opcodes.SGET_BYTE, Opcodes.SGET_BYTE,
- Opcodes.SGET_BYTE_JUMBO, Form21c.THE_ONE, true,
- "sget-byte");
+ Opcodes.SGET_BYTE_JUMBO, Form21c.THE_ONE, true);
public static final Dop SGET_CHAR =
new Dop(Opcodes.SGET_CHAR, Opcodes.SGET_CHAR,
- Opcodes.SGET_CHAR_JUMBO, Form21c.THE_ONE, true,
- "sget-char");
+ Opcodes.SGET_CHAR_JUMBO, Form21c.THE_ONE, true);
public static final Dop SGET_SHORT =
new Dop(Opcodes.SGET_SHORT, Opcodes.SGET_SHORT,
- Opcodes.SGET_SHORT_JUMBO, Form21c.THE_ONE, true,
- "sget-short");
+ Opcodes.SGET_SHORT_JUMBO, Form21c.THE_ONE, true);
public static final Dop SPUT =
new Dop(Opcodes.SPUT, Opcodes.SPUT,
- Opcodes.SPUT_JUMBO, Form21c.THE_ONE, false,
- "sput");
+ Opcodes.SPUT_JUMBO, Form21c.THE_ONE, false);
public static final Dop SPUT_WIDE =
new Dop(Opcodes.SPUT_WIDE, Opcodes.SPUT_WIDE,
- Opcodes.SPUT_WIDE_JUMBO, Form21c.THE_ONE, false,
- "sput-wide");
+ Opcodes.SPUT_WIDE_JUMBO, Form21c.THE_ONE, false);
public static final Dop SPUT_OBJECT =
new Dop(Opcodes.SPUT_OBJECT, Opcodes.SPUT_OBJECT,
- Opcodes.SPUT_OBJECT_JUMBO, Form21c.THE_ONE, false,
- "sput-object");
+ Opcodes.SPUT_OBJECT_JUMBO, Form21c.THE_ONE, false);
public static final Dop SPUT_BOOLEAN =
new Dop(Opcodes.SPUT_BOOLEAN, Opcodes.SPUT_BOOLEAN,
- Opcodes.SPUT_BOOLEAN_JUMBO, Form21c.THE_ONE, false,
- "sput-boolean");
+ Opcodes.SPUT_BOOLEAN_JUMBO, Form21c.THE_ONE, false);
public static final Dop SPUT_BYTE =
new Dop(Opcodes.SPUT_BYTE, Opcodes.SPUT_BYTE,
- Opcodes.SPUT_BYTE_JUMBO, Form21c.THE_ONE, false,
- "sput-byte");
+ Opcodes.SPUT_BYTE_JUMBO, Form21c.THE_ONE, false);
public static final Dop SPUT_CHAR =
new Dop(Opcodes.SPUT_CHAR, Opcodes.SPUT_CHAR,
- Opcodes.SPUT_CHAR_JUMBO, Form21c.THE_ONE, false,
- "sput-char");
+ Opcodes.SPUT_CHAR_JUMBO, Form21c.THE_ONE, false);
public static final Dop SPUT_SHORT =
new Dop(Opcodes.SPUT_SHORT, Opcodes.SPUT_SHORT,
- Opcodes.SPUT_SHORT_JUMBO, Form21c.THE_ONE, false,
- "sput-short");
+ Opcodes.SPUT_SHORT_JUMBO, Form21c.THE_ONE, false);
public static final Dop INVOKE_VIRTUAL =
new Dop(Opcodes.INVOKE_VIRTUAL, Opcodes.INVOKE_VIRTUAL,
- Opcodes.INVOKE_VIRTUAL_RANGE, Form35c.THE_ONE, false,
- "invoke-virtual");
+ Opcodes.INVOKE_VIRTUAL_RANGE, Form35c.THE_ONE, false);
public static final Dop INVOKE_SUPER =
new Dop(Opcodes.INVOKE_SUPER, Opcodes.INVOKE_SUPER,
- Opcodes.INVOKE_SUPER_RANGE, Form35c.THE_ONE, false,
- "invoke-super");
+ Opcodes.INVOKE_SUPER_RANGE, Form35c.THE_ONE, false);
public static final Dop INVOKE_DIRECT =
new Dop(Opcodes.INVOKE_DIRECT, Opcodes.INVOKE_DIRECT,
- Opcodes.INVOKE_DIRECT_RANGE, Form35c.THE_ONE, false,
- "invoke-direct");
+ Opcodes.INVOKE_DIRECT_RANGE, Form35c.THE_ONE, false);
public static final Dop INVOKE_STATIC =
new Dop(Opcodes.INVOKE_STATIC, Opcodes.INVOKE_STATIC,
- Opcodes.INVOKE_STATIC_RANGE, Form35c.THE_ONE, false,
- "invoke-static");
+ Opcodes.INVOKE_STATIC_RANGE, Form35c.THE_ONE, false);
public static final Dop INVOKE_INTERFACE =
new Dop(Opcodes.INVOKE_INTERFACE, Opcodes.INVOKE_INTERFACE,
- Opcodes.INVOKE_INTERFACE_RANGE, Form35c.THE_ONE, false,
- "invoke-interface");
+ Opcodes.INVOKE_INTERFACE_RANGE, Form35c.THE_ONE, false);
public static final Dop INVOKE_VIRTUAL_RANGE =
new Dop(Opcodes.INVOKE_VIRTUAL_RANGE, Opcodes.INVOKE_VIRTUAL,
- Opcodes.INVOKE_VIRTUAL_JUMBO, Form3rc.THE_ONE, false,
- "invoke-virtual/range");
+ Opcodes.INVOKE_VIRTUAL_JUMBO, Form3rc.THE_ONE, false);
public static final Dop INVOKE_SUPER_RANGE =
new Dop(Opcodes.INVOKE_SUPER_RANGE, Opcodes.INVOKE_SUPER,
- Opcodes.INVOKE_SUPER_JUMBO, Form3rc.THE_ONE, false,
- "invoke-super/range");
+ Opcodes.INVOKE_SUPER_JUMBO, Form3rc.THE_ONE, false);
public static final Dop INVOKE_DIRECT_RANGE =
new Dop(Opcodes.INVOKE_DIRECT_RANGE, Opcodes.INVOKE_DIRECT,
- Opcodes.INVOKE_DIRECT_JUMBO, Form3rc.THE_ONE, false,
- "invoke-direct/range");
+ Opcodes.INVOKE_DIRECT_JUMBO, Form3rc.THE_ONE, false);
public static final Dop INVOKE_STATIC_RANGE =
new Dop(Opcodes.INVOKE_STATIC_RANGE, Opcodes.INVOKE_STATIC,
- Opcodes.INVOKE_STATIC_JUMBO, Form3rc.THE_ONE, false,
- "invoke-static/range");
+ Opcodes.INVOKE_STATIC_JUMBO, Form3rc.THE_ONE, false);
public static final Dop INVOKE_INTERFACE_RANGE =
new Dop(Opcodes.INVOKE_INTERFACE_RANGE, Opcodes.INVOKE_INTERFACE,
- Opcodes.INVOKE_INTERFACE_JUMBO, Form3rc.THE_ONE, false,
- "invoke-interface/range");
+ Opcodes.INVOKE_INTERFACE_JUMBO, Form3rc.THE_ONE, false);
public static final Dop NEG_INT =
new Dop(Opcodes.NEG_INT, Opcodes.NEG_INT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "neg-int");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop NOT_INT =
new Dop(Opcodes.NOT_INT, Opcodes.NOT_INT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "not-int");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop NEG_LONG =
new Dop(Opcodes.NEG_LONG, Opcodes.NEG_LONG,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "neg-long");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop NOT_LONG =
new Dop(Opcodes.NOT_LONG, Opcodes.NOT_LONG,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "not-long");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop NEG_FLOAT =
new Dop(Opcodes.NEG_FLOAT, Opcodes.NEG_FLOAT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "neg-float");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop NEG_DOUBLE =
new Dop(Opcodes.NEG_DOUBLE, Opcodes.NEG_DOUBLE,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "neg-double");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop INT_TO_LONG =
new Dop(Opcodes.INT_TO_LONG, Opcodes.INT_TO_LONG,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "int-to-long");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop INT_TO_FLOAT =
new Dop(Opcodes.INT_TO_FLOAT, Opcodes.INT_TO_FLOAT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "int-to-float");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop INT_TO_DOUBLE =
new Dop(Opcodes.INT_TO_DOUBLE, Opcodes.INT_TO_DOUBLE,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "int-to-double");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop LONG_TO_INT =
new Dop(Opcodes.LONG_TO_INT, Opcodes.LONG_TO_INT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "long-to-int");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop LONG_TO_FLOAT =
new Dop(Opcodes.LONG_TO_FLOAT, Opcodes.LONG_TO_FLOAT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "long-to-float");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop LONG_TO_DOUBLE =
new Dop(Opcodes.LONG_TO_DOUBLE, Opcodes.LONG_TO_DOUBLE,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "long-to-double");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop FLOAT_TO_INT =
new Dop(Opcodes.FLOAT_TO_INT, Opcodes.FLOAT_TO_INT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "float-to-int");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop FLOAT_TO_LONG =
new Dop(Opcodes.FLOAT_TO_LONG, Opcodes.FLOAT_TO_LONG,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "float-to-long");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop FLOAT_TO_DOUBLE =
new Dop(Opcodes.FLOAT_TO_DOUBLE, Opcodes.FLOAT_TO_DOUBLE,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "float-to-double");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop DOUBLE_TO_INT =
new Dop(Opcodes.DOUBLE_TO_INT, Opcodes.DOUBLE_TO_INT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "double-to-int");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop DOUBLE_TO_LONG =
new Dop(Opcodes.DOUBLE_TO_LONG, Opcodes.DOUBLE_TO_LONG,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "double-to-long");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop DOUBLE_TO_FLOAT =
new Dop(Opcodes.DOUBLE_TO_FLOAT, Opcodes.DOUBLE_TO_FLOAT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "double-to-float");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop INT_TO_BYTE =
new Dop(Opcodes.INT_TO_BYTE, Opcodes.INT_TO_BYTE,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "int-to-byte");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop INT_TO_CHAR =
new Dop(Opcodes.INT_TO_CHAR, Opcodes.INT_TO_CHAR,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "int-to-char");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop INT_TO_SHORT =
new Dop(Opcodes.INT_TO_SHORT, Opcodes.INT_TO_SHORT,
- Opcodes.NO_NEXT, Form12x.THE_ONE, true,
- "int-to-short");
+ Opcodes.NO_NEXT, Form12x.THE_ONE, true);
public static final Dop ADD_INT =
new Dop(Opcodes.ADD_INT, Opcodes.ADD_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "add-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SUB_INT =
new Dop(Opcodes.SUB_INT, Opcodes.SUB_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "sub-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop MUL_INT =
new Dop(Opcodes.MUL_INT, Opcodes.MUL_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "mul-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop DIV_INT =
new Dop(Opcodes.DIV_INT, Opcodes.DIV_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "div-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop REM_INT =
new Dop(Opcodes.REM_INT, Opcodes.REM_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "rem-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AND_INT =
new Dop(Opcodes.AND_INT, Opcodes.AND_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "and-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop OR_INT =
new Dop(Opcodes.OR_INT, Opcodes.OR_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "or-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop XOR_INT =
new Dop(Opcodes.XOR_INT, Opcodes.XOR_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "xor-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SHL_INT =
new Dop(Opcodes.SHL_INT, Opcodes.SHL_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "shl-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SHR_INT =
new Dop(Opcodes.SHR_INT, Opcodes.SHR_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "shr-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop USHR_INT =
new Dop(Opcodes.USHR_INT, Opcodes.USHR_INT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "ushr-int");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop ADD_LONG =
new Dop(Opcodes.ADD_LONG, Opcodes.ADD_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "add-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SUB_LONG =
new Dop(Opcodes.SUB_LONG, Opcodes.SUB_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "sub-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop MUL_LONG =
new Dop(Opcodes.MUL_LONG, Opcodes.MUL_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "mul-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop DIV_LONG =
new Dop(Opcodes.DIV_LONG, Opcodes.DIV_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "div-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop REM_LONG =
new Dop(Opcodes.REM_LONG, Opcodes.REM_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "rem-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop AND_LONG =
new Dop(Opcodes.AND_LONG, Opcodes.AND_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "and-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop OR_LONG =
new Dop(Opcodes.OR_LONG, Opcodes.OR_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "or-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop XOR_LONG =
new Dop(Opcodes.XOR_LONG, Opcodes.XOR_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "xor-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SHL_LONG =
new Dop(Opcodes.SHL_LONG, Opcodes.SHL_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "shl-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SHR_LONG =
new Dop(Opcodes.SHR_LONG, Opcodes.SHR_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "shr-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop USHR_LONG =
new Dop(Opcodes.USHR_LONG, Opcodes.USHR_LONG,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "ushr-long");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop ADD_FLOAT =
new Dop(Opcodes.ADD_FLOAT, Opcodes.ADD_FLOAT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "add-float");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SUB_FLOAT =
new Dop(Opcodes.SUB_FLOAT, Opcodes.SUB_FLOAT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "sub-float");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop MUL_FLOAT =
new Dop(Opcodes.MUL_FLOAT, Opcodes.MUL_FLOAT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "mul-float");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop DIV_FLOAT =
new Dop(Opcodes.DIV_FLOAT, Opcodes.DIV_FLOAT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "div-float");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop REM_FLOAT =
new Dop(Opcodes.REM_FLOAT, Opcodes.REM_FLOAT,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "rem-float");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop ADD_DOUBLE =
new Dop(Opcodes.ADD_DOUBLE, Opcodes.ADD_DOUBLE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "add-double");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop SUB_DOUBLE =
new Dop(Opcodes.SUB_DOUBLE, Opcodes.SUB_DOUBLE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "sub-double");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop MUL_DOUBLE =
new Dop(Opcodes.MUL_DOUBLE, Opcodes.MUL_DOUBLE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "mul-double");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop DIV_DOUBLE =
new Dop(Opcodes.DIV_DOUBLE, Opcodes.DIV_DOUBLE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "div-double");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop REM_DOUBLE =
new Dop(Opcodes.REM_DOUBLE, Opcodes.REM_DOUBLE,
- Opcodes.NO_NEXT, Form23x.THE_ONE, true,
- "rem-double");
+ Opcodes.NO_NEXT, Form23x.THE_ONE, true);
public static final Dop ADD_INT_2ADDR =
new Dop(Opcodes.ADD_INT_2ADDR, Opcodes.ADD_INT,
- Opcodes.ADD_INT, Form12x.THE_ONE, true,
- "add-int/2addr");
+ Opcodes.ADD_INT, Form12x.THE_ONE, true);
public static final Dop SUB_INT_2ADDR =
new Dop(Opcodes.SUB_INT_2ADDR, Opcodes.SUB_INT,
- Opcodes.SUB_INT, Form12x.THE_ONE, true,
- "sub-int/2addr");
+ Opcodes.SUB_INT, Form12x.THE_ONE, true);
public static final Dop MUL_INT_2ADDR =
new Dop(Opcodes.MUL_INT_2ADDR, Opcodes.MUL_INT,
- Opcodes.MUL_INT, Form12x.THE_ONE, true,
- "mul-int/2addr");
+ Opcodes.MUL_INT, Form12x.THE_ONE, true);
public static final Dop DIV_INT_2ADDR =
new Dop(Opcodes.DIV_INT_2ADDR, Opcodes.DIV_INT,
- Opcodes.DIV_INT, Form12x.THE_ONE, true,
- "div-int/2addr");
+ Opcodes.DIV_INT, Form12x.THE_ONE, true);
public static final Dop REM_INT_2ADDR =
new Dop(Opcodes.REM_INT_2ADDR, Opcodes.REM_INT,
- Opcodes.REM_INT, Form12x.THE_ONE, true,
- "rem-int/2addr");
+ Opcodes.REM_INT, Form12x.THE_ONE, true);
public static final Dop AND_INT_2ADDR =
new Dop(Opcodes.AND_INT_2ADDR, Opcodes.AND_INT,
- Opcodes.AND_INT, Form12x.THE_ONE, true,
- "and-int/2addr");
+ Opcodes.AND_INT, Form12x.THE_ONE, true);
public static final Dop OR_INT_2ADDR =
new Dop(Opcodes.OR_INT_2ADDR, Opcodes.OR_INT,
- Opcodes.OR_INT, Form12x.THE_ONE, true,
- "or-int/2addr");
+ Opcodes.OR_INT, Form12x.THE_ONE, true);
public static final Dop XOR_INT_2ADDR =
new Dop(Opcodes.XOR_INT_2ADDR, Opcodes.XOR_INT,
- Opcodes.XOR_INT, Form12x.THE_ONE, true,
- "xor-int/2addr");
+ Opcodes.XOR_INT, Form12x.THE_ONE, true);
public static final Dop SHL_INT_2ADDR =
new Dop(Opcodes.SHL_INT_2ADDR, Opcodes.SHL_INT,
- Opcodes.SHL_INT, Form12x.THE_ONE, true,
- "shl-int/2addr");
+ Opcodes.SHL_INT, Form12x.THE_ONE, true);
public static final Dop SHR_INT_2ADDR =
new Dop(Opcodes.SHR_INT_2ADDR, Opcodes.SHR_INT,
- Opcodes.SHR_INT, Form12x.THE_ONE, true,
- "shr-int/2addr");
+ Opcodes.SHR_INT, Form12x.THE_ONE, true);
public static final Dop USHR_INT_2ADDR =
new Dop(Opcodes.USHR_INT_2ADDR, Opcodes.USHR_INT,
- Opcodes.USHR_INT, Form12x.THE_ONE, true,
- "ushr-int/2addr");
+ Opcodes.USHR_INT, Form12x.THE_ONE, true);
public static final Dop ADD_LONG_2ADDR =
new Dop(Opcodes.ADD_LONG_2ADDR, Opcodes.ADD_LONG,
- Opcodes.ADD_LONG, Form12x.THE_ONE, true,
- "add-long/2addr");
+ Opcodes.ADD_LONG, Form12x.THE_ONE, true);
public static final Dop SUB_LONG_2ADDR =
new Dop(Opcodes.SUB_LONG_2ADDR, Opcodes.SUB_LONG,
- Opcodes.SUB_LONG, Form12x.THE_ONE, true,
- "sub-long/2addr");
+ Opcodes.SUB_LONG, Form12x.THE_ONE, true);
public static final Dop MUL_LONG_2ADDR =
new Dop(Opcodes.MUL_LONG_2ADDR, Opcodes.MUL_LONG,
- Opcodes.MUL_LONG, Form12x.THE_ONE, true,
- "mul-long/2addr");
+ Opcodes.MUL_LONG, Form12x.THE_ONE, true);
public static final Dop DIV_LONG_2ADDR =
new Dop(Opcodes.DIV_LONG_2ADDR, Opcodes.DIV_LONG,
- Opcodes.DIV_LONG, Form12x.THE_ONE, true,
- "div-long/2addr");
+ Opcodes.DIV_LONG, Form12x.THE_ONE, true);
public static final Dop REM_LONG_2ADDR =
new Dop(Opcodes.REM_LONG_2ADDR, Opcodes.REM_LONG,
- Opcodes.REM_LONG, Form12x.THE_ONE, true,
- "rem-long/2addr");
+ Opcodes.REM_LONG, Form12x.THE_ONE, true);
public static final Dop AND_LONG_2ADDR =
new Dop(Opcodes.AND_LONG_2ADDR, Opcodes.AND_LONG,
- Opcodes.AND_LONG, Form12x.THE_ONE, true,
- "and-long/2addr");
+ Opcodes.AND_LONG, Form12x.THE_ONE, true);
public static final Dop OR_LONG_2ADDR =
new Dop(Opcodes.OR_LONG_2ADDR, Opcodes.OR_LONG,
- Opcodes.OR_LONG, Form12x.THE_ONE, true,
- "or-long/2addr");
+ Opcodes.OR_LONG, Form12x.THE_ONE, true);
public static final Dop XOR_LONG_2ADDR =
new Dop(Opcodes.XOR_LONG_2ADDR, Opcodes.XOR_LONG,
- Opcodes.XOR_LONG, Form12x.THE_ONE, true,
- "xor-long/2addr");
+ Opcodes.XOR_LONG, Form12x.THE_ONE, true);
public static final Dop SHL_LONG_2ADDR =
new Dop(Opcodes.SHL_LONG_2ADDR, Opcodes.SHL_LONG,
- Opcodes.SHL_LONG, Form12x.THE_ONE, true,
- "shl-long/2addr");
+ Opcodes.SHL_LONG, Form12x.THE_ONE, true);
public static final Dop SHR_LONG_2ADDR =
new Dop(Opcodes.SHR_LONG_2ADDR, Opcodes.SHR_LONG,
- Opcodes.SHR_LONG, Form12x.THE_ONE, true,
- "shr-long/2addr");
+ Opcodes.SHR_LONG, Form12x.THE_ONE, true);
public static final Dop USHR_LONG_2ADDR =
new Dop(Opcodes.USHR_LONG_2ADDR, Opcodes.USHR_LONG,
- Opcodes.USHR_LONG, Form12x.THE_ONE, true,
- "ushr-long/2addr");
+ Opcodes.USHR_LONG, Form12x.THE_ONE, true);
public static final Dop ADD_FLOAT_2ADDR =
new Dop(Opcodes.ADD_FLOAT_2ADDR, Opcodes.ADD_FLOAT,
- Opcodes.ADD_FLOAT, Form12x.THE_ONE, true,
- "add-float/2addr");
+ Opcodes.ADD_FLOAT, Form12x.THE_ONE, true);
public static final Dop SUB_FLOAT_2ADDR =
new Dop(Opcodes.SUB_FLOAT_2ADDR, Opcodes.SUB_FLOAT,
- Opcodes.SUB_FLOAT, Form12x.THE_ONE, true,
- "sub-float/2addr");
+ Opcodes.SUB_FLOAT, Form12x.THE_ONE, true);
public static final Dop MUL_FLOAT_2ADDR =
new Dop(Opcodes.MUL_FLOAT_2ADDR, Opcodes.MUL_FLOAT,
- Opcodes.MUL_FLOAT, Form12x.THE_ONE, true,
- "mul-float/2addr");
+ Opcodes.MUL_FLOAT, Form12x.THE_ONE, true);
public static final Dop DIV_FLOAT_2ADDR =
new Dop(Opcodes.DIV_FLOAT_2ADDR, Opcodes.DIV_FLOAT,
- Opcodes.DIV_FLOAT, Form12x.THE_ONE, true,
- "div-float/2addr");
+ Opcodes.DIV_FLOAT, Form12x.THE_ONE, true);
public static final Dop REM_FLOAT_2ADDR =
new Dop(Opcodes.REM_FLOAT_2ADDR, Opcodes.REM_FLOAT,
- Opcodes.REM_FLOAT, Form12x.THE_ONE, true,
- "rem-float/2addr");
+ Opcodes.REM_FLOAT, Form12x.THE_ONE, true);
public static final Dop ADD_DOUBLE_2ADDR =
new Dop(Opcodes.ADD_DOUBLE_2ADDR, Opcodes.ADD_DOUBLE,
- Opcodes.ADD_DOUBLE, Form12x.THE_ONE, true,
- "add-double/2addr");
+ Opcodes.ADD_DOUBLE, Form12x.THE_ONE, true);
public static final Dop SUB_DOUBLE_2ADDR =
new Dop(Opcodes.SUB_DOUBLE_2ADDR, Opcodes.SUB_DOUBLE,
- Opcodes.SUB_DOUBLE, Form12x.THE_ONE, true,
- "sub-double/2addr");
+ Opcodes.SUB_DOUBLE, Form12x.THE_ONE, true);
public static final Dop MUL_DOUBLE_2ADDR =
new Dop(Opcodes.MUL_DOUBLE_2ADDR, Opcodes.MUL_DOUBLE,
- Opcodes.MUL_DOUBLE, Form12x.THE_ONE, true,
- "mul-double/2addr");
+ Opcodes.MUL_DOUBLE, Form12x.THE_ONE, true);
public static final Dop DIV_DOUBLE_2ADDR =
new Dop(Opcodes.DIV_DOUBLE_2ADDR, Opcodes.DIV_DOUBLE,
- Opcodes.DIV_DOUBLE, Form12x.THE_ONE, true,
- "div-double/2addr");
+ Opcodes.DIV_DOUBLE, Form12x.THE_ONE, true);
public static final Dop REM_DOUBLE_2ADDR =
new Dop(Opcodes.REM_DOUBLE_2ADDR, Opcodes.REM_DOUBLE,
- Opcodes.REM_DOUBLE, Form12x.THE_ONE, true,
- "rem-double/2addr");
+ Opcodes.REM_DOUBLE, Form12x.THE_ONE, true);
public static final Dop ADD_INT_LIT16 =
new Dop(Opcodes.ADD_INT_LIT16, Opcodes.ADD_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "add-int/lit16");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop RSUB_INT =
new Dop(Opcodes.RSUB_INT, Opcodes.RSUB_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "rsub-int");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop MUL_INT_LIT16 =
new Dop(Opcodes.MUL_INT_LIT16, Opcodes.MUL_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "mul-int/lit16");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop DIV_INT_LIT16 =
new Dop(Opcodes.DIV_INT_LIT16, Opcodes.DIV_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "div-int/lit16");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop REM_INT_LIT16 =
new Dop(Opcodes.REM_INT_LIT16, Opcodes.REM_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "rem-int/lit16");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop AND_INT_LIT16 =
new Dop(Opcodes.AND_INT_LIT16, Opcodes.AND_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "and-int/lit16");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop OR_INT_LIT16 =
new Dop(Opcodes.OR_INT_LIT16, Opcodes.OR_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "or-int/lit16");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop XOR_INT_LIT16 =
new Dop(Opcodes.XOR_INT_LIT16, Opcodes.XOR_INT,
- Opcodes.NO_NEXT, Form22s.THE_ONE, true,
- "xor-int/lit16");
+ Opcodes.NO_NEXT, Form22s.THE_ONE, true);
public static final Dop ADD_INT_LIT8 =
new Dop(Opcodes.ADD_INT_LIT8, Opcodes.ADD_INT,
- Opcodes.ADD_INT_LIT16, Form22b.THE_ONE, true,
- "add-int/lit8");
+ Opcodes.ADD_INT_LIT16, Form22b.THE_ONE, true);
public static final Dop RSUB_INT_LIT8 =
new Dop(Opcodes.RSUB_INT_LIT8, Opcodes.RSUB_INT,
- Opcodes.RSUB_INT, Form22b.THE_ONE, true,
- "rsub-int/lit8");
+ Opcodes.RSUB_INT, Form22b.THE_ONE, true);
public static final Dop MUL_INT_LIT8 =
new Dop(Opcodes.MUL_INT_LIT8, Opcodes.MUL_INT,
- Opcodes.MUL_INT_LIT16, Form22b.THE_ONE, true,
- "mul-int/lit8");
+ Opcodes.MUL_INT_LIT16, Form22b.THE_ONE, true);
public static final Dop DIV_INT_LIT8 =
new Dop(Opcodes.DIV_INT_LIT8, Opcodes.DIV_INT,
- Opcodes.DIV_INT_LIT16, Form22b.THE_ONE, true,
- "div-int/lit8");
+ Opcodes.DIV_INT_LIT16, Form22b.THE_ONE, true);
public static final Dop REM_INT_LIT8 =
new Dop(Opcodes.REM_INT_LIT8, Opcodes.REM_INT,
- Opcodes.REM_INT_LIT16, Form22b.THE_ONE, true,
- "rem-int/lit8");
+ Opcodes.REM_INT_LIT16, Form22b.THE_ONE, true);
public static final Dop AND_INT_LIT8 =
new Dop(Opcodes.AND_INT_LIT8, Opcodes.AND_INT,
- Opcodes.AND_INT_LIT16, Form22b.THE_ONE, true,
- "and-int/lit8");
+ Opcodes.AND_INT_LIT16, Form22b.THE_ONE, true);
public static final Dop OR_INT_LIT8 =
new Dop(Opcodes.OR_INT_LIT8, Opcodes.OR_INT,
- Opcodes.OR_INT_LIT16, Form22b.THE_ONE, true,
- "or-int/lit8");
+ Opcodes.OR_INT_LIT16, Form22b.THE_ONE, true);
public static final Dop XOR_INT_LIT8 =
new Dop(Opcodes.XOR_INT_LIT8, Opcodes.XOR_INT,
- Opcodes.XOR_INT_LIT16, Form22b.THE_ONE, true,
- "xor-int/lit8");
+ Opcodes.XOR_INT_LIT16, Form22b.THE_ONE, true);
public static final Dop SHL_INT_LIT8 =
new Dop(Opcodes.SHL_INT_LIT8, Opcodes.SHL_INT,
- Opcodes.NO_NEXT, Form22b.THE_ONE, true,
- "shl-int/lit8");
+ Opcodes.NO_NEXT, Form22b.THE_ONE, true);
public static final Dop SHR_INT_LIT8 =
new Dop(Opcodes.SHR_INT_LIT8, Opcodes.SHR_INT,
- Opcodes.NO_NEXT, Form22b.THE_ONE, true,
- "shr-int/lit8");
+ Opcodes.NO_NEXT, Form22b.THE_ONE, true);
public static final Dop USHR_INT_LIT8 =
new Dop(Opcodes.USHR_INT_LIT8, Opcodes.USHR_INT,
- Opcodes.NO_NEXT, Form22b.THE_ONE, true,
- "ushr-int/lit8");
+ Opcodes.NO_NEXT, Form22b.THE_ONE, true);
public static final Dop CONST_CLASS_JUMBO =
new Dop(Opcodes.CONST_CLASS_JUMBO, Opcodes.CONST_CLASS,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "const-class/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop CHECK_CAST_JUMBO =
new Dop(Opcodes.CHECK_CAST_JUMBO, Opcodes.CHECK_CAST,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "check-cast/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop INSTANCE_OF_JUMBO =
new Dop(Opcodes.INSTANCE_OF_JUMBO, Opcodes.INSTANCE_OF,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "instance-of/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop NEW_INSTANCE_JUMBO =
new Dop(Opcodes.NEW_INSTANCE_JUMBO, Opcodes.NEW_INSTANCE,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "new-instance/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop NEW_ARRAY_JUMBO =
new Dop(Opcodes.NEW_ARRAY_JUMBO, Opcodes.NEW_ARRAY,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "new-array/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop FILLED_NEW_ARRAY_JUMBO =
new Dop(Opcodes.FILLED_NEW_ARRAY_JUMBO, Opcodes.FILLED_NEW_ARRAY,
- Opcodes.NO_NEXT, Form5rc.THE_ONE, false,
- "filled-new-array/jumbo");
+ Opcodes.NO_NEXT, Form5rc.THE_ONE, false);
public static final Dop IGET_JUMBO =
new Dop(Opcodes.IGET_JUMBO, Opcodes.IGET,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "iget/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop IGET_WIDE_JUMBO =
new Dop(Opcodes.IGET_WIDE_JUMBO, Opcodes.IGET_WIDE,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "iget-wide/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop IGET_OBJECT_JUMBO =
new Dop(Opcodes.IGET_OBJECT_JUMBO, Opcodes.IGET_OBJECT,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "iget-object/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop IGET_BOOLEAN_JUMBO =
new Dop(Opcodes.IGET_BOOLEAN_JUMBO, Opcodes.IGET_BOOLEAN,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "iget-boolean/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop IGET_BYTE_JUMBO =
new Dop(Opcodes.IGET_BYTE_JUMBO, Opcodes.IGET_BYTE,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "iget-byte/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop IGET_CHAR_JUMBO =
new Dop(Opcodes.IGET_CHAR_JUMBO, Opcodes.IGET_CHAR,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "iget-char/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop IGET_SHORT_JUMBO =
new Dop(Opcodes.IGET_SHORT_JUMBO, Opcodes.IGET_SHORT,
- Opcodes.NO_NEXT, Form52c.THE_ONE, true,
- "iget-short/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, true);
public static final Dop IPUT_JUMBO =
new Dop(Opcodes.IPUT_JUMBO, Opcodes.IPUT,
- Opcodes.NO_NEXT, Form52c.THE_ONE, false,
- "iput/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, false);
public static final Dop IPUT_WIDE_JUMBO =
new Dop(Opcodes.IPUT_WIDE_JUMBO, Opcodes.IPUT_WIDE,
- Opcodes.NO_NEXT, Form52c.THE_ONE, false,
- "iput-wide/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, false);
public static final Dop IPUT_OBJECT_JUMBO =
new Dop(Opcodes.IPUT_OBJECT_JUMBO, Opcodes.IPUT_OBJECT,
- Opcodes.NO_NEXT, Form52c.THE_ONE, false,
- "iput-object/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, false);
public static final Dop IPUT_BOOLEAN_JUMBO =
new Dop(Opcodes.IPUT_BOOLEAN_JUMBO, Opcodes.IPUT_BOOLEAN,
- Opcodes.NO_NEXT, Form52c.THE_ONE, false,
- "iput-boolean/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, false);
public static final Dop IPUT_BYTE_JUMBO =
new Dop(Opcodes.IPUT_BYTE_JUMBO, Opcodes.IPUT_BYTE,
- Opcodes.NO_NEXT, Form52c.THE_ONE, false,
- "iput-byte/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, false);
public static final Dop IPUT_CHAR_JUMBO =
new Dop(Opcodes.IPUT_CHAR_JUMBO, Opcodes.IPUT_CHAR,
- Opcodes.NO_NEXT, Form52c.THE_ONE, false,
- "iput-char/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, false);
public static final Dop IPUT_SHORT_JUMBO =
new Dop(Opcodes.IPUT_SHORT_JUMBO, Opcodes.IPUT_SHORT,
- Opcodes.NO_NEXT, Form52c.THE_ONE, false,
- "iput-short/jumbo");
+ Opcodes.NO_NEXT, Form52c.THE_ONE, false);
public static final Dop SGET_JUMBO =
new Dop(Opcodes.SGET_JUMBO, Opcodes.SGET,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "sget/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop SGET_WIDE_JUMBO =
new Dop(Opcodes.SGET_WIDE_JUMBO, Opcodes.SGET_WIDE,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "sget-wide/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop SGET_OBJECT_JUMBO =
new Dop(Opcodes.SGET_OBJECT_JUMBO, Opcodes.SGET_OBJECT,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "sget-object/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop SGET_BOOLEAN_JUMBO =
new Dop(Opcodes.SGET_BOOLEAN_JUMBO, Opcodes.SGET_BOOLEAN,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "sget-boolean/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop SGET_BYTE_JUMBO =
new Dop(Opcodes.SGET_BYTE_JUMBO, Opcodes.SGET_BYTE,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "sget-byte/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop SGET_CHAR_JUMBO =
new Dop(Opcodes.SGET_CHAR_JUMBO, Opcodes.SGET_CHAR,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "sget-char/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop SGET_SHORT_JUMBO =
new Dop(Opcodes.SGET_SHORT_JUMBO, Opcodes.SGET_SHORT,
- Opcodes.NO_NEXT, Form41c.THE_ONE, true,
- "sget-short/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, true);
public static final Dop SPUT_JUMBO =
new Dop(Opcodes.SPUT_JUMBO, Opcodes.SPUT,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "sput/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop SPUT_WIDE_JUMBO =
new Dop(Opcodes.SPUT_WIDE_JUMBO, Opcodes.SPUT_WIDE,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "sput-wide/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop SPUT_OBJECT_JUMBO =
new Dop(Opcodes.SPUT_OBJECT_JUMBO, Opcodes.SPUT_OBJECT,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "sput-object/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop SPUT_BOOLEAN_JUMBO =
new Dop(Opcodes.SPUT_BOOLEAN_JUMBO, Opcodes.SPUT_BOOLEAN,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "sput-boolean/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop SPUT_BYTE_JUMBO =
new Dop(Opcodes.SPUT_BYTE_JUMBO, Opcodes.SPUT_BYTE,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "sput-byte/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop SPUT_CHAR_JUMBO =
new Dop(Opcodes.SPUT_CHAR_JUMBO, Opcodes.SPUT_CHAR,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "sput-char/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop SPUT_SHORT_JUMBO =
new Dop(Opcodes.SPUT_SHORT_JUMBO, Opcodes.SPUT_SHORT,
- Opcodes.NO_NEXT, Form41c.THE_ONE, false,
- "sput-short/jumbo");
+ Opcodes.NO_NEXT, Form41c.THE_ONE, false);
public static final Dop INVOKE_VIRTUAL_JUMBO =
new Dop(Opcodes.INVOKE_VIRTUAL_JUMBO, Opcodes.INVOKE_VIRTUAL,
- Opcodes.NO_NEXT, Form5rc.THE_ONE, false,
- "invoke-virtual/jumbo");
+ Opcodes.NO_NEXT, Form5rc.THE_ONE, false);
public static final Dop INVOKE_SUPER_JUMBO =
new Dop(Opcodes.INVOKE_SUPER_JUMBO, Opcodes.INVOKE_SUPER,
- Opcodes.NO_NEXT, Form5rc.THE_ONE, false,
- "invoke-super/jumbo");
+ Opcodes.NO_NEXT, Form5rc.THE_ONE, false);
public static final Dop INVOKE_DIRECT_JUMBO =
new Dop(Opcodes.INVOKE_DIRECT_JUMBO, Opcodes.INVOKE_DIRECT,
- Opcodes.NO_NEXT, Form5rc.THE_ONE, false,
- "invoke-direct/jumbo");
+ Opcodes.NO_NEXT, Form5rc.THE_ONE, false);
public static final Dop INVOKE_STATIC_JUMBO =
new Dop(Opcodes.INVOKE_STATIC_JUMBO, Opcodes.INVOKE_STATIC,
- Opcodes.NO_NEXT, Form5rc.THE_ONE, false,
- "invoke-static/jumbo");
+ Opcodes.NO_NEXT, Form5rc.THE_ONE, false);
public static final Dop INVOKE_INTERFACE_JUMBO =
new Dop(Opcodes.INVOKE_INTERFACE_JUMBO, Opcodes.INVOKE_INTERFACE,
- Opcodes.NO_NEXT, Form5rc.THE_ONE, false,
- "invoke-interface/jumbo");
+ Opcodes.NO_NEXT, Form5rc.THE_ONE, false);
// END(dops)
diff --git a/dx/src/com/android/dx/io/CodeReader.java b/dx/src/com/android/dx/io/CodeReader.java
index 21bec7e0d..e6ea717d0 100644
--- a/dx/src/com/android/dx/io/CodeReader.java
+++ b/dx/src/com/android/dx/io/CodeReader.java
@@ -382,7 +382,7 @@ public final class CodeReader {
Instruction instruction = instructions[di.getOpcode()];
Visitor visitor = instruction.visitor;
if (visitor != null) {
- visitor.visit(instruction, decodedInstructions, di);
+ visitor.visit(decodedInstructions, di);
}
}
}
@@ -422,8 +422,7 @@ public final class CodeReader {
}
public interface Visitor {
- void visit(Instruction instruction, DecodedInstruction[] all,
- DecodedInstruction one);
+ void visit(DecodedInstruction[] all, DecodedInstruction one);
}
private static class UnusedInstruction extends Instruction {
diff --git a/dx/src/com/android/dx/io/OpcodeInfo.java b/dx/src/com/android/dx/io/OpcodeInfo.java
index 4507d9bc9..d645207ca 100644
--- a/dx/src/com/android/dx/io/OpcodeInfo.java
+++ b/dx/src/com/android/dx/io/OpcodeInfo.java
@@ -30,1047 +30,1057 @@ public final class OpcodeInfo {
/** non-null; array containing all the information */
private static final Info[] INFO;
+ /**
+ * pseudo-opcode used for nonstandard formatted "instructions"
+ * (which are mostly not actually instructions, though they do
+ * appear in instruction lists). TODO: Retire the usage of this
+ * constant.
+ */
+ public static final Info SPECIAL_FORMAT =
+ new Info(Opcodes.SPECIAL_FORMAT, "<special>",
+ InstructionCodec.FORMAT_00X, null);
+
// TODO: These payload opcodes should be generated by opcode-gen.
public static final Info PACKED_SWITCH_PAYLOAD =
- new Info(Opcodes.PACKED_SWITCH_PAYLOAD,
+ new Info(Opcodes.PACKED_SWITCH_PAYLOAD, "packed-switch-payload",
InstructionCodec.FORMAT_PACKED_SWITCH_PAYLOAD, null);
public static final Info SPARSE_SWITCH_PAYLOAD =
- new Info(Opcodes.SPARSE_SWITCH_PAYLOAD,
+ new Info(Opcodes.SPARSE_SWITCH_PAYLOAD, "sparse-switch-payload",
InstructionCodec.FORMAT_SPARSE_SWITCH_PAYLOAD, null);
public static final Info FILL_ARRAY_DATA_PAYLOAD =
- new Info(Opcodes.FILL_ARRAY_DATA_PAYLOAD,
+ new Info(Opcodes.FILL_ARRAY_DATA_PAYLOAD, "fill-array-data-payload",
InstructionCodec.FORMAT_FILL_ARRAY_DATA_PAYLOAD, null);
// BEGIN(opcode-info-defs); GENERATED AUTOMATICALLY BY opcode-gen
public static final Info NOP =
- new Info(Opcodes.NOP,
+ new Info(Opcodes.NOP, "nop",
InstructionCodec.FORMAT_10X, null);
public static final Info MOVE =
- new Info(Opcodes.MOVE,
+ new Info(Opcodes.MOVE, "move",
InstructionCodec.FORMAT_12X, null);
public static final Info MOVE_FROM16 =
- new Info(Opcodes.MOVE_FROM16,
+ new Info(Opcodes.MOVE_FROM16, "move/from16",
InstructionCodec.FORMAT_22X, null);
public static final Info MOVE_16 =
- new Info(Opcodes.MOVE_16,
+ new Info(Opcodes.MOVE_16, "move/16",
InstructionCodec.FORMAT_32X, null);
public static final Info MOVE_WIDE =
- new Info(Opcodes.MOVE_WIDE,
+ new Info(Opcodes.MOVE_WIDE, "move-wide",
InstructionCodec.FORMAT_12X, null);
public static final Info MOVE_WIDE_FROM16 =
- new Info(Opcodes.MOVE_WIDE_FROM16,
+ new Info(Opcodes.MOVE_WIDE_FROM16, "move-wide/from16",
InstructionCodec.FORMAT_22X, null);
public static final Info MOVE_WIDE_16 =
- new Info(Opcodes.MOVE_WIDE_16,
+ new Info(Opcodes.MOVE_WIDE_16, "move-wide/16",
InstructionCodec.FORMAT_32X, null);
public static final Info MOVE_OBJECT =
- new Info(Opcodes.MOVE_OBJECT,
+ new Info(Opcodes.MOVE_OBJECT, "move-object",
InstructionCodec.FORMAT_12X, null);
public static final Info MOVE_OBJECT_FROM16 =
- new Info(Opcodes.MOVE_OBJECT_FROM16,
+ new Info(Opcodes.MOVE_OBJECT_FROM16, "move-object/from16",
InstructionCodec.FORMAT_22X, null);
public static final Info MOVE_OBJECT_16 =
- new Info(Opcodes.MOVE_OBJECT_16,
+ new Info(Opcodes.MOVE_OBJECT_16, "move-object/16",
InstructionCodec.FORMAT_32X, null);
public static final Info MOVE_RESULT =
- new Info(Opcodes.MOVE_RESULT,
+ new Info(Opcodes.MOVE_RESULT, "move-result",
InstructionCodec.FORMAT_11X, null);
public static final Info MOVE_RESULT_WIDE =
- new Info(Opcodes.MOVE_RESULT_WIDE,
+ new Info(Opcodes.MOVE_RESULT_WIDE, "move-result-wide",
InstructionCodec.FORMAT_11X, null);
public static final Info MOVE_RESULT_OBJECT =
- new Info(Opcodes.MOVE_RESULT_OBJECT,
+ new Info(Opcodes.MOVE_RESULT_OBJECT, "move-result-object",
InstructionCodec.FORMAT_11X, null);
public static final Info MOVE_EXCEPTION =
- new Info(Opcodes.MOVE_EXCEPTION,
+ new Info(Opcodes.MOVE_EXCEPTION, "move-exception",
InstructionCodec.FORMAT_11X, null);
public static final Info RETURN_VOID =
- new Info(Opcodes.RETURN_VOID,
+ new Info(Opcodes.RETURN_VOID, "return-void",
InstructionCodec.FORMAT_10X, null);
public static final Info RETURN =
- new Info(Opcodes.RETURN,
+ new Info(Opcodes.RETURN, "return",
InstructionCodec.FORMAT_11X, null);
public static final Info RETURN_WIDE =
- new Info(Opcodes.RETURN_WIDE,
+ new Info(Opcodes.RETURN_WIDE, "return-wide",
InstructionCodec.FORMAT_11X, null);
public static final Info RETURN_OBJECT =
- new Info(Opcodes.RETURN_OBJECT,
+ new Info(Opcodes.RETURN_OBJECT, "return-object",
InstructionCodec.FORMAT_11X, null);
public static final Info CONST_4 =
- new Info(Opcodes.CONST_4,
+ new Info(Opcodes.CONST_4, "const/4",
InstructionCodec.FORMAT_11N, null);
public static final Info CONST_16 =
- new Info(Opcodes.CONST_16,
+ new Info(Opcodes.CONST_16, "const/16",
InstructionCodec.FORMAT_21S, null);
public static final Info CONST =
- new Info(Opcodes.CONST,
+ new Info(Opcodes.CONST, "const",
InstructionCodec.FORMAT_31I, null);
public static final Info CONST_HIGH16 =
- new Info(Opcodes.CONST_HIGH16,
+ new Info(Opcodes.CONST_HIGH16, "const/high16",
InstructionCodec.FORMAT_21H, null);
public static final Info CONST_WIDE_16 =
- new Info(Opcodes.CONST_WIDE_16,
+ new Info(Opcodes.CONST_WIDE_16, "const-wide/16",
InstructionCodec.FORMAT_21S, null);
public static final Info CONST_WIDE_32 =
- new Info(Opcodes.CONST_WIDE_32,
+ new Info(Opcodes.CONST_WIDE_32, "const-wide/32",
InstructionCodec.FORMAT_31I, null);
public static final Info CONST_WIDE =
- new Info(Opcodes.CONST_WIDE,
+ new Info(Opcodes.CONST_WIDE, "const-wide",
InstructionCodec.FORMAT_51L, null);
public static final Info CONST_WIDE_HIGH16 =
- new Info(Opcodes.CONST_WIDE_HIGH16,
+ new Info(Opcodes.CONST_WIDE_HIGH16, "const-wide/high16",
InstructionCodec.FORMAT_21H, null);
public static final Info CONST_STRING =
- new Info(Opcodes.CONST_STRING,
+ new Info(Opcodes.CONST_STRING, "const-string",
InstructionCodec.FORMAT_21C, IndexType.STRING_REF);
public static final Info CONST_STRING_JUMBO =
- new Info(Opcodes.CONST_STRING_JUMBO,
+ new Info(Opcodes.CONST_STRING_JUMBO, "const-string/jumbo",
InstructionCodec.FORMAT_31C, IndexType.STRING_REF);
public static final Info CONST_CLASS =
- new Info(Opcodes.CONST_CLASS,
+ new Info(Opcodes.CONST_CLASS, "const-class",
InstructionCodec.FORMAT_21C, IndexType.TYPE_REF);
public static final Info MONITOR_ENTER =
- new Info(Opcodes.MONITOR_ENTER,
+ new Info(Opcodes.MONITOR_ENTER, "monitor-enter",
InstructionCodec.FORMAT_11X, null);
public static final Info MONITOR_EXIT =
- new Info(Opcodes.MONITOR_EXIT,
+ new Info(Opcodes.MONITOR_EXIT, "monitor-exit",
InstructionCodec.FORMAT_11X, null);
public static final Info CHECK_CAST =
- new Info(Opcodes.CHECK_CAST,
+ new Info(Opcodes.CHECK_CAST, "check-cast",
InstructionCodec.FORMAT_21C, IndexType.TYPE_REF);
public static final Info INSTANCE_OF =
- new Info(Opcodes.INSTANCE_OF,
+ new Info(Opcodes.INSTANCE_OF, "instance-of",
InstructionCodec.FORMAT_22C, IndexType.TYPE_REF);
public static final Info ARRAY_LENGTH =
- new Info(Opcodes.ARRAY_LENGTH,
+ new Info(Opcodes.ARRAY_LENGTH, "array-length",
InstructionCodec.FORMAT_12X, null);
public static final Info NEW_INSTANCE =
- new Info(Opcodes.NEW_INSTANCE,
+ new Info(Opcodes.NEW_INSTANCE, "new-instance",
InstructionCodec.FORMAT_21C, IndexType.TYPE_REF);
public static final Info NEW_ARRAY =
- new Info(Opcodes.NEW_ARRAY,
+ new Info(Opcodes.NEW_ARRAY, "new-array",
InstructionCodec.FORMAT_22C, IndexType.TYPE_REF);
public static final Info FILLED_NEW_ARRAY =
- new Info(Opcodes.FILLED_NEW_ARRAY,
+ new Info(Opcodes.FILLED_NEW_ARRAY, "filled-new-array",
InstructionCodec.FORMAT_35C, IndexType.TYPE_REF);
public static final Info FILLED_NEW_ARRAY_RANGE =
- new Info(Opcodes.FILLED_NEW_ARRAY_RANGE,
+ new Info(Opcodes.FILLED_NEW_ARRAY_RANGE, "filled-new-array/range",
InstructionCodec.FORMAT_3RC, IndexType.TYPE_REF);
public static final Info FILL_ARRAY_DATA =
- new Info(Opcodes.FILL_ARRAY_DATA,
+ new Info(Opcodes.FILL_ARRAY_DATA, "fill-array-data",
InstructionCodec.FORMAT_31T, null);
public static final Info THROW =
- new Info(Opcodes.THROW,
+ new Info(Opcodes.THROW, "throw",
InstructionCodec.FORMAT_11X, null);
public static final Info GOTO =
- new Info(Opcodes.GOTO,
+ new Info(Opcodes.GOTO, "goto",
InstructionCodec.FORMAT_10T, null);
public static final Info GOTO_16 =
- new Info(Opcodes.GOTO_16,
+ new Info(Opcodes.GOTO_16, "goto/16",
InstructionCodec.FORMAT_20T, null);
public static final Info GOTO_32 =
- new Info(Opcodes.GOTO_32,
+ new Info(Opcodes.GOTO_32, "goto/32",
InstructionCodec.FORMAT_30T, null);
public static final Info PACKED_SWITCH =
- new Info(Opcodes.PACKED_SWITCH,
+ new Info(Opcodes.PACKED_SWITCH, "packed-switch",
InstructionCodec.FORMAT_31T, null);
public static final Info SPARSE_SWITCH =
- new Info(Opcodes.SPARSE_SWITCH,
+ new Info(Opcodes.SPARSE_SWITCH, "sparse-switch",
InstructionCodec.FORMAT_31T, null);
public static final Info CMPL_FLOAT =
- new Info(Opcodes.CMPL_FLOAT,
+ new Info(Opcodes.CMPL_FLOAT, "cmpl-float",
InstructionCodec.FORMAT_23X, null);
public static final Info CMPG_FLOAT =
- new Info(Opcodes.CMPG_FLOAT,
+ new Info(Opcodes.CMPG_FLOAT, "cmpg-float",
InstructionCodec.FORMAT_23X, null);
public static final Info CMPL_DOUBLE =
- new Info(Opcodes.CMPL_DOUBLE,
+ new Info(Opcodes.CMPL_DOUBLE, "cmpl-double",
InstructionCodec.FORMAT_23X, null);
public static final Info CMPG_DOUBLE =
- new Info(Opcodes.CMPG_DOUBLE,
+ new Info(Opcodes.CMPG_DOUBLE, "cmpg-double",
InstructionCodec.FORMAT_23X, null);
public static final Info CMP_LONG =
- new Info(Opcodes.CMP_LONG,
+ new Info(Opcodes.CMP_LONG, "cmp-long",
InstructionCodec.FORMAT_23X, null);
public static final Info IF_EQ =
- new Info(Opcodes.IF_EQ,
+ new Info(Opcodes.IF_EQ, "if-eq",
InstructionCodec.FORMAT_22T, null);
public static final Info IF_NE =
- new Info(Opcodes.IF_NE,
+ new Info(Opcodes.IF_NE, "if-ne",
InstructionCodec.FORMAT_22T, null);
public static final Info IF_LT =
- new Info(Opcodes.IF_LT,
+ new Info(Opcodes.IF_LT, "if-lt",
InstructionCodec.FORMAT_22T, null);
public static final Info IF_GE =
- new Info(Opcodes.IF_GE,
+ new Info(Opcodes.IF_GE, "if-ge",
InstructionCodec.FORMAT_22T, null);
public static final Info IF_GT =
- new Info(Opcodes.IF_GT,
+ new Info(Opcodes.IF_GT, "if-gt",
InstructionCodec.FORMAT_22T, null);
public static final Info IF_LE =
- new Info(Opcodes.IF_LE,
+ new Info(Opcodes.IF_LE, "if-le",
InstructionCodec.FORMAT_22T, null);
public static final Info IF_EQZ =
- new Info(Opcodes.IF_EQZ,
+ new Info(Opcodes.IF_EQZ, "if-eqz",
InstructionCodec.FORMAT_21T, null);
public static final Info IF_NEZ =
- new Info(Opcodes.IF_NEZ,
+ new Info(Opcodes.IF_NEZ, "if-nez",
InstructionCodec.FORMAT_21T, null);
public static final Info IF_LTZ =
- new Info(Opcodes.IF_LTZ,
+ new Info(Opcodes.IF_LTZ, "if-ltz",
InstructionCodec.FORMAT_21T, null);
public static final Info IF_GEZ =
- new Info(Opcodes.IF_GEZ,
+ new Info(Opcodes.IF_GEZ, "if-gez",
InstructionCodec.FORMAT_21T, null);
public static final Info IF_GTZ =
- new Info(Opcodes.IF_GTZ,
+ new Info(Opcodes.IF_GTZ, "if-gtz",
InstructionCodec.FORMAT_21T, null);
public static final Info IF_LEZ =
- new Info(Opcodes.IF_LEZ,
+ new Info(Opcodes.IF_LEZ, "if-lez",
InstructionCodec.FORMAT_21T, null);
public static final Info AGET =
- new Info(Opcodes.AGET,
+ new Info(Opcodes.AGET, "aget",
InstructionCodec.FORMAT_23X, null);
public static final Info AGET_WIDE =
- new Info(Opcodes.AGET_WIDE,
+ new Info(Opcodes.AGET_WIDE, "aget-wide",
InstructionCodec.FORMAT_23X, null);
public static final Info AGET_OBJECT =
- new Info(Opcodes.AGET_OBJECT,
+ new Info(Opcodes.AGET_OBJECT, "aget-object",
InstructionCodec.FORMAT_23X, null);
public static final Info AGET_BOOLEAN =
- new Info(Opcodes.AGET_BOOLEAN,
+ new Info(Opcodes.AGET_BOOLEAN, "aget-boolean",
InstructionCodec.FORMAT_23X, null);
public static final Info AGET_BYTE =
- new Info(Opcodes.AGET_BYTE,
+ new Info(Opcodes.AGET_BYTE, "aget-byte",
InstructionCodec.FORMAT_23X, null);
public static final Info AGET_CHAR =
- new Info(Opcodes.AGET_CHAR,
+ new Info(Opcodes.AGET_CHAR, "aget-char",
InstructionCodec.FORMAT_23X, null);
public static final Info AGET_SHORT =
- new Info(Opcodes.AGET_SHORT,
+ new Info(Opcodes.AGET_SHORT, "aget-short",
InstructionCodec.FORMAT_23X, null);
public static final Info APUT =
- new Info(Opcodes.APUT,
+ new Info(Opcodes.APUT, "aput",
InstructionCodec.FORMAT_23X, null);
public static final Info APUT_WIDE =
- new Info(Opcodes.APUT_WIDE,
+ new Info(Opcodes.APUT_WIDE, "aput-wide",
InstructionCodec.FORMAT_23X, null);
public static final Info APUT_OBJECT =
- new Info(Opcodes.APUT_OBJECT,
+ new Info(Opcodes.APUT_OBJECT, "aput-object",
InstructionCodec.FORMAT_23X, null);
public static final Info APUT_BOOLEAN =
- new Info(Opcodes.APUT_BOOLEAN,
+ new Info(Opcodes.APUT_BOOLEAN, "aput-boolean",
InstructionCodec.FORMAT_23X, null);
public static final Info APUT_BYTE =
- new Info(Opcodes.APUT_BYTE,
+ new Info(Opcodes.APUT_BYTE, "aput-byte",
InstructionCodec.FORMAT_23X, null);
public static final Info APUT_CHAR =
- new Info(Opcodes.APUT_CHAR,
+ new Info(Opcodes.APUT_CHAR, "aput-char",
InstructionCodec.FORMAT_23X, null);
public static final Info APUT_SHORT =
- new Info(Opcodes.APUT_SHORT,
+ new Info(Opcodes.APUT_SHORT, "aput-short",
InstructionCodec.FORMAT_23X, null);
public static final Info IGET =
- new Info(Opcodes.IGET,
+ new Info(Opcodes.IGET, "iget",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IGET_WIDE =
- new Info(Opcodes.IGET_WIDE,
+ new Info(Opcodes.IGET_WIDE, "iget-wide",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IGET_OBJECT =
- new Info(Opcodes.IGET_OBJECT,
+ new Info(Opcodes.IGET_OBJECT, "iget-object",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IGET_BOOLEAN =
- new Info(Opcodes.IGET_BOOLEAN,
+ new Info(Opcodes.IGET_BOOLEAN, "iget-boolean",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IGET_BYTE =
- new Info(Opcodes.IGET_BYTE,
+ new Info(Opcodes.IGET_BYTE, "iget-byte",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IGET_CHAR =
- new Info(Opcodes.IGET_CHAR,
+ new Info(Opcodes.IGET_CHAR, "iget-char",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IGET_SHORT =
- new Info(Opcodes.IGET_SHORT,
+ new Info(Opcodes.IGET_SHORT, "iget-short",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IPUT =
- new Info(Opcodes.IPUT,
+ new Info(Opcodes.IPUT, "iput",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IPUT_WIDE =
- new Info(Opcodes.IPUT_WIDE,
+ new Info(Opcodes.IPUT_WIDE, "iput-wide",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IPUT_OBJECT =
- new Info(Opcodes.IPUT_OBJECT,
+ new Info(Opcodes.IPUT_OBJECT, "iput-object",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IPUT_BOOLEAN =
- new Info(Opcodes.IPUT_BOOLEAN,
+ new Info(Opcodes.IPUT_BOOLEAN, "iput-boolean",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IPUT_BYTE =
- new Info(Opcodes.IPUT_BYTE,
+ new Info(Opcodes.IPUT_BYTE, "iput-byte",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IPUT_CHAR =
- new Info(Opcodes.IPUT_CHAR,
+ new Info(Opcodes.IPUT_CHAR, "iput-char",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info IPUT_SHORT =
- new Info(Opcodes.IPUT_SHORT,
+ new Info(Opcodes.IPUT_SHORT, "iput-short",
InstructionCodec.FORMAT_22C, IndexType.FIELD_REF);
public static final Info SGET =
- new Info(Opcodes.SGET,
+ new Info(Opcodes.SGET, "sget",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SGET_WIDE =
- new Info(Opcodes.SGET_WIDE,
+ new Info(Opcodes.SGET_WIDE, "sget-wide",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SGET_OBJECT =
- new Info(Opcodes.SGET_OBJECT,
+ new Info(Opcodes.SGET_OBJECT, "sget-object",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SGET_BOOLEAN =
- new Info(Opcodes.SGET_BOOLEAN,
+ new Info(Opcodes.SGET_BOOLEAN, "sget-boolean",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SGET_BYTE =
- new Info(Opcodes.SGET_BYTE,
+ new Info(Opcodes.SGET_BYTE, "sget-byte",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SGET_CHAR =
- new Info(Opcodes.SGET_CHAR,
+ new Info(Opcodes.SGET_CHAR, "sget-char",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SGET_SHORT =
- new Info(Opcodes.SGET_SHORT,
+ new Info(Opcodes.SGET_SHORT, "sget-short",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SPUT =
- new Info(Opcodes.SPUT,
+ new Info(Opcodes.SPUT, "sput",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SPUT_WIDE =
- new Info(Opcodes.SPUT_WIDE,
+ new Info(Opcodes.SPUT_WIDE, "sput-wide",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SPUT_OBJECT =
- new Info(Opcodes.SPUT_OBJECT,
+ new Info(Opcodes.SPUT_OBJECT, "sput-object",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SPUT_BOOLEAN =
- new Info(Opcodes.SPUT_BOOLEAN,
+ new Info(Opcodes.SPUT_BOOLEAN, "sput-boolean",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SPUT_BYTE =
- new Info(Opcodes.SPUT_BYTE,
+ new Info(Opcodes.SPUT_BYTE, "sput-byte",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SPUT_CHAR =
- new Info(Opcodes.SPUT_CHAR,
+ new Info(Opcodes.SPUT_CHAR, "sput-char",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info SPUT_SHORT =
- new Info(Opcodes.SPUT_SHORT,
+ new Info(Opcodes.SPUT_SHORT, "sput-short",
InstructionCodec.FORMAT_21C, IndexType.FIELD_REF);
public static final Info INVOKE_VIRTUAL =
- new Info(Opcodes.INVOKE_VIRTUAL,
+ new Info(Opcodes.INVOKE_VIRTUAL, "invoke-virtual",
InstructionCodec.FORMAT_35C, IndexType.METHOD_REF);
public static final Info INVOKE_SUPER =
- new Info(Opcodes.INVOKE_SUPER,
+ new Info(Opcodes.INVOKE_SUPER, "invoke-super",
InstructionCodec.FORMAT_35C, IndexType.METHOD_REF);
public static final Info INVOKE_DIRECT =
- new Info(Opcodes.INVOKE_DIRECT,
+ new Info(Opcodes.INVOKE_DIRECT, "invoke-direct",
InstructionCodec.FORMAT_35C, IndexType.METHOD_REF);
public static final Info INVOKE_STATIC =
- new Info(Opcodes.INVOKE_STATIC,
+ new Info(Opcodes.INVOKE_STATIC, "invoke-static",
InstructionCodec.FORMAT_35C, IndexType.METHOD_REF);
public static final Info INVOKE_INTERFACE =
- new Info(Opcodes.INVOKE_INTERFACE,
+ new Info(Opcodes.INVOKE_INTERFACE, "invoke-interface",
InstructionCodec.FORMAT_35C, IndexType.METHOD_REF);
public static final Info INVOKE_VIRTUAL_RANGE =
- new Info(Opcodes.INVOKE_VIRTUAL_RANGE,
+ new Info(Opcodes.INVOKE_VIRTUAL_RANGE, "invoke-virtual/range",
InstructionCodec.FORMAT_3RC, IndexType.METHOD_REF);
public static final Info INVOKE_SUPER_RANGE =
- new Info(Opcodes.INVOKE_SUPER_RANGE,
+ new Info(Opcodes.INVOKE_SUPER_RANGE, "invoke-super/range",
InstructionCodec.FORMAT_3RC, IndexType.METHOD_REF);
public static final Info INVOKE_DIRECT_RANGE =
- new Info(Opcodes.INVOKE_DIRECT_RANGE,
+ new Info(Opcodes.INVOKE_DIRECT_RANGE, "invoke-direct/range",
InstructionCodec.FORMAT_3RC, IndexType.METHOD_REF);
public static final Info INVOKE_STATIC_RANGE =
- new Info(Opcodes.INVOKE_STATIC_RANGE,
+ new Info(Opcodes.INVOKE_STATIC_RANGE, "invoke-static/range",
InstructionCodec.FORMAT_3RC, IndexType.METHOD_REF);
public static final Info INVOKE_INTERFACE_RANGE =
- new Info(Opcodes.INVOKE_INTERFACE_RANGE,
+ new Info(Opcodes.INVOKE_INTERFACE_RANGE, "invoke-interface/range",
InstructionCodec.FORMAT_3RC, IndexType.METHOD_REF);
public static final Info NEG_INT =
- new Info(Opcodes.NEG_INT,
+ new Info(Opcodes.NEG_INT, "neg-int",
InstructionCodec.FORMAT_12X, null);
public static final Info NOT_INT =
- new Info(Opcodes.NOT_INT,
+ new Info(Opcodes.NOT_INT, "not-int",
InstructionCodec.FORMAT_12X, null);
public static final Info NEG_LONG =
- new Info(Opcodes.NEG_LONG,
+ new Info(Opcodes.NEG_LONG, "neg-long",
InstructionCodec.FORMAT_12X, null);
public static final Info NOT_LONG =
- new Info(Opcodes.NOT_LONG,
+ new Info(Opcodes.NOT_LONG, "not-long",
InstructionCodec.FORMAT_12X, null);
public static final Info NEG_FLOAT =
- new Info(Opcodes.NEG_FLOAT,
+ new Info(Opcodes.NEG_FLOAT, "neg-float",
InstructionCodec.FORMAT_12X, null);
public static final Info NEG_DOUBLE =
- new Info(Opcodes.NEG_DOUBLE,
+ new Info(Opcodes.NEG_DOUBLE, "neg-double",
InstructionCodec.FORMAT_12X, null);
public static final Info INT_TO_LONG =
- new Info(Opcodes.INT_TO_LONG,
+ new Info(Opcodes.INT_TO_LONG, "int-to-long",
InstructionCodec.FORMAT_12X, null);
public static final Info INT_TO_FLOAT =
- new Info(Opcodes.INT_TO_FLOAT,
+ new Info(Opcodes.INT_TO_FLOAT, "int-to-float",
InstructionCodec.FORMAT_12X, null);
public static final Info INT_TO_DOUBLE =
- new Info(Opcodes.INT_TO_DOUBLE,
+ new Info(Opcodes.INT_TO_DOUBLE, "int-to-double",
InstructionCodec.FORMAT_12X, null);
public static final Info LONG_TO_INT =
- new Info(Opcodes.LONG_TO_INT,
+ new Info(Opcodes.LONG_TO_INT, "long-to-int",
InstructionCodec.FORMAT_12X, null);
public static final Info LONG_TO_FLOAT =
- new Info(Opcodes.LONG_TO_FLOAT,
+ new Info(Opcodes.LONG_TO_FLOAT, "long-to-float",
InstructionCodec.FORMAT_12X, null);
public static final Info LONG_TO_DOUBLE =
- new Info(Opcodes.LONG_TO_DOUBLE,
+ new Info(Opcodes.LONG_TO_DOUBLE, "long-to-double",
InstructionCodec.FORMAT_12X, null);
public static final Info FLOAT_TO_INT =
- new Info(Opcodes.FLOAT_TO_INT,
+ new Info(Opcodes.FLOAT_TO_INT, "float-to-int",
InstructionCodec.FORMAT_12X, null);
public static final Info FLOAT_TO_LONG =
- new Info(Opcodes.FLOAT_TO_LONG,
+ new Info(Opcodes.FLOAT_TO_LONG, "float-to-long",
InstructionCodec.FORMAT_12X, null);
public static final Info FLOAT_TO_DOUBLE =
- new Info(Opcodes.FLOAT_TO_DOUBLE,
+ new Info(Opcodes.FLOAT_TO_DOUBLE, "float-to-double",
InstructionCodec.FORMAT_12X, null);
public static final Info DOUBLE_TO_INT =
- new Info(Opcodes.DOUBLE_TO_INT,
+ new Info(Opcodes.DOUBLE_TO_INT, "double-to-int",
InstructionCodec.FORMAT_12X, null);
public static final Info DOUBLE_TO_LONG =
- new Info(Opcodes.DOUBLE_TO_LONG,
+ new Info(Opcodes.DOUBLE_TO_LONG, "double-to-long",
InstructionCodec.FORMAT_12X, null);
public static final Info DOUBLE_TO_FLOAT =
- new Info(Opcodes.DOUBLE_TO_FLOAT,
+ new Info(Opcodes.DOUBLE_TO_FLOAT, "double-to-float",
InstructionCodec.FORMAT_12X, null);
public static final Info INT_TO_BYTE =
- new Info(Opcodes.INT_TO_BYTE,
+ new Info(Opcodes.INT_TO_BYTE, "int-to-byte",
InstructionCodec.FORMAT_12X, null);
public static final Info INT_TO_CHAR =
- new Info(Opcodes.INT_TO_CHAR,
+ new Info(Opcodes.INT_TO_CHAR, "int-to-char",
InstructionCodec.FORMAT_12X, null);
public static final Info INT_TO_SHORT =
- new Info(Opcodes.INT_TO_SHORT,
+ new Info(Opcodes.INT_TO_SHORT, "int-to-short",
InstructionCodec.FORMAT_12X, null);
public static final Info ADD_INT =
- new Info(Opcodes.ADD_INT,
+ new Info(Opcodes.ADD_INT, "add-int",
InstructionCodec.FORMAT_23X, null);
public static final Info SUB_INT =
- new Info(Opcodes.SUB_INT,
+ new Info(Opcodes.SUB_INT, "sub-int",
InstructionCodec.FORMAT_23X, null);
public static final Info MUL_INT =
- new Info(Opcodes.MUL_INT,
+ new Info(Opcodes.MUL_INT, "mul-int",
InstructionCodec.FORMAT_23X, null);
public static final Info DIV_INT =
- new Info(Opcodes.DIV_INT,
+ new Info(Opcodes.DIV_INT, "div-int",
InstructionCodec.FORMAT_23X, null);
public static final Info REM_INT =
- new Info(Opcodes.REM_INT,
+ new Info(Opcodes.REM_INT, "rem-int",
InstructionCodec.FORMAT_23X, null);
public static final Info AND_INT =
- new Info(Opcodes.AND_INT,
+ new Info(Opcodes.AND_INT, "and-int",
InstructionCodec.FORMAT_23X, null);
public static final Info OR_INT =
- new Info(Opcodes.OR_INT,
+ new Info(Opcodes.OR_INT, "or-int",
InstructionCodec.FORMAT_23X, null);
public static final Info XOR_INT =
- new Info(Opcodes.XOR_INT,
+ new Info(Opcodes.XOR_INT, "xor-int",
InstructionCodec.FORMAT_23X, null);
public static final Info SHL_INT =
- new Info(Opcodes.SHL_INT,
+ new Info(Opcodes.SHL_INT, "shl-int",
InstructionCodec.FORMAT_23X, null);
public static final Info SHR_INT =
- new Info(Opcodes.SHR_INT,
+ new Info(Opcodes.SHR_INT, "shr-int",
InstructionCodec.FORMAT_23X, null);
public static final Info USHR_INT =
- new Info(Opcodes.USHR_INT,
+ new Info(Opcodes.USHR_INT, "ushr-int",
InstructionCodec.FORMAT_23X, null);
public static final Info ADD_LONG =
- new Info(Opcodes.ADD_LONG,
+ new Info(Opcodes.ADD_LONG, "add-long",
InstructionCodec.FORMAT_23X, null);
public static final Info SUB_LONG =
- new Info(Opcodes.SUB_LONG,
+ new Info(Opcodes.SUB_LONG, "sub-long",
InstructionCodec.FORMAT_23X, null);
public static final Info MUL_LONG =
- new Info(Opcodes.MUL_LONG,
+ new Info(Opcodes.MUL_LONG, "mul-long",
InstructionCodec.FORMAT_23X, null);
public static final Info DIV_LONG =
- new Info(Opcodes.DIV_LONG,
+ new Info(Opcodes.DIV_LONG, "div-long",
InstructionCodec.FORMAT_23X, null);
public static final Info REM_LONG =
- new Info(Opcodes.REM_LONG,
+ new Info(Opcodes.REM_LONG, "rem-long",
InstructionCodec.FORMAT_23X, null);
public static final Info AND_LONG =
- new Info(Opcodes.AND_LONG,
+ new Info(Opcodes.AND_LONG, "and-long",
InstructionCodec.FORMAT_23X, null);
public static final Info OR_LONG =
- new Info(Opcodes.OR_LONG,
+ new Info(Opcodes.OR_LONG, "or-long",
InstructionCodec.FORMAT_23X, null);
public static final Info XOR_LONG =
- new Info(Opcodes.XOR_LONG,
+ new Info(Opcodes.XOR_LONG, "xor-long",
InstructionCodec.FORMAT_23X, null);
public static final Info SHL_LONG =
- new Info(Opcodes.SHL_LONG,
+ new Info(Opcodes.SHL_LONG, "shl-long",
InstructionCodec.FORMAT_23X, null);
public static final Info SHR_LONG =
- new Info(Opcodes.SHR_LONG,
+ new Info(Opcodes.SHR_LONG, "shr-long",
InstructionCodec.FORMAT_23X, null);
public static final Info USHR_LONG =
- new Info(Opcodes.USHR_LONG,
+ new Info(Opcodes.USHR_LONG, "ushr-long",
InstructionCodec.FORMAT_23X, null);
public static final Info ADD_FLOAT =
- new Info(Opcodes.ADD_FLOAT,
+ new Info(Opcodes.ADD_FLOAT, "add-float",
InstructionCodec.FORMAT_23X, null);
public static final Info SUB_FLOAT =
- new Info(Opcodes.SUB_FLOAT,
+ new Info(Opcodes.SUB_FLOAT, "sub-float",
InstructionCodec.FORMAT_23X, null);
public static final Info MUL_FLOAT =
- new Info(Opcodes.MUL_FLOAT,
+ new Info(Opcodes.MUL_FLOAT, "mul-float",
InstructionCodec.FORMAT_23X, null);
public static final Info DIV_FLOAT =
- new Info(Opcodes.DIV_FLOAT,
+ new Info(Opcodes.DIV_FLOAT, "div-float",
InstructionCodec.FORMAT_23X, null);
public static final Info REM_FLOAT =
- new Info(Opcodes.REM_FLOAT,
+ new Info(Opcodes.REM_FLOAT, "rem-float",
InstructionCodec.FORMAT_23X, null);
public static final Info ADD_DOUBLE =
- new Info(Opcodes.ADD_DOUBLE,
+ new Info(Opcodes.ADD_DOUBLE, "add-double",
InstructionCodec.FORMAT_23X, null);
public static final Info SUB_DOUBLE =
- new Info(Opcodes.SUB_DOUBLE,
+ new Info(Opcodes.SUB_DOUBLE, "sub-double",
InstructionCodec.FORMAT_23X, null);
public static final Info MUL_DOUBLE =
- new Info(Opcodes.MUL_DOUBLE,
+ new Info(Opcodes.MUL_DOUBLE, "mul-double",
InstructionCodec.FORMAT_23X, null);
public static final Info DIV_DOUBLE =
- new Info(Opcodes.DIV_DOUBLE,
+ new Info(Opcodes.DIV_DOUBLE, "div-double",
InstructionCodec.FORMAT_23X, null);
public static final Info REM_DOUBLE =
- new Info(Opcodes.REM_DOUBLE,
+ new Info(Opcodes.REM_DOUBLE, "rem-double",
InstructionCodec.FORMAT_23X, null);
public static final Info ADD_INT_2ADDR =
- new Info(Opcodes.ADD_INT_2ADDR,
+ new Info(Opcodes.ADD_INT_2ADDR, "add-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SUB_INT_2ADDR =
- new Info(Opcodes.SUB_INT_2ADDR,
+ new Info(Opcodes.SUB_INT_2ADDR, "sub-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info MUL_INT_2ADDR =
- new Info(Opcodes.MUL_INT_2ADDR,
+ new Info(Opcodes.MUL_INT_2ADDR, "mul-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info DIV_INT_2ADDR =
- new Info(Opcodes.DIV_INT_2ADDR,
+ new Info(Opcodes.DIV_INT_2ADDR, "div-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info REM_INT_2ADDR =
- new Info(Opcodes.REM_INT_2ADDR,
+ new Info(Opcodes.REM_INT_2ADDR, "rem-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info AND_INT_2ADDR =
- new Info(Opcodes.AND_INT_2ADDR,
+ new Info(Opcodes.AND_INT_2ADDR, "and-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info OR_INT_2ADDR =
- new Info(Opcodes.OR_INT_2ADDR,
+ new Info(Opcodes.OR_INT_2ADDR, "or-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info XOR_INT_2ADDR =
- new Info(Opcodes.XOR_INT_2ADDR,
+ new Info(Opcodes.XOR_INT_2ADDR, "xor-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SHL_INT_2ADDR =
- new Info(Opcodes.SHL_INT_2ADDR,
+ new Info(Opcodes.SHL_INT_2ADDR, "shl-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SHR_INT_2ADDR =
- new Info(Opcodes.SHR_INT_2ADDR,
+ new Info(Opcodes.SHR_INT_2ADDR, "shr-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info USHR_INT_2ADDR =
- new Info(Opcodes.USHR_INT_2ADDR,
+ new Info(Opcodes.USHR_INT_2ADDR, "ushr-int/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info ADD_LONG_2ADDR =
- new Info(Opcodes.ADD_LONG_2ADDR,
+ new Info(Opcodes.ADD_LONG_2ADDR, "add-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SUB_LONG_2ADDR =
- new Info(Opcodes.SUB_LONG_2ADDR,
+ new Info(Opcodes.SUB_LONG_2ADDR, "sub-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info MUL_LONG_2ADDR =
- new Info(Opcodes.MUL_LONG_2ADDR,
+ new Info(Opcodes.MUL_LONG_2ADDR, "mul-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info DIV_LONG_2ADDR =
- new Info(Opcodes.DIV_LONG_2ADDR,
+ new Info(Opcodes.DIV_LONG_2ADDR, "div-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info REM_LONG_2ADDR =
- new Info(Opcodes.REM_LONG_2ADDR,
+ new Info(Opcodes.REM_LONG_2ADDR, "rem-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info AND_LONG_2ADDR =
- new Info(Opcodes.AND_LONG_2ADDR,
+ new Info(Opcodes.AND_LONG_2ADDR, "and-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info OR_LONG_2ADDR =
- new Info(Opcodes.OR_LONG_2ADDR,
+ new Info(Opcodes.OR_LONG_2ADDR, "or-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info XOR_LONG_2ADDR =
- new Info(Opcodes.XOR_LONG_2ADDR,
+ new Info(Opcodes.XOR_LONG_2ADDR, "xor-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SHL_LONG_2ADDR =
- new Info(Opcodes.SHL_LONG_2ADDR,
+ new Info(Opcodes.SHL_LONG_2ADDR, "shl-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SHR_LONG_2ADDR =
- new Info(Opcodes.SHR_LONG_2ADDR,
+ new Info(Opcodes.SHR_LONG_2ADDR, "shr-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info USHR_LONG_2ADDR =
- new Info(Opcodes.USHR_LONG_2ADDR,
+ new Info(Opcodes.USHR_LONG_2ADDR, "ushr-long/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info ADD_FLOAT_2ADDR =
- new Info(Opcodes.ADD_FLOAT_2ADDR,
+ new Info(Opcodes.ADD_FLOAT_2ADDR, "add-float/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SUB_FLOAT_2ADDR =
- new Info(Opcodes.SUB_FLOAT_2ADDR,
+ new Info(Opcodes.SUB_FLOAT_2ADDR, "sub-float/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info MUL_FLOAT_2ADDR =
- new Info(Opcodes.MUL_FLOAT_2ADDR,
+ new Info(Opcodes.MUL_FLOAT_2ADDR, "mul-float/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info DIV_FLOAT_2ADDR =
- new Info(Opcodes.DIV_FLOAT_2ADDR,
+ new Info(Opcodes.DIV_FLOAT_2ADDR, "div-float/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info REM_FLOAT_2ADDR =
- new Info(Opcodes.REM_FLOAT_2ADDR,
+ new Info(Opcodes.REM_FLOAT_2ADDR, "rem-float/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info ADD_DOUBLE_2ADDR =
- new Info(Opcodes.ADD_DOUBLE_2ADDR,
+ new Info(Opcodes.ADD_DOUBLE_2ADDR, "add-double/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info SUB_DOUBLE_2ADDR =
- new Info(Opcodes.SUB_DOUBLE_2ADDR,
+ new Info(Opcodes.SUB_DOUBLE_2ADDR, "sub-double/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info MUL_DOUBLE_2ADDR =
- new Info(Opcodes.MUL_DOUBLE_2ADDR,
+ new Info(Opcodes.MUL_DOUBLE_2ADDR, "mul-double/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info DIV_DOUBLE_2ADDR =
- new Info(Opcodes.DIV_DOUBLE_2ADDR,
+ new Info(Opcodes.DIV_DOUBLE_2ADDR, "div-double/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info REM_DOUBLE_2ADDR =
- new Info(Opcodes.REM_DOUBLE_2ADDR,
+ new Info(Opcodes.REM_DOUBLE_2ADDR, "rem-double/2addr",
InstructionCodec.FORMAT_12X, null);
public static final Info ADD_INT_LIT16 =
- new Info(Opcodes.ADD_INT_LIT16,
+ new Info(Opcodes.ADD_INT_LIT16, "add-int/lit16",
InstructionCodec.FORMAT_22S, null);
public static final Info RSUB_INT =
- new Info(Opcodes.RSUB_INT,
+ new Info(Opcodes.RSUB_INT, "rsub-int",
InstructionCodec.FORMAT_22S, null);
public static final Info MUL_INT_LIT16 =
- new Info(Opcodes.MUL_INT_LIT16,
+ new Info(Opcodes.MUL_INT_LIT16, "mul-int/lit16",
InstructionCodec.FORMAT_22S, null);
public static final Info DIV_INT_LIT16 =
- new Info(Opcodes.DIV_INT_LIT16,
+ new Info(Opcodes.DIV_INT_LIT16, "div-int/lit16",
InstructionCodec.FORMAT_22S, null);
public static final Info REM_INT_LIT16 =
- new Info(Opcodes.REM_INT_LIT16,
+ new Info(Opcodes.REM_INT_LIT16, "rem-int/lit16",
InstructionCodec.FORMAT_22S, null);
public static final Info AND_INT_LIT16 =
- new Info(Opcodes.AND_INT_LIT16,
+ new Info(Opcodes.AND_INT_LIT16, "and-int/lit16",
InstructionCodec.FORMAT_22S, null);
public static final Info OR_INT_LIT16 =
- new Info(Opcodes.OR_INT_LIT16,
+ new Info(Opcodes.OR_INT_LIT16, "or-int/lit16",
InstructionCodec.FORMAT_22S, null);
public static final Info XOR_INT_LIT16 =
- new Info(Opcodes.XOR_INT_LIT16,
+ new Info(Opcodes.XOR_INT_LIT16, "xor-int/lit16",
InstructionCodec.FORMAT_22S, null);
public static final Info ADD_INT_LIT8 =
- new Info(Opcodes.ADD_INT_LIT8,
+ new Info(Opcodes.ADD_INT_LIT8, "add-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info RSUB_INT_LIT8 =
- new Info(Opcodes.RSUB_INT_LIT8,
+ new Info(Opcodes.RSUB_INT_LIT8, "rsub-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info MUL_INT_LIT8 =
- new Info(Opcodes.MUL_INT_LIT8,
+ new Info(Opcodes.MUL_INT_LIT8, "mul-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info DIV_INT_LIT8 =
- new Info(Opcodes.DIV_INT_LIT8,
+ new Info(Opcodes.DIV_INT_LIT8, "div-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info REM_INT_LIT8 =
- new Info(Opcodes.REM_INT_LIT8,
+ new Info(Opcodes.REM_INT_LIT8, "rem-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info AND_INT_LIT8 =
- new Info(Opcodes.AND_INT_LIT8,
+ new Info(Opcodes.AND_INT_LIT8, "and-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info OR_INT_LIT8 =
- new Info(Opcodes.OR_INT_LIT8,
+ new Info(Opcodes.OR_INT_LIT8, "or-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info XOR_INT_LIT8 =
- new Info(Opcodes.XOR_INT_LIT8,
+ new Info(Opcodes.XOR_INT_LIT8, "xor-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info SHL_INT_LIT8 =
- new Info(Opcodes.SHL_INT_LIT8,
+ new Info(Opcodes.SHL_INT_LIT8, "shl-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info SHR_INT_LIT8 =
- new Info(Opcodes.SHR_INT_LIT8,
+ new Info(Opcodes.SHR_INT_LIT8, "shr-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info USHR_INT_LIT8 =
- new Info(Opcodes.USHR_INT_LIT8,
+ new Info(Opcodes.USHR_INT_LIT8, "ushr-int/lit8",
InstructionCodec.FORMAT_22B, null);
public static final Info CONST_CLASS_JUMBO =
- new Info(Opcodes.CONST_CLASS_JUMBO,
+ new Info(Opcodes.CONST_CLASS_JUMBO, "const-class/jumbo",
InstructionCodec.FORMAT_41C, IndexType.TYPE_REF);
public static final Info CHECK_CAST_JUMBO =
- new Info(Opcodes.CHECK_CAST_JUMBO,
+ new Info(Opcodes.CHECK_CAST_JUMBO, "check-cast/jumbo",
InstructionCodec.FORMAT_41C, IndexType.TYPE_REF);
public static final Info INSTANCE_OF_JUMBO =
- new Info(Opcodes.INSTANCE_OF_JUMBO,
+ new Info(Opcodes.INSTANCE_OF_JUMBO, "instance-of/jumbo",
InstructionCodec.FORMAT_52C, IndexType.TYPE_REF);
public static final Info NEW_INSTANCE_JUMBO =
- new Info(Opcodes.NEW_INSTANCE_JUMBO,
+ new Info(Opcodes.NEW_INSTANCE_JUMBO, "new-instance/jumbo",
InstructionCodec.FORMAT_41C, IndexType.TYPE_REF);
public static final Info NEW_ARRAY_JUMBO =
- new Info(Opcodes.NEW_ARRAY_JUMBO,
+ new Info(Opcodes.NEW_ARRAY_JUMBO, "new-array/jumbo",
InstructionCodec.FORMAT_52C, IndexType.TYPE_REF);
public static final Info FILLED_NEW_ARRAY_JUMBO =
- new Info(Opcodes.FILLED_NEW_ARRAY_JUMBO,
+ new Info(Opcodes.FILLED_NEW_ARRAY_JUMBO, "filled-new-array/jumbo",
InstructionCodec.FORMAT_5RC, IndexType.TYPE_REF);
public static final Info IGET_JUMBO =
- new Info(Opcodes.IGET_JUMBO,
+ new Info(Opcodes.IGET_JUMBO, "iget/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IGET_WIDE_JUMBO =
- new Info(Opcodes.IGET_WIDE_JUMBO,
+ new Info(Opcodes.IGET_WIDE_JUMBO, "iget-wide/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IGET_OBJECT_JUMBO =
- new Info(Opcodes.IGET_OBJECT_JUMBO,
+ new Info(Opcodes.IGET_OBJECT_JUMBO, "iget-object/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IGET_BOOLEAN_JUMBO =
- new Info(Opcodes.IGET_BOOLEAN_JUMBO,
+ new Info(Opcodes.IGET_BOOLEAN_JUMBO, "iget-boolean/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IGET_BYTE_JUMBO =
- new Info(Opcodes.IGET_BYTE_JUMBO,
+ new Info(Opcodes.IGET_BYTE_JUMBO, "iget-byte/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IGET_CHAR_JUMBO =
- new Info(Opcodes.IGET_CHAR_JUMBO,
+ new Info(Opcodes.IGET_CHAR_JUMBO, "iget-char/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IGET_SHORT_JUMBO =
- new Info(Opcodes.IGET_SHORT_JUMBO,
+ new Info(Opcodes.IGET_SHORT_JUMBO, "iget-short/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IPUT_JUMBO =
- new Info(Opcodes.IPUT_JUMBO,
+ new Info(Opcodes.IPUT_JUMBO, "iput/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IPUT_WIDE_JUMBO =
- new Info(Opcodes.IPUT_WIDE_JUMBO,
+ new Info(Opcodes.IPUT_WIDE_JUMBO, "iput-wide/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IPUT_OBJECT_JUMBO =
- new Info(Opcodes.IPUT_OBJECT_JUMBO,
+ new Info(Opcodes.IPUT_OBJECT_JUMBO, "iput-object/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IPUT_BOOLEAN_JUMBO =
- new Info(Opcodes.IPUT_BOOLEAN_JUMBO,
+ new Info(Opcodes.IPUT_BOOLEAN_JUMBO, "iput-boolean/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IPUT_BYTE_JUMBO =
- new Info(Opcodes.IPUT_BYTE_JUMBO,
+ new Info(Opcodes.IPUT_BYTE_JUMBO, "iput-byte/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IPUT_CHAR_JUMBO =
- new Info(Opcodes.IPUT_CHAR_JUMBO,
+ new Info(Opcodes.IPUT_CHAR_JUMBO, "iput-char/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info IPUT_SHORT_JUMBO =
- new Info(Opcodes.IPUT_SHORT_JUMBO,
+ new Info(Opcodes.IPUT_SHORT_JUMBO, "iput-short/jumbo",
InstructionCodec.FORMAT_52C, IndexType.FIELD_REF);
public static final Info SGET_JUMBO =
- new Info(Opcodes.SGET_JUMBO,
+ new Info(Opcodes.SGET_JUMBO, "sget/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SGET_WIDE_JUMBO =
- new Info(Opcodes.SGET_WIDE_JUMBO,
+ new Info(Opcodes.SGET_WIDE_JUMBO, "sget-wide/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SGET_OBJECT_JUMBO =
- new Info(Opcodes.SGET_OBJECT_JUMBO,
+ new Info(Opcodes.SGET_OBJECT_JUMBO, "sget-object/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SGET_BOOLEAN_JUMBO =
- new Info(Opcodes.SGET_BOOLEAN_JUMBO,
+ new Info(Opcodes.SGET_BOOLEAN_JUMBO, "sget-boolean/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SGET_BYTE_JUMBO =
- new Info(Opcodes.SGET_BYTE_JUMBO,
+ new Info(Opcodes.SGET_BYTE_JUMBO, "sget-byte/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SGET_CHAR_JUMBO =
- new Info(Opcodes.SGET_CHAR_JUMBO,
+ new Info(Opcodes.SGET_CHAR_JUMBO, "sget-char/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SGET_SHORT_JUMBO =
- new Info(Opcodes.SGET_SHORT_JUMBO,
+ new Info(Opcodes.SGET_SHORT_JUMBO, "sget-short/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SPUT_JUMBO =
- new Info(Opcodes.SPUT_JUMBO,
+ new Info(Opcodes.SPUT_JUMBO, "sput/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SPUT_WIDE_JUMBO =
- new Info(Opcodes.SPUT_WIDE_JUMBO,
+ new Info(Opcodes.SPUT_WIDE_JUMBO, "sput-wide/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SPUT_OBJECT_JUMBO =
- new Info(Opcodes.SPUT_OBJECT_JUMBO,
+ new Info(Opcodes.SPUT_OBJECT_JUMBO, "sput-object/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SPUT_BOOLEAN_JUMBO =
- new Info(Opcodes.SPUT_BOOLEAN_JUMBO,
+ new Info(Opcodes.SPUT_BOOLEAN_JUMBO, "sput-boolean/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SPUT_BYTE_JUMBO =
- new Info(Opcodes.SPUT_BYTE_JUMBO,
+ new Info(Opcodes.SPUT_BYTE_JUMBO, "sput-byte/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SPUT_CHAR_JUMBO =
- new Info(Opcodes.SPUT_CHAR_JUMBO,
+ new Info(Opcodes.SPUT_CHAR_JUMBO, "sput-char/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info SPUT_SHORT_JUMBO =
- new Info(Opcodes.SPUT_SHORT_JUMBO,
+ new Info(Opcodes.SPUT_SHORT_JUMBO, "sput-short/jumbo",
InstructionCodec.FORMAT_41C, IndexType.FIELD_REF);
public static final Info INVOKE_VIRTUAL_JUMBO =
- new Info(Opcodes.INVOKE_VIRTUAL_JUMBO,
+ new Info(Opcodes.INVOKE_VIRTUAL_JUMBO, "invoke-virtual/jumbo",
InstructionCodec.FORMAT_5RC, IndexType.METHOD_REF);
public static final Info INVOKE_SUPER_JUMBO =
- new Info(Opcodes.INVOKE_SUPER_JUMBO,
+ new Info(Opcodes.INVOKE_SUPER_JUMBO, "invoke-super/jumbo",
InstructionCodec.FORMAT_5RC, IndexType.METHOD_REF);
public static final Info INVOKE_DIRECT_JUMBO =
- new Info(Opcodes.INVOKE_DIRECT_JUMBO,
+ new Info(Opcodes.INVOKE_DIRECT_JUMBO, "invoke-direct/jumbo",
InstructionCodec.FORMAT_5RC, IndexType.METHOD_REF);
public static final Info INVOKE_STATIC_JUMBO =
- new Info(Opcodes.INVOKE_STATIC_JUMBO,
+ new Info(Opcodes.INVOKE_STATIC_JUMBO, "invoke-static/jumbo",
InstructionCodec.FORMAT_5RC, IndexType.METHOD_REF);
public static final Info INVOKE_INTERFACE_JUMBO =
- new Info(Opcodes.INVOKE_INTERFACE_JUMBO,
+ new Info(Opcodes.INVOKE_INTERFACE_JUMBO, "invoke-interface/jumbo",
InstructionCodec.FORMAT_5RC, IndexType.METHOD_REF);
// END(opcode-info-defs)
@@ -1079,6 +1089,9 @@ public final class OpcodeInfo {
static {
INFO = new Info[Opcodes.MAX_VALUE - Opcodes.MIN_VALUE + 1];
+ // TODO: Stop using this constant.
+ set(SPECIAL_FORMAT);
+
// TODO: These payload opcodes should be generated by opcode-gen.
set(PACKED_SWITCH_PAYLOAD);
set(SPARSE_SWITCH_PAYLOAD);
@@ -1376,10 +1389,10 @@ public final class OpcodeInfo {
}
/**
- * Gets the {@link IndexType} for the given opcode value.
+ * Gets the name of the given opcode.
*/
- public static IndexType getIndexType(int opcode) {
- return get(opcode).getIndexType();
+ public static String getName(int opcode) {
+ return get(opcode).getName();
}
/**
@@ -1391,6 +1404,13 @@ public final class OpcodeInfo {
}
/**
+ * Gets the {@link IndexType} for the given opcode value.
+ */
+ public static IndexType getIndexType(int opcode) {
+ return get(opcode).getIndexType();
+ }
+
+ /**
* Puts the given opcode into the table of all ops.
*
* @param opcode non-null; the opcode
@@ -1405,11 +1425,14 @@ public final class OpcodeInfo {
*/
public static class Info {
private final int opcode;
+ private final String name;
private final InstructionCodec format;
private final IndexType indexType;
- public Info(int opcode, InstructionCodec format, IndexType indexType) {
+ public Info(int opcode, String name, InstructionCodec format,
+ IndexType indexType) {
this.opcode = opcode;
+ this.name = name;
this.format = format;
this.indexType = indexType;
}
@@ -1418,6 +1441,10 @@ public final class OpcodeInfo {
return opcode;
}
+ public String getName() {
+ return name;
+ }
+
public InstructionCodec getFormat() {
return format;
}
diff --git a/dx/src/com/android/dx/merge/InstructionTransformer.java b/dx/src/com/android/dx/merge/InstructionTransformer.java
index 27f8cf928..e0dfc9f32 100644
--- a/dx/src/com/android/dx/merge/InstructionTransformer.java
+++ b/dx/src/com/android/dx/merge/InstructionTransformer.java
@@ -19,6 +19,7 @@ package com.android.dx.merge;
import com.android.dx.dex.DexException;
import com.android.dx.io.CodeReader;
import com.android.dx.io.DecodedInstruction;
+import com.android.dx.io.OpcodeInfo;
import com.android.dx.io.ShortArrayCodeOutput;
final class InstructionTransformer {
@@ -58,15 +59,13 @@ final class InstructionTransformer {
}
private class GenericVisitor implements CodeReader.Visitor {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all, DecodedInstruction one) {
mappedInstructions[mappedAt++] = one;
}
}
private class StringVisitor implements CodeReader.Visitor {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all, DecodedInstruction one) {
int stringId = one.getIndex();
int mappedId = indexMap.adjustString(stringId);
if (mappedId > 0xFFFF) {
@@ -78,8 +77,7 @@ final class InstructionTransformer {
}
private class JumboStringVisitor implements CodeReader.Visitor {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all, DecodedInstruction one) {
throw new UnsupportedOperationException("Jumbo strings not implemented. "
+ "Due to a lack of dex files requiring jumbo strings, this class doesn't "
+ "bother to support jumbo strings!");
@@ -87,8 +85,7 @@ final class InstructionTransformer {
}
private class FieldVisitor implements CodeReader.Visitor {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all, DecodedInstruction one) {
int fieldId = one.getIndex();
int mappedId = indexMap.adjustField(fieldId);
mappedInstructions[mappedAt++] = one.withIndex(mappedId);
@@ -96,8 +93,7 @@ final class InstructionTransformer {
}
private class TypeVisitor implements CodeReader.Visitor {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all, DecodedInstruction one) {
int typeId = one.getIndex();
int mappedId = indexMap.adjustType(typeId);
mappedInstructions[mappedAt++] = one.withIndex(mappedId);
@@ -105,8 +101,7 @@ final class InstructionTransformer {
}
private class MethodVisitor implements CodeReader.Visitor {
- public void visit(CodeReader.Instruction instruction,
- DecodedInstruction[] all, DecodedInstruction one) {
+ public void visit(DecodedInstruction[] all, DecodedInstruction one) {
int methodId = one.getIndex();
int mappedId = indexMap.adjustMethod(methodId);
mappedInstructions[mappedAt++] = one.withIndex(mappedId);
diff --git a/dx/tests/118-find-usages/expected.txt b/dx/tests/118-find-usages/expected.txt
index ef735c8ec..aca2bf165 100644
--- a/dx/tests/118-find-usages/expected.txt
+++ b/dx/tests/118-find-usages/expected.txt
@@ -1,9 +1,9 @@
StreamTokenizer.nval
-LFoo;.readStreamTokenizerNval: field reference (iget-wide vA, vB, field@CCCC)
-LFoo;.writeStreamTokenizerNval: field reference (iput-wide vA, vB, field@CCCC)
+LFoo;.readStreamTokenizerNval: field reference (iget-wide)
+LFoo;.writeStreamTokenizerNval: field reference (iput-wide)
ArrayList.remove()
-LFoo;.callArrayListRemoveIndex: method reference (invoke-virtual {vD, vE, vF, vG, vA}, meth@CCCC)
-LFoo;.callArrayListRemoveValue: method reference (invoke-virtual {vD, vE, vF, vG, vA}, meth@CCCC)
+LFoo;.callArrayListRemoveIndex: method reference (invoke-virtual)
+LFoo;.callArrayListRemoveValue: method reference (invoke-virtual)
Collection.remove()
String.valueOf()
-LFoo;.callStringValueOf: method reference (invoke-static {vD, vE, vF, vG, vA}, meth@CCCC)
+LFoo;.callStringValueOf: method reference (invoke-static)
diff --git a/opcode-gen/opcode-gen.awk b/opcode-gen/opcode-gen.awk
index e269abf39..2f1a830eb 100644
--- a/opcode-gen/opcode-gen.awk
+++ b/opcode-gen/opcode-gen.awk
@@ -96,10 +96,9 @@ emission == "dops" {
printf(" public static final Dop %s =\n" \
" new Dop(Opcodes.%s, Opcodes.%s,\n" \
- " Opcodes.%s, Form%s.THE_ONE, %s,\n" \
- " \"%s\");\n\n",
+ " Opcodes.%s, Form%s.THE_ONE, %s);\n\n",
constName[i], constName[i], family[i], nextOp, format[i],
- hasResult[i], name[i]);
+ hasResult[i]);
}
}
@@ -119,9 +118,9 @@ emission == "opcode-info-defs" {
}
printf(" public static final Info %s =\n" \
- " new Info(Opcodes.%s,\n" \
+ " new Info(Opcodes.%s, \"%s\",\n" \
" InstructionCodec.FORMAT_%s, %s);\n\n", \
- constName[i], constName[i], toupper(format[i]), itype);
+ constName[i], constName[i], name[i], toupper(format[i]), itype);
}
}