# Sole source of truth for the complete JVM opcode byte space.
# Generated Rust and Markdown must be refreshed with ./generate_opcodes.py.
value mnemonic identity operands width control constant_pool since until
0x00 nop Nop none 1 fallthrough none 45.3 unbounded
0x01 aconst_null AconstNull none 1 fallthrough none 45.3 unbounded
0x02 iconst_m1 IconstM1 none 1 fallthrough none 45.3 unbounded
0x03 iconst_0 Iconst0 none 1 fallthrough none 45.3 unbounded
0x04 iconst_1 Iconst1 none 1 fallthrough none 45.3 unbounded
0x05 iconst_2 Iconst2 none 1 fallthrough none 45.3 unbounded
0x06 iconst_3 Iconst3 none 1 fallthrough none 45.3 unbounded
0x07 iconst_4 Iconst4 none 1 fallthrough none 45.3 unbounded
0x08 iconst_5 Iconst5 none 1 fallthrough none 45.3 unbounded
0x09 lconst_0 Lconst0 none 1 fallthrough none 45.3 unbounded
0x0a lconst_1 Lconst1 none 1 fallthrough none 45.3 unbounded
0x0b fconst_0 Fconst0 none 1 fallthrough none 45.3 unbounded
0x0c fconst_1 Fconst1 none 1 fallthrough none 45.3 unbounded
0x0d fconst_2 Fconst2 none 1 fallthrough none 45.3 unbounded
0x0e dconst_0 Dconst0 none 1 fallthrough none 45.3 unbounded
0x0f dconst_1 Dconst1 none 1 fallthrough none 45.3 unbounded
0x10 bipush Bipush value:s1 2 fallthrough none 45.3 unbounded
0x11 sipush Sipush value:s2 3 fallthrough none 45.3 unbounded
0x12 ldc Ldc constant_pool:u1 2 fallthrough loadable-category-1 45.3 unbounded
0x13 ldc_w LdcW constant_pool:u2 3 fallthrough loadable-category-1 45.3 unbounded
0x14 ldc2_w Ldc2W constant_pool:u2 3 fallthrough loadable-category-2 45.3 unbounded
0x15 iload Iload local:u1 2 fallthrough none 45.3 unbounded
0x16 lload Lload local:u1 2 fallthrough none 45.3 unbounded
0x17 fload Fload local:u1 2 fallthrough none 45.3 unbounded
0x18 dload Dload local:u1 2 fallthrough none 45.3 unbounded
0x19 aload Aload local:u1 2 fallthrough none 45.3 unbounded
0x1a iload_0 Iload0 none 1 fallthrough none 45.3 unbounded
0x1b iload_1 Iload1 none 1 fallthrough none 45.3 unbounded
0x1c iload_2 Iload2 none 1 fallthrough none 45.3 unbounded
0x1d iload_3 Iload3 none 1 fallthrough none 45.3 unbounded
0x1e lload_0 Lload0 none 1 fallthrough none 45.3 unbounded
0x1f lload_1 Lload1 none 1 fallthrough none 45.3 unbounded
0x20 lload_2 Lload2 none 1 fallthrough none 45.3 unbounded
0x21 lload_3 Lload3 none 1 fallthrough none 45.3 unbounded
0x22 fload_0 Fload0 none 1 fallthrough none 45.3 unbounded
0x23 fload_1 Fload1 none 1 fallthrough none 45.3 unbounded
0x24 fload_2 Fload2 none 1 fallthrough none 45.3 unbounded
0x25 fload_3 Fload3 none 1 fallthrough none 45.3 unbounded
0x26 dload_0 Dload0 none 1 fallthrough none 45.3 unbounded
0x27 dload_1 Dload1 none 1 fallthrough none 45.3 unbounded
0x28 dload_2 Dload2 none 1 fallthrough none 45.3 unbounded
0x29 dload_3 Dload3 none 1 fallthrough none 45.3 unbounded
0x2a aload_0 Aload0 none 1 fallthrough none 45.3 unbounded
0x2b aload_1 Aload1 none 1 fallthrough none 45.3 unbounded
0x2c aload_2 Aload2 none 1 fallthrough none 45.3 unbounded
0x2d aload_3 Aload3 none 1 fallthrough none 45.3 unbounded
0x2e iaload Iaload none 1 fallthrough none 45.3 unbounded
0x2f laload Laload none 1 fallthrough none 45.3 unbounded
0x30 faload Faload none 1 fallthrough none 45.3 unbounded
0x31 daload Daload none 1 fallthrough none 45.3 unbounded
0x32 aaload Aaload none 1 fallthrough none 45.3 unbounded
0x33 baload Baload none 1 fallthrough none 45.3 unbounded
0x34 caload Caload none 1 fallthrough none 45.3 unbounded
0x35 saload Saload none 1 fallthrough none 45.3 unbounded
0x36 istore Istore local:u1 2 fallthrough none 45.3 unbounded
0x37 lstore Lstore local:u1 2 fallthrough none 45.3 unbounded
0x38 fstore Fstore local:u1 2 fallthrough none 45.3 unbounded
0x39 dstore Dstore local:u1 2 fallthrough none 45.3 unbounded
0x3a astore Astore local:u1 2 fallthrough none 45.3 unbounded
0x3b istore_0 Istore0 none 1 fallthrough none 45.3 unbounded
0x3c istore_1 Istore1 none 1 fallthrough none 45.3 unbounded
0x3d istore_2 Istore2 none 1 fallthrough none 45.3 unbounded
0x3e istore_3 Istore3 none 1 fallthrough none 45.3 unbounded
0x3f lstore_0 Lstore0 none 1 fallthrough none 45.3 unbounded
0x40 lstore_1 Lstore1 none 1 fallthrough none 45.3 unbounded
0x41 lstore_2 Lstore2 none 1 fallthrough none 45.3 unbounded
0x42 lstore_3 Lstore3 none 1 fallthrough none 45.3 unbounded
0x43 fstore_0 Fstore0 none 1 fallthrough none 45.3 unbounded
0x44 fstore_1 Fstore1 none 1 fallthrough none 45.3 unbounded
0x45 fstore_2 Fstore2 none 1 fallthrough none 45.3 unbounded
0x46 fstore_3 Fstore3 none 1 fallthrough none 45.3 unbounded
0x47 dstore_0 Dstore0 none 1 fallthrough none 45.3 unbounded
0x48 dstore_1 Dstore1 none 1 fallthrough none 45.3 unbounded
0x49 dstore_2 Dstore2 none 1 fallthrough none 45.3 unbounded
0x4a dstore_3 Dstore3 none 1 fallthrough none 45.3 unbounded
0x4b astore_0 Astore0 none 1 fallthrough none 45.3 unbounded
0x4c astore_1 Astore1 none 1 fallthrough none 45.3 unbounded
0x4d astore_2 Astore2 none 1 fallthrough none 45.3 unbounded
0x4e astore_3 Astore3 none 1 fallthrough none 45.3 unbounded
0x4f iastore Iastore none 1 fallthrough none 45.3 unbounded
0x50 lastore Lastore none 1 fallthrough none 45.3 unbounded
0x51 fastore Fastore none 1 fallthrough none 45.3 unbounded
0x52 dastore Dastore none 1 fallthrough none 45.3 unbounded
0x53 aastore Aastore none 1 fallthrough none 45.3 unbounded
0x54 bastore Bastore none 1 fallthrough none 45.3 unbounded
0x55 castore Castore none 1 fallthrough none 45.3 unbounded
0x56 sastore Sastore none 1 fallthrough none 45.3 unbounded
0x57 pop Pop none 1 fallthrough none 45.3 unbounded
0x58 pop2 Pop2 none 1 fallthrough none 45.3 unbounded
0x59 dup Dup none 1 fallthrough none 45.3 unbounded
0x5a dup_x1 DupX1 none 1 fallthrough none 45.3 unbounded
0x5b dup_x2 DupX2 none 1 fallthrough none 45.3 unbounded
0x5c dup2 Dup2 none 1 fallthrough none 45.3 unbounded
0x5d dup2_x1 Dup2X1 none 1 fallthrough none 45.3 unbounded
0x5e dup2_x2 Dup2X2 none 1 fallthrough none 45.3 unbounded
0x5f swap Swap none 1 fallthrough none 45.3 unbounded
0x60 iadd Iadd none 1 fallthrough none 45.3 unbounded
0x61 ladd Ladd none 1 fallthrough none 45.3 unbounded
0x62 fadd Fadd none 1 fallthrough none 45.3 unbounded
0x63 dadd Dadd none 1 fallthrough none 45.3 unbounded
0x64 isub Isub none 1 fallthrough none 45.3 unbounded
0x65 lsub Lsub none 1 fallthrough none 45.3 unbounded
0x66 fsub Fsub none 1 fallthrough none 45.3 unbounded
0x67 dsub Dsub none 1 fallthrough none 45.3 unbounded
0x68 imul Imul none 1 fallthrough none 45.3 unbounded
0x69 lmul Lmul none 1 fallthrough none 45.3 unbounded
0x6a fmul Fmul none 1 fallthrough none 45.3 unbounded
0x6b dmul Dmul none 1 fallthrough none 45.3 unbounded
0x6c idiv Idiv none 1 fallthrough none 45.3 unbounded
0x6d ldiv Ldiv none 1 fallthrough none 45.3 unbounded
0x6e fdiv Fdiv none 1 fallthrough none 45.3 unbounded
0x6f ddiv Ddiv none 1 fallthrough none 45.3 unbounded
0x70 irem Irem none 1 fallthrough none 45.3 unbounded
0x71 lrem Lrem none 1 fallthrough none 45.3 unbounded
0x72 frem Frem none 1 fallthrough none 45.3 unbounded
0x73 drem Drem none 1 fallthrough none 45.3 unbounded
0x74 ineg Ineg none 1 fallthrough none 45.3 unbounded
0x75 lneg Lneg none 1 fallthrough none 45.3 unbounded
0x76 fneg Fneg none 1 fallthrough none 45.3 unbounded
0x77 dneg Dneg none 1 fallthrough none 45.3 unbounded
0x78 ishl Ishl none 1 fallthrough none 45.3 unbounded
0x79 lshl Lshl none 1 fallthrough none 45.3 unbounded
0x7a ishr Ishr none 1 fallthrough none 45.3 unbounded
0x7b lshr Lshr none 1 fallthrough none 45.3 unbounded
0x7c iushr Iushr none 1 fallthrough none 45.3 unbounded
0x7d lushr Lushr none 1 fallthrough none 45.3 unbounded
0x7e iand Iand none 1 fallthrough none 45.3 unbounded
0x7f land Land none 1 fallthrough none 45.3 unbounded
0x80 ior Ior none 1 fallthrough none 45.3 unbounded
0x81 lor Lor none 1 fallthrough none 45.3 unbounded
0x82 ixor Ixor none 1 fallthrough none 45.3 unbounded
0x83 lxor Lxor none 1 fallthrough none 45.3 unbounded
0x84 iinc Iinc local:u1,increment:s1 3 fallthrough none 45.3 unbounded
0x85 i2l I2l none 1 fallthrough none 45.3 unbounded
0x86 i2f I2f none 1 fallthrough none 45.3 unbounded
0x87 i2d I2d none 1 fallthrough none 45.3 unbounded
0x88 l2i L2i none 1 fallthrough none 45.3 unbounded
0x89 l2f L2f none 1 fallthrough none 45.3 unbounded
0x8a l2d L2d none 1 fallthrough none 45.3 unbounded
0x8b f2i F2i none 1 fallthrough none 45.3 unbounded
0x8c f2l F2l none 1 fallthrough none 45.3 unbounded
0x8d f2d F2d none 1 fallthrough none 45.3 unbounded
0x8e d2i D2i none 1 fallthrough none 45.3 unbounded
0x8f d2l D2l none 1 fallthrough none 45.3 unbounded
0x90 d2f D2f none 1 fallthrough none 45.3 unbounded
0x91 i2b I2b none 1 fallthrough none 45.3 unbounded
0x92 i2c I2c none 1 fallthrough none 45.3 unbounded
0x93 i2s I2s none 1 fallthrough none 45.3 unbounded
0x94 lcmp Lcmp none 1 fallthrough none 45.3 unbounded
0x95 fcmpl Fcmpl none 1 fallthrough none 45.3 unbounded
0x96 fcmpg Fcmpg none 1 fallthrough none 45.3 unbounded
0x97 dcmpl Dcmpl none 1 fallthrough none 45.3 unbounded
0x98 dcmpg Dcmpg none 1 fallthrough none 45.3 unbounded
0x99 ifeq Ifeq branch:s2 3 conditional-branch none 45.3 unbounded
0x9a ifne Ifne branch:s2 3 conditional-branch none 45.3 unbounded
0x9b iflt Iflt branch:s2 3 conditional-branch none 45.3 unbounded
0x9c ifge Ifge branch:s2 3 conditional-branch none 45.3 unbounded
0x9d ifgt Ifgt branch:s2 3 conditional-branch none 45.3 unbounded
0x9e ifle Ifle branch:s2 3 conditional-branch none 45.3 unbounded
0x9f if_icmpeq IfIcmpeq branch:s2 3 conditional-branch none 45.3 unbounded
0xa0 if_icmpne IfIcmpne branch:s2 3 conditional-branch none 45.3 unbounded
0xa1 if_icmplt IfIcmplt branch:s2 3 conditional-branch none 45.3 unbounded
0xa2 if_icmpge IfIcmpge branch:s2 3 conditional-branch none 45.3 unbounded
0xa3 if_icmpgt IfIcmpgt branch:s2 3 conditional-branch none 45.3 unbounded
0xa4 if_icmple IfIcmple branch:s2 3 conditional-branch none 45.3 unbounded
0xa5 if_acmpeq IfAcmpeq branch:s2 3 conditional-branch none 45.3 unbounded
0xa6 if_acmpne IfAcmpne branch:s2 3 conditional-branch none 45.3 unbounded
0xa7 goto Goto branch:s2 3 unconditional-branch none 45.3 unbounded
0xa8 jsr Jsr branch:s2 3 subroutine-call none 45.3 unbounded
0xa9 ret Ret local:u1 2 subroutine-return none 45.3 unbounded
0xaa tableswitch Tableswitch padding:align4,default:s4,low:s4,high:s4,offsets:s4[] variable switch none 45.3 unbounded
0xab lookupswitch Lookupswitch padding:align4,default:s4,npairs:s4,pairs:(s4,s4)[] variable switch none 45.3 unbounded
0xac ireturn Ireturn none 1 return none 45.3 unbounded
0xad lreturn Lreturn none 1 return none 45.3 unbounded
0xae freturn Freturn none 1 return none 45.3 unbounded
0xaf dreturn Dreturn none 1 return none 45.3 unbounded
0xb0 areturn Areturn none 1 return none 45.3 unbounded
0xb1 return Return none 1 return none 45.3 unbounded
0xb2 getstatic Getstatic constant_pool:u2 3 fallthrough Fieldref 45.3 unbounded
0xb3 putstatic Putstatic constant_pool:u2 3 fallthrough Fieldref 45.3 unbounded
0xb4 getfield Getfield constant_pool:u2 3 fallthrough Fieldref 45.3 unbounded
0xb5 putfield Putfield constant_pool:u2 3 fallthrough Fieldref 45.3 unbounded
0xb6 invokevirtual Invokevirtual constant_pool:u2 3 invoke Methodref 45.3 unbounded
0xb7 invokespecial Invokespecial constant_pool:u2 3 invoke Methodref|InterfaceMethodref 45.3 unbounded
0xb8 invokestatic Invokestatic constant_pool:u2 3 invoke Methodref|InterfaceMethodref 45.3 unbounded
0xb9 invokeinterface Invokeinterface constant_pool:u2,count:u1,zero:u1 5 invoke InterfaceMethodref 45.3 unbounded
0xba invokedynamic Invokedynamic constant_pool:u2,zero:u2 5 invoke InvokeDynamic 51.0 unbounded
0xbb new New constant_pool:u2 3 fallthrough Class 45.3 unbounded
0xbc newarray Newarray atype:u1 2 fallthrough none 45.3 unbounded
0xbd anewarray Anewarray constant_pool:u2 3 fallthrough Class 45.3 unbounded
0xbe arraylength Arraylength none 1 fallthrough none 45.3 unbounded
0xbf athrow Athrow none 1 throw none 45.3 unbounded
0xc0 checkcast Checkcast constant_pool:u2 3 fallthrough Class 45.3 unbounded
0xc1 instanceof Instanceof constant_pool:u2 3 fallthrough Class 45.3 unbounded
0xc2 monitorenter Monitorenter none 1 fallthrough none 45.3 unbounded
0xc3 monitorexit Monitorexit none 1 fallthrough none 45.3 unbounded
0xc4 wide Wide modified_opcode:u1,local:u2[,increment:s2] variable fallthrough none 45.3 unbounded
0xc5 multianewarray Multianewarray constant_pool:u2,dimensions:u1 4 fallthrough Class 45.3 unbounded
0xc6 ifnull Ifnull branch:s2 3 conditional-branch none 45.3 unbounded
0xc7 ifnonnull Ifnonnull branch:s2 3 conditional-branch none 45.3 unbounded
0xc8 goto_w GotoW branch:s4 5 unconditional-branch none 45.3 unbounded
0xc9 jsr_w JsrW branch:s4 5 subroutine-call none 45.3 unbounded
0xca breakpoint Breakpoint none 1 reserved none reserved unbounded
0xcb reserved_cb ReservedCB invalid invalid invalid none never never
0xcc reserved_cc ReservedCC invalid invalid invalid none never never
0xcd reserved_cd ReservedCD invalid invalid invalid none never never
0xce reserved_ce ReservedCE invalid invalid invalid none never never
0xcf reserved_cf ReservedCF invalid invalid invalid none never never
0xd0 reserved_d0 ReservedD0 invalid invalid invalid none never never
0xd1 reserved_d1 ReservedD1 invalid invalid invalid none never never
0xd2 reserved_d2 ReservedD2 invalid invalid invalid none never never
0xd3 reserved_d3 ReservedD3 invalid invalid invalid none never never
0xd4 reserved_d4 ReservedD4 invalid invalid invalid none never never
0xd5 reserved_d5 ReservedD5 invalid invalid invalid none never never
0xd6 reserved_d6 ReservedD6 invalid invalid invalid none never never
0xd7 reserved_d7 ReservedD7 invalid invalid invalid none never never
0xd8 reserved_d8 ReservedD8 invalid invalid invalid none never never
0xd9 reserved_d9 ReservedD9 invalid invalid invalid none never never
0xda reserved_da ReservedDA invalid invalid invalid none never never
0xdb reserved_db ReservedDB invalid invalid invalid none never never
0xdc reserved_dc ReservedDC invalid invalid invalid none never never
0xdd reserved_dd ReservedDD invalid invalid invalid none never never
0xde reserved_de ReservedDE invalid invalid invalid none never never
0xdf reserved_df ReservedDF invalid invalid invalid none never never
0xe0 reserved_e0 ReservedE0 invalid invalid invalid none never never
0xe1 reserved_e1 ReservedE1 invalid invalid invalid none never never
0xe2 reserved_e2 ReservedE2 invalid invalid invalid none never never
0xe3 reserved_e3 ReservedE3 invalid invalid invalid none never never
0xe4 reserved_e4 ReservedE4 invalid invalid invalid none never never
0xe5 reserved_e5 ReservedE5 invalid invalid invalid none never never
0xe6 reserved_e6 ReservedE6 invalid invalid invalid none never never
0xe7 reserved_e7 ReservedE7 invalid invalid invalid none never never
0xe8 reserved_e8 ReservedE8 invalid invalid invalid none never never
0xe9 reserved_e9 ReservedE9 invalid invalid invalid none never never
0xea reserved_ea ReservedEA invalid invalid invalid none never never
0xeb reserved_eb ReservedEB invalid invalid invalid none never never
0xec reserved_ec ReservedEC invalid invalid invalid none never never
0xed reserved_ed ReservedED invalid invalid invalid none never never
0xee reserved_ee ReservedEE invalid invalid invalid none never never
0xef reserved_ef ReservedEF invalid invalid invalid none never never
0xf0 reserved_f0 ReservedF0 invalid invalid invalid none never never
0xf1 reserved_f1 ReservedF1 invalid invalid invalid none never never
0xf2 reserved_f2 ReservedF2 invalid invalid invalid none never never
0xf3 reserved_f3 ReservedF3 invalid invalid invalid none never never
0xf4 reserved_f4 ReservedF4 invalid invalid invalid none never never
0xf5 reserved_f5 ReservedF5 invalid invalid invalid none never never
0xf6 reserved_f6 ReservedF6 invalid invalid invalid none never never
0xf7 reserved_f7 ReservedF7 invalid invalid invalid none never never
0xf8 reserved_f8 ReservedF8 invalid invalid invalid none never never
0xf9 reserved_f9 ReservedF9 invalid invalid invalid none never never
0xfa reserved_fa ReservedFA invalid invalid invalid none never never
0xfb reserved_fb ReservedFB invalid invalid invalid none never never
0xfc reserved_fc ReservedFC invalid invalid invalid none never never
0xfd reserved_fd ReservedFD invalid invalid invalid none never never
0xfe impdep1 Impdep1 none 1 reserved none reserved unbounded
0xff impdep2 Impdep2 none 1 reserved none reserved unbounded