// // Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. // #define ILDUMP_VOID BYTE IL_OPCODE(0x00, "nop ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x01, "break ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x02, "ldarg.0 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x03, "ldarg.1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x04, "ldarg.2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x05, "ldarg.3 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x06, "ldloc.0 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x07, "ldloc.1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x08, "ldloc.2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x09, "ldloc.3 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x0a, "stloc.0 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x0b, "stloc.1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x0c, "stloc.2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x0d, "stloc.3 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x0e, "ldarg.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x0f, "ldarga.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x10, "starg.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x11, "ldloc.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x12, "ldloca.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x13, "stloc.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x14, "ldnull ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x15, "ldc.i4.m1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x16, "ldc.i4.0 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x17, "ldc.i4.1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x18, "ldc.i4.2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x19, "ldc.i4.3 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x1a, "ldc.i4.4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x1b, "ldc.i4.5 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x1c, "ldc.i4.6 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x1d, "ldc.i4.7 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x1e, "ldc.i4.8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x1f, "ldc.i4.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x20, "ldc.i4 ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x21, "ldc.i8 ", 8, UNALIGNED INT64, "0x%I64x", 0) IL_OPCODE(0x22, "ldc.r4 ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x23, "ldc.r8 ", 8, UNALIGNED INT64, "0x%I64x", 0) IL_OPCODE(0x25, "dup ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x26, "pop ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x27, "jmp ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x28, "call ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE(0x29, "calli ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE(0x2a, "ret ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x2b, "br.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x2c, "brfalse.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x2d, "brtrue.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x2e, "beq.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x2f, "bge.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x30, "bgt.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x31, "ble.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x32, "blt.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x33, "bne.un.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x34, "bge.un.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x35, "bgt.un.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x36, "ble.un.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x37, "blt.un.s ", 1, BYTE, "%d", 0) IL_OPCODE(0x38, "br ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x39, "brfalse ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x3a, "brtrue ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x3b, "beq ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x3c, "bge ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x3d, "bgt ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x3e, "ble ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x3f, "blt ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x40, "bne.un ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x41, "bge.un ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x42, "bgt.un ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x43, "ble.un ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x44, "blt.un ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x46, "ldind.i1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x47, "ldind.u1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x48, "ldind.i2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x49, "ldind.u2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x4a, "ldind.i4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x4b, "ldind.u4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x4c, "ldind.i8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x4d, "ldind.i ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x4e, "ldind.r4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x4f, "ldind.r8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x50, "ldind.ref ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x51, "stind.ref ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x52, "stind.i1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x53, "stind.i2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x54, "stind.i4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x55, "stind.i8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x56, "stind.r4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x57, "stind.r8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x58, "add ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x59, "sub ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x5a, "mul ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x5b, "div ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x5c, "div.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x5d, "rem ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x5e, "rem.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x5f, "and ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x60, "or ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x61, "xor ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x62, "shl ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x63, "shr ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x64, "shr.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x65, "neg ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x66, "not ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x67, "conv.i1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x68, "conv.i2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x69, "conv.i4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x6a, "conv.i8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x6b, "conv.r4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x6c, "conv.r8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x6d, "conv.u4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x6e, "conv.u8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x6f, "callvirt ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x70, "cpobj ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x71, "ldobj ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE(0x72, "ldstr ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x73, "newobj ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE(0x74, "castclass ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x75, "isinst ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x76, "conv.r.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x79, "unbox ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x7a, "throw ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x7b, "ldfld ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x7c, "ldflda ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE(0x7d, "stfld ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x7e, "ldsfld ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x7f, "ldsflda ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x80, "stsfld ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x81, "stobj ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE(0x82, "conv.ovf.i1.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x83, "conv.ovf.i2.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x84, "conv.ovf.i4.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x85, "conv.ovf.i8.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x86, "conv.ovf.u1.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x87, "conv.ovf.u2.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x88, "conv.ovf.u4.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x89, "conv.ovf.u8.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x8a, "conv.ovf.i.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x8b, "conv.ovf.u.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x8c, "box ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x8d, "newarr ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x8e, "ldlen ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x8f, "ldelema ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0x90, "ldelem.i1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x91, "ldelem.u1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x92, "ldelem.i2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x93, "ldelem.u2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x94, "ldelem.i4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x95, "ldelem.u4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x96, "ldelem.i8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x97, "ldelem.i ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x98, "ldelem.r4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x99, "ldelem.r8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x9a, "ldelem.ref ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x9b, "stelem.i ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x9c, "stelem.i1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x9d, "stelem.i2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x9e, "stelem.i4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0x9f, "stelem.i8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xa0, "stelem.r4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xa1, "stelem.r8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xa2, "stelem.ref ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xb3, "conv.ovf.i1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xb4, "conv.ovf.u1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xb5, "conv.ovf.i2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xb6, "conv.ovf.u2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xb7, "conv.ovf.i4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xb8, "conv.ovf.u4 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xb9, "conv.ovf.i8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xba, "conv.ovf.u8 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xc2, "refanyval ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0xc3, "ckfinite ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xc6, "mkrefany ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0xd0, "ldtoken ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE(0xd1, "conv.u2 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd2, "conv.u1 ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd3, "conv.i ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd4, "conv.ovf.i ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd5, "conv.ovf.u ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd6, "add.ovf ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd7, "add.ovf.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd8, "mul.ovf ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xd9, "mul.ovf.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xda, "sub.ovf ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xdb, "sub.ovf.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xdc, "endfinally ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xdd, "leave ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE(0xde, "leave.s ", 1, BYTE, "%d", 0) IL_OPCODE(0xdf, "stind.i ", 0, ILDUMP_VOID, "", 0) IL_OPCODE(0xe0, "conv.u ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x00, "arglist ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x01, "ceq ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x02, "cgt ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x03, "cgt.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x04, "clt ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x05, "clt.un ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x06, "ldftn ", 4, UNALIGNED INT32, "0x%08x", 1) IL_OPCODE_EXT(0xfe, 0x07, "ldvirtftn ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE_EXT(0xfe, 0x09, "ldarg ", 2, UNALIGNED INT16, "0x%04x", 0) IL_OPCODE_EXT(0xfe, 0x0a, "ldarga ", 2, UNALIGNED INT16, "0x%04x", 0) IL_OPCODE_EXT(0xfe, 0x0b, "starg ", 2, UNALIGNED INT16, "0x%04x", 0) IL_OPCODE_EXT(0xfe, 0x0c, "ldloc ", 2, UNALIGNED INT16, "0x%04x", 0) IL_OPCODE_EXT(0xfe, 0x0d, "ldloca ", 2, UNALIGNED INT16, "0x%04x", 0) IL_OPCODE_EXT(0xfe, 0x0e, "stloc ", 2, UNALIGNED INT16, "0x%04x", 0) IL_OPCODE_EXT(0xfe, 0x0f, "localloc ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x11, "endfilter ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x12, "unaligned. ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x13, "volatile. ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x14, "tail. ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x15, "initobj ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE_EXT(0xfe, 0x17, "cpblk ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x18, "initblk ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x1a, "rethrow ", 0, ILDUMP_VOID, "", 0) IL_OPCODE_EXT(0xfe, 0x1c, "sizeof ", 4, UNALIGNED INT32, "0x%08x", 0) IL_OPCODE_EXT(0xfe, 0x1d, "refanytype ", 0, ILDUMP_VOID, "", 0) #undef ILDUMP_VOID