Opcodes by Name

back

A B C D F G I J L M N P R S T W
aaload
Push object from array.

aastore
Store object in array.

aconst_null
Push the null object.

aload
Load object from local variable n

aload_n
Load object from local variable n : n = 0..3

anewarray
New array of objects

areturn
return from method with object

arraylength
Get length of array.

astore
store object in local variable n

astore_n
store object in local variable n : n = 0..3

athrow
throw exception

baload
Push byte or boolean from array.

bastore
Store byte or boolean in array.

bipush
Push a signed byte.

breakpoint
used for debugging

caload
Push char from array.

castore
Store char in array.

checkcast
Checks object type of stack top.

d2f
double to float

d2i
double to integer

d2l
double to long

dadd
Add two doubles.

daload
Push double from array.

dastore
Store double in array.

dcmpg
compare two doubles (1 on NaN)

dcmpl
compare two doubles (-1 on NaN)

dconst_v
Doubles v = 0.0..1.0.

ddiv
Divide two doubles.

dload
Load double from local variable n

dload_n
Load double from local variable n : n = 0..3

dmul
Multiply two doubles.

dneg
Negate a double.

drem
Take remainder of two doubles.

dreturn
return from method with double

dstore
store double in local variable n

dstore_n
store double in local variable n : n = 0..3

dsub
Subtract two doubles.

dup
Duplicate the top word to place 2.

dup2
Duplicate the top two words.

dup2_x1
Duplicate the top two words to places 4 and 5.

dup2_x2
Duplicate the top two words to places 5 and 6.

dup_x1
Duplicate the top word to place 3.

dup_x2
Duplicate the top word to place 4.

f2d
float to double

f2i
float to integer

f2l
float to long

fadd
Add two floats.

faload
Push float from array.

fastore
Store float in array.

fcmpg
compare two floats (1 on NaN)

fcmpl
compare two floats (-1 on NaN)

fconst_v
Floats v = 0.0..2.0.

fdiv
Divide two floats.

fload
Load float from local variable n

fload_n
Load float from local variable n : n = 0..3

fmul
Multiply two floats.

fneg
Negate a float.

frem
Take remainder of two floats.

freturn
return from method with float

fstore
store float in local variable n

fstore_n
store float in local variable n : n = 0..3

fsub
Subtract two floats.

getfield
Push an instance variable.

getstatic
Push a static object's variable.

goto
go to label

goto_w
go to label (wide address)

i2b
integer to byte

i2c
integer to char

i2d
integer to double

i2f
integer to float

i2l
integer to long

i2s
integer to short

iadd
Add two integers.

iaload
Push integer from array.

iand
and two integers

iastore
Store integer in array.

iconst_m1
Push integer -1.

iconst_n
Integers n = 0..5.

idiv
Divide two integers.

if_acmpeq
branch if references are equal

if_acmpne
branch if references are uneqal

if_icmpeq
branch if two ints are equal

if_icmpge
branch if int2 greater than or equal to int1

if_icmpgt
branch if int2 greater than int1

if_icmple
branch if int2 less than or equal to int1

if_icmplt
branch if int2 less than int1

if_icmpne
branch if two ints are not equal

ifeq
branch if equal

ifge
branch if greater than or equal

ifgt
branch if greater than

ifle
branch if less than or equal

iflt
branch if less than

ifne
branch if not equal

ifnonnull
branch if not null

ifnull
branch if null

iinc
Increment local var.

iload
Load integer from local variable n

iload_n
Load integer from local variable n : n = 0..3

imul
Multiply two integers.

ineg
Negate a integer.

instanceof
Checks object's class.

invokeinterface
call interface method

invokespecial
call method in a specific class

invokestatic
call a static method

invokevirtual
call any other method

ior
or two integers

irem
Take remainder of two integers.

ireturn
return from method with integer

ishl
shift integer left

ishr
shift integer right

istore
store integer in local variable n

istore_n
store integer in local variable n : n = 0..3

isub
Subtract two integers.

iushr
shift integer right without regard to sign

ixor
exclusive or two integers

jsr
jump to subroutine

jsr_w
jump to subroutine (wide address)

l2d
long to double

l2f
long to float

l2i
long to integer

ladd
Add two longs.

laload
Push long from array.

land
and two longs

lastore
Store long in array.

lcmp
compare two longs

lconst_v
Longs v = 0..1.

ldc
Push a single word constant.

ldc2_w
Push a double word constant.

ldc_w
Push a single word constant. (16-bit ref in constant pool)

ldiv
Divide two longs.

lload
Load long from local variable n

lload_n
Load long from local variable n : n = 0..3

lmul
Multiply two longs.

lneg
Negate a long.

lookupswitch
case statement equivalent

lor
or two longs

lrem
Take remainder of two longs.

lreturn
return from method with long

lshl
shift long left

lshr
shift long righ

lstore
store long in local variable n

lstore_n
store long in local variable n : n = 0..3

lsub
Subtract two longs.

lushr
shift long right without regard to sign

lxor
exclusive or two longs

monitorenter
begin sychronization

monitorexit
end sychronization

multianewarray
New multidimensional array

new
Allocate mem for object.

newarray
New array of primitive type

nop
Do nothing.

pop
Pop the top word.

pop2
Pop the top two words.

putfield
Store an instance variable.

putstatic
Store a static object's variable.

ret
return from subroutine

return
return from method with nothing

saload
Push short from array.

sastore
Store short in array.

sipush
Push a signed word.

swap
Swap the top two words.

tableswitch
branch by range of values

wide
used for 2-word address or value
Last modified: April 12, 2008

back to opcode reference.