Package org.codehaus.janino
Class Opcode
java.lang.Object
org.codehaus.janino.Opcode
Definitions of JVM bytecode opcodes.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final short
Special value forOPCODE_PROPERTIES
indicating that this element represents an invalid opcode.static final int
static final int
static final int
static final int
static final int
static final short
The local variable with index 0 is the opcode's implicit operand.static final short
The local variable with index 1 is the opcode's implicit operand.static final short
The local variable with index 2 is the opcode's implicit operand.static final short
The local variable with index 3 is the opcode's implicit operand.static final short
Masks the 'implicit operand' portion ofOPCODE_PROPERTIES
.static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
Deprecated.Only allowed until .class file version 50.0 (Java 6) JVMS 4.10.2.5static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final short
This opcode never 'completes normally', i.e.static final int
static final short
The first operand of this opcode is a two-byte branch offset.static final short
The first operand of this opcode is a four-byte branch offset.static final short
The first operand of this opcode is a one-byte constant pool index.static final short
The first operand of this opcode is a two-byte constant pool index.static final short
The first operand of this opcode is a signed byte.static final short
The first operand of this opcode is a signed byte.static final short
The first operand of this opcode is a one-byte local variable array index.static final short
The first operand of this opcode is a two-byte local variable array index.static final short
Masks the 'first operand' portion ofOPCODE_PROPERTIES
.static final short
The first operand of this opcode is a signed byte.static final short
The first operand of this opcode is a signed short.static final short
The first operand of this opcode is a signed byte.static final short
The first operand of this opcode is an unsigned byte.static final short
Masks the 'second operand' portion ofOPCODE_PROPERTIES
.static final short
The second operand of this opcode is a signed byte.static final short
The second operand of this opcode is a signed short.static final short
Masks the 'third operand' portion ofOPCODE_PROPERTIES
.static final short
The third operand of this opcode is a signed byte.static final short[]
The nth element of this array describes the properties of the JVM opcode n.static final int
static final int
static final int
static final int
static final int
Deprecated.Only allowed until .class file version 50.0 (Java 6) JVMS 4.10.2.5static final int
static final int
static final int
static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
clears the operand stack.static final short
This element ofOPCODE_PROPERTIES
represents the GETFIELD opcode.static final short
This element ofOPCODE_PROPERTIES
represents the GETSTATIC opcode.static final short
This element ofOPCODE_PROPERTIES
represents the INVOKEINTERFACE opcode.static final short
This element ofOPCODE_PROPERTIES
represents the INVOKESPECIAL opcode.static final short
This element ofOPCODE_PROPERTIES
represents the INVOKESTATIC opcode.static final short
This element ofOPCODE_PROPERTIES
represents the INVOKEVIRTUAL opcode.static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 1 element.static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 2 elements.static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 3 elements.static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 4 elements.static final short
Masks the 'stack delta' portion ofOPCODE_PROPERTIES
.static final short
This element ofOPCODE_PROPERTIES
represents the MULTIANEWARRAY opcode.static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
results in the same operand stack size.static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
increases the operand stack size by 1 element.static final short
Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
increases the operand stack size by 2 elements.static final short
This element ofOPCODE_PROPERTIES
represents the PUTFIELD opcode.static final short
This element ofOPCODE_PROPERTIES
represents the PUTSTATIC opcode.static final int
static final int
static final int
static final int
static final short[]
The nth element of this array describes the properties of the JVM opcodeWIDE n
. -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
AALOAD
public static final int AALOAD- See Also:
-
AASTORE
public static final int AASTORE- See Also:
-
ACONST_NULL
public static final int ACONST_NULL- See Also:
-
ALOAD
public static final int ALOAD- See Also:
-
ALOAD_0
public static final int ALOAD_0- See Also:
-
ALOAD_1
public static final int ALOAD_1- See Also:
-
ALOAD_2
public static final int ALOAD_2- See Also:
-
ALOAD_3
public static final int ALOAD_3- See Also:
-
ANEWARRAY
public static final int ANEWARRAY- See Also:
-
ARETURN
public static final int ARETURN- See Also:
-
ARRAYLENGTH
public static final int ARRAYLENGTH- See Also:
-
ASTORE
public static final int ASTORE- See Also:
-
ASTORE_0
public static final int ASTORE_0- See Also:
-
ASTORE_1
public static final int ASTORE_1- See Also:
-
ASTORE_2
public static final int ASTORE_2- See Also:
-
ASTORE_3
public static final int ASTORE_3- See Also:
-
ATHROW
public static final int ATHROW- See Also:
-
BALOAD
public static final int BALOAD- See Also:
-
BASTORE
public static final int BASTORE- See Also:
-
BIPUSH
public static final int BIPUSH- See Also:
-
CALOAD
public static final int CALOAD- See Also:
-
CASTORE
public static final int CASTORE- See Also:
-
CHECKCAST
public static final int CHECKCAST- See Also:
-
D2F
public static final int D2F- See Also:
-
D2I
public static final int D2I- See Also:
-
D2L
public static final int D2L- See Also:
-
DADD
public static final int DADD- See Also:
-
DALOAD
public static final int DALOAD- See Also:
-
DASTORE
public static final int DASTORE- See Also:
-
DCMPG
public static final int DCMPG- See Also:
-
DCMPL
public static final int DCMPL- See Also:
-
DCONST_0
public static final int DCONST_0- See Also:
-
DCONST_1
public static final int DCONST_1- See Also:
-
DDIV
public static final int DDIV- See Also:
-
DLOAD
public static final int DLOAD- See Also:
-
DLOAD_0
public static final int DLOAD_0- See Also:
-
DLOAD_1
public static final int DLOAD_1- See Also:
-
DLOAD_2
public static final int DLOAD_2- See Also:
-
DLOAD_3
public static final int DLOAD_3- See Also:
-
DMUL
public static final int DMUL- See Also:
-
DNEG
public static final int DNEG- See Also:
-
DREM
public static final int DREM- See Also:
-
DRETURN
public static final int DRETURN- See Also:
-
DSTORE
public static final int DSTORE- See Also:
-
DSTORE_0
public static final int DSTORE_0- See Also:
-
DSTORE_1
public static final int DSTORE_1- See Also:
-
DSTORE_2
public static final int DSTORE_2- See Also:
-
DSTORE_3
public static final int DSTORE_3- See Also:
-
DSUB
public static final int DSUB- See Also:
-
DUP
public static final int DUP- See Also:
-
DUP_X1
public static final int DUP_X1- See Also:
-
DUP_X2
public static final int DUP_X2- See Also:
-
DUP2
public static final int DUP2- See Also:
-
DUP2_X1
public static final int DUP2_X1- See Also:
-
DUP2_X2
public static final int DUP2_X2- See Also:
-
F2D
public static final int F2D- See Also:
-
F2I
public static final int F2I- See Also:
-
F2L
public static final int F2L- See Also:
-
FADD
public static final int FADD- See Also:
-
FALOAD
public static final int FALOAD- See Also:
-
FASTORE
public static final int FASTORE- See Also:
-
FCMPG
public static final int FCMPG- See Also:
-
FCMPL
public static final int FCMPL- See Also:
-
FCONST_0
public static final int FCONST_0- See Also:
-
FCONST_1
public static final int FCONST_1- See Also:
-
FCONST_2
public static final int FCONST_2- See Also:
-
FDIV
public static final int FDIV- See Also:
-
FLOAD
public static final int FLOAD- See Also:
-
FLOAD_0
public static final int FLOAD_0- See Also:
-
FLOAD_1
public static final int FLOAD_1- See Also:
-
FLOAD_2
public static final int FLOAD_2- See Also:
-
FLOAD_3
public static final int FLOAD_3- See Also:
-
FMUL
public static final int FMUL- See Also:
-
FNEG
public static final int FNEG- See Also:
-
FREM
public static final int FREM- See Also:
-
FRETURN
public static final int FRETURN- See Also:
-
FSTORE
public static final int FSTORE- See Also:
-
FSTORE_0
public static final int FSTORE_0- See Also:
-
FSTORE_1
public static final int FSTORE_1- See Also:
-
FSTORE_2
public static final int FSTORE_2- See Also:
-
FSTORE_3
public static final int FSTORE_3- See Also:
-
FSUB
public static final int FSUB- See Also:
-
GETFIELD
public static final int GETFIELD- See Also:
-
GETSTATIC
public static final int GETSTATIC- See Also:
-
GOTO
public static final int GOTO- See Also:
-
GOTO_W
public static final int GOTO_W- See Also:
-
I2B
public static final int I2B- See Also:
-
I2C
public static final int I2C- See Also:
-
I2D
public static final int I2D- See Also:
-
I2F
public static final int I2F- See Also:
-
I2L
public static final int I2L- See Also:
-
I2S
public static final int I2S- See Also:
-
IADD
public static final int IADD- See Also:
-
IALOAD
public static final int IALOAD- See Also:
-
IAND
public static final int IAND- See Also:
-
IASTORE
public static final int IASTORE- See Also:
-
ICONST_M1
public static final int ICONST_M1- See Also:
-
ICONST_0
public static final int ICONST_0- See Also:
-
ICONST_1
public static final int ICONST_1- See Also:
-
ICONST_2
public static final int ICONST_2- See Also:
-
ICONST_3
public static final int ICONST_3- See Also:
-
ICONST_4
public static final int ICONST_4- See Also:
-
ICONST_5
public static final int ICONST_5- See Also:
-
IDIV
public static final int IDIV- See Also:
-
IF_ACMPEQ
public static final int IF_ACMPEQ- See Also:
-
IF_ACMPNE
public static final int IF_ACMPNE- See Also:
-
IF_ICMPEQ
public static final int IF_ICMPEQ- See Also:
-
IF_ICMPNE
public static final int IF_ICMPNE- See Also:
-
IF_ICMPLT
public static final int IF_ICMPLT- See Also:
-
IF_ICMPGE
public static final int IF_ICMPGE- See Also:
-
IF_ICMPGT
public static final int IF_ICMPGT- See Also:
-
IF_ICMPLE
public static final int IF_ICMPLE- See Also:
-
IFEQ
public static final int IFEQ- See Also:
-
IFNE
public static final int IFNE- See Also:
-
IFLT
public static final int IFLT- See Also:
-
IFGE
public static final int IFGE- See Also:
-
IFGT
public static final int IFGT- See Also:
-
IFLE
public static final int IFLE- See Also:
-
IFNONNULL
public static final int IFNONNULL- See Also:
-
IFNULL
public static final int IFNULL- See Also:
-
IINC
public static final int IINC- See Also:
-
ILOAD
public static final int ILOAD- See Also:
-
ILOAD_0
public static final int ILOAD_0- See Also:
-
ILOAD_1
public static final int ILOAD_1- See Also:
-
ILOAD_2
public static final int ILOAD_2- See Also:
-
ILOAD_3
public static final int ILOAD_3- See Also:
-
IMUL
public static final int IMUL- See Also:
-
INEG
public static final int INEG- See Also:
-
INSTANCEOF
public static final int INSTANCEOF- See Also:
-
INVOKEDYNAMIC
public static final int INVOKEDYNAMIC- See Also:
-
INVOKEINTERFACE
public static final int INVOKEINTERFACE- See Also:
-
INVOKESPECIAL
public static final int INVOKESPECIAL- See Also:
-
INVOKESTATIC
public static final int INVOKESTATIC- See Also:
-
INVOKEVIRTUAL
public static final int INVOKEVIRTUAL- See Also:
-
IOR
public static final int IOR- See Also:
-
IREM
public static final int IREM- See Also:
-
IRETURN
public static final int IRETURN- See Also:
-
ISHL
public static final int ISHL- See Also:
-
ISHR
public static final int ISHR- See Also:
-
ISTORE
public static final int ISTORE- See Also:
-
ISTORE_0
public static final int ISTORE_0- See Also:
-
ISTORE_1
public static final int ISTORE_1- See Also:
-
ISTORE_2
public static final int ISTORE_2- See Also:
-
ISTORE_3
public static final int ISTORE_3- See Also:
-
ISUB
public static final int ISUB- See Also:
-
IUSHR
public static final int IUSHR- See Also:
-
IXOR
public static final int IXOR- See Also:
-
JSR
Deprecated.Only allowed until .class file version 50.0 (Java 6) JVMS 4.10.2.5- See Also:
-
JSR_W
public static final int JSR_W- See Also:
-
L2D
public static final int L2D- See Also:
-
L2F
public static final int L2F- See Also:
-
L2I
public static final int L2I- See Also:
-
LADD
public static final int LADD- See Also:
-
LALOAD
public static final int LALOAD- See Also:
-
LAND
public static final int LAND- See Also:
-
LASTORE
public static final int LASTORE- See Also:
-
LCMP
public static final int LCMP- See Also:
-
LCONST_0
public static final int LCONST_0- See Also:
-
LCONST_1
public static final int LCONST_1- See Also:
-
LDC
public static final int LDC- See Also:
-
LDC_W
public static final int LDC_W- See Also:
-
LDC2_W
public static final int LDC2_W- See Also:
-
LDIV
public static final int LDIV- See Also:
-
LLOAD
public static final int LLOAD- See Also:
-
LLOAD_0
public static final int LLOAD_0- See Also:
-
LLOAD_1
public static final int LLOAD_1- See Also:
-
LLOAD_2
public static final int LLOAD_2- See Also:
-
LLOAD_3
public static final int LLOAD_3- See Also:
-
LMUL
public static final int LMUL- See Also:
-
LNEG
public static final int LNEG- See Also:
-
LOOKUPSWITCH
public static final int LOOKUPSWITCH- See Also:
-
LOR
public static final int LOR- See Also:
-
LREM
public static final int LREM- See Also:
-
LRETURN
public static final int LRETURN- See Also:
-
LSHL
public static final int LSHL- See Also:
-
LSHR
public static final int LSHR- See Also:
-
LSTORE
public static final int LSTORE- See Also:
-
LSTORE_0
public static final int LSTORE_0- See Also:
-
LSTORE_1
public static final int LSTORE_1- See Also:
-
LSTORE_2
public static final int LSTORE_2- See Also:
-
LSTORE_3
public static final int LSTORE_3- See Also:
-
LSUB
public static final int LSUB- See Also:
-
LUSHR
public static final int LUSHR- See Also:
-
LXOR
public static final int LXOR- See Also:
-
MONITORENTER
public static final int MONITORENTER- See Also:
-
MONITOREXIT
public static final int MONITOREXIT- See Also:
-
MULTIANEWARRAY
public static final int MULTIANEWARRAY- See Also:
-
NEW
public static final int NEW- See Also:
-
NEWARRAY
public static final int NEWARRAY- See Also:
-
NOP
public static final int NOP- See Also:
-
POP
public static final int POP- See Also:
-
POP2
public static final int POP2- See Also:
-
PUTFIELD
public static final int PUTFIELD- See Also:
-
PUTSTATIC
public static final int PUTSTATIC- See Also:
-
RET
Deprecated.Only allowed until .class file version 50.0 (Java 6) JVMS 4.10.2.5- See Also:
-
RETURN
public static final int RETURN- See Also:
-
SALOAD
public static final int SALOAD- See Also:
-
SASTORE
public static final int SASTORE- See Also:
-
SIPUSH
public static final int SIPUSH- See Also:
-
SWAP
public static final int SWAP- See Also:
-
TABLESWITCH
public static final int TABLESWITCH- See Also:
-
WIDE
public static final int WIDE- See Also:
-
INVALID_OPCODE
public static final short INVALID_OPCODESpecial value forOPCODE_PROPERTIES
indicating that this element represents an invalid opcode.- See Also:
-
SD_MASK
public static final short SD_MASKMasks the 'stack delta' portion ofOPCODE_PROPERTIES
.- See Also:
-
SD_M4
public static final short SD_M4Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 4 elements.- See Also:
-
SD_M3
public static final short SD_M3Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 3 elements.- See Also:
-
SD_M2
public static final short SD_M2Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 2 elements.- See Also:
-
SD_M1
public static final short SD_M1Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
reduces the operand stack size by 1 element.- See Also:
-
SD_P0
public static final short SD_P0Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
results in the same operand stack size.- See Also:
-
SD_P1
public static final short SD_P1Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
increases the operand stack size by 1 element.- See Also:
-
SD_P2
public static final short SD_P2Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
increases the operand stack size by 2 elements.- See Also:
-
SD_0
public static final short SD_0Indicates that the opcode represented by this element ofOPCODE_PROPERTIES
clears the operand stack.- See Also:
-
SD_GETFIELD
public static final short SD_GETFIELDThis element ofOPCODE_PROPERTIES
represents the GETFIELD opcode.- See Also:
-
SD_GETSTATIC
public static final short SD_GETSTATICThis element ofOPCODE_PROPERTIES
represents the GETSTATIC opcode.- See Also:
-
SD_PUTFIELD
public static final short SD_PUTFIELDThis element ofOPCODE_PROPERTIES
represents the PUTFIELD opcode.- See Also:
-
SD_PUTSTATIC
public static final short SD_PUTSTATICThis element ofOPCODE_PROPERTIES
represents the PUTSTATIC opcode.- See Also:
-
SD_INVOKEVIRTUAL
public static final short SD_INVOKEVIRTUALThis element ofOPCODE_PROPERTIES
represents the INVOKEVIRTUAL opcode.- See Also:
-
SD_INVOKESPECIAL
public static final short SD_INVOKESPECIALThis element ofOPCODE_PROPERTIES
represents the INVOKESPECIAL opcode.- See Also:
-
SD_INVOKESTATIC
public static final short SD_INVOKESTATICThis element ofOPCODE_PROPERTIES
represents the INVOKESTATIC opcode.- See Also:
-
SD_INVOKEINTERFACE
public static final short SD_INVOKEINTERFACEThis element ofOPCODE_PROPERTIES
represents the INVOKEINTERFACE opcode.- See Also:
-
SD_MULTIANEWARRAY
public static final short SD_MULTIANEWARRAYThis element ofOPCODE_PROPERTIES
represents the MULTIANEWARRAY opcode.- See Also:
-
OP1_MASK
public static final short OP1_MASKMasks the 'first operand' portion ofOPCODE_PROPERTIES
.- See Also:
-
OP1_SB
public static final short OP1_SBThe first operand of this opcode is a signed byte.- See Also:
-
OP1_UB
public static final short OP1_UBThe first operand of this opcode is an unsigned byte.- See Also:
-
OP1_SS
public static final short OP1_SSThe first operand of this opcode is a signed short.- See Also:
-
OP1_CP1
public static final short OP1_CP1The first operand of this opcode is a one-byte constant pool index.- See Also:
-
OP1_CP2
public static final short OP1_CP2The first operand of this opcode is a two-byte constant pool index.- See Also:
-
OP1_LV1
public static final short OP1_LV1The first operand of this opcode is a one-byte local variable array index.- See Also:
-
OP1_LV2
public static final short OP1_LV2The first operand of this opcode is a two-byte local variable array index.- See Also:
-
OP1_BO2
public static final short OP1_BO2The first operand of this opcode is a two-byte branch offset.- See Also:
-
OP1_BO4
public static final short OP1_BO4The first operand of this opcode is a four-byte branch offset.- See Also:
-
OP1_LOOKUPSWITCH
public static final short OP1_LOOKUPSWITCHThe first operand of this opcode is a signed byte.- See Also:
-
OP1_TABLESWITCH
public static final short OP1_TABLESWITCHThe first operand of this opcode is a signed byte.- See Also:
-
OP1_JSR
public static final short OP1_JSRThe first operand of this opcode is a signed byte.- See Also:
-
OP2_MASK
public static final short OP2_MASKMasks the 'second operand' portion ofOPCODE_PROPERTIES
.- See Also:
-
OP2_SB
public static final short OP2_SBThe second operand of this opcode is a signed byte.- See Also:
-
OP2_SS
public static final short OP2_SSThe second operand of this opcode is a signed short.- See Also:
-
OP3_MASK
public static final short OP3_MASKMasks the 'third operand' portion ofOPCODE_PROPERTIES
.- See Also:
-
OP3_SB
public static final short OP3_SBThe third operand of this opcode is a signed byte.- See Also:
-
IO_MASK
public static final short IO_MASKMasks the 'implicit operand' portion ofOPCODE_PROPERTIES
.- See Also:
-
IO_LV_0
public static final short IO_LV_0The local variable with index 0 is the opcode's implicit operand.- See Also:
-
IO_LV_1
public static final short IO_LV_1The local variable with index 1 is the opcode's implicit operand.- See Also:
-
IO_LV_2
public static final short IO_LV_2The local variable with index 2 is the opcode's implicit operand.- See Also:
-
IO_LV_3
public static final short IO_LV_3The local variable with index 3 is the opcode's implicit operand.- See Also:
-
NO_FALLTHROUGH
public static final short NO_FALLTHROUGHThis opcode never 'completes normally', i.e. it never passes the control flow to the immediately following opcode.- See Also:
-
OPCODE_PROPERTIES
public static final short[] OPCODE_PROPERTIESThe nth element of this array describes the properties of the JVM opcode n. -
WIDE_OPCODE_PROPERTIES
public static final short[] WIDE_OPCODE_PROPERTIESThe nth element of this array describes the properties of the JVM opcodeWIDE n
.
-
-
Constructor Details
-
Opcode
private Opcode()
-