Enum Class Opcode

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

public enum Opcode extends Enum<OpcodePREVIEW>
Opcode is a preview API of the Java platform.
Programs can only use Opcode when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
Describes the opcodes of the JVM instruction set, as described in 6.5. As well as a number of pseudo-instructions that may be encountered when traversing the instructions of a method.
Since:
22
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    Preview.
    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 bytecode.
    Returns constant value for constant instructions, or null otherwise.
    boolean
    Returns true if the instruction represents an unconditional branch.
    boolean
    Returns true if the instruction has extended local variable index by additional bytes.
    Returns instruction kind.
    Returns primary type kind for instructions operating with at least one type, or null otherwise.
    Returns secondary type kind for instructions operating with two types, or null otherwise.
    int
    Returns size of the instruction if fixed, or -1 otherwise.
    int
    Returns local variable slot for instructions operating with local variable, or -1 otherwise.
    Returns the enum constant of this class with the specified name.
    static OpcodePREVIEW[]
    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 OpcodePREVIEW NOP
      Do nothing
    • ACONST_NULL

      public static final OpcodePREVIEW ACONST_NULL
      Push null
    • ICONST_M1

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

      public static final OpcodePREVIEW ICONST_0
      Push int constant 0
    • ICONST_1

      public static final OpcodePREVIEW ICONST_1
      Push int constant 1
    • ICONST_2

      public static final OpcodePREVIEW ICONST_2
      Push int constant 2
    • ICONST_3

      public static final OpcodePREVIEW ICONST_3
      Push int constant 3
    • ICONST_4

      public static final OpcodePREVIEW ICONST_4
      Push int constant 4
    • ICONST_5

      public static final OpcodePREVIEW ICONST_5
      Push int constant 5
    • LCONST_0

      public static final OpcodePREVIEW LCONST_0
      Push long constant 0
    • LCONST_1

      public static final OpcodePREVIEW LCONST_1
      Push long constant 1
    • FCONST_0

      public static final OpcodePREVIEW FCONST_0
      Push float constant 0
    • FCONST_1

      public static final OpcodePREVIEW FCONST_1
      Push float constant 1
    • FCONST_2

      public static final OpcodePREVIEW FCONST_2
      Push float constant 2
    • DCONST_0

      public static final OpcodePREVIEW DCONST_0
      Push double constant 0
    • DCONST_1

      public static final OpcodePREVIEW DCONST_1
      Push double constant 1
    • BIPUSH

      public static final OpcodePREVIEW BIPUSH
      Push byte
    • SIPUSH

      public static final OpcodePREVIEW SIPUSH
      Push short
    • LDC

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      public static final OpcodePREVIEW IALOAD
      Load int from array
    • LALOAD

      public static final OpcodePREVIEW LALOAD
      Load long from array
    • FALOAD

      public static final OpcodePREVIEW FALOAD
      Load float from array
    • DALOAD

      public static final OpcodePREVIEW DALOAD
      Load double from array
    • AALOAD

      public static final OpcodePREVIEW AALOAD
      Load reference from array
    • BALOAD

      public static final OpcodePREVIEW BALOAD
      Load byte from array
    • CALOAD

      public static final OpcodePREVIEW CALOAD
      Load char from array
    • SALOAD

      public static final OpcodePREVIEW SALOAD
      Load short from array
    • ISTORE

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      public static final OpcodePREVIEW IASTORE
      Store into int array
    • LASTORE

      public static final OpcodePREVIEW LASTORE
      Store into long array
    • FASTORE

      public static final OpcodePREVIEW FASTORE
      Store into float array
    • DASTORE

      public static final OpcodePREVIEW DASTORE
      Store into double array
    • AASTORE

      public static final OpcodePREVIEW AASTORE
      Store into reference array
    • BASTORE

      public static final OpcodePREVIEW BASTORE
      Store into byte array
    • CASTORE

      public static final OpcodePREVIEW CASTORE
      Store into char array
    • SASTORE

      public static final OpcodePREVIEW SASTORE
      Store into short array
    • POP

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

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

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

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

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

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

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

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

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

      public static final OpcodePREVIEW IADD
      Add int
    • LADD

      public static final OpcodePREVIEW LADD
      Add long
    • FADD

      public static final OpcodePREVIEW FADD
      Add float
    • DADD

      public static final OpcodePREVIEW DADD
      Add double
    • ISUB

      public static final OpcodePREVIEW ISUB
      Subtract int
    • LSUB

      public static final OpcodePREVIEW LSUB
      Subtract long
    • FSUB

      public static final OpcodePREVIEW FSUB
      Subtract float
    • DSUB

      public static final OpcodePREVIEW DSUB
      Subtract double
    • IMUL

      public static final OpcodePREVIEW IMUL
      Multiply int
    • LMUL

      public static final OpcodePREVIEW LMUL
      Multiply long
    • FMUL

      public static final OpcodePREVIEW FMUL
      Multiply float
    • DMUL

      public static final OpcodePREVIEW DMUL
      Multiply double
    • IDIV

      public static final OpcodePREVIEW IDIV
      Divide int
    • LDIV

      public static final OpcodePREVIEW LDIV
      Divide long
    • FDIV

      public static final OpcodePREVIEW FDIV
      Divide float
    • DDIV

      public static final OpcodePREVIEW DDIV
      Divide double
    • IREM

      public static final OpcodePREVIEW IREM
      Remainder int
    • LREM

      public static final OpcodePREVIEW LREM
      Remainder long
    • FREM

      public static final OpcodePREVIEW FREM
      Remainder float
    • DREM

      public static final OpcodePREVIEW DREM
      Remainder double
    • INEG

      public static final OpcodePREVIEW INEG
      Negate int
    • LNEG

      public static final OpcodePREVIEW LNEG
      Negate long
    • FNEG

      public static final OpcodePREVIEW FNEG
      Negate float
    • DNEG

      public static final OpcodePREVIEW DNEG
      Negate double
    • ISHL

      public static final OpcodePREVIEW ISHL
      Shift left int
    • LSHL

      public static final OpcodePREVIEW LSHL
      Shift left long
    • ISHR

      public static final OpcodePREVIEW ISHR
      Shift right int
    • LSHR

      public static final OpcodePREVIEW LSHR
      Shift right long
    • IUSHR

      public static final OpcodePREVIEW IUSHR
      Logical shift right int
    • LUSHR

      public static final OpcodePREVIEW LUSHR
      Logical shift right long
    • IAND

      public static final OpcodePREVIEW IAND
      Boolean AND int
    • LAND

      public static final OpcodePREVIEW LAND
      Boolean AND long
    • IOR

      public static final OpcodePREVIEW IOR
      Boolean OR int
    • LOR

      public static final OpcodePREVIEW LOR
      Boolean OR long
    • IXOR

      public static final OpcodePREVIEW IXOR
      Boolean XOR int
    • LXOR

      public static final OpcodePREVIEW LXOR
      Boolean XOR long
    • IINC

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

      public static final OpcodePREVIEW I2L
      Convert int to long
    • I2F

      public static final OpcodePREVIEW I2F
      Convert int to float
    • I2D

      public static final OpcodePREVIEW I2D
      Convert int to double
    • L2I

      public static final OpcodePREVIEW L2I
      Convert long to int
    • L2F

      public static final OpcodePREVIEW L2F
      Convert long to float
    • L2D

      public static final OpcodePREVIEW L2D
      Convert long to double
    • F2I

      public static final OpcodePREVIEW F2I
      Convert float to int
    • F2L

      public static final OpcodePREVIEW F2L
      Convert float to long
    • F2D

      public static final OpcodePREVIEW F2D
      Convert float to double
    • D2I

      public static final OpcodePREVIEW D2I
      Convert double to int
    • D2L

      public static final OpcodePREVIEW D2L
      Convert double to long
    • D2F

      public static final OpcodePREVIEW D2F
      Convert double to float
    • I2B

      public static final OpcodePREVIEW I2B
      Convert int to byte
    • I2C

      public static final OpcodePREVIEW I2C
      Convert int to char
    • I2S

      public static final OpcodePREVIEW I2S
      Convert int to short
    • LCMP

      public static final OpcodePREVIEW LCMP
      Compare long
    • FCMPL

      public static final OpcodePREVIEW FCMPL
      Compare float
    • FCMPG

      public static final OpcodePREVIEW FCMPG
      Compare float
    • DCMPL

      public static final OpcodePREVIEW DCMPL
      Compare double
    • DCMPG

      public static final OpcodePREVIEW DCMPG
      Compare double
    • IFEQ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      public static final OpcodePREVIEW GOTO
      Branch always
    • JSR

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

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

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

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

      public static final OpcodePREVIEW IRETURN
      Return int from method
    • LRETURN

      public static final OpcodePREVIEW LRETURN
      Return long from method
    • FRETURN

      public static final OpcodePREVIEW FRETURN
      Return float from method
    • DRETURN

      public static final OpcodePREVIEW DRETURN
      Return double from method
    • ARETURN

      public static final OpcodePREVIEW ARETURN
      Return reference from method
    • RETURN

      public static final OpcodePREVIEW RETURN
      Return void from method
    • GETSTATIC

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

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

      public static final OpcodePREVIEW GETFIELD
      Fetch field from object
    • PUTFIELD

      public static final OpcodePREVIEW PUTFIELD
      Set field in object
    • INVOKEVIRTUAL

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

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

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

      public static final OpcodePREVIEW INVOKEINTERFACE
      Invoke interface method
    • INVOKEDYNAMIC

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

      public static final OpcodePREVIEW NEW
      Create new object
    • NEWARRAY

      public static final OpcodePREVIEW NEWARRAY
      Create new array
    • ANEWARRAY

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

      public static final OpcodePREVIEW ARRAYLENGTH
      Get length of array
    • ATHROW

      public static final OpcodePREVIEW ATHROW
      Throw exception or error
    • CHECKCAST

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

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

      public static final OpcodePREVIEW MONITORENTER
      Enter monitor for object
    • MONITOREXIT

      public static final OpcodePREVIEW MONITOREXIT
      Exit monitor for object
    • MULTIANEWARRAY

      public static final OpcodePREVIEW MULTIANEWARRAY
      Create new multidimensional array
    • IFNULL

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    • values

      public static OpcodePREVIEW[] 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 OpcodePREVIEW 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 bytecode.
      Returns:
      bytecode
    • isWide

      public boolean isWide()
      Returns true if the instruction has extended local variable index by additional bytes.
      Returns:
      true if the instruction has extended local variable index by additional bytes
    • sizeIfFixed

      public int sizeIfFixed()
      Returns size of the instruction if fixed, or -1 otherwise.
      Returns:
      size of the instruction if fixed, or -1 otherwise
    • kind

      public Opcode.KindPREVIEW kind()
      Returns instruction kind.
      Returns:
      instruction kind
    • primaryTypeKind

      public TypeKindPREVIEW primaryTypeKind()
      Returns primary type kind for instructions operating with at least one type, or null otherwise.
      Returns:
      primary type kind for instructions operating with at least one type, or null otherwise
    • secondaryTypeKind

      public TypeKindPREVIEW secondaryTypeKind()
      Returns secondary type kind for instructions operating with two types, or null otherwise.
      Returns:
      secondary type kind for instructions operating with two types, or null otherwise
    • slot

      public int slot()
      Returns local variable slot for instructions operating with local variable, or -1 otherwise.
      Returns:
      local variable slot for instructions operating with local variable, or -1 otherwise
    • constantValue

      public ConstantDesc constantValue()
      Returns constant value for constant instructions, or null otherwise.
      Returns:
      constant value for constant instructions, or null otherwise
    • isUnconditionalBranch

      public boolean isUnconditionalBranch()
      Returns true if the instruction represents an unconditional branch.
      Returns:
      true if the instruction represents an unconditional branch