Enum Class Opcode
- All Implemented Interfaces:
Serializable,Comparable<Opcode>,Constable
Describes the opcodes of the JVM instruction set, as described in JVMS6.5. This includes a few pseudo-opcodes modified by
wide.An opcode describes the operation of an instruction.
- API Note:
- The enum constants are named after the opcodes' mnemonics in uppercase. Wide pseudo-opcodes are named with the original opcodes' mnemonic plus a
_Wsuffix. However,ldc_w,ldc2_w,goto_w, andjsr_ware legitimate opcodes instead of wide pseudo-opcodes. - SeeJava Virtual Machine Specification:
- 6.5 Instructions
- Since:
- 24
- See Also:
Nested Class Summary
Nested ClassesNested classes/interfaces declared in class java.lang.Enum
Enum.EnumDesc<E extendsEnum<E>>Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionLoadreferencefrom array.Store intoreferencearray.Pushnull.Loadreferencefrom local variable.Loadreferencefrom local variable slot0.Loadreferencefrom local variable slot1.Loadreferencefrom local variable slot2.Loadreferencefrom local variable slot3.Loadreferencefrom local variable (wide index).Create new array ofreference.Returnreferencefrom method.Get length of array.Storereferenceinto local variable.Storereferenceinto local variable slot0.Storereferenceinto local variable slot1.Storereferenceinto local variable slot2.Storereferenceinto local variable slot3.Storereferenceinto local variable (wide index).Throw exception or error.Loadcharfrom array.Store intochararray.Check whether object is of given type.Adddouble.Loaddoublefrom array.Store intodoublearray.Comparedouble.Comparedouble.Pushdoubleconstant0.0D.Pushdoubleconstant1.0D.Dividedouble.Loaddoublefrom local variable.Loaddoublefrom local variable slot0.Loaddoublefrom local variable slot1.Loaddoublefrom local variable slot2.Loaddoublefrom local variable slot3.Loaddoublefrom local variable (wide index).Multiplydouble.Negatedouble.Remainderdouble.Returndoublefrom method.Storedoubleinto local variable.Storedoubleinto local variable slot0.Storedoubleinto local variable slot1.Storedoubleinto local variable slot2.Storedoubleinto local variable slot3.Storedoubleinto local variable (wide index).Subtractdouble.Duplicate the top operand stack value.Duplicate the top operand stack value and insert two values down.Duplicate the top operand stack value and insert two or three values down.Duplicate the top one or two operand stack values.Duplicate the top one or two operand stack values and insert two or three values down.Duplicate the top one or two operand stack values and insert two, three, or four values down.Addfloat.Loadfloatfrom array.Store intofloatarray.Comparefloat.Comparefloat.Pushfloatconstant0.0F.Pushfloatconstant1.0F.Pushfloatconstant2.0F.Dividefloat.Loadfloatfrom local variable.Loadfloatfrom local variable slot0.Loadfloatfrom local variable slot1.Loadfloatfrom local variable slot2.Loadfloatfrom local variable slot3.Loadfloatfrom local variable (wide index).Multiplyfloat.Negatefloat.Remainderfloat.Returnfloatfrom method.Storefloatinto local variable.Storefloatinto local variable slot0.Storefloatinto local variable slot1.Storefloatinto local variable slot2.Storefloatinto local variable slot3.Storefloatinto local variable (wide index).Subtractfloat.Fetch field from object.Getstaticfield from class.Branch always.Branch always (wide index).Addint.Loadintfrom array.Bitwise ANDint.Store intointarray.Pushintconstant0.Pushintconstant1.Pushintconstant2.Pushintconstant3.Pushintconstant4.Pushintconstant5.Pushintconstant-1.Divideint.Branch ifreferencecomparisonoperand1 == operand2succeeds.Branch ifreferencecomparisonoperand1 != operand2succeeds.Branch ifintcomparisonoperand1 == operand2succeeds.Branch ifintcomparisonoperand1 >= operand2succeeds.Branch ifintcomparisonoperand1 > operand2succeeds.Branch ifintcomparisonoperand1 <= operand2succeeds.Branch ifintcomparisonoperand1 < operand2succeeds.Branch ifintcomparisonoperand1 != operand2succeeds.Branch ifintcomparison== 0succeeds.Branch ifintcomparison>= 0succeeds.Branch ifintcomparison> 0succeeds.Branch ifintcomparison<= 0succeeds.Branch ifintcomparison< 0succeeds.Branch ifintcomparison!= 0succeeds.Branch ifreferenceis notnull.Branch ifreferenceisnull.Incrementintlocal variable by constant.Increment local variable by constant (wide index).Loadintfrom local variable.Loadintfrom local variable slot0.Loadintfrom local variable slot1.Loadintfrom local variable slot2.Loadintfrom local variable slot3.Loadintfrom local variable (wide index).Multiplyint.Negateint.Determine if object is of given type.Invoke a dynamically-computed call site.Invoke interface method.Invoke instance method; direct invocation of instance initialization methods and methods of the current class and its supertypes.Invoke a class (static) method.Invoke instance method; dispatch based on class.Bitwise ORint.Remainderint.Returnintfrom method.Shift leftint.Arithmetic shift rightint.Storeintinto local variable.Storeintinto local variable slot0.Storeintinto local variable slot1.Storeintinto local variable slot2.Storeintinto local variable slot3.Storeintinto local variable (wide index).Subtractint.Logical shift rightint.Bitwise XORint.(Discontinued) Jump subroutine; last used in major version50.(Discontinued) Jump subroutine (wide index); last used in major version50.Addlong.Loadlongfrom array.Bitwise ANDlong.Store intolongarray.Comparelong.Pushlongconstant0L.Pushlongconstant1L.Push item from run-time constant pool.Push item from run-time constant pool (wide index).Dividelong.Loadlongfrom local variable.Loadlongfrom local variable slot0.Loadlongfrom local variable slot1.Loadlongfrom local variable slot2.Loadlongfrom local variable slot3.Loadlongfrom local variable (wide index).Multiplylong.Negatelong.Access jump table by key match and jump.Bitwise ORlong.Remainderlong.Returnlongfrom method.Shift leftlong.Arithmetic shift rightlong.Storelonginto local variable.Storelonginto local variable slot0.Storelonginto local variable slot1.Storelonginto local variable slot2.Storelonginto local variable slot3.Storelonginto local variable (wide index).Subtractlong.Logical shift rightlong.Bitwise XORlong.Enter monitor for object.Exit monitor for object.Create new multidimensional array.Create new object.Create new array.Do nothing.Pop the top operand stack value.Pop the top one or two operand stack values.Set field in object.Setstaticfield in class.(Discontinued) Return from subroutine; last used in major version50.(Discontinued) Return from subroutine (wide index); last used in major version50.Returnvoidfrom method.Loadshortfrom array.Store intoshortarray.Swap the top two operand stack values.Access jump table by index and jump.Method Summary
Modifier and TypeMethodDescriptionintbytecode()Returns the opcode value.booleanisWide()Returns true if this is a pseudo-opcode modified by wide opcode.kind()Returns operation kind.intReturns size of the instruction in bytes if fixed, or -1 otherwise.staticOpcodeReturns the enum constant of this class with the specified name.staticOpcode[]values()Returns an array containing the constants of this enum class, inthe order they are declared.
Enum Constant Details
NOP
Do nothing.- SeeJava Virtual Machine Specification:
- 6.5.nopnop
- See Also:
ACONST_NULL
Pushnull.- SeeJava Virtual Machine Specification:
- 6.5.aconst_nullaconst_null
- See Also:
ICONST_M1
Pushintconstant-1.- SeeJava Virtual Machine Specification:
- 6.5.iconst_iiconst_<i>
- See Also:
ICONST_0
Pushintconstant0.- SeeJava Virtual Machine Specification:
- 6.5.iconst_iiconst_<i>
- See Also:
ICONST_1
Pushintconstant1.- SeeJava Virtual Machine Specification:
- 6.5.iconst_iiconst_<i>
- See Also:
ICONST_2
Pushintconstant2.- SeeJava Virtual Machine Specification:
- 6.5.iconst_iiconst_<i>
- See Also:
ICONST_3
Pushintconstant3.- SeeJava Virtual Machine Specification:
- 6.5.iconst_iiconst_<i>
- See Also:
ICONST_4
Pushintconstant4.- SeeJava Virtual Machine Specification:
- 6.5.iconst_iiconst_<i>
- See Also:
ICONST_5
Pushintconstant5.- SeeJava Virtual Machine Specification:
- 6.5.iconst_iiconst_<i>
- See Also:
LCONST_0
Pushlongconstant0L.- SeeJava Virtual Machine Specification:
- 6.5.lconst_llconst_<l>
- See Also:
LCONST_1
Pushlongconstant1L.- SeeJava Virtual Machine Specification:
- 6.5.lconst_llconst_<l>
- See Also:
FCONST_0
Pushfloatconstant0.0F.- SeeJava Virtual Machine Specification:
- 6.5.fconst_ffconst_<f>
- See Also:
FCONST_1
Pushfloatconstant1.0F.- SeeJava Virtual Machine Specification:
- 6.5.fconst_ffconst_<f>
- See Also:
FCONST_2
Pushfloatconstant2.0F.- SeeJava Virtual Machine Specification:
- 6.5.fconst_ffconst_<f>
- See Also:
DCONST_0
Pushdoubleconstant0.0D.- SeeJava Virtual Machine Specification:
- 6.5.dconst_ddconst_<d>
- See Also:
DCONST_1
Pushdoubleconstant1.0D.- SeeJava Virtual Machine Specification:
- 6.5.dconst_ddconst_<d>
- See Also:
BIPUSH
- SeeJava Virtual Machine Specification:
- 6.5.bipushbipush
- See Also:
SIPUSH
- SeeJava Virtual Machine Specification:
- 6.5.sipushsipush
- See Also:
LDC
Push item from run-time constant pool.- SeeJava Virtual Machine Specification:
- 6.5.ldcldc
- See Also:
LDC_W
Push item from run-time constant pool (wide index).- SeeJava Virtual Machine Specification:
- 6.5.ldc_wldc_w
- See Also:
LDC2_W
- SeeJava Virtual Machine Specification:
- 6.5.ldc2_wldc2_w
- See Also:
ILOAD
Loadintfrom local variable.- SeeJava Virtual Machine Specification:
- 6.5.iloadiload
- See Also:
LLOAD
Loadlongfrom local variable.- SeeJava Virtual Machine Specification:
- 6.5.lloadlload
- See Also:
FLOAD
Loadfloatfrom local variable.- SeeJava Virtual Machine Specification:
- 6.5.floadfload
- See Also:
DLOAD
Loaddoublefrom local variable.- SeeJava Virtual Machine Specification:
- 6.5.dloaddload
- See Also:
ALOAD
Loadreferencefrom local variable.- SeeJava Virtual Machine Specification:
- 6.5.aloadaload
- See Also:
ILOAD_0
Loadintfrom local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.iload_niload_<n>
- See Also:
ILOAD_1
Loadintfrom local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.iload_niload_<n>
- See Also:
ILOAD_2
Loadintfrom local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.iload_niload_<n>
- See Also:
ILOAD_3
Loadintfrom local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.iload_niload_<n>
- See Also:
LLOAD_0
Loadlongfrom local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.lload_nlload_<n>
- See Also:
LLOAD_1
Loadlongfrom local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.lload_nlload_<n>
- See Also:
LLOAD_2
Loadlongfrom local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.lload_nlload_<n>
- See Also:
LLOAD_3
Loadlongfrom local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.lload_nlload_<n>
- See Also:
FLOAD_0
Loadfloatfrom local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.fload_nfload_<n>
- See Also:
FLOAD_1
Loadfloatfrom local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.fload_nfload_<n>
- See Also:
FLOAD_2
Loadfloatfrom local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.fload_nfload_<n>
- See Also:
FLOAD_3
Loadfloatfrom local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.fload_nfload_<n>
- See Also:
DLOAD_0
Loaddoublefrom local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.dload_ndload_<n>
- See Also:
DLOAD_1
Loaddoublefrom local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.dload_ndload_<n>
- See Also:
DLOAD_2
Loaddoublefrom local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.dload_ndload_<n>
- See Also:
DLOAD_3
Loaddoublefrom local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.dload_ndload_<n>
- See Also:
ALOAD_0
Loadreferencefrom local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.aload_naload_<n>
- See Also:
ALOAD_1
Loadreferencefrom local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.aload_naload_<n>
- See Also:
ALOAD_2
Loadreferencefrom local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.aload_naload_<n>
- See Also:
ALOAD_3
Loadreferencefrom local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.aload_naload_<n>
- See Also:
IALOAD
Loadintfrom array.- SeeJava Virtual Machine Specification:
- 6.5.ialoadiaload
- See Also:
LALOAD
Loadlongfrom array.- SeeJava Virtual Machine Specification:
- 6.5.laloadlaload
- See Also:
FALOAD
Loadfloatfrom array.- SeeJava Virtual Machine Specification:
- 6.5.faloadfaload
- See Also:
DALOAD
Loaddoublefrom array.- SeeJava Virtual Machine Specification:
- 6.5.daloaddaload
- See Also:
AALOAD
Loadreferencefrom array.- SeeJava Virtual Machine Specification:
- 6.5.aaloadaaload
- See Also:
BALOAD
- SeeJava Virtual Machine Specification:
- 6.5.baloadbaload
- See Also:
CALOAD
Loadcharfrom array.- SeeJava Virtual Machine Specification:
- 6.5.caloadcaload
- See Also:
SALOAD
Loadshortfrom array.- SeeJava Virtual Machine Specification:
- 6.5.saloadsaload
- See Also:
ISTORE
Storeintinto local variable.- SeeJava Virtual Machine Specification:
- 6.5.istoreistore
- See Also:
LSTORE
Storelonginto local variable.- SeeJava Virtual Machine Specification:
- 6.5.lstorelstore
- See Also:
FSTORE
Storefloatinto local variable.- SeeJava Virtual Machine Specification:
- 6.5.fstorefstore
- See Also:
DSTORE
Storedoubleinto local variable.- SeeJava Virtual Machine Specification:
- 6.5.dstoredstore
- See Also:
ASTORE
Storereferenceinto local variable. Can also store thereturnAddresstype.- SeeJava Virtual Machine Specification:
- 6.5.astoreastore
- See Also:
ISTORE_0
Storeintinto local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.istore_nistore_<n>
- See Also:
ISTORE_1
Storeintinto local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.istore_nistore_<n>
- See Also:
ISTORE_2
Storeintinto local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.istore_nistore_<n>
- See Also:
ISTORE_3
Storeintinto local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.istore_nistore_<n>
- See Also:
LSTORE_0
Storelonginto local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.lstore_nlstore_<n>
- See Also:
LSTORE_1
Storelonginto local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.lstore_nlstore_<n>
- See Also:
LSTORE_2
Storelonginto local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.lstore_nlstore_<n>
- See Also:
LSTORE_3
Storelonginto local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.lstore_nlstore_<n>
- See Also:
FSTORE_0
Storefloatinto local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.fstore_nfstore_<n>
- See Also:
FSTORE_1
Storefloatinto local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.fstore_nfstore_<n>
- See Also:
FSTORE_2
Storefloatinto local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.fstore_nfstore_<n>
- See Also:
FSTORE_3
Storefloatinto local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.fstore_nfstore_<n>
- See Also:
DSTORE_0
Storedoubleinto local variable slot0.- SeeJava Virtual Machine Specification:
- 6.5.dstore_ndstore_<n>
- See Also:
DSTORE_1
Storedoubleinto local variable slot1.- SeeJava Virtual Machine Specification:
- 6.5.dstore_ndstore_<n>
- See Also:
DSTORE_2
Storedoubleinto local variable slot2.- SeeJava Virtual Machine Specification:
- 6.5.dstore_ndstore_<n>
- See Also:
DSTORE_3
Storedoubleinto local variable slot3.- SeeJava Virtual Machine Specification:
- 6.5.dstore_ndstore_<n>
- See Also:
ASTORE_0
- SeeJava Virtual Machine Specification:
- 6.5.astore_nastore_<n>
- See Also:
ASTORE_1
- SeeJava Virtual Machine Specification:
- 6.5.astore_nastore_<n>
- See Also:
ASTORE_2
- SeeJava Virtual Machine Specification:
- 6.5.astore_nastore_<n>
- See Also:
ASTORE_3
- SeeJava Virtual Machine Specification:
- 6.5.astore_nastore_<n>
- See Also:
IASTORE
Store intointarray.- SeeJava Virtual Machine Specification:
- 6.5.iastoreiastore
- See Also:
LASTORE
Store intolongarray.- SeeJava Virtual Machine Specification:
- 6.5.lastorelastore
- See Also:
FASTORE
Store intofloatarray.- SeeJava Virtual Machine Specification:
- 6.5.fastorefastore
- See Also:
DASTORE
Store intodoublearray.- SeeJava Virtual Machine Specification:
- 6.5.dastoredastore
- See Also:
AASTORE
Store intoreferencearray.- SeeJava Virtual Machine Specification:
- 6.5.aastoreaastore
- See Also:
BASTORE
- SeeJava Virtual Machine Specification:
- 6.5.bastorebastore
- See Also:
CASTORE
Store intochararray.- SeeJava Virtual Machine Specification:
- 6.5.castorecastore
- See Also:
SASTORE
Store intoshortarray.- SeeJava Virtual Machine Specification:
- 6.5.sastoresastore
- See Also:
POP
Pop the top operand stack value.- SeeJava Virtual Machine Specification:
- 6.5.poppop
- See Also:
POP2
Pop the top one or two operand stack values.- SeeJava Virtual Machine Specification:
- 6.5.pop2pop2
- See Also:
DUP
Duplicate the top operand stack value.- SeeJava Virtual Machine Specification:
- 6.5.dupdup
- See Also:
DUP_X1
Duplicate the top operand stack value and insert two values down.- SeeJava Virtual Machine Specification:
- 6.5.dup_x1dup_x1
- See Also:
DUP_X2
Duplicate the top operand stack value and insert two or three values down.- SeeJava Virtual Machine Specification:
- 6.5.dup_x2dup_x2
- See Also:
DUP2
Duplicate the top one or two operand stack values.- SeeJava Virtual Machine Specification:
- 6.5.dup2dup2
- See Also:
DUP2_X1
Duplicate the top one or two operand stack values and insert two or three values down.- SeeJava Virtual Machine Specification:
- 6.5.dup2_x1dup2_x1
- See Also:
DUP2_X2
Duplicate the top one or two operand stack values and insert two, three, or four values down.- SeeJava Virtual Machine Specification:
- 6.5.dup2_x2dup2_x2
- See Also:
SWAP
Swap the top two operand stack values.- SeeJava Virtual Machine Specification:
- 6.5.swapswap
- See Also:
IADD
Addint.- SeeJava Virtual Machine Specification:
- 6.5.iaddiadd
- See Also:
LADD
Addlong.- SeeJava Virtual Machine Specification:
- 6.5.laddladd
- See Also:
FADD
Addfloat.- SeeJava Virtual Machine Specification:
- 6.5.faddfadd
- See Also:
DADD
Adddouble.- SeeJava Virtual Machine Specification:
- 6.5.dadddadd
- See Also:
ISUB
Subtractint.- SeeJava Virtual Machine Specification:
- 6.5.isubisub
- See Also:
LSUB
Subtractlong.- SeeJava Virtual Machine Specification:
- 6.5.lsublsub
- See Also:
FSUB
Subtractfloat.- SeeJava Virtual Machine Specification:
- 6.5.fsubfsub
- See Also:
DSUB
Subtractdouble.- SeeJava Virtual Machine Specification:
- 6.5.dsubdsub
- See Also:
IMUL
Multiplyint.- SeeJava Virtual Machine Specification:
- 6.5.imulimul
- See Also:
LMUL
Multiplylong.- SeeJava Virtual Machine Specification:
- 6.5.lmullmul
- See Also:
FMUL
Multiplyfloat.- SeeJava Virtual Machine Specification:
- 6.5.fmulfmul
- See Also:
DMUL
Multiplydouble.- SeeJava Virtual Machine Specification:
- 6.5.dmuldmul
- See Also:
IDIV
Divideint.- SeeJava Virtual Machine Specification:
- 6.5.idividiv
- See Also:
LDIV
Dividelong.- SeeJava Virtual Machine Specification:
- 6.5.ldivldiv
- See Also:
FDIV
Dividefloat.- SeeJava Virtual Machine Specification:
- 6.5.fdivfdiv
- See Also:
DDIV
Dividedouble.- SeeJava Virtual Machine Specification:
- 6.5.ddivddiv
- See Also:
IREM
Remainderint.- SeeJava Virtual Machine Specification:
- 6.5.iremirem
- See Also:
LREM
Remainderlong.- SeeJava Virtual Machine Specification:
- 6.5.lremlrem
- See Also:
FREM
Remainderfloat.- SeeJava Virtual Machine Specification:
- 6.5.fremfrem
- See Also:
DREM
Remainderdouble.- SeeJava Virtual Machine Specification:
- 6.5.dremdrem
- See Also:
INEG
Negateint.- SeeJava Virtual Machine Specification:
- 6.5.inegineg
- See Also:
LNEG
Negatelong.- SeeJava Virtual Machine Specification:
- 6.5.lneglneg
- See Also:
FNEG
Negatefloat.- SeeJava Virtual Machine Specification:
- 6.5.fnegfneg
- See Also:
DNEG
Negatedouble.- SeeJava Virtual Machine Specification:
- 6.5.dnegdneg
- See Also:
ISHL
Shift leftint.- SeeJava Virtual Machine Specification:
- 6.5.ishlishl
- See Also:
LSHL
Shift leftlong.- SeeJava Virtual Machine Specification:
- 6.5.lshllshl
- See Also:
ISHR
Arithmetic shift rightint.- SeeJava Virtual Machine Specification:
- 6.5.ishrishr
- See Also:
LSHR
Arithmetic shift rightlong.- SeeJava Virtual Machine Specification:
- 6.5.lshrlshr
- See Also:
IUSHR
Logical shift rightint.- SeeJava Virtual Machine Specification:
- 6.5.iushriushr
- See Also:
LUSHR
Logical shift rightlong.- SeeJava Virtual Machine Specification:
- 6.5.lushrlushr
- See Also:
IAND
Bitwise ANDint.- API Note:
- This may be used to implement
booleanAND. - SeeJava Virtual Machine Specification:
- 6.5.iandiand
- See Also:
LAND
Bitwise ANDlong.- SeeJava Virtual Machine Specification:
- 6.5.landland
- See Also:
IOR
Bitwise ORint.- API Note:
- This may be used to implement
booleanOR. - SeeJava Virtual Machine Specification:
- 6.5.iorior
- See Also:
LOR
Bitwise ORlong.- SeeJava Virtual Machine Specification:
- 6.5.lorlor
- See Also:
IXOR
Bitwise XORint.- API Note:
- This may be used to implement
booleanXOR. - SeeJava Virtual Machine Specification:
- 6.5.ixorixor
- See Also:
LXOR
Bitwise XORlong.- SeeJava Virtual Machine Specification:
- 6.5.lxorlxor
- See Also:
IINC
Incrementintlocal variable by constant.- SeeJava Virtual Machine Specification:
- 6.5.iinciinc
- See Also:
I2L
- SeeJava Language Specification:
- 5.1.2 Widening Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.i2li2l
- See Also:
I2F
- SeeJava Language Specification:
- 5.1.2 Widening Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.i2fi2f
- See Also:
I2D
- SeeJava Language Specification:
- 5.1.2 Widening Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.i2di2d
- See Also:
L2I
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.l2il2i
- See Also:
L2F
- SeeJava Language Specification:
- 5.1.2 Widening Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.l2fl2f
- See Also:
L2D
- SeeJava Language Specification:
- 5.1.2 Widening Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.l2dl2d
- See Also:
F2I
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.f2if2i
- See Also:
F2L
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.f2lf2l
- See Also:
F2D
- SeeJava Language Specification:
- 5.1.2 Widening Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.f2df2d
- See Also:
D2I
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.d2id2i
- See Also:
D2L
- SeeJava Virtual Machine Specification:
- 6.5.d2ld2l
- See Also:
D2F
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.d2fd2f
- See Also:
I2B
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.i2bi2b
- See Also:
I2C
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.i2ci2c
- See Also:
I2S
- SeeJava Language Specification:
- 5.1.3 Narrowing Primitive Conversion
- SeeJava Virtual Machine Specification:
- 6.5.i2si2s
- See Also:
LCMP
Comparelong.- SeeJava Virtual Machine Specification:
- 6.5.lcmplcmp
- See Also:
FCMPL
- SeeJava Virtual Machine Specification:
- 6.5.fcmp_opfcmp<op>
- See Also:
FCMPG
- SeeJava Virtual Machine Specification:
- 6.5.fcmp_opfcmp<op>
- See Also:
DCMPL
- SeeJava Virtual Machine Specification:
- 6.5.dcmp_opdcmp<op>
- See Also:
DCMPG
- SeeJava Virtual Machine Specification:
- 6.5.dcmp_opdcmp<op>
- See Also:
IFEQ
Branch ifintcomparison== 0succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_condif_<cond>
- See Also:
IFNE
Branch ifintcomparison!= 0succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_condif_<cond>
- See Also:
IFLT
Branch ifintcomparison< 0succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_condif_<cond>
- See Also:
IFGE
Branch ifintcomparison>= 0succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_condif_<cond>
- See Also:
IFGT
Branch ifintcomparison> 0succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_condif_<cond>
- See Also:
IFLE
Branch ifintcomparison<= 0succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_condif_<cond>
- See Also:
IF_ICMPEQ
Branch ifintcomparisonoperand1 == operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_icmp_condif_icmp<cond>
- See Also:
IF_ICMPNE
Branch ifintcomparisonoperand1 != operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_icmp_condif_icmp<cond>
- See Also:
IF_ICMPLT
Branch ifintcomparisonoperand1 < operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_icmp_condif_icmp<cond>
- See Also:
IF_ICMPGE
Branch ifintcomparisonoperand1 >= operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_icmp_condif_icmp<cond>
- See Also:
IF_ICMPGT
Branch ifintcomparisonoperand1 > operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_icmp_condif_icmp<cond>
- See Also:
IF_ICMPLE
Branch ifintcomparisonoperand1 <= operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_icmp_condif_icmp<cond>
- See Also:
IF_ACMPEQ
Branch ifreferencecomparisonoperand1 == operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_acmp_condif_acmp<cond>
- See Also:
IF_ACMPNE
Branch ifreferencecomparisonoperand1 != operand2succeeds.- SeeJava Virtual Machine Specification:
- 6.5.if_acmp_condif_acmp<cond>
- See Also:
GOTO
Branch always.- SeeJava Virtual Machine Specification:
- 6.5.gotogoto
- See Also:
JSR
(Discontinued) Jump subroutine; last used in major version50.- SeeJava Virtual Machine Specification:
- 4.9.1 Static Constraints
6.5.jsrjsr - See Also:
RET
(Discontinued) Return from subroutine; last used in major version50.- SeeJava Virtual Machine Specification:
- 4.9.1 Static Constraints
6.5.retret - See Also:
TABLESWITCH
Access jump table by index and jump.- SeeJava Virtual Machine Specification:
- 6.5.tableswitchtableswitch
- See Also:
LOOKUPSWITCH
Access jump table by key match and jump.- SeeJava Virtual Machine Specification:
- 6.5.lookupswitchlookupswitch
- See Also:
IRETURN
Returnintfrom method.- SeeJava Virtual Machine Specification:
- 6.5.ireturnireturn
- See Also:
LRETURN
Returnlongfrom method.- SeeJava Virtual Machine Specification:
- 6.5.lreturnlreturn
- See Also:
FRETURN
Returnfloatfrom method.- SeeJava Virtual Machine Specification:
- 6.5.freturnfreturn
- See Also:
DRETURN
Returndoublefrom method.- SeeJava Virtual Machine Specification:
- 6.5.dreturndreturn
- See Also:
ARETURN
Returnreferencefrom method.- SeeJava Virtual Machine Specification:
- 6.5.areturnareturn
- See Also:
RETURN
Returnvoidfrom method.- SeeJava Virtual Machine Specification:
- 6.5.returnreturn
- See Also:
GETSTATIC
Getstaticfield from class.- SeeJava Virtual Machine Specification:
- 6.5.getstaticgetstatic
- See Also:
PUTSTATIC
Setstaticfield in class.- SeeJava Virtual Machine Specification:
- 6.5.putstaticputstatic
- See Also:
GETFIELD
Fetch field from object.- SeeJava Virtual Machine Specification:
- 6.5.getfieldgetfield
- See Also:
PUTFIELD
Set field in object.- SeeJava Virtual Machine Specification:
- 6.5.putfieldputfield
- See Also:
INVOKEVIRTUAL
Invoke instance method; dispatch based on class.- SeeJava Virtual Machine Specification:
- 6.5.invokevirtualinvokevirtual
- See Also:
INVOKESPECIAL
Invoke instance method; direct invocation of instance initialization methods and methods of the current class and its supertypes.- SeeJava Virtual Machine Specification:
- 6.5.invokevirtualinvokevirtual
- See Also:
INVOKESTATIC
Invoke a class (static) method.- SeeJava Virtual Machine Specification:
- 6.5.invokestaticinvokestatic
- See Also:
INVOKEINTERFACE
Invoke interface method.- SeeJava Virtual Machine Specification:
- 6.5.invokeinterfaceinvokeinterface
- See Also:
INVOKEDYNAMIC
Invoke a dynamically-computed call site.- SeeJava Virtual Machine Specification:
- 6.5.invokedynamicinvokedynamic
- See Also:
NEW
Create new object.- SeeJava Virtual Machine Specification:
- 6.5.newnew
- See Also:
NEWARRAY
Create new array.- SeeJava Virtual Machine Specification:
- 6.5.newarraynewarray
- See Also:
ANEWARRAY
Create new array ofreference.- SeeJava Virtual Machine Specification:
- 6.5.anewarrayanewarray
- See Also:
ARRAYLENGTH
Get length of array.- SeeJava Virtual Machine Specification:
- 6.5.arraylengtharraylength
- See Also:
ATHROW
Throw exception or error.- SeeJava Virtual Machine Specification:
- 6.5.athrowathrow
- See Also:
CHECKCAST
Check whether object is of given type.- SeeJava Virtual Machine Specification:
- 6.5.checkcastcheckcast
- See Also:
INSTANCEOF
Determine if object is of given type.- SeeJava Virtual Machine Specification:
- 6.5.instanceofinstanceof
- See Also:
MONITORENTER
Enter monitor for object.- SeeJava Virtual Machine Specification:
- 6.5.monitorentermonitorenter
- See Also:
MONITOREXIT
Exit monitor for object.- SeeJava Virtual Machine Specification:
- 6.5.monitorexitmonitorexit
- See Also:
MULTIANEWARRAY
Create new multidimensional array.- SeeJava Virtual Machine Specification:
- 6.5.multianewarraymultianewarray
- See Also:
IFNULL
Branch ifreferenceisnull.- SeeJava Virtual Machine Specification:
- 6.5.ifnullifnull
- See Also:
IFNONNULL
Branch ifreferenceis notnull.- SeeJava Virtual Machine Specification:
- 6.5.ifnonnullifnonnull
- See Also:
GOTO_W
Branch always (wide index).- SeeJava Virtual Machine Specification:
- 6.5.goto_wgoto_w
- See Also:
JSR_W
(Discontinued) Jump subroutine (wide index); last used in major version50.- SeeJava Virtual Machine Specification:
- 4.9.1 Static Constraints
6.5.jsr_wjsr_w - See Also:
ILOAD_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.iloadiload - See Also:
LLOAD_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.lloadlload - See Also:
FLOAD_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.floadfload - See Also:
DLOAD_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.dloaddload - See Also:
ALOAD_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.aloadaload - See Also:
ISTORE_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.istoreistore - See Also:
LSTORE_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.lstorelstore - See Also:
FSTORE_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.fstorefstore - See Also:
DSTORE_W
- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.dstoredstore - See Also:
ASTORE_W
Storereferenceinto local variable (wide index). This is awide-modified pseudo-opcode. Can also store thereturnAddresstype.- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.astoreastore - See Also:
RET_W
(Discontinued) Return from subroutine (wide index); last used in major version50. This is awide-modified pseudo-opcode.- SeeJava Virtual Machine Specification:
- 4.9.1 Static Constraints
6.5.widewide
6.5.retret - See Also:
IINC_W
Increment local variable by constant (wide index). This is awide-modified pseudo-opcode.- SeeJava Virtual Machine Specification:
- 6.5.widewide
6.5.iinciinc - See Also:
Method Details
values
Returns an array containing the constants of this enum class, inthe order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
valueOf
Returns the enum constant of this class with the specified name.The string must matchexactly an identifier used to declare anenum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
bytecode
public int bytecode()Returns the opcode value. Forwide pseudo-opcodes, returns the first 2 bytes of the instruction, which are the wide opcode196(0xC4) and the functional opcode, as a U2 value.- Returns:
- the opcode value
isWide
public boolean isWide()Returns true if this is a pseudo-opcode modified by wide opcode.wideextends local variable index by additional bytes.sizeIfFixed
public int sizeIfFixed()Returns size of the instruction in bytes if fixed, or -1 otherwise. This size includes the opcode itself.- Returns:
- size of the instruction in bytes if fixed, or -1 otherwise
- See Also:
kind
Returns operation kind. Each kind of operation has its own modeling interface to model instructions belonging to that kind.- Returns:
- operation kind