Enum Class Opcode

java.lang.Object
java.lang.Enum<Opcode>
java.lang.classfile.Opcode
All Implemented Interfaces:
Serializable, Comparable<Opcode>, Constable

public enum Opcode extends Enum<Opcode>
Describes the opcodes of the JVM instruction set, as described in JVMS 6.5. As well as a number of pseudo-instructions that may be encountered when traversing the instructions of a method.
Since:
24
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    Kinds of opcodes.

    Nested classes/interfaces declared in class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    Load reference from array
    Store into reference array
    Push null
    Load reference from local variable
    Load reference from local variable 0
    Load reference from local variable 1
    Load reference from local variable 2
    Load reference from local variable 3
    Load reference from local variable (wide index)
    Create new array of reference
    Return reference from method
    Get length of array
    Store reference into local variable
    Store reference into local variable 0
    Store reference into local variable 1
    Store reference into local variable 2
    Store reference into local variable 3
    Store reference into local variable (wide index)
    Throw exception or error
    Load byte from array
    Store into byte array
    Push byte
    Load char from array
    Store into char array
    Check whether object is of given type
    Convert double to float
    Convert double to int
    Convert double to long
    Add double
    Load double from array
    Store into double array
    Compare double
    Compare double
    Push double constant 0
    Push double constant 1
    Divide double
    Load double from local variable
    Load double from local variable 0
    Load double from local variable 1
    Load double from local variable 2
    Load double from local variable 3
    Load double from local variable (wide index)
    Multiply double
    Negate double
    Remainder double
    Return double from method
    Store double into local variable
    Store double into local variable 0
    Store double into local variable 1
    Store double into local variable 2
    Store double into local variable 3
    Store double into local variable (wide index)
    Subtract double
    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
    Convert float to double
    Convert float to int
    Convert float to long
    Add float
    Load float from array
    Store into float array
    Compare float
    Compare float
    Push float constant 0
    Push float constant 1
    Push float constant 2
    Divide float
    Load float from local variable
    Load float from local variable 0
    Load float from local variable 1
    Load float from local variable 2
    Load float from local variable 3
    Load float from local variable (wide index)
    Multiply float
    Negate float
    Remainder float
    Return float from method
    Store float into local variable
    Store float into local variable 0
    Store float into local variable 1
    Store float into local variable 2
    Store float into local variable 3
    Store float into local variable (wide index)
    Subtract float
    Fetch field from object
    Get static field from class
    Branch always
    Branch always (wide index)
    Convert int to byte
    Convert int to char
    Convert int to double
    Convert int to float
    Convert int to long
    Convert int to short
    Add int
    Load int from array
    Boolean AND int
    Store into int array
    Push int constant 0
    Push int constant 1
    Push int constant 2
    Push int constant 3
    Push int constant 4
    Push int constant 5
    Push int constant -1
    Divide int
    Branch if reference comparison succeeds
    Branch if reference comparison succeeds
    Branch if int comparison succeeds
    Branch if int comparison succeeds
    Branch if int comparison succeeds
    Branch if int comparison succeeds
    Branch if int comparison succeeds
    Branch if int comparison succeeds
    Branch if int comparison with zero succeeds
    Branch if int comparison with zero succeeds
    Branch if int comparison with zero succeeds
    Branch if int comparison with zero succeeds
    Branch if int comparison with zero succeeds
    Branch if int comparison with zero succeeds
    Branch if reference not null
    Branch if reference is null
    Increment local variable by constant
    Increment local variable by constant (wide index)
    Load int from local variable
    Load int from local variable 0
    Load int from local variable 1
    Load int from local variable 2
    Load int from local variable3
    Load int from local variable (wide index)
    Multiply int
    Negate int
    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
    Boolean OR int
    Remainder int
    Return int from method
    Shift left int
    Shift right int
    Store int into local variable
    Store int into local variable 0
    Store int into local variable 1
    Store int into local variable 2
    Store int into local variable 3
    Store int into local variable (wide index)
    Subtract int
    Logical shift right int
    Boolean XOR int
    Jump subroutine is discontinued opcode
    Jump subroutine (wide index) is discontinued opcode
    Convert long to double
    Convert long to float
    Convert long to int
    Add long
    Load long from array
    Boolean AND long
    Store into long array
    Compare long
    Push long constant 0
    Push long constant 1
    Push item from run-time constant pool
    Push item from run-time constant pool (wide index)
    Push long or double from run-time constant pool (wide index)
    Divide long
    Load long from local variable
    Load long from local variable 0
    Load long from local variable 1
    Load long from local variable 2
    Load long from local variable 3
    Load long from local variable (wide index)
    Multiply long
    Negate long
    Access jump table by key match and jump
    Boolean OR long
    Remainder long
    Return long from method
    Shift left long
    Shift right long
    Store long into local variable
    Store long into local variable 0
    Store long into local variable 1
    Store long into local variable 2
    Store long into local variable 3
    Store long into local variable (wide index)
    Subtract long
    Logical shift right long
    Boolean XOR long
    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
    Set static field in class
    Return from subroutine is discontinued opcode
    Return from subroutine (wide index) is discontinued opcode
    Return void from method
    Load short from array
    Store into short array
    Push short
    Swap the top two operand stack values
    Access jump table by index and jump
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Returns the opcode value.
    boolean
    Returns true if this is a pseudo-opcode modified by wide opcode.
    Returns instruction kind.
    int
    Returns size of the instruction in bytes if fixed, or -1 otherwise.
    static Opcode
    Returns the enum constant of this class with the specified name.
    static Opcode[]
    Returns an array containing the constants of this enum class, in the order they are declared.

    Methods declared in class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • NOP

      public static final Opcode NOP
      Do nothing
    • ACONST_NULL

      public static final Opcode ACONST_NULL
      Push null
    • ICONST_M1

      public static final Opcode ICONST_M1
      Push int constant -1
    • ICONST_0

      public static final Opcode ICONST_0
      Push int constant 0
    • ICONST_1

      public static final Opcode ICONST_1
      Push int constant 1
    • ICONST_2

      public static final Opcode ICONST_2
      Push int constant 2
    • ICONST_3

      public static final Opcode ICONST_3
      Push int constant 3
    • ICONST_4

      public static final Opcode ICONST_4
      Push int constant 4
    • ICONST_5

      public static final Opcode ICONST_5
      Push int constant 5
    • LCONST_0

      public static final Opcode LCONST_0
      Push long constant 0
    • LCONST_1

      public static final Opcode LCONST_1
      Push long constant 1
    • FCONST_0

      public static final Opcode FCONST_0
      Push float constant 0
    • FCONST_1

      public static final Opcode FCONST_1
      Push float constant 1
    • FCONST_2

      public static final Opcode FCONST_2
      Push float constant 2
    • DCONST_0

      public static final Opcode DCONST_0
      Push double constant 0
    • DCONST_1

      public static final Opcode DCONST_1
      Push double constant 1
    • BIPUSH

      public static final Opcode BIPUSH
      Push byte
    • SIPUSH

      public static final Opcode SIPUSH
      Push short
    • LDC

      public static final Opcode LDC
      Push item from run-time constant pool
    • LDC_W

      public static final Opcode LDC_W
      Push item from run-time constant pool (wide index)
    • LDC2_W

      public static final Opcode LDC2_W
      Push long or double from run-time constant pool (wide index)
    • ILOAD

      public static final Opcode ILOAD
      Load int from local variable
    • LLOAD

      public static final Opcode LLOAD
      Load long from local variable
    • FLOAD

      public static final Opcode FLOAD
      Load float from local variable
    • DLOAD

      public static final Opcode DLOAD
      Load double from local variable
    • ALOAD

      public static final Opcode ALOAD
      Load reference from local variable
    • ILOAD_0

      public static final Opcode ILOAD_0
      Load int from local variable 0
    • ILOAD_1

      public static final Opcode ILOAD_1
      Load int from local variable 1
    • ILOAD_2

      public static final Opcode ILOAD_2
      Load int from local variable 2
    • ILOAD_3

      public static final Opcode ILOAD_3
      Load int from local variable3
    • LLOAD_0

      public static final Opcode LLOAD_0
      Load long from local variable 0
    • LLOAD_1

      public static final Opcode LLOAD_1
      Load long from local variable 1
    • LLOAD_2

      public static final Opcode LLOAD_2
      Load long from local variable 2
    • LLOAD_3

      public static final Opcode LLOAD_3
      Load long from local variable 3
    • FLOAD_0

      public static final Opcode FLOAD_0
      Load float from local variable 0
    • FLOAD_1

      public static final Opcode FLOAD_1
      Load float from local variable 1
    • FLOAD_2

      public static final Opcode FLOAD_2
      Load float from local variable 2
    • FLOAD_3

      public static final Opcode FLOAD_3
      Load float from local variable 3
    • DLOAD_0

      public static final Opcode DLOAD_0
      Load double from local variable 0
    • DLOAD_1

      public static final Opcode DLOAD_1
      Load double from local variable 1
    • DLOAD_2

      public static final Opcode DLOAD_2
      Load double from local variable 2
    • DLOAD_3

      public static final Opcode DLOAD_3
      Load double from local variable 3
    • ALOAD_0

      public static final Opcode ALOAD_0
      Load reference from local variable 0
    • ALOAD_1

      public static final Opcode ALOAD_1
      Load reference from local variable 1
    • ALOAD_2

      public static final Opcode ALOAD_2
      Load reference from local variable 2
    • ALOAD_3

      public static final Opcode ALOAD_3
      Load reference from local variable 3
    • IALOAD

      public static final Opcode IALOAD
      Load int from array
    • LALOAD

      public static final Opcode LALOAD
      Load long from array
    • FALOAD

      public static final Opcode FALOAD
      Load float from array
    • DALOAD

      public static final Opcode DALOAD
      Load double from array
    • AALOAD

      public static final Opcode AALOAD
      Load reference from array
    • BALOAD

      public static final Opcode BALOAD
      Load byte from array
    • CALOAD

      public static final Opcode CALOAD
      Load char from array
    • SALOAD

      public static final Opcode SALOAD
      Load short from array
    • ISTORE

      public static final Opcode ISTORE
      Store int into local variable
    • LSTORE

      public static final Opcode LSTORE
      Store long into local variable
    • FSTORE

      public static final Opcode FSTORE
      Store float into local variable
    • DSTORE

      public static final Opcode DSTORE
      Store double into local variable
    • ASTORE

      public static final Opcode ASTORE
      Store reference into local variable
    • ISTORE_0

      public static final Opcode ISTORE_0
      Store int into local variable 0
    • ISTORE_1

      public static final Opcode ISTORE_1
      Store int into local variable 1
    • ISTORE_2

      public static final Opcode ISTORE_2
      Store int into local variable 2
    • ISTORE_3

      public static final Opcode ISTORE_3
      Store int into local variable 3
    • LSTORE_0

      public static final Opcode LSTORE_0
      Store long into local variable 0
    • LSTORE_1

      public static final Opcode LSTORE_1
      Store long into local variable 1
    • LSTORE_2

      public static final Opcode LSTORE_2
      Store long into local variable 2
    • LSTORE_3

      public static final Opcode LSTORE_3
      Store long into local variable 3
    • FSTORE_0

      public static final Opcode FSTORE_0
      Store float into local variable 0
    • FSTORE_1

      public static final Opcode FSTORE_1
      Store float into local variable 1
    • FSTORE_2

      public static final Opcode FSTORE_2
      Store float into local variable 2
    • FSTORE_3

      public static final Opcode FSTORE_3
      Store float into local variable 3
    • DSTORE_0

      public static final Opcode DSTORE_0
      Store double into local variable 0
    • DSTORE_1

      public static final Opcode DSTORE_1
      Store double into local variable 1
    • DSTORE_2

      public static final Opcode DSTORE_2
      Store double into local variable 2
    • DSTORE_3

      public static final Opcode DSTORE_3
      Store double into local variable 3
    • ASTORE_0

      public static final Opcode ASTORE_0
      Store reference into local variable 0
    • ASTORE_1

      public static final Opcode ASTORE_1
      Store reference into local variable 1
    • ASTORE_2

      public static final Opcode ASTORE_2
      Store reference into local variable 2
    • ASTORE_3

      public static final Opcode ASTORE_3
      Store reference into local variable 3
    • IASTORE

      public static final Opcode IASTORE
      Store into int array
    • LASTORE

      public static final Opcode LASTORE
      Store into long array
    • FASTORE

      public static final Opcode FASTORE
      Store into float array
    • DASTORE

      public static final Opcode DASTORE
      Store into double array
    • AASTORE

      public static final Opcode AASTORE
      Store into reference array
    • BASTORE

      public static final Opcode BASTORE
      Store into byte array
    • CASTORE

      public static final Opcode CASTORE
      Store into char array
    • SASTORE

      public static final Opcode SASTORE
      Store into short array
    • POP

      public static final Opcode POP
      Pop the top operand stack value
    • POP2

      public static final Opcode POP2
      Pop the top one or two operand stack values
    • DUP

      public static final Opcode DUP
      Duplicate the top operand stack value
    • DUP_X1

      public static final Opcode DUP_X1
      Duplicate the top operand stack value and insert two values down
    • DUP_X2

      public static final Opcode DUP_X2
      Duplicate the top operand stack value and insert two or three values down
    • DUP2

      public static final Opcode DUP2
      Duplicate the top one or two operand stack values
    • DUP2_X1

      public static final Opcode DUP2_X1
      Duplicate the top one or two operand stack values and insert two or three values down
    • DUP2_X2

      public static final Opcode DUP2_X2
      Duplicate the top one or two operand stack values and insert two, three, or four values down
    • SWAP

      public static final Opcode SWAP
      Swap the top two operand stack values
    • IADD

      public static final Opcode IADD
      Add int
    • LADD

      public static final Opcode LADD
      Add long
    • FADD

      public static final Opcode FADD
      Add float
    • DADD

      public static final Opcode DADD
      Add double
    • ISUB

      public static final Opcode ISUB
      Subtract int
    • LSUB

      public static final Opcode LSUB
      Subtract long
    • FSUB

      public static final Opcode FSUB
      Subtract float
    • DSUB

      public static final Opcode DSUB
      Subtract double
    • IMUL

      public static final Opcode IMUL
      Multiply int
    • LMUL

      public static final Opcode LMUL
      Multiply long
    • FMUL

      public static final Opcode FMUL
      Multiply float
    • DMUL

      public static final Opcode DMUL
      Multiply double
    • IDIV

      public static final Opcode IDIV
      Divide int
    • LDIV

      public static final Opcode LDIV
      Divide long
    • FDIV

      public static final Opcode FDIV
      Divide float
    • DDIV

      public static final Opcode DDIV
      Divide double
    • IREM

      public static final Opcode IREM
      Remainder int
    • LREM

      public static final Opcode LREM
      Remainder long
    • FREM

      public static final Opcode FREM
      Remainder float
    • DREM

      public static final Opcode DREM
      Remainder double
    • INEG

      public static final Opcode INEG
      Negate int
    • LNEG

      public static final Opcode LNEG
      Negate long
    • FNEG

      public static final Opcode FNEG
      Negate float
    • DNEG

      public static final Opcode DNEG
      Negate double
    • ISHL

      public static final Opcode ISHL
      Shift left int
    • LSHL

      public static final Opcode LSHL
      Shift left long
    • ISHR

      public static final Opcode ISHR
      Shift right int
    • LSHR

      public static final Opcode LSHR
      Shift right long
    • IUSHR

      public static final Opcode IUSHR
      Logical shift right int
    • LUSHR

      public static final Opcode LUSHR
      Logical shift right long
    • IAND

      public static final Opcode IAND
      Boolean AND int
    • LAND

      public static final Opcode LAND
      Boolean AND long
    • IOR

      public static final Opcode IOR
      Boolean OR int
    • LOR

      public static final Opcode LOR
      Boolean OR long
    • IXOR

      public static final Opcode IXOR
      Boolean XOR int
    • LXOR

      public static final Opcode LXOR
      Boolean XOR long
    • IINC

      public static final Opcode IINC
      Increment local variable by constant
    • I2L

      public static final Opcode I2L
      Convert int to long
    • I2F

      public static final Opcode I2F
      Convert int to float
    • I2D

      public static final Opcode I2D
      Convert int to double
    • L2I

      public static final Opcode L2I
      Convert long to int
    • L2F

      public static final Opcode L2F
      Convert long to float
    • L2D

      public static final Opcode L2D
      Convert long to double
    • F2I

      public static final Opcode F2I
      Convert float to int
    • F2L

      public static final Opcode F2L
      Convert float to long
    • F2D

      public static final Opcode F2D
      Convert float to double
    • D2I

      public static final Opcode D2I
      Convert double to int
    • D2L

      public static final Opcode D2L
      Convert double to long
    • D2F

      public static final Opcode D2F
      Convert double to float
    • I2B

      public static final Opcode I2B
      Convert int to byte
    • I2C

      public static final Opcode I2C
      Convert int to char
    • I2S

      public static final Opcode I2S
      Convert int to short
    • LCMP

      public static final Opcode LCMP
      Compare long
    • FCMPL

      public static final Opcode FCMPL
      Compare float
    • FCMPG

      public static final Opcode FCMPG
      Compare float
    • DCMPL

      public static final Opcode DCMPL
      Compare double
    • DCMPG

      public static final Opcode DCMPG
      Compare double
    • IFEQ

      public static final Opcode IFEQ
      Branch if int comparison with zero succeeds
    • IFNE

      public static final Opcode IFNE
      Branch if int comparison with zero succeeds
    • IFLT

      public static final Opcode IFLT
      Branch if int comparison with zero succeeds
    • IFGE

      public static final Opcode IFGE
      Branch if int comparison with zero succeeds
    • IFGT

      public static final Opcode IFGT
      Branch if int comparison with zero succeeds
    • IFLE

      public static final Opcode IFLE
      Branch if int comparison with zero succeeds
    • IF_ICMPEQ

      public static final Opcode IF_ICMPEQ
      Branch if int comparison succeeds
    • IF_ICMPNE

      public static final Opcode IF_ICMPNE
      Branch if int comparison succeeds
    • IF_ICMPLT

      public static final Opcode IF_ICMPLT
      Branch if int comparison succeeds
    • IF_ICMPGE

      public static final Opcode IF_ICMPGE
      Branch if int comparison succeeds
    • IF_ICMPGT

      public static final Opcode IF_ICMPGT
      Branch if int comparison succeeds
    • IF_ICMPLE

      public static final Opcode IF_ICMPLE
      Branch if int comparison succeeds
    • IF_ACMPEQ

      public static final Opcode IF_ACMPEQ
      Branch if reference comparison succeeds
    • IF_ACMPNE

      public static final Opcode IF_ACMPNE
      Branch if reference comparison succeeds
    • GOTO

      public static final Opcode GOTO
      Branch always
    • JSR

      public static final Opcode JSR
      Jump subroutine is discontinued opcode
      See Also:
    • RET

      public static final Opcode RET
      Return from subroutine is discontinued opcode
      See Also:
    • TABLESWITCH

      public static final Opcode TABLESWITCH
      Access jump table by index and jump
    • LOOKUPSWITCH

      public static final Opcode LOOKUPSWITCH
      Access jump table by key match and jump
    • IRETURN

      public static final Opcode IRETURN
      Return int from method
    • LRETURN

      public static final Opcode LRETURN
      Return long from method
    • FRETURN

      public static final Opcode FRETURN
      Return float from method
    • DRETURN

      public static final Opcode DRETURN
      Return double from method
    • ARETURN

      public static final Opcode ARETURN
      Return reference from method
    • RETURN

      public static final Opcode RETURN
      Return void from method
    • GETSTATIC

      public static final Opcode GETSTATIC
      Get static field from class
    • PUTSTATIC

      public static final Opcode PUTSTATIC
      Set static field in class
    • GETFIELD

      public static final Opcode GETFIELD
      Fetch field from object
    • PUTFIELD

      public static final Opcode PUTFIELD
      Set field in object
    • INVOKEVIRTUAL

      public static final Opcode INVOKEVIRTUAL
      Invoke instance method; dispatch based on class
    • INVOKESPECIAL

      public static final Opcode INVOKESPECIAL
      Invoke instance method; direct invocation of instance initialization methods and methods of the current class and its supertypes
    • INVOKESTATIC

      public static final Opcode INVOKESTATIC
      Invoke a class (static) method
    • INVOKEINTERFACE

      public static final Opcode INVOKEINTERFACE
      Invoke interface method
    • INVOKEDYNAMIC

      public static final Opcode INVOKEDYNAMIC
      Invoke a dynamically-computed call site
    • NEW

      public static final Opcode NEW
      Create new object
    • NEWARRAY

      public static final Opcode NEWARRAY
      Create new array
    • ANEWARRAY

      public static final Opcode ANEWARRAY
      Create new array of reference
    • ARRAYLENGTH

      public static final Opcode ARRAYLENGTH
      Get length of array
    • ATHROW

      public static final Opcode ATHROW
      Throw exception or error
    • CHECKCAST

      public static final Opcode CHECKCAST
      Check whether object is of given type
    • INSTANCEOF

      public static final Opcode INSTANCEOF
      Determine if object is of given type
    • MONITORENTER

      public static final Opcode MONITORENTER
      Enter monitor for object
    • MONITOREXIT

      public static final Opcode MONITOREXIT
      Exit monitor for object
    • MULTIANEWARRAY

      public static final Opcode MULTIANEWARRAY
      Create new multidimensional array
    • IFNULL

      public static final Opcode IFNULL
      Branch if reference is null
    • IFNONNULL

      public static final Opcode IFNONNULL
      Branch if reference not null
    • GOTO_W

      public static final Opcode GOTO_W
      Branch always (wide index)
    • JSR_W

      public static final Opcode JSR_W
      Jump subroutine (wide index) is discontinued opcode
      See Also:
    • ILOAD_W

      public static final Opcode ILOAD_W
      Load int from local variable (wide index)
    • LLOAD_W

      public static final Opcode LLOAD_W
      Load long from local variable (wide index)
    • FLOAD_W

      public static final Opcode FLOAD_W
      Load float from local variable (wide index)
    • DLOAD_W

      public static final Opcode DLOAD_W
      Load double from local variable (wide index)
    • ALOAD_W

      public static final Opcode ALOAD_W
      Load reference from local variable (wide index)
    • ISTORE_W

      public static final Opcode ISTORE_W
      Store int into local variable (wide index)
    • LSTORE_W

      public static final Opcode LSTORE_W
      Store long into local variable (wide index)
    • FSTORE_W

      public static final Opcode FSTORE_W
      Store float into local variable (wide index)
    • DSTORE_W

      public static final Opcode DSTORE_W
      Store double into local variable (wide index)
    • ASTORE_W

      public static final Opcode ASTORE_W
      Store reference into local variable (wide index)
    • RET_W

      public static final Opcode RET_W
      Return from subroutine (wide index) is discontinued opcode
      See Also:
    • IINC_W

      public static final Opcode IINC_W
      Increment local variable by constant (wide index)
  • Method Details

    • values

      public static Opcode[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static Opcode valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum 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 name
      NullPointerException - if the argument is null
    • bytecode

      public int bytecode()
      Returns the opcode value. For wide pseudo-opcodes, returns the first 2 bytes of the instruction, which are the wide opcode 196 (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.
      Returns:
      true if this is a pseudo-opcode modified by wide opcode
      See Also:
    • 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
    • kind

      public Opcode.Kind kind()
      Returns instruction kind.
      Returns:
      instruction kind