/* Software Name : AsmDex
* Version : 1.0
*
* Copyright © 2012 France Télécom
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holders nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.ow2.asmdex;
/**
* Defines the Dalvik opcodes, access flags and array type codes.
*
* @author Julien Névo
*/
public interface Opcodes {
/**
* API level
*/
public static final int ASM4 = 0x40000;
/**
* Spurious accessor used by the writer when it an instruction refers to a
* class, Method or a Field not parsed yet.
*/
public static final int ACC_UNKNOWN = 0x40000;
/**
* Public
*/
public final static int ACC_PUBLIC = 0x1;
/**
* Private
*/
public final static int ACC_PRIVATE = 0x2;
/**
* Protected
*/
public final static int ACC_PROTECTED = 0x4;
/**
* Static
*/
public final static int ACC_STATIC = 0x8;
/**
* Final
*/
public final static int ACC_FINAL = 0x10;
/**
* Volatile
*/
public final static int ACC_VOLATILE = 0x40;
/**
* Bridge
*/
public final static int ACC_BRIDGE = 0x40;
/**
* Transient
*/
public final static int ACC_TRANSIENT = 0x80;
/**
* Varargs
*/
public final static int ACC_VARARGS = 0x80;
/**
* Native
*/
public final static int ACC_NATIVE = 0x100;
/**
* Interface
*/
public final static int ACC_INTERFACE = 0x200;
/**
* abstract
*/
public final static int ACC_ABSTRACT = 0x400;
/**
* Strict
*/
public final static int ACC_STRICT = 0x800;
/**
* Synthetic
*/
public final static int ACC_SYNTHETIC = 0x1000;
/**
* Annotation
*/
public final static int ACC_ANNOTATION = 0x2000;
/**
* Enum
*/
public final static int ACC_ENUM = 0x4000;
/**
* Constructor
*/
public final static int ACC_CONSTRUCTOR = 0x10000;
/**
* Synchronized
*/
public final static int ACC_DECLARED_SYNCHRONIZED = 0x20000;
/**
* Annotation visibility build
*/
public final static int VISIBILITY_BUILD = 0x00;
/**
* Annotation visibility runtime
*/
public final static int VISIBILITY_RUNTIME = 0x01;
/**
* Annotation visibility system
*/
public final static int VISIBILITY_SYSTEM = 0x02;
/**
*
*/
public final static int NO_INDEX_SIGNED = -1;
// Value formats in encoded_value encoding.
/**
* Type id for values : byte
*/
public final static int VALUE_BYTE = 0x00;
/**
* Type id for values : short
*/
public final static int VALUE_SHORT = 0x02;
/**
* Type id for values : char
*/
public final static int VALUE_CHAR = 0x03;
/**
* Type id for values : int
*/
public final static int VALUE_INT = 0x04;
/**
* Type id for values : long
*/
public final static int VALUE_LONG = 0x06;
/**
* Type id for values : float
*/
public final static int VALUE_FLOAT = 0x10;
/**
* Type id for values : double
*/
public final static int VALUE_DOUBLE = 0x11;
/**
* Type id for values : string
*/
public final static int VALUE_STRING = 0x17;
/**
* type
*/
public final static int VALUE_TYPE = 0x18;
/**
* Type id for values : field
*/
public final static int VALUE_FIELD = 0x19;
/**
* Type id for values : method
*/
public final static int VALUE_METHOD = 0x1a;
/**
* Type id for values : enum
*/
public final static int VALUE_ENUM = 0x1b;
/**
* Type id for values : array
*/
public final static int VALUE_ARRAY = 0x1c;
/**
* Type id for values : annotation
*/
public final static int VALUE_ANNOTATION = 0x1d;
/**
*Type id for values : null
*/
public final static int VALUE_NULL = 0x1e;
/**
* Type id for values : boolean
*/
public final static int VALUE_BOOLEAN = 0x1f;
// Debug_info_item constants.
/**
* Debug instruction : end sequence
*/
public final static int DBG_END_SEQUENCE = 0x00;
/**
* Debug instruction : advance pc
*/
public final static int DBG_ADVANCE_PC = 0x01;
/**
* Debug instruction : advance linie
*/
public final static int DBG_ADVANCE_LINE = 0x02;
/**
* debug instruction : start local
*/
public final static int DBG_START_LOCAL = 0x03;
/**
* Debug instruction : start local (extended)
*/
public final static int DBG_START_LOCAL_EXTENDED = 0x04;
/**
* Debug instruction : end local
*/
public final static int DBG_END_LOCAL = 0x05;
/**
* debug instruction : restart local
*/
public final static int DBG_RESTART_LOCAL = 0x06;
/**
* debug instruction : set prologue end
*/
public final static int DBG_SET_PROLOGUE_END= 0x07;
/**
* debug instruction : set epilogue begin
*/
public final static int DBG_SET_EPILOGUE_BEGIN = 0x08;
/**
* debug instruction : set file
*/
public final static int DBG_SET_FILE = 0x09;
/**
* Debug offset first special
*/
public final static int DBG_FIRST_SPECIAL = 0x0a;
/**
* Debug offset line base
*/
public final static int DBG_LINE_BASE = -4;
/**
* Debug offset line range
*/
public final static int DBG_LINE_RANGE = 15;
/**
* Header
*/
public static final int TYPE_HEADER_ITEM = 0x0000;
/**
* String id
*/
public static final int TYPE_STRING_ID_ITEM = 0x0001;
/**
* Type id
*/
public static final int TYPE_TYPE_ID_ITEM = 0x0002;
/**
* Prototype Id
*/
public static final int TYPE_PROTO_ID_ITEM = 0x0003;
/**
* Field id
*/
public static final int TYPE_FIELD_ID_ITEM = 0x0004;
/**
* Method id
*/
public static final int TYPE_METHOD_ID_ITEM = 0x0005;
/**
* Class definition
*/
public static final int TYPE_CLASS_DEF_ITEM = 0x0006;
/**
* Map list
*/
public static final int TYPE_MAP_LIST = 0x1000;
/**
* Type list
*/
public static final int TYPE_TYPE_LIST = 0x1001;
/**
* List of ref to annotation sets
*/
public static final int TYPE_ANNOTATION_SET_REF_LIST = 0x1002;
/**
* Annotation set
*/
public static final int TYPE_ANNOTATION_SET_ITEM = 0x1003;
/**
* Class data
*/
public static final int TYPE_CLASS_DATA_ITEM = 0x2000;
/**
* Code
*/
public static final int TYPE_CODE_ITEM = 0x2001;
/**
* String data
*/
public static final int TYPE_STRING_DATA_ITEM = 0x2002;
/**
* Debug info
*/
public static final int TYPE_DEBUG_INFO_ITEM = 0x2003;
/**
* Annotation
*/
public static final int TYPE_ANNOTATION_ITEM = 0x2004;
/**
* Encoded array
*/
public static final int TYPE_ENCODED_ARRAY_ITEM = 0x2005;
/**
* Annotations directory
*/
public static final int TYPE_ANNOTATIONS_DIRECTORY_ITEM = 0x2006;
// Opcodes for the Dalvik Instructions.
/**
* NOP
*/
public static final int INSN_NOP = 0x0; // visitInsn
/**
* MOVE
*/
public static final int INSN_MOVE = 0x1; // visitVarInsn
/**
* Move from 16
*/
public static final int INSN_MOVE_FROM16 = 0x2;
/**
* Move 16
*/
public static final int INSN_MOVE_16 = 0x3;
/**
* Move wide
*/
public static final int INSN_MOVE_WIDE = 0x4;
/**
* Move wide from 16
*/
public static final int INSN_MOVE_WIDE_FROM16 = 0x5;
/**
* Move wide 16
*/
public static final int INSN_MOVE_WIDE_16 = 0x6;
/**
* Move object
*/
public static final int INSN_MOVE_OBJECT = 0x7;
/**
* Move object from 16
*/
public static final int INSN_MOVE_OBJECT_FROM16 = 0x8;
/**
* Moe object 16
*/
public static final int INSN_MOVE_OBJECT_16 = 0x9;
/**
* Move result
*/
public static final int INSN_MOVE_RESULT = 0xa; // visitIntInsn
/**
* Move result wide
*/
public static final int INSN_MOVE_RESULT_WIDE = 0xb;
/**
* Move result object
*/
public static final int INSN_MOVE_RESULT_OBJECT = 0xc;
/**
* Move exception
*/
public static final int INSN_MOVE_EXCEPTION = 0xd;
/**
* Return void
*/
public static final int INSN_RETURN_VOID = 0xe; // visitInsn
/**
* Return
*/
public static final int INSN_RETURN = 0xf; // visitIntInsn
/**
* Return wide
*/
public static final int INSN_RETURN_WIDE = 0x10;
/**
* Return object
*/
public static final int INSN_RETURN_OBJECT = 0x11;
/**
* Constant 4
*/
public static final int INSN_CONST_4 = 0x12; // visitVarInsn
/**
* Constant 16
*/
public static final int INSN_CONST_16 = 0x13;
/**
* Constant
*/
public static final int INSN_CONST = 0x14;
/**
* Constant High 16
*/
public static final int INSN_CONST_HIGH16 = 0x15;
/**
* Constant Wide 16
*/
public static final int INSN_CONST_WIDE_16 = 0x16;
/**
* Constant Wide 32
*/
public static final int INSN_CONST_WIDE_32 = 0x17;
/**
* Constant Wide
*/
public static final int INSN_CONST_WIDE = 0x18;
/**
* Constant Wide High 16
*/
public static final int INSN_CONST_WIDE_HIGH16 = 0x19;
/**
* Cosntant String
*/
public static final int INSN_CONST_STRING = 0x1a; // visitStringInsn
/**
*
*/
public static final int INSN_CONST_STRING_JUMBO = 0x1b;
/**
* Constant Class
*/
public static final int INSN_CONST_CLASS = 0x1c; // visitTypeInsn
/**
* Monitor Enter
*/
public static final int INSN_MONITOR_ENTER = 0x1d; // visitIntInsn
/**
* Monitor Exit
*/
public static final int INSN_MONITOR_EXIT = 0x1e;
/**
* Check Cast
*/
public static final int INSN_CHECK_CAST = 0x1f; // visitTypeInsn
/**
* Instance of
*/
public static final int INSN_INSTANCE_OF = 0x20;
/**
* Array length
*/
public static final int INSN_ARRAY_LENGTH = 0x21; // visitArrayLengthInsn
/**
* New Instance
*/
public static final int INSN_NEW_INSTANCE = 0x22; // visitTypeInsn
/**
* New array
*/
public static final int INSN_NEW_ARRAY = 0x23;
/**
* Filled new array
*/
public static final int INSN_FILLED_NEW_ARRAY = 0x24; // visitMultiANewArrayInsn
/**
* New array range
*/
public static final int INSN_FILLED_NEW_ARRAY_RANGE = 0x25;
/**
* Fill array data
*/
public static final int INSN_FILL_ARRAY_DATA = 0x26; // visitFillArrayDataInsn
/**
* Throw
*/
public static final int INSN_THROW = 0x27; // visitIntInsn
/**
* Goto
*/
public static final int INSN_GOTO = 0x28; // visitJumpInsn
/**
* Goto 16
*/
public static final int INSN_GOTO_16 = 0x29;
/**
* Goto 32
*/
public static final int INSN_GOTO_32 = 0x2a;
/**
* Packed Switch
*/
public static final int INSN_PACKED_SWITCH_INSN = 0x2b; // visitTableSwitchInsn
/**
* Sparse switch
*/
public static final int INSN_SPARSE_SWITCH_INSN = 0x2c; // visitLookupSwitchInsn
/**
* Compare Lower Float
*/
public static final int INSN_CMPL_FLOAT = 0x2d; // visitOperationInsn
/**
* Compare Greater Float
*/
public static final int INSN_CMPG_FLOAT = 0x2e;
/**
* Compare Lower Double
*/
public static final int INSN_CMPL_DOUBLE = 0x2f;
/**
* Compare Greater Double
*/
public static final int INSN_CMPG_DOUBLE = 0x30;
/**
* Compare Long
*/
public static final int INSN_CMP_LONG = 0x31;
/**
* If eq
*/
public static final int INSN_IF_EQ = 0x32; // visitJumpInsn
/**
* If not eq
*/
public static final int INSN_IF_NE = 0x33;
/**
* If less than
*/
public static final int INSN_IF_LT = 0x34;
/**
* If greater or equal
*/
public static final int INSN_IF_GE = 0x35;
/**
* If greater
*/
public static final int INSN_IF_GT = 0x36;
/**
* If lower or equal
*/
public static final int INSN_IF_LE = 0x37;
/**
* If eq zero
*/
public static final int INSN_IF_EQZ = 0x38;
/**
* If not zero
*/
public static final int INSN_IF_NEZ = 0x39;
/**
* If less than zero
*/
public static final int INSN_IF_LTZ = 0x3a;
/**
* If greater or equal to zero
*/
public static final int INSN_IF_GEZ = 0x3b;
/**
* If greater than zero
*/
public static final int INSN_IF_GTZ = 0x3c;
/**
* If less or equal to zero
*/
public static final int INSN_IF_LEZ = 0x3d;
/**
* Array get
*/
public static final int INSN_AGET = 0x44; // visitArrayOperationInsn
/**
* Array get wide
*/
public static final int INSN_AGET_WIDE = 0x45;
/**
* Array get object
*/
public static final int INSN_AGET_OBJECT = 0x46;
/**
* Array get boolean
*/
public static final int INSN_AGET_BOOLEAN = 0x47;
/**
* Array get byte
*/
public static final int INSN_AGET_BYTE = 0x48;
/**
* Array get char
*/
public static final int INSN_AGET_CHAR = 0x49;
/**
* Array get short
*/
public static final int INSN_AGET_SHORT = 0x4a;
/**
* Array put
*/
public static final int INSN_APUT = 0x4b;
/**
* Array put wide
*/
public static final int INSN_APUT_WIDE = 0x4c;
/**
* Array put object
*/
public static final int INSN_APUT_OBJECT = 0x4d;
/**
* Array put boolean
*/
public static final int INSN_APUT_BOOLEAN = 0x4e;
/**
* Array put byte
*/
public static final int INSN_APUT_BYTE = 0x4f;
/**
* Array put char
*/
public static final int INSN_APUT_CHAR = 0x50;
/**
* Arrray put short
*/
public static final int INSN_APUT_SHORT = 0x51;
/**
* Instance field get
*/
public static final int INSN_IGET = 0x52; // visitFieldInsn
/**
* Instance field get wide
*/
public static final int INSN_IGET_WIDE = 0x53;
/**
* Instance field get object
*/
public static final int INSN_IGET_OBJECT = 0x54;
/**
* Instance field get boolean
*/
public static final int INSN_IGET_BOOLEAN = 0x55;
/**
* Instance field get byte
*/
public static final int INSN_IGET_BYTE = 0x56;
/**
* Instance field get char
*/
public static final int INSN_IGET_CHAR = 0x57;
/**
* Instance field get short
*/
public static final int INSN_IGET_SHORT = 0x58;
/**
* Instance field put
*/
public static final int INSN_IPUT = 0x59;
/**
* Instance field put wide
*/
public static final int INSN_IPUT_WIDE = 0x5a;
/**
* Instance field put object
*/
public static final int INSN_IPUT_OBJECT = 0x5b;
/**
* Instance field put boolean
*/
public static final int INSN_IPUT_BOOLEAN = 0x5c;
/**
* Instance field put byte
*/
public static final int INSN_IPUT_BYTE = 0x5d;
/**
* Instance field put char
*/
public static final int INSN_IPUT_CHAR = 0x5e;
/**
* Instance field put short
*/
public static final int INSN_IPUT_SHORT = 0x5f;
/**
* Static get
*/
public static final int INSN_SGET = 0x60;
/**
* Static get wide
*/
public static final int INSN_SGET_WIDE = 0x61;
/**
* Static get object
*/
public static final int INSN_SGET_OBJECT = 0x62;
/**
* Static get boolean
*/
public static final int INSN_SGET_BOOLEAN = 0x63;
/**
* Static get byte
*/
public static final int INSN_SGET_BYTE = 0x64;
/**
* Static get char
*/
public static final int INSN_SGET_CHAR = 0x65;
/**
* Static get short
*/
public static final int INSN_SGET_SHORT = 0x66;
/**
* Static put
*/
public static final int INSN_SPUT = 0x67;
/**
* Static put wide
*/
public static final int INSN_SPUT_WIDE = 0x68;
/**
* Static put object
*/
public static final int INSN_SPUT_OBJECT = 0x69;
/**
* Static put boolean
*/
public static final int INSN_SPUT_BOOLEAN = 0x6a;
/**
* Static put byte
*/
public static final int INSN_SPUT_BYTE = 0x6b;
/**
* Static put char
*/
public static final int INSN_SPUT_CHAR = 0x6c;
/**
* Static put short
*/
public static final int INSN_SPUT_SHORT = 0x6d;
/**
* Invoke virtual
*/
public static final int INSN_INVOKE_VIRTUAL = 0x6e; // visitMethodInsn
/**
* Invoke super
*/
public static final int INSN_INVOKE_SUPER = 0x6f;
/**
* Invoke direct
*/
public static final int INSN_INVOKE_DIRECT = 0x70;
/**
* Invoke static
*/
public static final int INSN_INVOKE_STATIC = 0x71;
/**
* Invoke interface
*/
public static final int INSN_INVOKE_INTERFACE = 0x72;
/**
* Invoke virtual range
*/
public static final int INSN_INVOKE_VIRTUAL_RANGE = 0x74;
/**
* Invoke super range
*/
public static final int INSN_INVOKE_SUPER_RANGE = 0x75;
/**
* Invoke direct range
*/
public static final int INSN_INVOKE_DIRECT_RANGE = 0x76;
/**
* Invoke static range
*/
public static final int INSN_INVOKE_STATIC_RANGE = 0x77;
/**
* Invoke interface range
*/
public static final int INSN_INVOKE_INTERFACE_RANGE = 0x78;
/**
* Invoke neg range
*/
public static final int INSN_NEG_INT = 0x7b; // visitOperationInsn
/**
* Not integer
*/
public static final int INSN_NOT_INT = 0x7c;
/**
* Neg long
*/
public static final int INSN_NEG_LONG = 0x7d;
/**
* Not long
*/
public static final int INSN_NOT_LONG = 0x7e;
/**
* Neg float
*/
public static final int INSN_NEG_FLOAT = 0x7f;
/**
* Neg double
*/
public static final int INSN_NEG_DOUBLE = 0x80;
/**
* Int to long
*/
public static final int INSN_INT_TO_LONG = 0x81;
/**
* Int to float
*/
public static final int INSN_INT_TO_FLOAT = 0x82;
/**
* Int to double
*/
public static final int INSN_INT_TO_DOUBLE = 0x83;
/**
* Long to int
*/
public static final int INSN_LONG_TO_INT = 0x84;
/**
* Long to float
*/
public static final int INSN_LONG_TO_FLOAT = 0x85;
/**
* Long to double
*/
public static final int INSN_LONG_TO_DOUBLE = 0x86;
/**
* Float to int
*/
public static final int INSN_FLOAT_TO_INT = 0x87;
/**
* Float to long
*/
public static final int INSN_FLOAT_TO_LONG = 0x88;
/**
* Float to double
*/
public static final int INSN_FLOAT_TO_DOUBLE = 0x89;
/**
* Double to int
*/
public static final int INSN_DOUBLE_TO_INT = 0x8a;
/**
* Double to long
*/
public static final int INSN_DOUBLE_TO_LONG = 0x8b;
/**
* Double to float
*/
public static final int INSN_DOUBLE_TO_FLOAT = 0x8c;
/**
* Int to byte
*/
public static final int INSN_INT_TO_BYTE = 0x8d;
/**
* Int to char
*/
public static final int INSN_INT_TO_CHAR = 0x8e;
/**
* Int to short
*/
public static final int INSN_INT_TO_SHORT = 0x8f;
/**
* Add int
*/
public static final int INSN_ADD_INT = 0x90;
/**
* Substract int
*/
public static final int INSN_SUB_INT = 0x91;
/**
* Multiply int
*/
public static final int INSN_MUL_INT = 0x92;
/**
* Divide int
*/
public static final int INSN_DIV_INT = 0x93;
/**
* Remainder int
*/
public static final int INSN_REM_INT = 0x94;
/**
* And int
*/
public static final int INSN_AND_INT = 0x95;
/**
* Or int
*/
public static final int INSN_OR_INT = 0x96;
/**
* Xor int
*/
public static final int INSN_XOR_INT = 0x97;
/**
* Shift left int
*/
public static final int INSN_SHL_INT = 0x98;
/**
* Sifht right int
*/
public static final int INSN_SHR_INT = 0x99;
/**
* Unsigned Shift right int
*/
public static final int INSN_USHR_INT = 0x9a;
/**
* Add long
*/
public static final int INSN_ADD_LONG = 0x9b;
/**
* Subtract long
*/
public static final int INSN_SUB_LONG = 0x9c;
/**
* Multiply long
*/
public static final int INSN_MUL_LONG = 0x9d;
/**
* Divide long
*/
public static final int INSN_DIV_LONG = 0x9e;
/**
* Remainder long
*/
public static final int INSN_REM_LONG = 0x9f;
/**
* And long
*/
public static final int INSN_AND_LONG = 0xa0;
/**
* Or long
*/
public static final int INSN_OR_LONG = 0xa1;
/**
* Xor long
*/
public static final int INSN_XOR_LONG = 0xa2;
/**
* Shift left long
*/
public static final int INSN_SHL_LONG = 0xa3;
/**
* Shift right long
*/
public static final int INSN_SHR_LONG = 0xa4;
/**
* Unsigned shift right long
*/
public static final int INSN_USHR_LONG = 0xa5;
/**
* Add float
*/
public static final int INSN_ADD_FLOAT = 0xa6;
/**
* Substract float
*/
public static final int INSN_SUB_FLOAT = 0xa7;
/**
* Multiply float
*/
public static final int INSN_MUL_FLOAT = 0xa8;
/**
* Divide float
*/
public static final int INSN_DIV_FLOAT = 0xa9;
/**
* Remainder float
*/
public static final int INSN_REM_FLOAT = 0xaa;
/**
* Add double
*/
public static final int INSN_ADD_DOUBLE = 0xab;
/**
* Substract double
*/
public static final int INSN_SUB_DOUBLE = 0xac;
/**
* Multiply double
*/
public static final int INSN_MUL_DOUBLE = 0xad;
/**
* Divide double
*/
public static final int INSN_DIV_DOUBLE = 0xae;
/**
* Remainder double
*/
public static final int INSN_REM_DOUBLE = 0xaf;
/**
* Add integer two addresses
*/
public static final int INSN_ADD_INT_2ADDR = 0xb0;
/**
* Sub integer two addresses
*/
public static final int INSN_SUB_INT_2ADDR = 0xb1;
/**
* Multiply integer two addresses
*/
public static final int INSN_MUL_INT_2ADDR = 0xb2;
/**
* Divide integer two addresses
*/
public static final int INSN_DIV_INT_2ADDR = 0xb3;
/**
* Remainder integer two addresses
*/
public static final int INSN_REM_INT_2ADDR = 0xb4;
/**
* And integer two addresses
*/
public static final int INSN_AND_INT_2ADDR = 0xb5;
/**
* Or integer two addresses
*/
public static final int INSN_OR_INT_2ADDR = 0xb6;
/**
* Xor integer two addresses
*/
public static final int INSN_XOR_INT_2ADDR = 0xb7;
/**
* Shift left integer two addresses
*/
public static final int INSN_SHL_INT_2ADDR = 0xb8;
/**
* Shift right integer two addresses
*/
public static final int INSN_SHR_INT_2ADDR = 0xb9;
/**
* Unsigned shift right integer two addresses
*/
public static final int INSN_USHR_INT_2ADDR = 0xba;
/**
* Add long two addresses
*/
public static final int INSN_ADD_LONG_2ADDR = 0xbb;
/**
* substract long two addresses
*/
public static final int INSN_SUB_LONG_2ADDR = 0xbc;
/**
* multiply long two addresses
*/
public static final int INSN_MUL_LONG_2ADDR = 0xbd;
/**
* divide long two addresses
*/
public static final int INSN_DIV_LONG_2ADDR = 0xbe;
/**
* Remainder long two addresses
*/
public static final int INSN_REM_LONG_2ADDR = 0xbf;
/**
* And long two addresses
*/
public static final int INSN_AND_LONG_2ADDR = 0xc0;
/**
* Or long two addresses
*/
public static final int INSN_OR_LONG_2ADDR = 0xc1;
/**
* Exclusive or long two addresses
*/
public static final int INSN_XOR_LONG_2ADDR = 0xc2;
/**
* Shift left long two addresses
*/
public static final int INSN_SHL_LONG_2ADDR = 0xc3;
/**
* Shift right long two addresses
*/
public static final int INSN_SHR_LONG_2ADDR = 0xc4;
/**
* Unsigned shift right long two addresses
*/
public static final int INSN_USHR_LONG_2ADDR = 0xc5;
/**
* Add float two addresses
*/
public static final int INSN_ADD_FLOAT_2ADDR = 0xc6;
/**
* Substract float two addresses
*/
public static final int INSN_SUB_FLOAT_2ADDR = 0xc7;
/**
* Multiply float two addresses
*/
public static final int INSN_MUL_FLOAT_2ADDR = 0xc8;
/**
* Divide float two addresses
*/
public static final int INSN_DIV_FLOAT_2ADDR = 0xc9;
/**
* Remainder float two addresses
*/
public static final int INSN_REM_FLOAT_2ADDR = 0xca;
/**
* Add double two addresses
*/
public static final int INSN_ADD_DOUBLE_2ADDR = 0xcb;
/**
* Substract double two addresses
*/
public static final int INSN_SUB_DOUBLE_2ADDR = 0xcc;
/**
* Multiply double two addresses
*/
public static final int INSN_MUL_DOUBLE_2ADDR = 0xcd;
/**
* Divide double two addresses
*/
public static final int INSN_DIV_DOUBLE_2ADDR = 0xce;
/**
* Remainder double two addresses
*/
public static final int INSN_REM_DOUBLE_2ADDR = 0xcf;
/**
* Add integer literal 16
*/
public static final int INSN_ADD_INT_LIT16 = 0xd0;
/**
* Reverse substract integer literal 16
*/
public static final int INSN_RSUB_INT_LIT16 = 0xd1;
/**
* Multiply integer literal 16
*/
public static final int INSN_MUL_INT_LIT16 = 0xd2;
/**
* Divide integer literal 16
*/
public static final int INSN_DIV_INT_LIT16 = 0xd3;
/**
* Remainder integer literal 16
*/
public static final int INSN_REM_INT_LIT16 = 0xd4;
/**
* And integer literal 16
*/
public static final int INSN_AND_INT_LIT16 = 0xd5;
/**
* Or integer literal 16
*/
public static final int INSN_OR_INT_LIT16 = 0xd6;
/**
* Exclusive Or integer literal 16
*/
public static final int INSN_XOR_INT_LIT16 = 0xd7;
/**
* Add integer literal 8
*/
public static final int INSN_ADD_INT_LIT8 = 0xd8;
/**
* Reverve substract integer literal 8
*/
public static final int INSN_RSUB_INT_LIT8 = 0xd9;
/**
* Multiply integer literal 8
*/
public static final int INSN_MUL_INT_LIT8 = 0xda;
/**
* Divide integer literal 8
*/
public static final int INSN_DIV_INT_LIT8 = 0xdb;
/**
* Remainder integer literal 8
*/
public static final int INSN_REM_INT_LIT8 = 0xdc;
/**
* And integer literal 8
*/
public static final int INSN_AND_INT_LIT8 = 0xdd;
/**
* Or integer literal 8
*/
public static final int INSN_OR_INT_LIT8 = 0xde;
/**
* Exclusive or integer literal 8
*/
public static final int INSN_XOR_INT_LIT8 = 0xdf;
/**
* Shift left integer literal 8
*/
public static final int INSN_SHL_INT_LIT8 = 0xe0;
/**
* Shift right integer literal 8
*/
public static final int INSN_SHR_INT_LIT8 = 0xe1;
/**
* Unsigned shift right integer literal 8
*/
public static final int INSN_USHR_INT_LIT8 = 0xe2;
}