From 08a98d4c1331cc726c8c76c14d9db34d6f0aadd6 Mon Sep 17 00:00:00 2001 From: "Mo, Zewei" Date: Thu, 28 Dec 2023 01:06:40 +0000 Subject: [PATCH] Support APX Push2/Pop2 PPX functionality for PUSH/POP is not implemented in this patch and will be implemented separately. gas/ChangeLog: 2023-12-28 Zewei Mo H.J. Lu Lili Cui * config/tc-i386.c: (enum i386_error): New unsupported_rsp_register and invalid_src_register_set. (md_assemble): Add handler for unsupported_rsp_register and invalid_src_register_set. (check_APX_operands): Add invalid check for push2/pop2. (match_template): Handle check_APX_operands. * testsuite/gas/i386/i386.exp: Add apx-push2pop2 tests. * testsuite/gas/i386/x86-64.exp: Ditto. * testsuite/gas/i386/x86-64-apx-push2pop2.d: New test. * testsuite/gas/i386/x86-64-apx-push2pop2.s: Ditto. * testsuite/gas/i386/x86-64-apx-push2pop2-intel.d: Ditto. * testsuite/gas/i386/x86-64-apx-push2pop2-inval.l: Ditto. * testsuite/gas/i386/x86-64-apx-push2pop2-inval.s: Ditto. * testsuite/gas/i386/apx-push2pop2-inval.s: Ditto. * testsuite/gas/i386/apx-push2pop2-inval.d: Ditto. * testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d: Added bad testcases for POP2. * testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s: Ditto. opcodes/ChangeLog: * i386-dis-evex-reg.h: Add REG_EVEX_MAP4_8F. * i386-dis-evex-w.h: Add EVEX_W_MAP4_8F_R_0 and EVEX_W_MAP4_FF_R_6 * i386-dis-evex.h: Add REG_EVEX_MAP4_8F. * i386-dis.c (PUSH2_POP2_Fixup): Add special handling for PUSH2/POP2. (get_valid_dis386): Add handler for vector length and address_mode for APX-Push2/Pop2 insn. (nd): define nd as b for EVEX-promoted instrutions. (OP_VEX): Add handler of 64-bit vvvv register for APX-Push2/Pop2 insn. * i386-gen.c: Add Push2Pop2 bitfield. * i386-opc.h: Regenerated. * i386-opc.tbl: Regenerated. --- gas/config/tc-i386.c | 44 + gas/testsuite/gas/i386/apx-push2pop2-inval.l | 5 + gas/testsuite/gas/i386/apx-push2pop2-inval.s | 9 + gas/testsuite/gas/i386/i386.exp | 1 + .../gas/i386/x86-64-apx-evex-promoted-bad.d | 5 + .../gas/i386/x86-64-apx-evex-promoted-bad.s | 7 + .../gas/i386/x86-64-apx-push2pop2-intel.d | 42 + .../gas/i386/x86-64-apx-push2pop2-inval.l | 13 + .../gas/i386/x86-64-apx-push2pop2-inval.s | 17 + gas/testsuite/gas/i386/x86-64-apx-push2pop2.d | 42 + gas/testsuite/gas/i386/x86-64-apx-push2pop2.s | 39 + gas/testsuite/gas/i386/x86-64.exp | 3 + opcodes/i386-dis-evex-reg.h | 9 + opcodes/i386-dis-evex-w.h | 10 + opcodes/i386-dis-evex.h | 2 +- opcodes/i386-dis.c | 31 + opcodes/i386-mnem.h | 3920 ++++++++++---------- opcodes/i386-opc.tbl | 9 + opcodes/i386-tbl.h | 43 +- 19 files changed, 2291 insertions(+), 1960 deletions(-) create mode 100644 gas/testsuite/gas/i386/apx-push2pop2-inval.l create mode 100644 gas/testsuite/gas/i386/apx-push2pop2-inval.s create mode 100644 gas/testsuite/gas/i386/x86-64-apx-push2pop2-intel.d create mode 100644 gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.l create mode 100644 gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.s create mode 100644 gas/testsuite/gas/i386/x86-64-apx-push2pop2.d create mode 100644 gas/testsuite/gas/i386/x86-64-apx-push2pop2.s diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index e828b3c..1aa887b 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -250,6 +250,7 @@ enum i386_error invalid_vector_register_set, invalid_tmm_register_set, invalid_dest_and_src_register_set, + invalid_dest_register_set, invalid_pseudo_prefix, unsupported_vector_index_register, unsupported_broadcast, @@ -259,6 +260,7 @@ enum i386_error no_default_mask, unsupported_rc_sae, unsupported_vector_size, + unsupported_rsp_register, internal_error, }; @@ -5511,6 +5513,9 @@ md_assemble (char *line) case invalid_dest_and_src_register_set: err_msg = _("destination and source registers must be distinct"); break; + case invalid_dest_register_set: + err_msg = _("two dest registers must be distinct"); + break; case invalid_pseudo_prefix: err_msg = _("rex2 pseudo prefix cannot be used"); break; @@ -5539,6 +5544,9 @@ md_assemble (char *line) as_bad (_("vector size above %u required for `%s'"), 128u << vector_size, pass1_mnem ? pass1_mnem : insn_name (current_templates.start)); return; + case unsupported_rsp_register: + err_msg = _("'rsp' register cannot be used"); + break; case internal_error: err_msg = _("internal error"); break; @@ -7175,6 +7183,35 @@ check_EgprOperands (const insn_template *t) return 0; } +/* Check if APX operands are valid for the instruction. */ +static bool +check_APX_operands (const insn_template *t) +{ + /* Push2* and Pop2* cannot use RSP and Pop2* cannot pop two same registers. + */ + switch (t->mnem_off) + { + case MN_pop2: + case MN_pop2p: + if (register_number (i.op[0].regs) == register_number (i.op[1].regs)) + { + i.error = invalid_dest_register_set; + return 1; + } + /* fall through */ + case MN_push2: + case MN_push2p: + if (register_number (i.op[0].regs) == 4 + || register_number (i.op[1].regs) == 4) + { + i.error = unsupported_rsp_register; + return 1; + } + break; + } + return 0; +} + /* Helper function for the progress() macro in match_template(). */ static INLINE enum i386_error progress (enum i386_error new, enum i386_error last, @@ -7675,6 +7712,13 @@ match_template (char mnem_suffix) continue; } + /* Check if APX operands are valid. */ + if (check_APX_operands (t)) + { + specific_error = progress (i.error); + continue; + } + /* Check whether to use the shorter VEX encoding for certain insns where the EVEX encoding comes first in the table. This requires the respective AVX-* feature to be explicitly enabled. diff --git a/gas/testsuite/gas/i386/apx-push2pop2-inval.l b/gas/testsuite/gas/i386/apx-push2pop2-inval.l new file mode 100644 index 0000000..a55a715 --- /dev/null +++ b/gas/testsuite/gas/i386/apx-push2pop2-inval.l @@ -0,0 +1,5 @@ +.* Assembler messages: +.*:6: Error: `push2' is only supported in 64-bit mode +.*:7: Error: `push2p' is only supported in 64-bit mode +.*:8: Error: `pop2' is only supported in 64-bit mode +.*:9: Error: `pop2p' is only supported in 64-bit mode diff --git a/gas/testsuite/gas/i386/apx-push2pop2-inval.s b/gas/testsuite/gas/i386/apx-push2pop2-inval.s new file mode 100644 index 0000000..7716632 --- /dev/null +++ b/gas/testsuite/gas/i386/apx-push2pop2-inval.s @@ -0,0 +1,9 @@ +# Check 32bit APX-PUSH2/POP2 instructions + + .allow_index_reg + .text +_start: + push2 %rax, %rbx + push2p %rax, %rbx + pop2 %rax, %rbx + pop2p %rax, %rbx diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 3917be6b..f9ee85b 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -511,6 +511,7 @@ if [gas_32_check] then { run_dump_test "sm4-intel" run_list_test "pbndkb-inval" run_list_test "user_msr-inval" + run_list_test "apx-push2pop2-inval" run_list_test "sg" run_dump_test "clzero" run_dump_test "invlpgb" diff --git a/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d b/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d index ba14736..3bfb5de 100644 --- a/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d +++ b/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d @@ -34,3 +34,8 @@ Disassembly of section .text: [ ]*[a-f0-9]+:[ ]+62 f4 e4[ ]+\(bad\) [ ]*[a-f0-9]+:[ ]+08 ff[ ]+.* [ ]*[a-f0-9]+:[ ]+04 08[ ]+.* +[ ]*[a-f0-9]+:[ ]+62 f4 3c[ ]+\(bad\) +[ ]*[a-f0-9]+:[ ]+08 8f c0 ff ff ff[ ]+or.* +[ ]*[a-f0-9]+:[ ]+62 74 7c 18 8f c0[ ]+pop2 %rax,\(bad\) +[ ]*[a-f0-9]+:[ ]+62 d4 3c 18 8f[ ]+\(bad\) +[ ]*[a-f0-9]+:[ ]+c0[ ]+.* diff --git a/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s b/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s index fcbb1b9..fde6736 100644 --- a/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s +++ b/gas/testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s @@ -40,3 +40,10 @@ _start: #{evex} inc %rax %rbx EVEX.vvvv != 1111 && EVEX.ND = 0. .insn EVEX.L0.NP.M4.W1 0xff/0, (%rax,%rcx), %rbx + # pop2 %rax, %r8 set EVEX.ND=0. + .insn EVEX.L0.M4.W0 0x8f/0, %rax, %r8 + .byte 0xff, 0xff, 0xff + # pop2 %rax, %r8 set EVEX.vvvv = 1111. + .insn EVEX.L0.M4.W0 0x8f, %rax, {rn-sae},%r8 + # pop2 %r8, %r8. + .insn EVEX.L0.M4.W0 0x8f/0, %r8,{rn-sae}, %r8 diff --git a/gas/testsuite/gas/i386/x86-64-apx-push2pop2-intel.d b/gas/testsuite/gas/i386/x86-64-apx-push2pop2-intel.d new file mode 100644 index 0000000..46b2121 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-apx-push2pop2-intel.d @@ -0,0 +1,42 @@ +#as: --64 +#objdump: -dw -Mintel +#name: i386 APX-push2pop2 insns (Intel disassembly) +#source: x86-64-apx-push2pop2.s + +.*: +file format .* + +Disassembly of section \.text: + +0+ <_start>: +\s*[a-f0-9]+:\s*62 f4 7c 18 ff f3\s+push2\s+rax,rbx +\s*[a-f0-9]+:\s*62 fc 3c 18 ff f1\s+push2\s+r8,r17 +\s*[a-f0-9]+:\s*62 d4 04 10 ff f1\s+push2\s+r31,r9 +\s*[a-f0-9]+:\s*62 dc 3c 10 ff f7\s+push2\s+r24,r31 +\s*[a-f0-9]+:\s*62 f4 fc 18 ff f3\s+push2p\s+rax,rbx +\s*[a-f0-9]+:\s*62 fc bc 18 ff f1\s+push2p\s+r8,r17 +\s*[a-f0-9]+:\s*62 d4 84 10 ff f1\s+push2p\s+r31,r9 +\s*[a-f0-9]+:\s*62 dc bc 10 ff f7\s+push2p\s+r24,r31 +\s*[a-f0-9]+:\s*62 f4 64 18 8f c0\s+pop2\s+rbx,rax +\s*[a-f0-9]+:\s*62 d4 74 10 8f c0\s+pop2\s+r17,r8 +\s*[a-f0-9]+:\s*62 dc 34 18 8f c7\s+pop2\s+r9,r31 +\s*[a-f0-9]+:\s*62 dc 04 10 8f c0\s+pop2\s+r31,r24 +\s*[a-f0-9]+:\s*62 f4 e4 18 8f c0\s+pop2p\s+rbx,rax +\s*[a-f0-9]+:\s*62 d4 f4 10 8f c0\s+pop2p\s+r17,r8 +\s*[a-f0-9]+:\s*62 dc b4 18 8f c7\s+pop2p\s+r9,r31 +\s*[a-f0-9]+:\s*62 dc 84 10 8f c0\s+pop2p\s+r31,r24 +\s*[a-f0-9]+:\s*62 f4 7c 18 ff f3\s+push2\s+rax,rbx +\s*[a-f0-9]+:\s*62 fc 3c 18 ff f1\s+push2\s+r8,r17 +\s*[a-f0-9]+:\s*62 d4 04 10 ff f1\s+push2\s+r31,r9 +\s*[a-f0-9]+:\s*62 dc 3c 10 ff f7\s+push2\s+r24,r31 +\s*[a-f0-9]+:\s*62 f4 fc 18 ff f3\s+push2p\s+rax,rbx +\s*[a-f0-9]+:\s*62 fc bc 18 ff f1\s+push2p\s+r8,r17 +\s*[a-f0-9]+:\s*62 d4 84 10 ff f1\s+push2p\s+r31,r9 +\s*[a-f0-9]+:\s*62 dc bc 10 ff f7\s+push2p\s+r24,r31 +\s*[a-f0-9]+:\s*62 f4 64 18 8f c0\s+pop2\s+rbx,rax +\s*[a-f0-9]+:\s*62 d4 74 10 8f c0\s+pop2\s+r17,r8 +\s*[a-f0-9]+:\s*62 dc 34 18 8f c7\s+pop2\s+r9,r31 +\s*[a-f0-9]+:\s*62 dc 04 10 8f c0\s+pop2\s+r31,r24 +\s*[a-f0-9]+:\s*62 f4 e4 18 8f c0\s+pop2p\s+rbx,rax +\s*[a-f0-9]+:\s*62 d4 f4 10 8f c0\s+pop2p\s+r17,r8 +\s*[a-f0-9]+:\s*62 dc b4 18 8f c7\s+pop2p\s+r9,r31 +\s*[a-f0-9]+:\s*62 dc 84 10 8f c0\s+pop2p\s+r31,r24 diff --git a/gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.l b/gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.l new file mode 100644 index 0000000..2cd1428 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.l @@ -0,0 +1,13 @@ +.* Assembler messages: +.*:6: Error: operand size mismatch for `push2' +.*:7: Error: operand size mismatch for `push2' +.*:8: Error: 'rsp' register cannot be used for `push2' +.*:9: Error: 'rsp' register cannot be used for `push2' +.*:10: Error: operand size mismatch for `push2p' +.*:11: Error: 'rsp' register cannot be used for `push2p' +.*:12: Error: operand size mismatch for `pop2' +.*:13: Error: 'rsp' register cannot be used for `pop2' +.*:14: Error: 'rsp' register cannot be used for `pop2' +.*:15: Error: two dest registers must be distinct for `pop2' +.*:16: Error: 'rsp' register cannot be used for `pop2p' +.*:17: Error: two dest registers must be distinct for `pop2p' diff --git a/gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.s b/gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.s new file mode 100644 index 0000000..83cef97 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-apx-push2pop2-inval.s @@ -0,0 +1,17 @@ +# Check illegal APX-Push2Pop2 instructions + + .allow_index_reg + .text +_start: + push2 %ax, %bx + push2 %eax, %ebx + push2 %rsp, %r17 + push2 %r17, %rsp + push2p %eax, %ebx + push2p %rsp, %r17 + pop2 %ax, %bx + pop2 %rax, %rsp + pop2 %rsp, %rax + pop2 %r12, %r12 + pop2p %rax, %rsp + pop2p %r12, %r12 diff --git a/gas/testsuite/gas/i386/x86-64-apx-push2pop2.d b/gas/testsuite/gas/i386/x86-64-apx-push2pop2.d new file mode 100644 index 0000000..54f22a7 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-apx-push2pop2.d @@ -0,0 +1,42 @@ +#as: --64 +#objdump: -dw +#name: x86_64 APX-push2pop2 insns +#source: x86-64-apx-push2pop2.s + +.*: +file format .* + +Disassembly of section \.text: + +0+ <_start>: +\s*[a-f0-9]+:\s*62 f4 7c 18 ff f3\s+push2\s+%rbx,%rax +\s*[a-f0-9]+:\s*62 fc 3c 18 ff f1\s+push2\s+%r17,%r8 +\s*[a-f0-9]+:\s*62 d4 04 10 ff f1\s+push2\s+%r9,%r31 +\s*[a-f0-9]+:\s*62 dc 3c 10 ff f7\s+push2\s+%r31,%r24 +\s*[a-f0-9]+:\s*62 f4 fc 18 ff f3\s+push2p\s+%rbx,%rax +\s*[a-f0-9]+:\s*62 fc bc 18 ff f1\s+push2p\s+%r17,%r8 +\s*[a-f0-9]+:\s*62 d4 84 10 ff f1\s+push2p\s+%r9,%r31 +\s*[a-f0-9]+:\s*62 dc bc 10 ff f7\s+push2p\s+%r31,%r24 +\s*[a-f0-9]+:\s*62 f4 64 18 8f c0\s+pop2\s+%rax,%rbx +\s*[a-f0-9]+:\s*62 d4 74 10 8f c0\s+pop2\s+%r8,%r17 +\s*[a-f0-9]+:\s*62 dc 34 18 8f c7\s+pop2\s+%r31,%r9 +\s*[a-f0-9]+:\s*62 dc 04 10 8f c0\s+pop2\s+%r24,%r31 +\s*[a-f0-9]+:\s*62 f4 e4 18 8f c0\s+pop2p\s+%rax,%rbx +\s*[a-f0-9]+:\s*62 d4 f4 10 8f c0\s+pop2p\s+%r8,%r17 +\s*[a-f0-9]+:\s*62 dc b4 18 8f c7\s+pop2p\s+%r31,%r9 +\s*[a-f0-9]+:\s*62 dc 84 10 8f c0\s+pop2p\s+%r24,%r31 +\s*[a-f0-9]+:\s*62 f4 7c 18 ff f3\s+push2\s+%rbx,%rax +\s*[a-f0-9]+:\s*62 fc 3c 18 ff f1\s+push2\s+%r17,%r8 +\s*[a-f0-9]+:\s*62 d4 04 10 ff f1\s+push2\s+%r9,%r31 +\s*[a-f0-9]+:\s*62 dc 3c 10 ff f7\s+push2\s+%r31,%r24 +\s*[a-f0-9]+:\s*62 f4 fc 18 ff f3\s+push2p\s+%rbx,%rax +\s*[a-f0-9]+:\s*62 fc bc 18 ff f1\s+push2p\s+%r17,%r8 +\s*[a-f0-9]+:\s*62 d4 84 10 ff f1\s+push2p\s+%r9,%r31 +\s*[a-f0-9]+:\s*62 dc bc 10 ff f7\s+push2p\s+%r31,%r24 +\s*[a-f0-9]+:\s*62 f4 64 18 8f c0\s+pop2\s+%rax,%rbx +\s*[a-f0-9]+:\s*62 d4 74 10 8f c0\s+pop2\s+%r8,%r17 +\s*[a-f0-9]+:\s*62 dc 34 18 8f c7\s+pop2\s+%r31,%r9 +\s*[a-f0-9]+:\s*62 dc 04 10 8f c0\s+pop2\s+%r24,%r31 +\s*[a-f0-9]+:\s*62 f4 e4 18 8f c0\s+pop2p\s+%rax,%rbx +\s*[a-f0-9]+:\s*62 d4 f4 10 8f c0\s+pop2p\s+%r8,%r17 +\s*[a-f0-9]+:\s*62 dc b4 18 8f c7\s+pop2p\s+%r31,%r9 +\s*[a-f0-9]+:\s*62 dc 84 10 8f c0\s+pop2p\s+%r24,%r31 diff --git a/gas/testsuite/gas/i386/x86-64-apx-push2pop2.s b/gas/testsuite/gas/i386/x86-64-apx-push2pop2.s new file mode 100644 index 0000000..5c28c13 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-apx-push2pop2.s @@ -0,0 +1,39 @@ +# Check 64bit APX-Push2Pop2 instructions + + .allow_index_reg + .text +_start: + push2 %rbx, %rax + push2 %r17, %r8 + push2 %r9, %r31 + push2 %r31, %r24 + push2p %rbx, %rax + push2p %r17, %r8 + push2p %r9, %r31 + push2p %r31, %r24 + pop2 %rax, %rbx + pop2 %r8, %r17 + pop2 %r31, %r9 + pop2 %r24, %r31 + pop2p %rax, %rbx + pop2p %r8, %r17 + pop2p %r31, %r9 + pop2p %r24, %r31 + + .intel_syntax noprefix + push2 rax, rbx + push2 r8, r17 + push2 r31, r9 + push2 r24, r31 + push2p rax, rbx + push2p r8, r17 + push2p r31, r9 + push2p r24, r31 + pop2 rbx, rax + pop2 r17, r8 + pop2 r9, r31 + pop2 r31, r24 + pop2p rbx, rax + pop2p r17, r8 + pop2p r9, r31 + pop2p r31, r24 diff --git a/gas/testsuite/gas/i386/x86-64.exp b/gas/testsuite/gas/i386/x86-64.exp index 3a3438a..0e7b5d0 100644 --- a/gas/testsuite/gas/i386/x86-64.exp +++ b/gas/testsuite/gas/i386/x86-64.exp @@ -345,6 +345,9 @@ run_dump_test "x86-64-avx512dq-rcigrd-intel" run_dump_test "x86-64-avx512dq-rcigrd" run_dump_test "x86-64-avx512dq-rcigrne-intel" run_dump_test "x86-64-avx512dq-rcigrne" +run_dump_test "x86-64-apx-push2pop2" +run_dump_test "x86-64-apx-push2pop2-intel" +run_list_test "x86-64-apx-push2pop2-inval" run_dump_test "x86-64-avx512dq-rcigru-intel" run_dump_test "x86-64-avx512dq-rcigru" run_dump_test "x86-64-avx512dq-rcigrz-intel" diff --git a/opcodes/i386-dis-evex-reg.h b/opcodes/i386-dis-evex-reg.h index cac3c39c..81bb416 100644 --- a/opcodes/i386-dis-evex-reg.h +++ b/opcodes/i386-dis-evex-reg.h @@ -79,6 +79,10 @@ { "subQ", { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, { "xorQ", { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, }, + /* REG_EVEX_MAP4_8F */ + { + { VEX_W_TABLE (EVEX_W_MAP4_8F_R_0) }, + }, /* REG_EVEX_MAP4_F6 */ { { Bad_Opcode }, @@ -102,4 +106,9 @@ { { "incQ", { VexGv, Ev }, PREFIX_NP_OR_DATA }, { "decQ", { VexGv, Ev }, PREFIX_NP_OR_DATA }, + { Bad_Opcode }, + { Bad_Opcode }, + { Bad_Opcode }, + { Bad_Opcode }, + { VEX_W_TABLE (EVEX_W_MAP4_FF_R_6) }, }, diff --git a/opcodes/i386-dis-evex-w.h b/opcodes/i386-dis-evex-w.h index b828277..12ab295 100644 --- a/opcodes/i386-dis-evex-w.h +++ b/opcodes/i386-dis-evex-w.h @@ -442,6 +442,16 @@ { Bad_Opcode }, { "vpshrdw", { XM, Vex, EXx, Ib }, 0 }, }, + /* EVEX_W_MAP4_8F_R_0 */ + { + { "pop2", { { PUSH2_POP2_Fixup, q_mode}, Eq }, NO_PREFIX }, + { "pop2p", { { PUSH2_POP2_Fixup, q_mode}, Eq }, NO_PREFIX }, + }, + /* EVEX_W_MAP4_FF_R_6 */ + { + { "push2", { { PUSH2_POP2_Fixup, q_mode}, Eq }, 0 }, + { "push2p", { { PUSH2_POP2_Fixup, q_mode}, Eq }, 0 }, + }, /* EVEX_W_MAP5_5B_P_0 */ { { "vcvtdq2ph%XY", { XMxmmq, EXx, EXxEVexR }, 0 }, diff --git a/opcodes/i386-dis-evex.h b/opcodes/i386-dis-evex.h index a8a891d..4f2ec96 100644 --- a/opcodes/i386-dis-evex.h +++ b/opcodes/i386-dis-evex.h @@ -1035,7 +1035,7 @@ static const struct dis386 evex_table[][256] = { { Bad_Opcode }, { Bad_Opcode }, { Bad_Opcode }, - { Bad_Opcode }, + { REG_TABLE (REG_EVEX_MAP4_8F) }, /* 90 */ { Bad_Opcode }, { Bad_Opcode }, diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index aac08c1..b83ffc8 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -105,6 +105,7 @@ static bool FXSAVE_Fixup (instr_info *, int, int); static bool MOVSXD_Fixup (instr_info *, int, int); static bool DistinctDest_Fixup (instr_info *, int, int); static bool PREFETCHI_Fixup (instr_info *, int, int); +static bool PUSH2_POP2_Fixup (instr_info *, int, int); static void ATTRIBUTE_PRINTF_3 i386_dis_printf (const disassemble_info *, enum disassembler_style, @@ -900,6 +901,7 @@ enum REG_EVEX_MAP4_80, REG_EVEX_MAP4_81, REG_EVEX_MAP4_83, + REG_EVEX_MAP4_8F, REG_EVEX_MAP4_F6, REG_EVEX_MAP4_F7, REG_EVEX_MAP4_FE, @@ -1739,6 +1741,9 @@ enum EVEX_W_0F3A70, EVEX_W_0F3A72, + EVEX_W_MAP4_8F_R_0, + EVEX_W_MAP4_FF_R_6, + EVEX_W_MAP5_5B_P_0, EVEX_W_MAP5_7A_P_3, }; @@ -13510,6 +13515,9 @@ OP_VEX (instr_info *ins, int bytemode, int sizeflag ATTRIBUTE_UNUSED) case b_mode: names = att_names8rex; break; + case q_mode: + names = att_names64; + break; case mask_bd_mode: case mask_mode: if (reg > 0x7) @@ -13894,3 +13902,26 @@ PREFETCHI_Fixup (instr_info *ins, int bytemode, int sizeflag) return OP_M (ins, bytemode, sizeflag); } + +static bool +PUSH2_POP2_Fixup (instr_info *ins, int bytemode, int sizeflag) +{ + if (ins->modrm.mod != 3) + return true; + + unsigned int vvvv_reg = ins->vex.register_specifier + | (!ins->vex.v << 4); + unsigned int rm_reg = ins->modrm.rm + (ins->rex & REX_B ? 8 : 0) + + (ins->rex2 & REX_B ? 16 : 0); + + /* Push2/Pop2 cannot use RSP and Pop2 cannot pop two same registers. */ + if (!ins->vex.nd || vvvv_reg == 0x4 || rm_reg == 0x4 + || (!ins->modrm.reg + && vvvv_reg == rm_reg)) + { + oappend (ins, "(bad)"); + return true; + } + + return OP_VEX (ins, bytemode, sizeflag); +} diff --git a/opcodes/i386-mnem.h b/opcodes/i386-mnem.h index fae1bb4..ad92bca 100644 --- a/opcodes/i386-mnem.h +++ b/opcodes/i386-mnem.h @@ -52,2314 +52,2318 @@ extern const char i386_mnemonics[]; #define MN_vsha512msg2 0xf3 #define MN_vsm3msg2 0xff #define MN_sha256msg2 0x108 -#define MN_fldln2 0x113 -#define MN_vsha512rnds2 0x11a -#define MN_vsm3rnds2 0x127 -#define MN_sha256rnds2 0x131 -#define MN_prefetcht2 0x13d -#define MN_pfrcpit2 0x148 -#define MN_vbroadcastf32x2 0x151 -#define MN_vbroadcasti32x2 0x161 -#define MN_vshuff64x2 0x171 -#define MN_vextractf64x2 0x17c -#define MN_vinsertf64x2 0x18a -#define MN_vbroadcastf64x2 0x197 -#define MN_vshufi64x2 0x1a7 -#define MN_vextracti64x2 0x1b2 -#define MN_vinserti64x2 0x1c0 -#define MN_vbroadcasti64x2 0x1cd -#define MN_int3 0x1dd -#define MN_vmovdqa64 0x1e2 -#define MN_xsavec64 0x1ec +#define MN_push2 0x113 +#define MN_fldln2 0x119 +#define MN_pop2 0x120 +#define MN_vsha512rnds2 0x125 +#define MN_vsm3rnds2 0x132 +#define MN_sha256rnds2 0x13c +#define MN_prefetcht2 0x148 +#define MN_pfrcpit2 0x153 +#define MN_vbroadcastf32x2 0x15c +#define MN_vbroadcasti32x2 0x16c +#define MN_vshuff64x2 0x17c +#define MN_vextractf64x2 0x187 +#define MN_vinsertf64x2 0x195 +#define MN_vbroadcastf64x2 0x1a2 +#define MN_vshufi64x2 0x1b2 +#define MN_vextracti64x2 0x1bd +#define MN_vinserti64x2 0x1cb +#define MN_vbroadcasti64x2 0x1d8 +#define MN_int3 0x1e8 +#define MN_vmovdqa64 0x1ed +#define MN_xsavec64 0x1f7 #define MN_xsave64 (MN_fxsave64 + 1) -#define MN_fxsave64 0x1f5 -#define MN_endbr64 0x1fe +#define MN_fxsave64 0x200 +#define MN_endbr64 0x209 #define MN_xrstor64 (MN_fxrstor64 + 1) -#define MN_fxrstor64 0x206 -#define MN_xsaves64 0x210 -#define MN_xrstors64 0x219 -#define MN_xsaveopt64 0x223 -#define MN_vmovdqu64 0x22e -#define MN_rex64 0x238 -#define MN_sha1rnds4 0x23e -#define MN_vsm4rnds4 0x248 -#define MN_vshuff32x4 0x252 -#define MN_vextractf32x4 0x25d -#define MN_vinsertf32x4 0x26b -#define MN_vbroadcastf32x4 0x278 -#define MN_vshufi32x4 0x288 -#define MN_vextracti32x4 0x293 -#define MN_vinserti32x4 0x2a1 -#define MN_vbroadcasti32x4 0x2ae -#define MN_vextractf64x4 0x2be -#define MN_vinsertf64x4 0x2cc -#define MN_vbroadcastf64x4 0x2d9 -#define MN_vextracti64x4 0x2e9 -#define MN_vinserti64x4 0x2f7 -#define MN_vbroadcasti64x4 0x304 -#define MN_vsm4key4 0x314 -#define MN_data16 0x31d -#define MN_vcvtne2ps2bf16 0x324 -#define MN_vcvtneps2bf16 0x333 -#define MN_addr16 0x341 -#define MN_vmovdqu16 0x348 -#define MN_xsha256 0x352 -#define MN_encodekey256 0x35a -#define MN_vperm2f128 0x367 -#define MN_vextractf128 0x372 -#define MN_vinsertf128 0x37f -#define MN_vbroadcastf128 0x38b -#define MN_vperm2i128 0x39a -#define MN_vextracti128 0x3a5 -#define MN_vinserti128 0x3b2 -#define MN_vbroadcasti128 0x3be -#define MN_encodekey128 0x3cd -#define MN_vmovdqu8 0x3da -#define MN_vextractf32x8 0x3e3 -#define MN_vinsertf32x8 0x3f1 -#define MN_vbroadcastf32x8 0x3fe -#define MN_vextracti32x8 0x40e -#define MN_vinserti32x8 0x41c -#define MN_vbroadcasti32x8 0x429 -#define MN_ud2a 0x439 -#define MN_aaa 0x43e -#define MN_daa 0x442 -#define MN_ssca 0x446 -#define MN_lea 0x44b -#define MN_invlpga 0x44f -#define MN_pusha 0x457 -#define MN_ja 0x45d -#define MN_jna 0x460 -#define MN_setna 0x464 +#define MN_fxrstor64 0x211 +#define MN_xsaves64 0x21b +#define MN_xrstors64 0x224 +#define MN_xsaveopt64 0x22e +#define MN_vmovdqu64 0x239 +#define MN_rex64 0x243 +#define MN_sha1rnds4 0x249 +#define MN_vsm4rnds4 0x253 +#define MN_vshuff32x4 0x25d +#define MN_vextractf32x4 0x268 +#define MN_vinsertf32x4 0x276 +#define MN_vbroadcastf32x4 0x283 +#define MN_vshufi32x4 0x293 +#define MN_vextracti32x4 0x29e +#define MN_vinserti32x4 0x2ac +#define MN_vbroadcasti32x4 0x2b9 +#define MN_vextractf64x4 0x2c9 +#define MN_vinsertf64x4 0x2d7 +#define MN_vbroadcastf64x4 0x2e4 +#define MN_vextracti64x4 0x2f4 +#define MN_vinserti64x4 0x302 +#define MN_vbroadcasti64x4 0x30f +#define MN_vsm4key4 0x31f +#define MN_data16 0x328 +#define MN_vcvtne2ps2bf16 0x32f +#define MN_vcvtneps2bf16 0x33e +#define MN_addr16 0x34c +#define MN_vmovdqu16 0x353 +#define MN_xsha256 0x35d +#define MN_encodekey256 0x365 +#define MN_vperm2f128 0x372 +#define MN_vextractf128 0x37d +#define MN_vinsertf128 0x38a +#define MN_vbroadcastf128 0x396 +#define MN_vperm2i128 0x3a5 +#define MN_vextracti128 0x3b0 +#define MN_vinserti128 0x3bd +#define MN_vbroadcasti128 0x3c9 +#define MN_encodekey128 0x3d8 +#define MN_vmovdqu8 0x3e5 +#define MN_vextractf32x8 0x3ee +#define MN_vinsertf32x8 0x3fc +#define MN_vbroadcastf32x8 0x409 +#define MN_vextracti32x8 0x419 +#define MN_vinserti32x8 0x427 +#define MN_vbroadcasti32x8 0x434 +#define MN_ud2a 0x444 +#define MN_aaa 0x449 +#define MN_daa 0x44d +#define MN_ssca 0x451 +#define MN_lea 0x456 +#define MN_invlpga 0x45a +#define MN_pusha 0x462 +#define MN_ja 0x468 +#define MN_jna 0x46b +#define MN_setna 0x46f #define MN_cmovna (MN_fcmovna + 1) -#define MN_fcmovna 0x46a -#define MN_popa 0x472 +#define MN_fcmovna 0x475 +#define MN_popa 0x47d #define MN_movntdqa (MN_vmovntdqa + 1) -#define MN_vmovntdqa 0x477 +#define MN_vmovntdqa 0x482 #define MN_movdqa (MN_vmovdqa + 1) -#define MN_vmovdqa 0x481 -#define MN_seta 0x489 -#define MN_prefetchnta 0x48e +#define MN_vmovdqa 0x48c +#define MN_seta 0x494 +#define MN_prefetchnta 0x499 #define MN_cmova (MN_fcmova + 1) -#define MN_fcmova 0x49a -#define MN_rex_b 0x4a1 -#define MN_ud2b 0x4a7 -#define MN_vpermi2b 0x4ac -#define MN_vpmovm2b 0x4b5 -#define MN_vpermt2b 0x4be -#define MN_movdir64b 0x4c7 -#define MN_cmpxchg16b 0x4d1 -#define MN_cmpxchg8b 0x4dc -#define MN_vpshab 0x4e6 -#define MN_sbb 0x4ed +#define MN_fcmova 0x4a5 +#define MN_rex_b 0x4ac +#define MN_ud2b 0x4b2 +#define MN_vpermi2b 0x4b7 +#define MN_vpmovm2b 0x4c0 +#define MN_vpermt2b 0x4c9 +#define MN_movdir64b 0x4d2 +#define MN_cmpxchg16b 0x4dc +#define MN_cmpxchg8b 0x4e7 +#define MN_vpshab 0x4f1 +#define MN_sbb 0x4f8 #define MN_psubb (MN_vpsubb + 1) -#define MN_vpsubb 0x4f1 -#define MN_xcrypt_ecb 0x4f8 -#define MN_xcryptecb 0x503 -#define MN_llwpcb 0x50d -#define MN_slwpcb 0x514 -#define MN_kaddb 0x51b +#define MN_vpsubb 0x4fc +#define MN_xcrypt_ecb 0x503 +#define MN_xcryptecb 0x50e +#define MN_llwpcb 0x518 +#define MN_slwpcb 0x51f +#define MN_kaddb 0x526 #define MN_paddb (MN_vpaddb + 1) -#define MN_vpaddb 0x521 -#define MN_kandb 0x528 -#define MN_vpexpandb 0x52e -#define MN_vpmovusdb 0x538 -#define MN_vpmovsdb 0x542 -#define MN_vpmovdb 0x54b -#define MN_vpcomgeb 0x553 -#define MN_vpcomleb 0x55c -#define MN_vpcmpnleb 0x565 -#define MN_vpcmpleb 0x56f -#define MN_vpcomfalseb 0x578 -#define MN_vpcomtrueb 0x584 -#define MN_xcrypt_cfb 0x58f -#define MN_xcryptcfb 0x59a -#define MN_xcrypt_ofb 0x5a4 -#define MN_xcryptofb 0x5af +#define MN_vpaddb 0x52c +#define MN_kandb 0x533 +#define MN_vpexpandb 0x539 +#define MN_vpmovusdb 0x543 +#define MN_vpmovsdb 0x54d +#define MN_vpmovdb 0x556 +#define MN_vpcomgeb 0x55e +#define MN_vpcomleb 0x567 +#define MN_vpcmpnleb 0x570 +#define MN_vpcmpleb 0x57a +#define MN_vpcomfalseb 0x583 +#define MN_vpcomtrueb 0x58f +#define MN_xcrypt_cfb 0x59a +#define MN_xcryptcfb 0x5a5 +#define MN_xcrypt_ofb 0x5af +#define MN_xcryptofb 0x5ba #define MN_pshufb (MN_vpshufb + 1) -#define MN_vpshufb 0x5b9 -#define MN_invlpgb 0x5c1 +#define MN_vpshufb 0x5c4 +#define MN_invlpgb 0x5cc #define MN_pavgb (MN_vpavgb + 1) -#define MN_vpavgb 0x5c9 -#define MN_jb 0x5d0 -#define MN_pbndkb 0x5d3 +#define MN_vpavgb 0x5d4 +#define MN_jb 0x5db +#define MN_pbndkb 0x5de #define MN_pmovmskb (MN_vpmovmskb + 1) -#define MN_vpmovmskb 0x5da -#define MN_vpshlb 0x5e4 -#define MN_kshiftlb 0x5eb +#define MN_vpmovmskb 0x5e5 +#define MN_vpshlb 0x5ef +#define MN_kshiftlb 0x5f6 #define MN_gf2p8mulb (MN_vgf2p8mulb + 1) -#define MN_vgf2p8mulb 0x5f4 -#define MN_vpblendmb 0x5ff -#define MN_vptestnmb 0x609 -#define MN_vpcomb 0x613 -#define MN_vpshufbitqmb 0x61a -#define MN_vpermb 0x627 -#define MN_vptestmb 0x62e -#define MN_kandnb 0x637 +#define MN_vgf2p8mulb 0x5ff +#define MN_vpblendmb 0x60a +#define MN_vptestnmb 0x614 +#define MN_vpcomb 0x61e +#define MN_vpshufbitqmb 0x625 +#define MN_vpermb 0x632 +#define MN_vptestmb 0x639 +#define MN_kandnb 0x642 #define MN_psignb (MN_vpsignb + 1) -#define MN_vpsignb 0x63e -#define MN_jnb 0x646 -#define MN_setnb 0x64a +#define MN_vpsignb 0x649 +#define MN_jnb 0x651 +#define MN_setnb 0x655 #define MN_cmovnb (MN_fcmovnb + 1) -#define MN_fcmovnb 0x650 -#define MN_vpcmpb 0x658 -#define MN_vpcomeqb 0x65f +#define MN_fcmovnb 0x65b +#define MN_vpcmpb 0x663 +#define MN_vpcomeqb 0x66a #define MN_gf2p8affineqb (MN_vgf2p8affineqb + 1) -#define MN_vgf2p8affineqb 0x668 -#define MN_vpcomneqb 0x677 -#define MN_vpcmpneqb 0x681 +#define MN_vgf2p8affineqb 0x673 +#define MN_vpcomneqb 0x682 +#define MN_vpcmpneqb 0x68c #define MN_pcmpeqb (MN_vpcmpeqb + 1) -#define MN_vpcmpeqb 0x68b -#define MN_vpmovusqb 0x694 -#define MN_vpmovsqb 0x69e -#define MN_vpmultishiftqb 0x6a7 +#define MN_vpcmpeqb 0x696 +#define MN_vpmovusqb 0x69f +#define MN_vpmovsqb 0x6a9 +#define MN_vpmultishiftqb 0x6b2 #define MN_gf2p8affineinvqb (MN_vgf2p8affineinvqb + 1) -#define MN_vgf2p8affineinvqb 0x6b6 -#define MN_vpmovqb 0x6c8 -#define MN_rex_rb 0x6d0 -#define MN_korb 0x6d7 -#define MN_kxnorb 0x6dc -#define MN_kxorb 0x6e3 +#define MN_vgf2p8affineinvqb 0x6c1 +#define MN_vpmovqb 0x6d3 +#define MN_rex_rb 0x6db +#define MN_korb 0x6e2 +#define MN_kxnorb 0x6e7 +#define MN_kxorb 0x6ee #define MN_pinsrb (MN_vpinsrb + 1) -#define MN_vpinsrb 0x6e9 -#define MN_kshiftrb 0x6f1 +#define MN_vpinsrb 0x6f4 +#define MN_kshiftrb 0x6fc #define MN_pextrb (MN_vpextrb + 1) -#define MN_vpextrb 0x6fa -#define MN_rex_wrb 0x702 +#define MN_vpextrb 0x705 +#define MN_rex_wrb 0x70d #define MN_pabsb (MN_vpabsb + 1) -#define MN_vpabsb 0x70a +#define MN_vpabsb 0x715 #define MN_psubsb (MN_vpsubsb + 1) -#define MN_vpsubsb 0x711 +#define MN_vpsubsb 0x71c #define MN_paddsb (MN_vpaddsb + 1) -#define MN_vpaddsb 0x719 +#define MN_vpaddsb 0x724 #define MN_pminsb (MN_vpminsb + 1) -#define MN_vpminsb 0x721 -#define MN_vpcompressb 0x729 +#define MN_vpminsb 0x72c +#define MN_vpcompressb 0x734 #define MN_psubusb (MN_vpsubusb + 1) -#define MN_vpsubusb 0x735 +#define MN_vpsubusb 0x740 #define MN_paddusb (MN_vpaddusb + 1) -#define MN_vpaddusb 0x73e -#define MN_pavgusb 0x747 -#define MN_movsb 0x74f +#define MN_vpaddusb 0x749 +#define MN_pavgusb 0x752 +#define MN_movsb 0x75a #define MN_pmaxsb (MN_vpmaxsb + 1) -#define MN_vpmaxsb 0x755 -#define MN_setb 0x75d -#define MN_vpcomgtb 0x762 +#define MN_vpmaxsb 0x760 +#define MN_setb 0x768 +#define MN_vpcomgtb 0x76d #define MN_pcmpgtb (MN_vpcmpgtb + 1) -#define MN_vpcmpgtb 0x76b -#define MN_vpcomltb 0x774 -#define MN_vpcmpnltb 0x77d -#define MN_vpcmpltb 0x787 -#define MN_vpopcntb 0x790 -#define MN_knotb 0x799 -#define MN_vprotb 0x79f -#define MN_vpbroadcastb 0x7a6 -#define MN_ktestb 0x7b3 -#define MN_kortestb 0x7ba -#define MN_vpcomgeub 0x7c3 -#define MN_vpcomleub 0x7cd -#define MN_vpcmpnleub 0x7d7 -#define MN_vpcmpleub 0x7e2 -#define MN_vpcomfalseub 0x7ec -#define MN_vpcomtrueub 0x7f9 -#define MN_vpcomub 0x805 +#define MN_vpcmpgtb 0x776 +#define MN_vpcomltb 0x77f +#define MN_vpcmpnltb 0x788 +#define MN_vpcmpltb 0x792 +#define MN_vpopcntb 0x79b +#define MN_knotb 0x7a4 +#define MN_vprotb 0x7aa +#define MN_vpbroadcastb 0x7b1 +#define MN_ktestb 0x7be +#define MN_kortestb 0x7c5 +#define MN_vpcomgeub 0x7ce +#define MN_vpcomleub 0x7d8 +#define MN_vpcmpnleub 0x7e2 +#define MN_vpcmpleub 0x7ed +#define MN_vpcomfalseub 0x7f7 +#define MN_vpcomtrueub 0x804 +#define MN_vpcomub 0x810 #define MN_pminub (MN_vpminub + 1) -#define MN_vpminub 0x80d -#define MN_vpcmpub 0x815 -#define MN_vpcomequb 0x81d -#define MN_vpcomnequb 0x827 -#define MN_vpcmpnequb 0x832 -#define MN_vpcmpequb 0x83d +#define MN_vpminub 0x818 +#define MN_vpcmpub 0x820 +#define MN_vpcomequb 0x828 +#define MN_vpcomnequb 0x832 +#define MN_vpcmpnequb 0x83d +#define MN_vpcmpequb 0x848 #define MN_sub (MN_fsub + 1) #define MN_fsub (MN_pfsub + 1) -#define MN_pfsub 0x847 -#define MN_fisub 0x84d -#define MN_vpcomgtub 0x853 -#define MN_vpcomltub 0x85d -#define MN_vpcmpnltub 0x867 -#define MN_vpcmpltub 0x872 +#define MN_pfsub 0x852 +#define MN_fisub 0x858 +#define MN_vpcomgtub 0x85e +#define MN_vpcomltub 0x868 +#define MN_vpcmpnltub 0x872 +#define MN_vpcmpltub 0x87d #define MN_pmaxub (MN_vpmaxub + 1) -#define MN_vpmaxub 0x87c +#define MN_vpmaxub 0x887 #define MN_pblendvb (MN_vpblendvb + 1) -#define MN_vpblendvb 0x884 +#define MN_vpblendvb 0x88f #define MN_cmovb (MN_fcmovb + 1) -#define MN_fcmovb 0x88e -#define MN_kmovb 0x895 -#define MN_rex_wb 0x89b -#define MN_clwb 0x8a2 +#define MN_fcmovb 0x899 +#define MN_kmovb 0x8a0 +#define MN_rex_wb 0x8a6 +#define MN_clwb 0x8ad #define MN_packsswb (MN_vpacksswb + 1) -#define MN_vpacksswb 0x8a7 +#define MN_vpacksswb 0x8b2 #define MN_packuswb (MN_vpackuswb + 1) -#define MN_vpackuswb 0x8b1 -#define MN_vpmovuswb 0x8bb -#define MN_vpmovswb 0x8c5 -#define MN_vpmovwb 0x8ce -#define MN_rex_xb 0x8d6 -#define MN_rex_rxb 0x8dd -#define MN_rex_wrxb 0x8e5 -#define MN_rex_wxb 0x8ee -#define MN_movzb 0x8f6 -#define MN_clac 0x8fc -#define MN_stac 0x901 -#define MN_xcrypt_cbc 0x906 -#define MN_xcryptcbc 0x911 -#define MN_pfacc 0x91b -#define MN_pfnacc 0x921 -#define MN_pfpnacc 0x928 -#define MN_adc 0x930 +#define MN_vpackuswb 0x8bc +#define MN_vpmovuswb 0x8c6 +#define MN_vpmovswb 0x8d0 +#define MN_vpmovwb 0x8d9 +#define MN_rex_xb 0x8e1 +#define MN_rex_rxb 0x8e8 +#define MN_rex_wrxb 0x8f0 +#define MN_rex_wxb 0x8f9 +#define MN_movzb 0x901 +#define MN_clac 0x907 +#define MN_stac 0x90c +#define MN_xcrypt_cbc 0x911 +#define MN_xcryptcbc 0x91c +#define MN_pfacc 0x926 +#define MN_pfnacc 0x92c +#define MN_pfpnacc 0x933 +#define MN_adc 0x93b #define MN_dec (MN_aesdec + 3) #define MN_aesdec (MN_vaesdec + 1) -#define MN_vaesdec 0x934 -#define MN_getsec 0x93c -#define MN_xsavec 0x943 -#define MN_blcic 0x94a -#define MN_blsic 0x950 -#define MN_jc 0x956 -#define MN_t1mskc 0x959 -#define MN_clc 0x960 -#define MN_cmc 0x964 +#define MN_vaesdec 0x93f +#define MN_getsec 0x947 +#define MN_xsavec 0x94e +#define MN_blcic 0x955 +#define MN_blsic 0x95b +#define MN_jc 0x961 +#define MN_t1mskc 0x964 +#define MN_clc 0x96b +#define MN_cmc 0x96f #define MN_aesimc (MN_vaesimc + 1) -#define MN_vaesimc 0x968 -#define MN_rdpmc 0x970 +#define MN_vaesimc 0x973 +#define MN_rdpmc 0x97b #define MN_aesenc (MN_vaesenc + 1) -#define MN_vaesenc 0x976 -#define MN_inc 0x97e -#define MN_jnc 0x982 -#define MN_setnc 0x986 -#define MN_vmfunc 0x98c -#define MN_cmovnc 0x993 -#define MN_tlbsync 0x99a -#define MN_rdtsc 0x9a2 -#define MN_btc 0x9a8 -#define MN_setc 0x9ac -#define MN_stc 0x9b1 -#define MN_cmovc 0x9b5 -#define MN_vpermi2d 0x9bb -#define MN_vpmovm2d 0x9c4 -#define MN_vpermt2d 0x9cd -#define MN_vpbroadcastmw2d 0x9d6 -#define MN_aad 0x9e6 -#define MN_vmread 0x9ea -#define MN_vpshad 0x9f1 -#define MN_vmload 0x9f8 +#define MN_vaesenc 0x981 +#define MN_inc 0x989 +#define MN_jnc 0x98d +#define MN_setnc 0x991 +#define MN_vmfunc 0x997 +#define MN_cmovnc 0x99e +#define MN_tlbsync 0x9a5 +#define MN_rdtsc 0x9ad +#define MN_btc 0x9b3 +#define MN_setc 0x9b7 +#define MN_stc 0x9bc +#define MN_cmovc 0x9c0 +#define MN_vpermi2d 0x9c6 +#define MN_vpmovm2d 0x9cf +#define MN_vpermt2d 0x9d8 +#define MN_vpbroadcastmw2d 0x9e1 +#define MN_aad 0x9f1 +#define MN_vmread 0x9f5 +#define MN_vpshad 0x9fc +#define MN_vmload 0xa03 #define MN_psrad (MN_vpsrad + 1) -#define MN_vpsrad 0x9ff -#define MN_vphaddbd 0xa06 -#define MN_vphaddubd 0xa0f +#define MN_vpsrad 0xa0a +#define MN_vphaddbd 0xa11 +#define MN_vphaddubd 0xa1a #define MN_phsubd (MN_vphsubd + 1) -#define MN_vphsubd 0xa19 +#define MN_vphsubd 0xa24 #define MN_psubd (MN_vpsubd + 1) -#define MN_vpsubd 0xa21 +#define MN_vpsubd 0xa2c #define MN_pmovsxbd (MN_vpmovsxbd + 1) -#define MN_vpmovsxbd 0xa28 +#define MN_vpmovsxbd 0xa33 #define MN_pmovzxbd (MN_vpmovzxbd + 1) -#define MN_vpmovzxbd 0xa32 +#define MN_vpmovzxbd 0xa3d #define MN_add (MN_aadd + 1) -#define MN_aadd 0xa3c +#define MN_aadd 0xa47 #define MN_fadd (MN_pfadd + 1) -#define MN_pfadd 0xa41 -#define MN_fiadd 0xa47 -#define MN_tileloadd 0xa4d +#define MN_pfadd 0xa4c +#define MN_fiadd 0xa52 +#define MN_tileloadd 0xa58 #define MN_xadd (MN_cmpnaxadd + 5) -#define MN_cmpnaxadd 0xa57 -#define MN_cmpaxadd 0xa61 -#define MN_cmpnbxadd 0xa6a -#define MN_cmpbxadd 0xa74 -#define MN_cmpncxadd 0xa7d -#define MN_cmpcxadd 0xa87 -#define MN_cmpnaexadd 0xa90 -#define MN_cmpaexadd 0xa9b -#define MN_cmpnbexadd 0xaa5 -#define MN_cmpbexadd 0xab0 -#define MN_cmpngexadd 0xaba -#define MN_cmpgexadd 0xac5 -#define MN_cmpnlexadd 0xacf -#define MN_cmplexadd 0xada -#define MN_cmpnexadd 0xae4 -#define MN_cmpexadd 0xaee -#define MN_cmppexadd 0xaf7 -#define MN_cmpngxadd 0xb01 -#define MN_cmpgxadd 0xb0b -#define MN_cmpnlxadd 0xb14 -#define MN_cmplxadd 0xb1e -#define MN_cmpnoxadd 0xb27 -#define MN_cmpoxadd 0xb31 -#define MN_cmppoxadd 0xb3a -#define MN_cmpnpxadd 0xb44 -#define MN_cmppxadd 0xb4e -#define MN_cmpnsxadd 0xb57 -#define MN_cmpsxadd 0xb61 -#define MN_cmpnzxadd 0xb6a -#define MN_cmpzxadd 0xb74 +#define MN_cmpnaxadd 0xa62 +#define MN_cmpaxadd 0xa6c +#define MN_cmpnbxadd 0xa75 +#define MN_cmpbxadd 0xa7f +#define MN_cmpncxadd 0xa88 +#define MN_cmpcxadd 0xa92 +#define MN_cmpnaexadd 0xa9b +#define MN_cmpaexadd 0xaa6 +#define MN_cmpnbexadd 0xab0 +#define MN_cmpbexadd 0xabb +#define MN_cmpngexadd 0xac5 +#define MN_cmpgexadd 0xad0 +#define MN_cmpnlexadd 0xada +#define MN_cmplexadd 0xae5 +#define MN_cmpnexadd 0xaef +#define MN_cmpexadd 0xaf9 +#define MN_cmppexadd 0xb02 +#define MN_cmpngxadd 0xb0c +#define MN_cmpgxadd 0xb16 +#define MN_cmpnlxadd 0xb1f +#define MN_cmplxadd 0xb29 +#define MN_cmpnoxadd 0xb32 +#define MN_cmpoxadd 0xb3c +#define MN_cmppoxadd 0xb45 +#define MN_cmpnpxadd 0xb4f +#define MN_cmppxadd 0xb59 +#define MN_cmpnsxadd 0xb62 +#define MN_cmpsxadd 0xb6c +#define MN_cmpnzxadd 0xb75 +#define MN_cmpzxadd 0xb7f #define MN_phaddd (MN_vphaddd + 1) -#define MN_vphaddd 0xb7d -#define MN_kaddd 0xb85 +#define MN_vphaddd 0xb88 +#define MN_kaddd 0xb90 #define MN_paddd (MN_vpaddd + 1) -#define MN_vpaddd 0xb8b -#define MN_vpshldd 0xb92 -#define MN_kandd 0xb9a -#define MN_vpandd 0xba0 -#define MN_vpexpandd 0xba7 -#define MN_vpblendd 0xbb1 -#define MN_vpgatherdd 0xbba -#define MN_vpscatterdd 0xbc5 -#define MN_vpshrdd 0xbd1 -#define MN_vpmacsdd 0xbd9 -#define MN_vpmacssdd 0xbe2 -#define MN_rdseed 0xbec -#define MN_vpcomged 0xbf3 -#define MN_vpcomled 0xbfc -#define MN_vpcmpnled 0xc05 -#define MN_vpcmpled 0xc0f -#define MN_tilestored 0xc18 -#define MN_vpcomfalsed 0xc23 -#define MN_vpcomtrued 0xc2f -#define MN_pi2fd 0xc3a +#define MN_vpaddd 0xb96 +#define MN_vpshldd 0xb9d +#define MN_kandd 0xba5 +#define MN_vpandd 0xbab +#define MN_vpexpandd 0xbb2 +#define MN_vpblendd 0xbbc +#define MN_vpgatherdd 0xbc5 +#define MN_vpscatterdd 0xbd0 +#define MN_vpshrdd 0xbdc +#define MN_vpmacsdd 0xbe4 +#define MN_vpmacssdd 0xbed +#define MN_rdseed 0xbf7 +#define MN_vpcomged 0xbfe +#define MN_vpcomled 0xc07 +#define MN_vpcmpnled 0xc10 +#define MN_vpcmpled 0xc1a +#define MN_tilestored 0xc23 +#define MN_vpcomfalsed 0xc2e +#define MN_vpcomtrued 0xc3a +#define MN_pi2fd 0xc45 #define MN_pshufd (MN_vpshufd + 1) -#define MN_vpshufd 0xc40 -#define MN_vpternlogd 0xc48 -#define MN_pf2id 0xc53 -#define MN_invpcid 0xc59 -#define MN_rdpid 0xc61 -#define MN_invvpid 0xc67 -#define MN_cpuid 0xc6f -#define MN_fbld 0xc75 -#define MN_cld 0xc7a -#define MN_fld 0xc7e +#define MN_vpshufd 0xc4b +#define MN_vpternlogd 0xc53 +#define MN_pf2id 0xc5e +#define MN_invpcid 0xc64 +#define MN_rdpid 0xc6c +#define MN_invvpid 0xc72 +#define MN_cpuid 0xc7a +#define MN_fbld 0xc80 +#define MN_cld 0xc85 +#define MN_fld 0xc89 #define MN_shld (MN_vpshld + 2) -#define MN_vpshld 0xc82 -#define MN_fild 0xc89 +#define MN_vpshld 0xc8d +#define MN_fild 0xc94 #define MN_pslld (MN_vpslld + 1) -#define MN_vpslld 0xc8e +#define MN_vpslld 0xc99 #define MN_pmulld (MN_vpmulld + 1) -#define MN_vpmulld 0xc95 -#define MN_vprold 0xc9d +#define MN_vpmulld 0xca0 +#define MN_vprold 0xca8 #define MN_psrld (MN_vpsrld + 1) -#define MN_vpsrld 0xca4 -#define MN_vmptrld 0xcab -#define MN_kshiftld 0xcb3 -#define MN_enqcmd 0xcbc -#define MN_vpblendmd 0xcc3 -#define MN_vptestnmd 0xccd -#define MN_vpcomd 0xcd7 -#define MN_vpermd 0xcde -#define MN_vptestmd 0xce5 +#define MN_vpsrld 0xcaf +#define MN_vmptrld 0xcb6 +#define MN_kshiftld 0xcbe +#define MN_enqcmd 0xcc7 +#define MN_vpblendmd 0xcce +#define MN_vptestnmd 0xcd8 +#define MN_vpcomd 0xce2 +#define MN_vpermd 0xce9 +#define MN_vptestmd 0xcf0 #define MN_and (MN_aand + 1) -#define MN_aand 0xcee +#define MN_aand 0xcf9 #define MN_pand (MN_vpand + 1) -#define MN_vpand 0xcf3 -#define MN_rdrand 0xcf9 -#define MN_bnd 0xd00 -#define MN_kandnd 0xd04 -#define MN_vpandnd 0xd0b -#define MN_xend 0xd13 -#define MN_valignd 0xd18 +#define MN_vpand 0xcfe +#define MN_rdrand 0xd04 +#define MN_bnd 0xd0b +#define MN_kandnd 0xd0f +#define MN_vpandnd 0xd16 +#define MN_xend 0xd1e +#define MN_valignd 0xd23 #define MN_psignd (MN_vpsignd + 1) -#define MN_vpsignd 0xd20 -#define MN_bound 0xd28 -#define MN_slod 0xd2e -#define MN_vfmaddsub231pd 0xd33 -#define MN_vfmsub231pd 0xd42 -#define MN_vfnmsub231pd 0xd4e -#define MN_vfmsubadd231pd 0xd5b -#define MN_vfmadd231pd 0xd6a -#define MN_vfnmadd231pd 0xd76 -#define MN_vfmaddsub132pd 0xd83 -#define MN_vfmsub132pd 0xd92 -#define MN_vfnmsub132pd 0xd9e -#define MN_vfmsubadd132pd 0xdab -#define MN_vfmadd132pd 0xdba -#define MN_vfnmadd132pd 0xdc6 -#define MN_vcvtph2pd 0xdd3 -#define MN_vpermi2pd 0xddd -#define MN_cvtpi2pd 0xde7 -#define MN_vpermil2pd 0xdf0 -#define MN_vexp2pd 0xdfb +#define MN_vpsignd 0xd2b +#define MN_bound 0xd33 +#define MN_slod 0xd39 +#define MN_vfmaddsub231pd 0xd3e +#define MN_vfmsub231pd 0xd4d +#define MN_vfnmsub231pd 0xd59 +#define MN_vfmsubadd231pd 0xd66 +#define MN_vfmadd231pd 0xd75 +#define MN_vfnmadd231pd 0xd81 +#define MN_vfmaddsub132pd 0xd8e +#define MN_vfmsub132pd 0xd9d +#define MN_vfnmsub132pd 0xda9 +#define MN_vfmsubadd132pd 0xdb6 +#define MN_vfmadd132pd 0xdc5 +#define MN_vfnmadd132pd 0xdd1 +#define MN_vcvtph2pd 0xdde +#define MN_vpermi2pd 0xde8 +#define MN_cvtpi2pd 0xdf2 +#define MN_vpermil2pd 0xdfb +#define MN_vexp2pd 0xe06 #define MN_cvtdq2pd (MN_vcvtdq2pd + 1) -#define MN_vcvtdq2pd 0xe03 -#define MN_vcvtudq2pd 0xe0d -#define MN_vcvtqq2pd 0xe18 -#define MN_vcvtuqq2pd 0xe22 +#define MN_vcvtdq2pd 0xe0e +#define MN_vcvtudq2pd 0xe18 +#define MN_vcvtqq2pd 0xe23 +#define MN_vcvtuqq2pd 0xe2d #define MN_cvtps2pd (MN_vcvtps2pd + 1) -#define MN_vcvtps2pd 0xe2d -#define MN_vpermt2pd 0xe37 -#define MN_vfmaddsub213pd 0xe41 -#define MN_vfmsub213pd 0xe50 -#define MN_vfnmsub213pd 0xe5c -#define MN_vfmsubadd213pd 0xe69 -#define MN_vfmadd213pd 0xe78 -#define MN_vfnmadd213pd 0xe84 -#define MN_vrcp14pd 0xe91 -#define MN_vrsqrt14pd 0xe9a -#define MN_vrcp28pd 0xea5 -#define MN_vrsqrt28pd 0xeae +#define MN_vcvtps2pd 0xe38 +#define MN_vpermt2pd 0xe42 +#define MN_vfmaddsub213pd 0xe4c +#define MN_vfmsub213pd 0xe5b +#define MN_vfnmsub213pd 0xe67 +#define MN_vfmsubadd213pd 0xe74 +#define MN_vfmadd213pd 0xe83 +#define MN_vfnmadd213pd 0xe8f +#define MN_vrcp14pd 0xe9c +#define MN_vrsqrt14pd 0xea5 +#define MN_vrcp28pd 0xeb0 +#define MN_vrsqrt28pd 0xeb9 #define MN_movapd (MN_vmovapd + 1) -#define MN_vmovapd 0xeb9 -#define MN_pswapd 0xec1 +#define MN_vmovapd 0xec4 +#define MN_pswapd 0xecc #define MN_subpd (MN_addsubpd + 3) #define MN_addsubpd (MN_vfmaddsubpd + 3) -#define MN_vfmaddsubpd 0xec8 -#define MN_vaddsubpd 0xed4 +#define MN_vfmaddsubpd 0xed3 +#define MN_vaddsubpd 0xedf #define MN_hsubpd (MN_vhsubpd + 1) -#define MN_vhsubpd 0xede -#define MN_vfmsubpd 0xee6 -#define MN_vfnmsubpd 0xeef -#define MN_vsubpd 0xef9 -#define MN_vgatherpf0dpd 0xf00 -#define MN_vscatterpf0dpd 0xf0e -#define MN_vgatherpf1dpd 0xf1d -#define MN_vscatterpf1dpd 0xf2b +#define MN_vhsubpd 0xee9 +#define MN_vfmsubpd 0xef1 +#define MN_vfnmsubpd 0xefa +#define MN_vsubpd 0xf04 +#define MN_vgatherpf0dpd 0xf0b +#define MN_vscatterpf0dpd 0xf19 +#define MN_vgatherpf1dpd 0xf28 +#define MN_vscatterpf1dpd 0xf36 #define MN_addpd (MN_vfmsubaddpd + 6) -#define MN_vfmsubaddpd 0xf3a +#define MN_vfmsubaddpd 0xf45 #define MN_haddpd (MN_vhaddpd + 1) -#define MN_vhaddpd 0xf46 -#define MN_vfmaddpd 0xf4e -#define MN_vfnmaddpd 0xf57 -#define MN_vaddpd 0xf61 +#define MN_vhaddpd 0xf51 +#define MN_vfmaddpd 0xf59 +#define MN_vfnmaddpd 0xf62 +#define MN_vaddpd 0xf6c #define MN_andpd (MN_vexpandpd + 4) -#define MN_vexpandpd 0xf68 -#define MN_vandpd 0xf72 +#define MN_vexpandpd 0xf73 +#define MN_vandpd 0xf7d #define MN_blendpd (MN_vblendpd + 1) -#define MN_vblendpd 0xf79 +#define MN_vblendpd 0xf84 #define MN_roundpd (MN_vroundpd + 1) -#define MN_vroundpd 0xf82 -#define MN_vgatherdpd 0xf8b -#define MN_vscatterdpd 0xf96 +#define MN_vroundpd 0xf8d +#define MN_vgatherdpd 0xf96 +#define MN_vscatterdpd 0xfa1 #define MN_cmpunordpd (MN_vcmpunordpd + 1) -#define MN_vcmpunordpd 0xfa2 +#define MN_vcmpunordpd 0xfad #define MN_cmpordpd (MN_vcmpordpd + 1) -#define MN_vcmpordpd 0xfae -#define MN_vreducepd 0xfb8 -#define MN_vrangepd 0xfc2 -#define MN_vcmpngepd 0xfcb -#define MN_vcmpgepd 0xfd5 -#define MN_vrndscalepd 0xfde +#define MN_vcmpordpd 0xfb9 +#define MN_vreducepd 0xfc3 +#define MN_vrangepd 0xfcd +#define MN_vcmpngepd 0xfd6 +#define MN_vcmpgepd 0xfe0 +#define MN_vrndscalepd 0xfe9 #define MN_cmpnlepd (MN_vcmpnlepd + 1) -#define MN_vcmpnlepd 0xfea +#define MN_vcmpnlepd 0xff5 #define MN_cmplepd (MN_vcmplepd + 1) -#define MN_vcmplepd 0xff4 -#define MN_vcmpfalsepd 0xffd -#define MN_vcmptruepd 0x1009 -#define MN_vscalefpd 0x1014 +#define MN_vcmplepd 0xfff +#define MN_vcmpfalsepd 0x1008 +#define MN_vcmptruepd 0x1014 +#define MN_vscalefpd 0x101f #define MN_shufpd (MN_vshufpd + 1) -#define MN_vshufpd 0x101e +#define MN_vshufpd 0x1029 #define MN_unpckhpd (MN_vunpckhpd + 1) -#define MN_vunpckhpd 0x1026 +#define MN_vunpckhpd 0x1031 #define MN_movhpd (MN_vmovhpd + 1) -#define MN_vmovhpd 0x1030 +#define MN_vmovhpd 0x103b #define MN_movmskpd (MN_vmovmskpd + 1) -#define MN_vmovmskpd 0x1038 -#define MN_vpermilpd 0x1042 +#define MN_vmovmskpd 0x1043 +#define MN_vpermilpd 0x104d #define MN_unpcklpd (MN_vunpcklpd + 1) -#define MN_vunpcklpd 0x104c +#define MN_vunpcklpd 0x1057 #define MN_mulpd (MN_vmulpd + 1) -#define MN_vmulpd 0x1056 +#define MN_vmulpd 0x1061 #define MN_movlpd (MN_vmovlpd + 1) -#define MN_vmovlpd 0x105d -#define MN_vpcmpd 0x1065 -#define MN_vblendmpd 0x106c -#define MN_vfixupimmpd 0x1076 -#define MN_vpermpd 0x1082 +#define MN_vmovlpd 0x1068 +#define MN_vpcmpd 0x1070 +#define MN_vblendmpd 0x1077 +#define MN_vfixupimmpd 0x1081 +#define MN_vpermpd 0x108d #define MN_andnpd (MN_vandnpd + 1) -#define MN_vandnpd 0x108a +#define MN_vandnpd 0x1095 #define MN_minpd (MN_vminpd + 1) -#define MN_vminpd 0x1092 +#define MN_vminpd 0x109d #define MN_dppd (MN_vdppd + 1) -#define MN_vdppd 0x1099 +#define MN_vdppd 0x10a4 #define MN_cmppd (MN_vcmppd + 1) -#define MN_vcmppd 0x109f -#define MN_vgetexppd 0x10a6 -#define MN_vgatherpf0qpd 0x10b0 -#define MN_vscatterpf0qpd 0x10be -#define MN_vgatherpf1qpd 0x10cd -#define MN_vscatterpf1qpd 0x10db -#define MN_vcmpunord_qpd 0x10ea -#define MN_vcmpord_qpd 0x10f8 +#define MN_vcmppd 0x10aa +#define MN_vgetexppd 0x10b1 +#define MN_vgatherpf0qpd 0x10bb +#define MN_vscatterpf0qpd 0x10c9 +#define MN_vgatherpf1qpd 0x10d8 +#define MN_vscatterpf1qpd 0x10e6 +#define MN_vcmpunord_qpd 0x10f5 +#define MN_vcmpord_qpd 0x1103 #define MN_cmpneqpd (MN_vcmpneqpd + 1) -#define MN_vcmpneqpd 0x1104 +#define MN_vcmpneqpd 0x110f #define MN_cmpeqpd (MN_vcmpeqpd + 1) -#define MN_vcmpeqpd 0x110e -#define MN_vcmpge_oqpd 0x1117 -#define MN_vcmple_oqpd 0x1123 -#define MN_vcmpfalse_oqpd 0x112f -#define MN_vcmpneq_oqpd 0x113e -#define MN_vcmpeq_oqpd 0x114b -#define MN_vcmpgt_oqpd 0x1157 -#define MN_vcmplt_oqpd 0x1163 -#define MN_vgatherqpd 0x116f -#define MN_vscatterqpd 0x117a -#define MN_vcmpnge_uqpd 0x1186 -#define MN_vcmpnle_uqpd 0x1193 -#define MN_vcmptrue_uqpd 0x11a0 -#define MN_vcmpneq_uqpd 0x11ae -#define MN_vcmpeq_uqpd 0x11bb -#define MN_vcmpngt_uqpd 0x11c7 -#define MN_vcmpnlt_uqpd 0x11d4 +#define MN_vcmpeqpd 0x1119 +#define MN_vcmpge_oqpd 0x1122 +#define MN_vcmple_oqpd 0x112e +#define MN_vcmpfalse_oqpd 0x113a +#define MN_vcmpneq_oqpd 0x1149 +#define MN_vcmpeq_oqpd 0x1156 +#define MN_vcmpgt_oqpd 0x1162 +#define MN_vcmplt_oqpd 0x116e +#define MN_vgatherqpd 0x117a +#define MN_vscatterqpd 0x1185 +#define MN_vcmpnge_uqpd 0x1191 +#define MN_vcmpnle_uqpd 0x119e +#define MN_vcmptrue_uqpd 0x11ab +#define MN_vcmpneq_uqpd 0x11b9 +#define MN_vcmpeq_uqpd 0x11c6 +#define MN_vcmpngt_uqpd 0x11d2 +#define MN_vcmpnlt_uqpd 0x11df #define MN_orpd (MN_vorpd + 1) -#define MN_vorpd 0x11e1 +#define MN_vorpd 0x11ec #define MN_xorpd (MN_vxorpd + 1) -#define MN_vxorpd 0x11e7 -#define MN_vcmpunord_spd 0x11ee -#define MN_vcmpord_spd 0x11fc -#define MN_vcmpge_ospd 0x1208 -#define MN_vcmple_ospd 0x1214 -#define MN_vcmpfalse_ospd 0x1220 -#define MN_vcmpneq_ospd 0x122f -#define MN_vcmpeq_ospd 0x123c -#define MN_vcmpgt_ospd 0x1248 -#define MN_vcmplt_ospd 0x1254 -#define MN_vfpclasspd 0x1260 -#define MN_incsspd 0x126b -#define MN_rdsspd 0x1273 -#define MN_vcompresspd 0x127a -#define MN_vcmpnge_uspd 0x1286 -#define MN_vcmpnle_uspd 0x1293 -#define MN_vcmptrue_uspd 0x12a0 -#define MN_vcmpneq_uspd 0x12ae -#define MN_vcmpeq_uspd 0x12bb -#define MN_vcmpngt_uspd 0x12c7 -#define MN_vcmpnlt_uspd 0x12d4 -#define MN_vcmpngtpd 0x12e1 -#define MN_vcmpgtpd 0x12eb +#define MN_vxorpd 0x11f2 +#define MN_vcmpunord_spd 0x11f9 +#define MN_vcmpord_spd 0x1207 +#define MN_vcmpge_ospd 0x1213 +#define MN_vcmple_ospd 0x121f +#define MN_vcmpfalse_ospd 0x122b +#define MN_vcmpneq_ospd 0x123a +#define MN_vcmpeq_ospd 0x1247 +#define MN_vcmpgt_ospd 0x1253 +#define MN_vcmplt_ospd 0x125f +#define MN_vfpclasspd 0x126b +#define MN_incsspd 0x1276 +#define MN_rdsspd 0x127e +#define MN_vcompresspd 0x1285 +#define MN_vcmpnge_uspd 0x1291 +#define MN_vcmpnle_uspd 0x129e +#define MN_vcmptrue_uspd 0x12ab +#define MN_vcmpneq_uspd 0x12b9 +#define MN_vcmpeq_uspd 0x12c6 +#define MN_vcmpngt_uspd 0x12d2 +#define MN_vcmpnlt_uspd 0x12df +#define MN_vcmpngtpd 0x12ec +#define MN_vcmpgtpd 0x12f6 #define MN_cmpnltpd (MN_vcmpnltpd + 1) -#define MN_vcmpnltpd 0x12f4 +#define MN_vcmpnltpd 0x12ff #define MN_cmpltpd (MN_vcmpltpd + 1) -#define MN_vcmpltpd 0x12fe -#define MN_vgetmantpd 0x1307 +#define MN_vcmpltpd 0x1309 +#define MN_vgetmantpd 0x1312 #define MN_movntpd (MN_vmovntpd + 1) -#define MN_vmovntpd 0x1312 +#define MN_vmovntpd 0x131d #define MN_sqrtpd (MN_vsqrtpd + 1) -#define MN_vsqrtpd 0x131b -#define MN_vtestpd 0x1323 +#define MN_vsqrtpd 0x1326 +#define MN_vtestpd 0x132e #define MN_movupd (MN_vmovupd + 1) -#define MN_vmovupd 0x132b +#define MN_vmovupd 0x1336 #define MN_blendvpd (MN_vblendvpd + 1) -#define MN_vblendvpd 0x1333 +#define MN_vblendvpd 0x133e #define MN_divpd (MN_vdivpd + 1) -#define MN_vdivpd 0x133d -#define MN_vmaskmovpd 0x1344 +#define MN_vdivpd 0x1348 +#define MN_vmaskmovpd 0x134f #define MN_maxpd (MN_vmaxpd + 1) -#define MN_vmaxpd 0x134f -#define MN_vfrczpd 0x1356 -#define MN_vpcomeqd 0x135e -#define MN_vpcomneqd 0x1367 -#define MN_vpcmpneqd 0x1371 +#define MN_vmaxpd 0x135a +#define MN_vfrczpd 0x1361 +#define MN_vpcomeqd 0x1369 +#define MN_vpcomneqd 0x1372 +#define MN_vpcmpneqd 0x137c #define MN_pcmpeqd (MN_vpcmpeqd + 1) -#define MN_vpcmpeqd 0x137b -#define MN_vpgatherqd 0x1384 -#define MN_vpscatterqd 0x138f -#define MN_vpmovusqd 0x139b -#define MN_vpmovsqd 0x13a5 -#define MN_vpmovqd 0x13ae -#define MN_shrd 0x13b6 -#define MN_kord 0x13bb -#define MN_kxnord 0x13c0 -#define MN_vpord 0x13c7 -#define MN_vprord 0x13cd +#define MN_vpcmpeqd 0x1386 +#define MN_vpgatherqd 0x138f +#define MN_vpscatterqd 0x139a +#define MN_vpmovusqd 0x13a6 +#define MN_vpmovsqd 0x13b0 +#define MN_vpmovqd 0x13b9 +#define MN_shrd 0x13c1 +#define MN_kord 0x13c6 +#define MN_kxnord 0x13cb +#define MN_vpord 0x13d2 +#define MN_vprord 0x13d8 #define MN_word (MN_aword + 1) -#define MN_aword 0x13d4 +#define MN_aword 0x13df #define MN_dword (MN_adword + 1) -#define MN_adword 0x13da -#define MN_kxord 0x13e1 -#define MN_vpxord 0x13e7 +#define MN_adword 0x13e5 +#define MN_kxord 0x13ec +#define MN_vpxord 0x13f2 #define MN_pinsrd (MN_vpinsrd + 1) -#define MN_vpinsrd 0x13ee -#define MN_kshiftrd 0x13f6 +#define MN_vpinsrd 0x13f9 +#define MN_kshiftrd 0x1401 #define MN_pextrd (MN_vpextrd + 1) -#define MN_vpextrd 0x13ff -#define MN_vfmsub231sd 0x1407 -#define MN_vfnmsub231sd 0x1413 -#define MN_vfmadd231sd 0x1420 -#define MN_vfnmadd231sd 0x142c -#define MN_vfmsub132sd 0x1439 -#define MN_vfnmsub132sd 0x1445 -#define MN_vfmadd132sd 0x1452 -#define MN_vfnmadd132sd 0x145e -#define MN_vcvtsh2sd 0x146b +#define MN_vpextrd 0x140a +#define MN_vfmsub231sd 0x1412 +#define MN_vfnmsub231sd 0x141e +#define MN_vfmadd231sd 0x142b +#define MN_vfnmadd231sd 0x1437 +#define MN_vfmsub132sd 0x1444 +#define MN_vfnmsub132sd 0x1450 +#define MN_vfmadd132sd 0x145d +#define MN_vfnmadd132sd 0x1469 +#define MN_vcvtsh2sd 0x1476 #define MN_cvtsi2sd (MN_vcvtsi2sd + 1) -#define MN_vcvtsi2sd 0x1475 -#define MN_vcvtusi2sd 0x147f +#define MN_vcvtsi2sd 0x1480 +#define MN_vcvtusi2sd 0x148a #define MN_cvtss2sd (MN_vcvtss2sd + 1) -#define MN_vcvtss2sd 0x148a -#define MN_vfmsub213sd 0x1494 -#define MN_vfnmsub213sd 0x14a0 -#define MN_vfmadd213sd 0x14ad -#define MN_vfnmadd213sd 0x14b9 -#define MN_vrcp14sd 0x14c6 -#define MN_vrsqrt14sd 0x14cf -#define MN_vrcp28sd 0x14da -#define MN_vrsqrt28sd 0x14e3 +#define MN_vcvtss2sd 0x1495 +#define MN_vfmsub213sd 0x149f +#define MN_vfnmsub213sd 0x14ab +#define MN_vfmadd213sd 0x14b8 +#define MN_vfnmadd213sd 0x14c4 +#define MN_vrcp14sd 0x14d1 +#define MN_vrsqrt14sd 0x14da +#define MN_vrcp28sd 0x14e5 +#define MN_vrsqrt28sd 0x14ee #define MN_pabsd (MN_vpabsd + 1) -#define MN_vpabsd 0x14ee +#define MN_vpabsd 0x14f9 #define MN_subsd (MN_vfmsubsd + 3) -#define MN_vfmsubsd 0x14f5 -#define MN_vfnmsubsd 0x14fe -#define MN_vsubsd 0x1508 +#define MN_vfmsubsd 0x1500 +#define MN_vfnmsubsd 0x1509 +#define MN_vsubsd 0x1513 #define MN_addsd (MN_vfmaddsd + 3) -#define MN_vfmaddsd 0x150f -#define MN_vfnmaddsd 0x1518 -#define MN_vaddsd 0x1522 +#define MN_vfmaddsd 0x151a +#define MN_vfnmaddsd 0x1523 +#define MN_vaddsd 0x152d #define MN_roundsd (MN_vroundsd + 1) -#define MN_vroundsd 0x1529 +#define MN_vroundsd 0x1534 #define MN_cmpunordsd (MN_vcmpunordsd + 1) -#define MN_vcmpunordsd 0x1532 +#define MN_vcmpunordsd 0x153d #define MN_cmpordsd (MN_vcmpordsd + 1) -#define MN_vcmpordsd 0x153e -#define MN_vreducesd 0x1548 -#define MN_vrangesd 0x1552 -#define MN_vcmpngesd 0x155b -#define MN_vcmpgesd 0x1565 -#define MN_vrndscalesd 0x156e +#define MN_vcmpordsd 0x1549 +#define MN_vreducesd 0x1553 +#define MN_vrangesd 0x155d +#define MN_vcmpngesd 0x1566 +#define MN_vcmpgesd 0x1570 +#define MN_vrndscalesd 0x1579 #define MN_cmpnlesd (MN_vcmpnlesd + 1) -#define MN_vcmpnlesd 0x157a +#define MN_vcmpnlesd 0x1585 #define MN_cmplesd (MN_vcmplesd + 1) -#define MN_vcmplesd 0x1584 -#define MN_vcmpfalsesd 0x158d -#define MN_vcmptruesd 0x1599 -#define MN_vscalefsd 0x15a4 +#define MN_vcmplesd 0x158f +#define MN_vcmpfalsesd 0x1598 +#define MN_vcmptruesd 0x15a4 +#define MN_vscalefsd 0x15af #define MN_comisd (MN_ucomisd + 1) #define MN_ucomisd (MN_vucomisd + 1) -#define MN_vucomisd 0x15ae -#define MN_vcomisd 0x15b7 +#define MN_vucomisd 0x15b9 +#define MN_vcomisd 0x15c2 #define MN_mulsd (MN_vmulsd + 1) -#define MN_vmulsd 0x15bf -#define MN_vfixupimmsd 0x15c6 +#define MN_vmulsd 0x15ca +#define MN_vfixupimmsd 0x15d1 #define MN_minsd (MN_pminsd + 1) #define MN_pminsd (MN_vpminsd + 1) -#define MN_vpminsd 0x15d2 -#define MN_vminsd 0x15da +#define MN_vpminsd 0x15dd +#define MN_vminsd 0x15e5 #define MN_cmpsd (MN_vcmpsd + 1) -#define MN_vcmpsd 0x15e1 -#define MN_vgetexpsd 0x15e8 -#define MN_vcmpunord_qsd 0x15f2 -#define MN_vcmpord_qsd 0x1600 +#define MN_vcmpsd 0x15ec +#define MN_vgetexpsd 0x15f3 +#define MN_vcmpunord_qsd 0x15fd +#define MN_vcmpord_qsd 0x160b #define MN_cmpneqsd (MN_vcmpneqsd + 1) -#define MN_vcmpneqsd 0x160c +#define MN_vcmpneqsd 0x1617 #define MN_cmpeqsd (MN_vcmpeqsd + 1) -#define MN_vcmpeqsd 0x1616 -#define MN_vcmpge_oqsd 0x161f -#define MN_vcmple_oqsd 0x162b -#define MN_vcmpfalse_oqsd 0x1637 -#define MN_vcmpneq_oqsd 0x1646 -#define MN_vcmpeq_oqsd 0x1653 -#define MN_vcmpgt_oqsd 0x165f -#define MN_vcmplt_oqsd 0x166b -#define MN_vcmpnge_uqsd 0x1677 -#define MN_vcmpnle_uqsd 0x1684 -#define MN_vcmptrue_uqsd 0x1691 -#define MN_vcmpneq_uqsd 0x169f -#define MN_vcmpeq_uqsd 0x16ac -#define MN_vcmpngt_uqsd 0x16b8 -#define MN_vcmpnlt_uqsd 0x16c5 -#define MN_vcmpunord_ssd 0x16d2 -#define MN_vcmpord_ssd 0x16e0 -#define MN_vpdpbssd 0x16ec -#define MN_tdpbssd 0x16f5 -#define MN_vpcompressd 0x16fd -#define MN_vcmpge_ossd 0x1709 -#define MN_vcmple_ossd 0x1715 -#define MN_vcmpfalse_ossd 0x1721 -#define MN_vcmpneq_ossd 0x1730 -#define MN_vcmpeq_ossd 0x173d -#define MN_vcmpgt_ossd 0x1749 -#define MN_vcmplt_ossd 0x1755 -#define MN_wrssd 0x1761 -#define MN_vfpclasssd 0x1767 -#define MN_vcmpnge_ussd 0x1772 -#define MN_vcmpnle_ussd 0x177f -#define MN_vcmptrue_ussd 0x178c -#define MN_vcmpneq_ussd 0x179a -#define MN_vcmpeq_ussd 0x17a7 -#define MN_vcmpngt_ussd 0x17b3 -#define MN_vcmpnlt_ussd 0x17c0 -#define MN_wrussd 0x17cd -#define MN_vp4dpwssd 0x17d4 -#define MN_vpdpwssd 0x17de -#define MN_vcmpngtsd 0x17e7 -#define MN_vcmpgtsd 0x17f1 +#define MN_vcmpeqsd 0x1621 +#define MN_vcmpge_oqsd 0x162a +#define MN_vcmple_oqsd 0x1636 +#define MN_vcmpfalse_oqsd 0x1642 +#define MN_vcmpneq_oqsd 0x1651 +#define MN_vcmpeq_oqsd 0x165e +#define MN_vcmpgt_oqsd 0x166a +#define MN_vcmplt_oqsd 0x1676 +#define MN_vcmpnge_uqsd 0x1682 +#define MN_vcmpnle_uqsd 0x168f +#define MN_vcmptrue_uqsd 0x169c +#define MN_vcmpneq_uqsd 0x16aa +#define MN_vcmpeq_uqsd 0x16b7 +#define MN_vcmpngt_uqsd 0x16c3 +#define MN_vcmpnlt_uqsd 0x16d0 +#define MN_vcmpunord_ssd 0x16dd +#define MN_vcmpord_ssd 0x16eb +#define MN_vpdpbssd 0x16f7 +#define MN_tdpbssd 0x1700 +#define MN_vpcompressd 0x1708 +#define MN_vcmpge_ossd 0x1714 +#define MN_vcmple_ossd 0x1720 +#define MN_vcmpfalse_ossd 0x172c +#define MN_vcmpneq_ossd 0x173b +#define MN_vcmpeq_ossd 0x1748 +#define MN_vcmpgt_ossd 0x1754 +#define MN_vcmplt_ossd 0x1760 +#define MN_wrssd 0x176c +#define MN_vfpclasssd 0x1772 +#define MN_vcmpnge_ussd 0x177d +#define MN_vcmpnle_ussd 0x178a +#define MN_vcmptrue_ussd 0x1797 +#define MN_vcmpneq_ussd 0x17a5 +#define MN_vcmpeq_ussd 0x17b2 +#define MN_vcmpngt_ussd 0x17be +#define MN_vcmpnlt_ussd 0x17cb +#define MN_wrussd 0x17d8 +#define MN_vp4dpwssd 0x17df +#define MN_vpdpwssd 0x17e9 +#define MN_vcmpngtsd 0x17f2 +#define MN_vcmpgtsd 0x17fc #define MN_cmpnltsd (MN_vcmpnltsd + 1) -#define MN_vcmpnltsd 0x17fa +#define MN_vcmpnltsd 0x1805 #define MN_cmpltsd (MN_vcmpltsd + 1) -#define MN_vcmpltsd 0x1804 -#define MN_vgetmantsd 0x180d -#define MN_movntsd 0x1818 +#define MN_vcmpltsd 0x180f +#define MN_vgetmantsd 0x1818 +#define MN_movntsd 0x1823 #define MN_sqrtsd (MN_vsqrtsd + 1) -#define MN_vsqrtsd 0x1820 -#define MN_vbroadcastsd 0x1828 -#define MN_vpdpbusd 0x1835 -#define MN_tdpbusd 0x183e -#define MN_vpdpwusd 0x1846 +#define MN_vsqrtsd 0x182b +#define MN_vbroadcastsd 0x1833 +#define MN_vpdpbusd 0x1840 +#define MN_tdpbusd 0x1849 +#define MN_vpdpwusd 0x1851 #define MN_divsd (MN_vdivsd + 1) -#define MN_vdivsd 0x184f +#define MN_vdivsd 0x185a #define MN_movsd (MN_vmovsd + 1) -#define MN_vmovsd 0x1856 +#define MN_vmovsd 0x1861 #define MN_maxsd (MN_pmaxsd + 1) #define MN_pmaxsd (MN_vpmaxsd + 1) -#define MN_vpmaxsd 0x185d -#define MN_vmaxsd 0x1865 -#define MN_vfrczsd 0x186c -#define MN_vp2intersectd 0x1874 -#define MN_vpconflictd 0x1882 -#define MN_vpcomgtd 0x188e +#define MN_vpmaxsd 0x1868 +#define MN_vmaxsd 0x1870 +#define MN_vfrczsd 0x1877 +#define MN_vp2intersectd 0x187f +#define MN_vpconflictd 0x188d +#define MN_vpcomgtd 0x1899 #define MN_pcmpgtd (MN_vpcmpgtd + 1) -#define MN_vpcmpgtd 0x1897 -#define MN_cltd 0x18a0 -#define MN_vpcomltd 0x18a5 -#define MN_vpcmpnltd 0x18ae -#define MN_vpcmpltd 0x18b8 -#define MN_vpopcntd 0x18c1 -#define MN_vplzcntd 0x18ca -#define MN_knotd 0x18d3 -#define MN_vprotd 0x18d9 +#define MN_vpcmpgtd 0x18a2 +#define MN_cltd 0x18ab +#define MN_vpcomltd 0x18b0 +#define MN_vpcmpnltd 0x18b9 +#define MN_vpcmpltd 0x18c3 +#define MN_vpopcntd 0x18cc +#define MN_vplzcntd 0x18d5 +#define MN_knotd 0x18de +#define MN_vprotd 0x18e4 #define MN_std (MN_vpbroadcastd + 9) -#define MN_vpbroadcastd 0x18e0 -#define MN_ktestd 0x18ed -#define MN_kortestd 0x18f4 -#define MN_cwtd 0x18fd -#define MN_vpcomgeud 0x1902 -#define MN_vpcomleud 0x190c -#define MN_vpcmpnleud 0x1916 -#define MN_vpcmpleud 0x1921 -#define MN_vpcomfalseud 0x192b -#define MN_vpcomtrueud 0x1938 -#define MN_vpcomud 0x1944 +#define MN_vpbroadcastd 0x18eb +#define MN_ktestd 0x18f8 +#define MN_kortestd 0x18ff +#define MN_cwtd 0x1908 +#define MN_vpcomgeud 0x190d +#define MN_vpcomleud 0x1917 +#define MN_vpcmpnleud 0x1921 +#define MN_vpcmpleud 0x192c +#define MN_vpcomfalseud 0x1936 +#define MN_vpcomtrueud 0x1943 +#define MN_vpcomud 0x194f #define MN_pminud (MN_vpminud + 1) -#define MN_vpminud 0x194c -#define MN_vpcmpud 0x1954 -#define MN_vpcomequd 0x195c -#define MN_vpcomnequd 0x1966 -#define MN_vpcmpnequd 0x1971 -#define MN_vpcmpequd 0x197c -#define MN_vpdpbsud 0x1986 -#define MN_tdpbsud 0x198f -#define MN_vpdpwsud 0x1997 -#define MN_vpcomgtud 0x19a0 -#define MN_vpcomltud 0x19aa -#define MN_vpcmpnltud 0x19b4 -#define MN_vpcmpltud 0x19bf -#define MN_vpdpbuud 0x19c9 -#define MN_tdpbuud 0x19d2 -#define MN_vpdpwuud 0x19da +#define MN_vpminud 0x1957 +#define MN_vpcmpud 0x195f +#define MN_vpcomequd 0x1967 +#define MN_vpcomnequd 0x1971 +#define MN_vpcmpnequd 0x197c +#define MN_vpcmpequd 0x1987 +#define MN_vpdpbsud 0x1991 +#define MN_tdpbsud 0x199a +#define MN_vpdpwsud 0x19a2 +#define MN_vpcomgtud 0x19ab +#define MN_vpcomltud 0x19b5 +#define MN_vpcmpnltud 0x19bf +#define MN_vpcmpltud 0x19ca +#define MN_vpdpbuud 0x19d4 +#define MN_tdpbuud 0x19dd +#define MN_vpdpwuud 0x19e5 #define MN_pmaxud (MN_vpmaxud + 1) -#define MN_vpmaxud 0x19e3 -#define MN_vpsravd 0x19eb -#define MN_vpshldvd 0x19f3 -#define MN_vpshrdvd 0x19fc -#define MN_vpsllvd 0x1a05 -#define MN_vprolvd 0x1a0d -#define MN_vpsrlvd 0x1a15 +#define MN_vpmaxud 0x19ee +#define MN_vpsravd 0x19f6 +#define MN_vpshldvd 0x19fe +#define MN_vpshrdvd 0x1a07 +#define MN_vpsllvd 0x1a10 +#define MN_vprolvd 0x1a18 +#define MN_vpsrlvd 0x1a20 #define MN_invd (MN_wbinvd + 2) -#define MN_wbinvd 0x1a1d -#define MN_wbnoinvd 0x1a24 +#define MN_wbinvd 0x1a28 +#define MN_wbnoinvd 0x1a2f #define MN_movd (MN_kmovd + 1) #define MN_kmovd (MN_vpmaskmovd + 5) -#define MN_vpmaskmovd 0x1a2d -#define MN_vmovd 0x1a38 -#define MN_vprorvd 0x1a3e -#define MN_vphsubwd 0x1a46 -#define MN_cwd 0x1a4f -#define MN_vphaddwd 0x1a53 +#define MN_vpmaskmovd 0x1a38 +#define MN_vmovd 0x1a43 +#define MN_vprorvd 0x1a49 +#define MN_vphsubwd 0x1a51 +#define MN_cwd 0x1a5a +#define MN_vphaddwd 0x1a5e #define MN_pmaddwd (MN_vpmaddwd + 1) -#define MN_vpmaddwd 0x1a5c +#define MN_vpmaddwd 0x1a67 #define MN_punpckhwd (MN_vpunpckhwd + 1) -#define MN_vpunpckhwd 0x1a65 -#define MN_kunpckwd 0x1a70 +#define MN_vpunpckhwd 0x1a70 +#define MN_kunpckwd 0x1a7b #define MN_punpcklwd (MN_vpunpcklwd + 1) -#define MN_vpunpcklwd 0x1a79 -#define MN_vpmacswd 0x1a84 -#define MN_vpmadcswd 0x1a8d -#define MN_vpmacsswd 0x1a97 -#define MN_vpmadcsswd 0x1aa1 -#define MN_vphadduwd 0x1aac +#define MN_vpunpcklwd 0x1a84 +#define MN_vpmacswd 0x1a8f +#define MN_vpmadcswd 0x1a98 +#define MN_vpmacsswd 0x1aa2 +#define MN_vpmadcsswd 0x1aac +#define MN_vphadduwd 0x1ab7 #define MN_pmovsxwd (MN_vpmovsxwd + 1) -#define MN_vpmovsxwd 0x1ab6 +#define MN_vpmovsxwd 0x1ac1 #define MN_pmovzxwd (MN_vpmovzxwd + 1) -#define MN_vpmovzxwd 0x1ac0 -#define MN_movsxd 0x1aca -#define MN_fldl2e 0x1ad1 -#define MN_jae 0x1ad8 -#define MN_jnae 0x1adc -#define MN_setnae 0x1ae1 +#define MN_vpmovzxwd 0x1acb +#define MN_movsxd 0x1ad5 +#define MN_fldl2e 0x1adc +#define MN_jae 0x1ae3 +#define MN_jnae 0x1ae7 +#define MN_setnae 0x1aec #define MN_cmovnae (MN_fcmovnae + 1) -#define MN_fcmovnae 0x1ae8 -#define MN_setae 0x1af1 +#define MN_fcmovnae 0x1af3 +#define MN_setae 0x1afc #define MN_cmovae (MN_fcmovae + 1) -#define MN_fcmovae 0x1af7 -#define MN_jbe 0x1aff -#define MN_jnbe 0x1b03 -#define MN_setnbe 0x1b08 +#define MN_fcmovae 0x1b02 +#define MN_jbe 0x1b0a +#define MN_jnbe 0x1b0e +#define MN_setnbe 0x1b13 #define MN_cmovnbe (MN_fcmovnbe + 1) -#define MN_fcmovnbe 0x1b0f -#define MN_setbe 0x1b18 +#define MN_fcmovnbe 0x1b1a +#define MN_setbe 0x1b23 #define MN_movbe (MN_cmovbe + 1) #define MN_cmovbe (MN_fcmovbe + 1) -#define MN_fcmovbe 0x1b1e -#define MN_lfence 0x1b26 -#define MN_mfence 0x1b2d -#define MN_sfence 0x1b34 -#define MN_cwde 0x1b3b -#define MN_ffree 0x1b40 -#define MN_jge 0x1b46 -#define MN_jnge 0x1b4a -#define MN_setnge 0x1b4f -#define MN_cmovnge 0x1b56 -#define MN_pfcmpge 0x1b5e -#define MN_setge 0x1b66 -#define MN_cmovge 0x1b6c -#define MN_je 0x1b73 -#define MN_fscale 0x1b76 -#define MN_jle 0x1b7d -#define MN_jnle 0x1b81 -#define MN_setnle 0x1b86 -#define MN_cmovnle 0x1b8d -#define MN_setle 0x1b95 -#define MN_cmovle 0x1b9b -#define MN_vmresume 0x1ba2 -#define MN_jne 0x1bab -#define MN_repne 0x1baf -#define MN_loopne 0x1bb5 -#define MN_setne 0x1bbc +#define MN_fcmovbe 0x1b29 +#define MN_lfence 0x1b31 +#define MN_mfence 0x1b38 +#define MN_sfence 0x1b3f +#define MN_cwde 0x1b46 +#define MN_ffree 0x1b4b +#define MN_jge 0x1b51 +#define MN_jnge 0x1b55 +#define MN_setnge 0x1b5a +#define MN_cmovnge 0x1b61 +#define MN_pfcmpge 0x1b69 +#define MN_setge 0x1b71 +#define MN_cmovge 0x1b77 +#define MN_je 0x1b7e +#define MN_fscale 0x1b81 +#define MN_jle 0x1b88 +#define MN_jnle 0x1b8c +#define MN_setnle 0x1b91 +#define MN_cmovnle 0x1b98 +#define MN_setle 0x1ba0 +#define MN_cmovle 0x1ba6 +#define MN_vmresume 0x1bad +#define MN_jne 0x1bb6 +#define MN_repne 0x1bba +#define MN_loopne 0x1bc0 +#define MN_setne 0x1bc7 #define MN_cmovne (MN_fcmovne + 1) -#define MN_fcmovne 0x1bc2 -#define MN_repe 0x1bca -#define MN_jpe 0x1bcf -#define MN_loope 0x1bd3 -#define MN_setpe 0x1bd9 -#define MN_cmovpe 0x1bdf -#define MN_cdqe 0x1be6 -#define MN_xacquire 0x1beb -#define MN_xstore 0x1bf4 -#define MN_rdfsbase 0x1bfb -#define MN_wrfsbase 0x1c04 -#define MN_rdgsbase 0x1c0d -#define MN_wrgsbase 0x1c16 -#define MN_tilerelease 0x1c1f -#define MN_xrelease 0x1c2b +#define MN_fcmovne 0x1bcd +#define MN_repe 0x1bd5 +#define MN_jpe 0x1bda +#define MN_loope 0x1bde +#define MN_setpe 0x1be4 +#define MN_cmovpe 0x1bea +#define MN_cdqe 0x1bf1 +#define MN_xacquire 0x1bf6 +#define MN_xstore 0x1bff +#define MN_rdfsbase 0x1c06 +#define MN_wrfsbase 0x1c0f +#define MN_rdgsbase 0x1c18 +#define MN_wrgsbase 0x1c21 +#define MN_tilerelease 0x1c2a +#define MN_xrelease 0x1c36 #define MN_pause (MN_tpause + 1) -#define MN_tpause 0x1c34 -#define MN_pvalidate 0x1c3b -#define MN_rmpupdate 0x1c45 -#define MN_sete 0x1c4f -#define MN_vmwrite 0x1c54 -#define MN_ptwrite 0x1c5c -#define MN_cldemote 0x1c64 -#define MN_sha1nexte 0x1c6d -#define MN_leave 0x1c77 -#define MN_fsave 0x1c7d -#define MN_vmsave 0x1c83 -#define MN_fnsave 0x1c8a +#define MN_tpause 0x1c3f +#define MN_pvalidate 0x1c46 +#define MN_rmpupdate 0x1c50 +#define MN_sete 0x1c5a +#define MN_vmwrite 0x1c5f +#define MN_ptwrite 0x1c67 +#define MN_cldemote 0x1c6f +#define MN_sha1nexte 0x1c78 +#define MN_leave 0x1c82 +#define MN_fsave 0x1c88 +#define MN_vmsave 0x1c8e +#define MN_fnsave 0x1c95 #define MN_xsave (MN_fxsave + 1) -#define MN_fxsave 0x1c91 +#define MN_fxsave 0x1c9c #define MN_cmove (MN_fcmove + 1) -#define MN_fcmove 0x1c98 -#define MN_serialize 0x1c9f -#define MN_vmxoff 0x1ca9 -#define MN_lahf 0x1cb0 -#define MN_sahf 0x1cb5 -#define MN_pushf 0x1cba -#define MN_popf 0x1cc0 -#define MN_bsf 0x1cc5 -#define MN_retf 0x1cc9 -#define MN_neg 0x1cce -#define MN_ldtilecfg 0x1cd2 -#define MN_sttilecfg 0x1cdc +#define MN_fcmove 0x1ca3 +#define MN_serialize 0x1caa +#define MN_vmxoff 0x1cb4 +#define MN_lahf 0x1cbb +#define MN_sahf 0x1cc0 +#define MN_pushf 0x1cc5 +#define MN_popf 0x1ccb +#define MN_bsf 0x1cd0 +#define MN_retf 0x1cd4 +#define MN_neg 0x1cd9 +#define MN_ldtilecfg 0x1cdd +#define MN_sttilecfg 0x1ce7 #define MN_xchg (MN_cmpxchg + 3) -#define MN_cmpxchg 0x1ce6 -#define MN_pconfig 0x1cee -#define MN_jg 0x1cf6 -#define MN_jng 0x1cf9 -#define MN_xstore_rng 0x1cfd -#define MN_xstorerng 0x1d08 -#define MN_setng 0x1d12 -#define MN_cmovng 0x1d18 -#define MN_invlpg 0x1d1f -#define MN_setg 0x1d26 -#define MN_cmovg 0x1d2b -#define MN_vmlaunch 0x1d31 -#define MN_prefetch 0x1d3a -#define MN_fxch 0x1d43 -#define MN_vfmaddsub231ph 0x1d48 -#define MN_vfmsub231ph 0x1d57 -#define MN_vfnmsub231ph 0x1d63 -#define MN_vfmsubadd231ph 0x1d70 -#define MN_vfmadd231ph 0x1d7f -#define MN_vfnmadd231ph 0x1d8b -#define MN_vfmaddsub132ph 0x1d98 -#define MN_vfmsub132ph 0x1da7 -#define MN_vfnmsub132ph 0x1db3 -#define MN_vfmsubadd132ph 0x1dc0 -#define MN_vfmadd132ph 0x1dcf -#define MN_vfnmadd132ph 0x1ddb -#define MN_vcvtpd2ph 0x1de8 -#define MN_vcvtdq2ph 0x1df2 -#define MN_vcvtudq2ph 0x1dfc -#define MN_vcvtqq2ph 0x1e07 -#define MN_vcvtuqq2ph 0x1e11 -#define MN_vcvtps2ph 0x1e1c -#define MN_vcvtw2ph 0x1e26 -#define MN_vcvtuw2ph 0x1e2f -#define MN_vfmaddsub213ph 0x1e39 -#define MN_vfmsub213ph 0x1e48 -#define MN_vfnmsub213ph 0x1e54 -#define MN_vfmsubadd213ph 0x1e61 -#define MN_vfmadd213ph 0x1e70 -#define MN_vfnmadd213ph 0x1e7c -#define MN_vsubph 0x1e89 -#define MN_vfcmaddcph 0x1e90 -#define MN_vfmaddcph 0x1e9b -#define MN_vfcmulcph 0x1ea5 -#define MN_vfmulcph 0x1eaf -#define MN_vaddph 0x1eb8 -#define MN_vcmpunordph 0x1ebf -#define MN_vcmpordph 0x1ecb -#define MN_vreduceph 0x1ed5 -#define MN_vcmpngeph 0x1edf -#define MN_vcmpgeph 0x1ee9 -#define MN_vrndscaleph 0x1ef2 -#define MN_vcmpnleph 0x1efe -#define MN_vcmpleph 0x1f08 -#define MN_vcmpfalseph 0x1f11 -#define MN_vcmptrueph 0x1f1d -#define MN_vscalefph 0x1f28 -#define MN_vmulph 0x1f32 -#define MN_vminph 0x1f39 -#define MN_vrcpph 0x1f40 -#define MN_vcmpph 0x1f47 -#define MN_vgetexpph 0x1f4e -#define MN_vcmpunord_qph 0x1f58 -#define MN_vcmpord_qph 0x1f66 -#define MN_vcmpneqph 0x1f72 -#define MN_vcmpeqph 0x1f7c -#define MN_vcmpge_oqph 0x1f85 -#define MN_vcmple_oqph 0x1f91 -#define MN_vcmpfalse_oqph 0x1f9d -#define MN_vcmpneq_oqph 0x1fac -#define MN_vcmpeq_oqph 0x1fb9 -#define MN_vcmpgt_oqph 0x1fc5 -#define MN_vcmplt_oqph 0x1fd1 -#define MN_vcmpnge_uqph 0x1fdd -#define MN_vcmpnle_uqph 0x1fea -#define MN_vcmptrue_uqph 0x1ff7 -#define MN_vcmpneq_uqph 0x2005 -#define MN_vcmpeq_uqph 0x2012 -#define MN_vcmpngt_uqph 0x201e -#define MN_vcmpnlt_uqph 0x202b -#define MN_vcmpunord_sph 0x2038 -#define MN_vcmpord_sph 0x2046 -#define MN_vcmpge_osph 0x2052 -#define MN_vcmple_osph 0x205e -#define MN_vcmpfalse_osph 0x206a -#define MN_vcmpneq_osph 0x2079 -#define MN_vcmpeq_osph 0x2086 -#define MN_vcmpgt_osph 0x2092 -#define MN_vcmplt_osph 0x209e -#define MN_vfpclassph 0x20aa -#define MN_vcmpnge_usph 0x20b5 -#define MN_vcmpnle_usph 0x20c2 -#define MN_vcmptrue_usph 0x20cf -#define MN_vcmpneq_usph 0x20dd -#define MN_vcmpeq_usph 0x20ea -#define MN_vcmpngt_usph 0x20f6 -#define MN_vcmpnlt_usph 0x2103 -#define MN_vcmpngtph 0x2110 -#define MN_vcmpgtph 0x211a -#define MN_vcmpnltph 0x2123 -#define MN_vcmpltph 0x212d -#define MN_vgetmantph 0x2136 -#define MN_vrsqrtph 0x2141 -#define MN_vsqrtph 0x214a -#define MN_vdivph 0x2152 -#define MN_vmaxph 0x2159 -#define MN_vpmacsdqh 0x2160 -#define MN_vpmacssdqh 0x216a -#define MN_vfmsub231sh 0x2175 -#define MN_vfnmsub231sh 0x2181 -#define MN_vfmadd231sh 0x218e -#define MN_vfnmadd231sh 0x219a -#define MN_vfmsub132sh 0x21a7 -#define MN_vfnmsub132sh 0x21b3 -#define MN_vfmadd132sh 0x21c0 -#define MN_vfnmadd132sh 0x21cc -#define MN_vcvtsd2sh 0x21d9 -#define MN_vcvtsi2sh 0x21e3 -#define MN_vcvtusi2sh 0x21ed -#define MN_vcvtss2sh 0x21f8 -#define MN_vfmsub213sh 0x2202 -#define MN_vfnmsub213sh 0x220e -#define MN_vfmadd213sh 0x221b -#define MN_vfnmadd213sh 0x2227 -#define MN_psmash 0x2234 -#define MN_vsubsh 0x223b -#define MN_vfcmaddcsh 0x2242 -#define MN_vfmaddcsh 0x224d -#define MN_vfcmulcsh 0x2257 -#define MN_vfmulcsh 0x2261 -#define MN_vaddsh 0x226a -#define MN_vcmpunordsh 0x2271 -#define MN_vcmpordsh 0x227d -#define MN_vreducesh 0x2287 -#define MN_vcmpngesh 0x2291 -#define MN_vcmpgesh 0x229b -#define MN_vrndscalesh 0x22a4 -#define MN_vcmpnlesh 0x22b0 -#define MN_vcmplesh 0x22ba -#define MN_vcmpfalsesh 0x22c3 -#define MN_vcmptruesh 0x22cf -#define MN_vscalefsh 0x22da -#define MN_vucomish 0x22e4 -#define MN_vcomish 0x22ed -#define MN_vmulsh 0x22f5 -#define MN_vminsh 0x22fc -#define MN_vrcpsh 0x2303 -#define MN_vcmpsh 0x230a -#define MN_vgetexpsh 0x2311 -#define MN_vcmpunord_qsh 0x231b -#define MN_vcmpord_qsh 0x2329 -#define MN_vcmpneqsh 0x2335 -#define MN_vcmpeqsh 0x233f -#define MN_vcmpge_oqsh 0x2348 -#define MN_vcmple_oqsh 0x2354 -#define MN_vcmpfalse_oqsh 0x2360 -#define MN_vcmpneq_oqsh 0x236f -#define MN_vcmpeq_oqsh 0x237c -#define MN_vcmpgt_oqsh 0x2388 -#define MN_vcmplt_oqsh 0x2394 -#define MN_vcmpnge_uqsh 0x23a0 -#define MN_vcmpnle_uqsh 0x23ad -#define MN_vcmptrue_uqsh 0x23ba -#define MN_vcmpneq_uqsh 0x23c8 -#define MN_vcmpeq_uqsh 0x23d5 -#define MN_vcmpngt_uqsh 0x23e1 -#define MN_vcmpnlt_uqsh 0x23ee -#define MN_vcmpunord_ssh 0x23fb -#define MN_vcmpord_ssh 0x2409 -#define MN_vcmpge_ossh 0x2415 -#define MN_vcmple_ossh 0x2421 -#define MN_vcmpfalse_ossh 0x242d -#define MN_vcmpneq_ossh 0x243c -#define MN_vcmpeq_ossh 0x2449 -#define MN_vcmpgt_ossh 0x2455 -#define MN_vcmplt_ossh 0x2461 -#define MN_vfpclasssh 0x246d -#define MN_vcmpnge_ussh 0x2478 -#define MN_vcmpnle_ussh 0x2485 -#define MN_vcmptrue_ussh 0x2492 -#define MN_vcmpneq_ussh 0x24a0 -#define MN_vcmpeq_ussh 0x24ad -#define MN_vcmpngt_ussh 0x24b9 -#define MN_vcmpnlt_ussh 0x24c6 -#define MN_vcmpngtsh 0x24d3 -#define MN_vcmpgtsh 0x24dd -#define MN_vcmpnltsh 0x24e6 -#define MN_vcmpltsh 0x24f0 -#define MN_vgetmantsh 0x24f9 -#define MN_vrsqrtsh 0x2504 -#define MN_vsqrtsh 0x250d -#define MN_clflush 0x2515 -#define MN_push 0x251d -#define MN_vdivsh 0x2522 -#define MN_vmovsh 0x2529 -#define MN_vmaxsh 0x2530 -#define MN_blci 0x2537 -#define MN_clgi 0x253c -#define MN_stgi 0x2541 -#define MN_bzhi 0x2546 -#define MN_cli 0x254b -#define MN_fcomi 0x254f -#define MN_fucomi 0x2555 -#define MN_feni 0x255c -#define MN_fneni 0x2561 -#define MN_cvttpd2pi 0x2567 -#define MN_cvtpd2pi 0x2571 -#define MN_cvttps2pi 0x257a -#define MN_cvtps2pi 0x2584 -#define MN_fldpi 0x258d -#define MN_senduipi 0x2593 -#define MN_fcompi 0x259c -#define MN_fucompi 0x25a3 -#define MN_movdiri 0x25ab +#define MN_cmpxchg 0x1cf1 +#define MN_pconfig 0x1cf9 +#define MN_jg 0x1d01 +#define MN_jng 0x1d04 +#define MN_xstore_rng 0x1d08 +#define MN_xstorerng 0x1d13 +#define MN_setng 0x1d1d +#define MN_cmovng 0x1d23 +#define MN_invlpg 0x1d2a +#define MN_setg 0x1d31 +#define MN_cmovg 0x1d36 +#define MN_vmlaunch 0x1d3c +#define MN_prefetch 0x1d45 +#define MN_fxch 0x1d4e +#define MN_vfmaddsub231ph 0x1d53 +#define MN_vfmsub231ph 0x1d62 +#define MN_vfnmsub231ph 0x1d6e +#define MN_vfmsubadd231ph 0x1d7b +#define MN_vfmadd231ph 0x1d8a +#define MN_vfnmadd231ph 0x1d96 +#define MN_vfmaddsub132ph 0x1da3 +#define MN_vfmsub132ph 0x1db2 +#define MN_vfnmsub132ph 0x1dbe +#define MN_vfmsubadd132ph 0x1dcb +#define MN_vfmadd132ph 0x1dda +#define MN_vfnmadd132ph 0x1de6 +#define MN_vcvtpd2ph 0x1df3 +#define MN_vcvtdq2ph 0x1dfd +#define MN_vcvtudq2ph 0x1e07 +#define MN_vcvtqq2ph 0x1e12 +#define MN_vcvtuqq2ph 0x1e1c +#define MN_vcvtps2ph 0x1e27 +#define MN_vcvtw2ph 0x1e31 +#define MN_vcvtuw2ph 0x1e3a +#define MN_vfmaddsub213ph 0x1e44 +#define MN_vfmsub213ph 0x1e53 +#define MN_vfnmsub213ph 0x1e5f +#define MN_vfmsubadd213ph 0x1e6c +#define MN_vfmadd213ph 0x1e7b +#define MN_vfnmadd213ph 0x1e87 +#define MN_vsubph 0x1e94 +#define MN_vfcmaddcph 0x1e9b +#define MN_vfmaddcph 0x1ea6 +#define MN_vfcmulcph 0x1eb0 +#define MN_vfmulcph 0x1eba +#define MN_vaddph 0x1ec3 +#define MN_vcmpunordph 0x1eca +#define MN_vcmpordph 0x1ed6 +#define MN_vreduceph 0x1ee0 +#define MN_vcmpngeph 0x1eea +#define MN_vcmpgeph 0x1ef4 +#define MN_vrndscaleph 0x1efd +#define MN_vcmpnleph 0x1f09 +#define MN_vcmpleph 0x1f13 +#define MN_vcmpfalseph 0x1f1c +#define MN_vcmptrueph 0x1f28 +#define MN_vscalefph 0x1f33 +#define MN_vmulph 0x1f3d +#define MN_vminph 0x1f44 +#define MN_vrcpph 0x1f4b +#define MN_vcmpph 0x1f52 +#define MN_vgetexpph 0x1f59 +#define MN_vcmpunord_qph 0x1f63 +#define MN_vcmpord_qph 0x1f71 +#define MN_vcmpneqph 0x1f7d +#define MN_vcmpeqph 0x1f87 +#define MN_vcmpge_oqph 0x1f90 +#define MN_vcmple_oqph 0x1f9c +#define MN_vcmpfalse_oqph 0x1fa8 +#define MN_vcmpneq_oqph 0x1fb7 +#define MN_vcmpeq_oqph 0x1fc4 +#define MN_vcmpgt_oqph 0x1fd0 +#define MN_vcmplt_oqph 0x1fdc +#define MN_vcmpnge_uqph 0x1fe8 +#define MN_vcmpnle_uqph 0x1ff5 +#define MN_vcmptrue_uqph 0x2002 +#define MN_vcmpneq_uqph 0x2010 +#define MN_vcmpeq_uqph 0x201d +#define MN_vcmpngt_uqph 0x2029 +#define MN_vcmpnlt_uqph 0x2036 +#define MN_vcmpunord_sph 0x2043 +#define MN_vcmpord_sph 0x2051 +#define MN_vcmpge_osph 0x205d +#define MN_vcmple_osph 0x2069 +#define MN_vcmpfalse_osph 0x2075 +#define MN_vcmpneq_osph 0x2084 +#define MN_vcmpeq_osph 0x2091 +#define MN_vcmpgt_osph 0x209d +#define MN_vcmplt_osph 0x20a9 +#define MN_vfpclassph 0x20b5 +#define MN_vcmpnge_usph 0x20c0 +#define MN_vcmpnle_usph 0x20cd +#define MN_vcmptrue_usph 0x20da +#define MN_vcmpneq_usph 0x20e8 +#define MN_vcmpeq_usph 0x20f5 +#define MN_vcmpngt_usph 0x2101 +#define MN_vcmpnlt_usph 0x210e +#define MN_vcmpngtph 0x211b +#define MN_vcmpgtph 0x2125 +#define MN_vcmpnltph 0x212e +#define MN_vcmpltph 0x2138 +#define MN_vgetmantph 0x2141 +#define MN_vrsqrtph 0x214c +#define MN_vsqrtph 0x2155 +#define MN_vdivph 0x215d +#define MN_vmaxph 0x2164 +#define MN_vpmacsdqh 0x216b +#define MN_vpmacssdqh 0x2175 +#define MN_vfmsub231sh 0x2180 +#define MN_vfnmsub231sh 0x218c +#define MN_vfmadd231sh 0x2199 +#define MN_vfnmadd231sh 0x21a5 +#define MN_vfmsub132sh 0x21b2 +#define MN_vfnmsub132sh 0x21be +#define MN_vfmadd132sh 0x21cb +#define MN_vfnmadd132sh 0x21d7 +#define MN_vcvtsd2sh 0x21e4 +#define MN_vcvtsi2sh 0x21ee +#define MN_vcvtusi2sh 0x21f8 +#define MN_vcvtss2sh 0x2203 +#define MN_vfmsub213sh 0x220d +#define MN_vfnmsub213sh 0x2219 +#define MN_vfmadd213sh 0x2226 +#define MN_vfnmadd213sh 0x2232 +#define MN_psmash 0x223f +#define MN_vsubsh 0x2246 +#define MN_vfcmaddcsh 0x224d +#define MN_vfmaddcsh 0x2258 +#define MN_vfcmulcsh 0x2262 +#define MN_vfmulcsh 0x226c +#define MN_vaddsh 0x2275 +#define MN_vcmpunordsh 0x227c +#define MN_vcmpordsh 0x2288 +#define MN_vreducesh 0x2292 +#define MN_vcmpngesh 0x229c +#define MN_vcmpgesh 0x22a6 +#define MN_vrndscalesh 0x22af +#define MN_vcmpnlesh 0x22bb +#define MN_vcmplesh 0x22c5 +#define MN_vcmpfalsesh 0x22ce +#define MN_vcmptruesh 0x22da +#define MN_vscalefsh 0x22e5 +#define MN_vucomish 0x22ef +#define MN_vcomish 0x22f8 +#define MN_vmulsh 0x2300 +#define MN_vminsh 0x2307 +#define MN_vrcpsh 0x230e +#define MN_vcmpsh 0x2315 +#define MN_vgetexpsh 0x231c +#define MN_vcmpunord_qsh 0x2326 +#define MN_vcmpord_qsh 0x2334 +#define MN_vcmpneqsh 0x2340 +#define MN_vcmpeqsh 0x234a +#define MN_vcmpge_oqsh 0x2353 +#define MN_vcmple_oqsh 0x235f +#define MN_vcmpfalse_oqsh 0x236b +#define MN_vcmpneq_oqsh 0x237a +#define MN_vcmpeq_oqsh 0x2387 +#define MN_vcmpgt_oqsh 0x2393 +#define MN_vcmplt_oqsh 0x239f +#define MN_vcmpnge_uqsh 0x23ab +#define MN_vcmpnle_uqsh 0x23b8 +#define MN_vcmptrue_uqsh 0x23c5 +#define MN_vcmpneq_uqsh 0x23d3 +#define MN_vcmpeq_uqsh 0x23e0 +#define MN_vcmpngt_uqsh 0x23ec +#define MN_vcmpnlt_uqsh 0x23f9 +#define MN_vcmpunord_ssh 0x2406 +#define MN_vcmpord_ssh 0x2414 +#define MN_vcmpge_ossh 0x2420 +#define MN_vcmple_ossh 0x242c +#define MN_vcmpfalse_ossh 0x2438 +#define MN_vcmpneq_ossh 0x2447 +#define MN_vcmpeq_ossh 0x2454 +#define MN_vcmpgt_ossh 0x2460 +#define MN_vcmplt_ossh 0x246c +#define MN_vfpclasssh 0x2478 +#define MN_vcmpnge_ussh 0x2483 +#define MN_vcmpnle_ussh 0x2490 +#define MN_vcmptrue_ussh 0x249d +#define MN_vcmpneq_ussh 0x24ab +#define MN_vcmpeq_ussh 0x24b8 +#define MN_vcmpngt_ussh 0x24c4 +#define MN_vcmpnlt_ussh 0x24d1 +#define MN_vcmpngtsh 0x24de +#define MN_vcmpgtsh 0x24e8 +#define MN_vcmpnltsh 0x24f1 +#define MN_vcmpltsh 0x24fb +#define MN_vgetmantsh 0x2504 +#define MN_vrsqrtsh 0x250f +#define MN_vsqrtsh 0x2518 +#define MN_clflush 0x2520 +#define MN_push 0x2528 +#define MN_vdivsh 0x252d +#define MN_vmovsh 0x2534 +#define MN_vmaxsh 0x253b +#define MN_blci 0x2542 +#define MN_clgi 0x2547 +#define MN_stgi 0x254c +#define MN_bzhi 0x2551 +#define MN_cli 0x2556 +#define MN_fcomi 0x255a +#define MN_fucomi 0x2560 +#define MN_feni 0x2567 +#define MN_fneni 0x256c +#define MN_cvttpd2pi 0x2572 +#define MN_cvtpd2pi 0x257c +#define MN_cvttps2pi 0x2585 +#define MN_cvtps2pi 0x258f +#define MN_fldpi 0x2598 +#define MN_senduipi 0x259e +#define MN_fcompi 0x25a7 +#define MN_fucompi 0x25ae +#define MN_movdiri 0x25b6 #define MN_pcmpestri (MN_vpcmpestri + 1) -#define MN_vpcmpestri 0x25b3 +#define MN_vpcmpestri 0x25be #define MN_pcmpistri (MN_vpcmpistri + 1) -#define MN_vpcmpistri 0x25be +#define MN_vpcmpistri 0x25c9 #define MN_cvttsd2si (MN_vcvttsd2si + 1) -#define MN_vcvttsd2si 0x25c9 +#define MN_vcvttsd2si 0x25d4 #define MN_cvtsd2si (MN_vcvtsd2si + 1) -#define MN_vcvtsd2si 0x25d4 -#define MN_vcvttsh2si 0x25de -#define MN_vcvtsh2si 0x25e9 +#define MN_vcvtsd2si 0x25df +#define MN_vcvttsh2si 0x25e9 +#define MN_vcvtsh2si 0x25f4 #define MN_cvttss2si (MN_vcvttss2si + 1) -#define MN_vcvttss2si 0x25f3 +#define MN_vcvttss2si 0x25fe #define MN_cvtss2si (MN_vcvtss2si + 1) -#define MN_vcvtss2si 0x25fe -#define MN_fdisi 0x2608 -#define MN_fndisi 0x260e -#define MN_blsi 0x2615 -#define MN_vcvttsd2usi 0x261a -#define MN_vcvtsd2usi 0x2626 -#define MN_vcvttsh2usi 0x2631 -#define MN_vcvtsh2usi 0x263d -#define MN_vcvttss2usi 0x2648 -#define MN_vcvtss2usi 0x2654 -#define MN_movnti 0x265f -#define MN_sti 0x2666 -#define MN_clui 0x266a +#define MN_vcvtss2si 0x2609 +#define MN_fdisi 0x2613 +#define MN_fndisi 0x2619 +#define MN_blsi 0x2620 +#define MN_vcvttsd2usi 0x2625 +#define MN_vcvtsd2usi 0x2631 +#define MN_vcvttsh2usi 0x263c +#define MN_vcvtsh2usi 0x2648 +#define MN_vcvttss2usi 0x2653 +#define MN_vcvtss2usi 0x265f +#define MN_movnti 0x266a +#define MN_sti 0x2671 +#define MN_clui 0x2675 #define MN_stui (MN_testui + 2) -#define MN_testui 0x266f -#define MN_notrack 0x2676 -#define MN_lock 0x267e -#define MN_bndmk 0x2683 -#define MN_xresldtrk 0x2689 -#define MN_xsusldtrk 0x2693 -#define MN_blcmsk 0x269d -#define MN_blsmsk 0x26a4 -#define MN_tzmsk 0x26ab -#define MN_sal 0x26b1 -#define MN_lwpval 0x26b5 -#define MN_bndcl 0x26bc -#define MN_rcl 0x26c2 -#define MN_shl 0x26c6 -#define MN_jl 0x26ca -#define MN_aesdec256kl 0x26cd -#define MN_aesenc256kl 0x26d9 -#define MN_aesdecwide256kl 0x26e5 -#define MN_aesencwide256kl 0x26f5 -#define MN_aesdec128kl 0x2705 -#define MN_aesenc128kl 0x2711 -#define MN_aesdecwide128kl 0x271d -#define MN_aesencwide128kl 0x272d +#define MN_testui 0x267a +#define MN_notrack 0x2681 +#define MN_lock 0x2689 +#define MN_bndmk 0x268e +#define MN_xresldtrk 0x2694 +#define MN_xsusldtrk 0x269e +#define MN_blcmsk 0x26a8 +#define MN_blsmsk 0x26af +#define MN_tzmsk 0x26b6 +#define MN_sal 0x26bc +#define MN_lwpval 0x26c0 +#define MN_bndcl 0x26c7 +#define MN_rcl 0x26cd +#define MN_shl 0x26d1 +#define MN_jl 0x26d5 +#define MN_aesdec256kl 0x26d8 +#define MN_aesenc256kl 0x26e4 +#define MN_aesdecwide256kl 0x26f0 +#define MN_aesencwide256kl 0x2700 +#define MN_aesdec128kl 0x2710 +#define MN_aesenc128kl 0x271c +#define MN_aesdecwide128kl 0x2728 +#define MN_aesencwide128kl 0x2738 #define MN_call (MN_tdcall + 2) -#define MN_tdcall 0x273d -#define MN_lcall 0x2744 -#define MN_seamcall 0x274a -#define MN_vmmcall 0x2753 -#define MN_vmcall 0x275b -#define MN_syscall 0x2762 -#define MN_vzeroall 0x276a -#define MN_fildll 0x2773 -#define MN_blcfill 0x277a -#define MN_blsfill 0x2782 -#define MN_fistpll 0x278a -#define MN_fisttpll 0x2792 -#define MN_jnl 0x279b -#define MN_setnl 0x279f -#define MN_cmovnl 0x27a5 -#define MN_rol 0x27ac -#define MN_arpl 0x27b0 -#define MN_vpmacsdql 0x27b5 -#define MN_vpmacssdql 0x27bf -#define MN_lsl 0x27ca -#define MN_movsl 0x27ce -#define MN_setl 0x27d4 -#define MN_cwtl 0x27d9 +#define MN_tdcall 0x2748 +#define MN_lcall 0x274f +#define MN_seamcall 0x2755 +#define MN_vmmcall 0x275e +#define MN_vmcall 0x2766 +#define MN_syscall 0x276d +#define MN_vzeroall 0x2775 +#define MN_fildll 0x277e +#define MN_blcfill 0x2785 +#define MN_blsfill 0x278d +#define MN_fistpll 0x2795 +#define MN_fisttpll 0x279d +#define MN_jnl 0x27a6 +#define MN_setnl 0x27aa +#define MN_cmovnl 0x27b0 +#define MN_rol 0x27b7 +#define MN_arpl 0x27bb +#define MN_vpmacsdql 0x27c0 +#define MN_vpmacssdql 0x27ca +#define MN_lsl 0x27d5 +#define MN_movsl 0x27d9 +#define MN_setl 0x27df +#define MN_cwtl 0x27e4 #define MN_mul (MN_fmul + 1) #define MN_fmul (MN_pfmul + 1) -#define MN_pfmul 0x27de +#define MN_pfmul 0x27e9 #define MN_imul (MN_fimul + 1) -#define MN_fimul 0x27e4 -#define MN_montmul 0x27ea -#define MN_cmovl 0x27f2 -#define MN_vpmovb2m 0x27f8 -#define MN_vpmovd2m 0x2801 -#define MN_vpmovq2m 0x280a -#define MN_vpmovw2m 0x2813 -#define MN_aam 0x281c -#define MN_fxam 0x2820 -#define MN_fprem 0x2825 -#define MN_fcom 0x282b -#define MN_ficom 0x2830 -#define MN_fucom 0x2836 -#define MN_fsetpm 0x283c -#define MN_fnsetpm 0x2843 -#define MN_frstpm 0x284b -#define MN_vpperm 0x2852 +#define MN_fimul 0x27ef +#define MN_montmul 0x27f5 +#define MN_cmovl 0x27fd +#define MN_vpmovb2m 0x2803 +#define MN_vpmovd2m 0x280c +#define MN_vpmovq2m 0x2815 +#define MN_vpmovw2m 0x281e +#define MN_aam 0x2827 +#define MN_fxam 0x282b +#define MN_fprem 0x2830 +#define MN_fcom 0x2836 +#define MN_ficom 0x283b +#define MN_fucom 0x2841 +#define MN_fsetpm 0x2847 +#define MN_fnsetpm 0x284e +#define MN_frstpm 0x2856 +#define MN_vpperm 0x285d #define MN_pcmpestrm (MN_vpcmpestrm + 1) -#define MN_vpcmpestrm 0x2859 +#define MN_vpcmpestrm 0x2864 #define MN_pcmpistrm (MN_vpcmpistrm + 1) -#define MN_vpcmpistrm 0x2864 -#define MN_rsm 0x286f -#define MN_fpatan 0x2873 -#define MN_fptan 0x287a -#define MN_bndcn 0x2880 +#define MN_vpcmpistrm 0x286f +#define MN_rsm 0x287a +#define MN_fpatan 0x287e +#define MN_fptan 0x2885 +#define MN_bndcn 0x288b #define MN_andn (MN_pandn + 1) #define MN_pandn (MN_vpandn + 1) -#define MN_vpandn 0x2886 +#define MN_vpandn 0x2891 #define MN_in (MN_xbegin + 4) -#define MN_xbegin 0x288d -#define MN_pfmin 0x2894 -#define MN_fsin 0x289a -#define MN_vmxon 0x289f -#define MN_vmrun 0x28a5 -#define MN_jo 0x28ab -#define MN_jno 0x28ae -#define MN_setno 0x28b2 -#define MN_cmovno 0x28b8 -#define MN_jpo 0x28bf -#define MN_setpo 0x28c3 -#define MN_cmovpo 0x28c9 -#define MN_cqo 0x28d0 -#define MN_tilezero 0x28d4 -#define MN_clzero 0x28dd -#define MN_seto 0x28e4 -#define MN_into 0x28e9 -#define MN_cqto 0x28ee -#define MN_ssto 0x28f3 -#define MN_cmovo 0x28f8 -#define MN_bswap 0x28fe -#define MN_fsubp 0x2904 -#define MN_pfrcp 0x290a -#define MN_rdtscp 0x2910 -#define MN_faddp 0x2917 -#define MN_pdep 0x291d -#define MN_ffreep 0x2922 -#define MN_rep 0x2929 -#define MN_fcomip 0x292d -#define MN_fucomip 0x2934 -#define MN_jp 0x293c -#define MN_fmulp 0x293f +#define MN_xbegin 0x2898 +#define MN_pfmin 0x289f +#define MN_fsin 0x28a5 +#define MN_vmxon 0x28aa +#define MN_vmrun 0x28b0 +#define MN_jo 0x28b6 +#define MN_jno 0x28b9 +#define MN_setno 0x28bd +#define MN_cmovno 0x28c3 +#define MN_jpo 0x28ca +#define MN_setpo 0x28ce +#define MN_cmovpo 0x28d4 +#define MN_cqo 0x28db +#define MN_tilezero 0x28df +#define MN_clzero 0x28e8 +#define MN_seto 0x28ef +#define MN_into 0x28f4 +#define MN_cqto 0x28f9 +#define MN_ssto 0x28fe +#define MN_cmovo 0x2903 +#define MN_push2p 0x2909 +#define MN_pop2p 0x2910 +#define MN_bswap 0x2916 +#define MN_fsubp 0x291c +#define MN_pfrcp 0x2922 +#define MN_rdtscp 0x2928 +#define MN_faddp 0x292f +#define MN_pdep 0x2935 +#define MN_ffreep 0x293a +#define MN_rep 0x2941 +#define MN_fcomip 0x2945 +#define MN_fucomip 0x294c +#define MN_jp 0x2954 +#define MN_fmulp 0x2957 #define MN_cmp (MN_scmp + 1) -#define MN_scmp 0x2945 +#define MN_scmp 0x295d #define MN_jmp (MN_ljmp + 1) -#define MN_ljmp 0x294a -#define MN_fcomp 0x294f -#define MN_ficomp 0x2955 -#define MN_fucomp 0x295c -#define MN_jnp 0x2963 -#define MN_setnp 0x2967 -#define MN_cmovnp 0x296d +#define MN_ljmp 0x2962 +#define MN_fcomp 0x2967 +#define MN_ficomp 0x296d +#define MN_fucomp 0x2974 +#define MN_jnp 0x297b +#define MN_setnp 0x297f +#define MN_cmovnp 0x2985 #define MN_nop (MN_fnop + 1) -#define MN_fnop 0x2974 -#define MN_loop 0x2979 -#define MN_pop 0x297e -#define MN_fcompp 0x2982 -#define MN_fucompp 0x2989 -#define MN_fsubrp 0x2991 -#define MN_fdivrp 0x2998 -#define MN_rstorssp 0x299f -#define MN_saveprevssp 0x29a8 -#define MN_setp 0x29b4 -#define MN_fbstp 0x29b9 -#define MN_fdecstp 0x29bf -#define MN_fincstp 0x29c7 -#define MN_fstp 0x29cf -#define MN_fistp 0x29d4 -#define MN_fisttp 0x29da +#define MN_fnop 0x298c +#define MN_loop 0x2991 +#define MN_pop 0x2996 +#define MN_fcompp 0x299a +#define MN_fucompp 0x29a1 +#define MN_fsubrp 0x29a9 +#define MN_fdivrp 0x29b0 +#define MN_rstorssp 0x29b7 +#define MN_saveprevssp 0x29c0 +#define MN_setp 0x29cc +#define MN_fbstp 0x29d1 +#define MN_fdecstp 0x29d7 +#define MN_fincstp 0x29df +#define MN_fstp 0x29e7 +#define MN_fistp 0x29ec +#define MN_fisttp 0x29f2 #define MN_movddup (MN_vmovddup + 1) -#define MN_vmovddup 0x29e1 +#define MN_vmovddup 0x29f9 #define MN_movshdup (MN_vmovshdup + 1) -#define MN_vmovshdup 0x29ea +#define MN_vmovshdup 0x2a02 #define MN_movsldup (MN_vmovsldup + 1) -#define MN_vmovsldup 0x29f4 -#define MN_fdivp 0x29fe -#define MN_cmovp 0x2a04 -#define MN_vpbroadcastmb2q 0x2a0a -#define MN_vpermi2q 0x2a1a -#define MN_vpmovm2q 0x2a23 -#define MN_movdq2q 0x2a2c -#define MN_vpermt2q 0x2a34 -#define MN_vpshaq 0x2a3d -#define MN_vpsraq 0x2a44 -#define MN_vphaddbq 0x2a4b -#define MN_vphaddubq 0x2a54 +#define MN_vmovsldup 0x2a0c +#define MN_fdivp 0x2a16 +#define MN_cmovp 0x2a1c +#define MN_vpbroadcastmb2q 0x2a22 +#define MN_vpermi2q 0x2a32 +#define MN_vpmovm2q 0x2a3b +#define MN_movdq2q 0x2a44 +#define MN_vpermt2q 0x2a4c +#define MN_vpshaq 0x2a55 +#define MN_vpsraq 0x2a5c +#define MN_vphaddbq 0x2a63 +#define MN_vphaddubq 0x2a6c #define MN_psubq (MN_vpsubq + 1) -#define MN_vpsubq 0x2a5e +#define MN_vpsubq 0x2a76 #define MN_pmovsxbq (MN_vpmovsxbq + 1) -#define MN_vpmovsxbq 0x2a65 +#define MN_vpmovsxbq 0x2a7d #define MN_pmovzxbq (MN_vpmovzxbq + 1) -#define MN_vpmovzxbq 0x2a6f +#define MN_vpmovzxbq 0x2a87 #define MN_cvttpd2dq (MN_vcvttpd2dq + 1) -#define MN_vcvttpd2dq 0x2a79 +#define MN_vcvttpd2dq 0x2a91 #define MN_cvtpd2dq (MN_vcvtpd2dq + 1) -#define MN_vcvtpd2dq 0x2a84 -#define MN_vcvttph2dq 0x2a8e -#define MN_vcvtph2dq 0x2a99 -#define MN_movq2dq 0x2aa3 +#define MN_vcvtpd2dq 0x2a9c +#define MN_vcvttph2dq 0x2aa6 +#define MN_vcvtph2dq 0x2ab1 +#define MN_movq2dq 0x2abb #define MN_cvttps2dq (MN_vcvttps2dq + 1) -#define MN_vcvttps2dq 0x2aab +#define MN_vcvttps2dq 0x2ac3 #define MN_cvtps2dq (MN_vcvtps2dq + 1) -#define MN_vcvtps2dq 0x2ab6 -#define MN_vphsubdq 0x2ac0 -#define MN_cdq 0x2ac9 -#define MN_kaddq 0x2acd +#define MN_vcvtps2dq 0x2ace +#define MN_vphsubdq 0x2ad8 +#define MN_cdq 0x2ae1 +#define MN_kaddq 0x2ae5 #define MN_paddq (MN_vpaddq + 1) -#define MN_vpaddq 0x2ad3 -#define MN_vphadddq 0x2ada +#define MN_vpaddq 0x2aeb +#define MN_vphadddq 0x2af2 #define MN_punpckhdq (MN_vpunpckhdq + 1) -#define MN_vpunpckhdq 0x2ae3 -#define MN_kunpckdq 0x2aee -#define MN_vpshldq 0x2af7 +#define MN_vpunpckhdq 0x2afb +#define MN_kunpckdq 0x2b06 +#define MN_vpshldq 0x2b0f #define MN_punpckldq (MN_vpunpckldq + 1) -#define MN_vpunpckldq 0x2aff +#define MN_vpunpckldq 0x2b17 #define MN_pslldq (MN_vpslldq + 1) -#define MN_vpslldq 0x2b0a +#define MN_vpslldq 0x2b22 #define MN_psrldq (MN_vpsrldq + 1) -#define MN_vpsrldq 0x2b12 +#define MN_vpsrldq 0x2b2a #define MN_pmuldq (MN_vpmuldq + 1) -#define MN_vpmuldq 0x2b1a -#define MN_kandq 0x2b22 -#define MN_vpandq 0x2b28 -#define MN_vpexpandq 0x2b2f +#define MN_vpmuldq 0x2b32 +#define MN_kandq 0x2b3a +#define MN_vpandq 0x2b40 +#define MN_vpexpandq 0x2b47 #define MN_punpckhqdq (MN_vpunpckhqdq + 1) -#define MN_vpunpckhqdq 0x2b39 +#define MN_vpunpckhqdq 0x2b51 #define MN_pclmulhqhqdq (MN_vpclmulhqhqdq + 1) -#define MN_vpclmulhqhqdq 0x2b45 +#define MN_vpclmulhqhqdq 0x2b5d #define MN_pclmullqhqdq (MN_vpclmullqhqdq + 1) -#define MN_vpclmullqhqdq 0x2b53 +#define MN_vpclmullqhqdq 0x2b6b #define MN_punpcklqdq (MN_vpunpcklqdq + 1) -#define MN_vpunpcklqdq 0x2b61 +#define MN_vpunpcklqdq 0x2b79 #define MN_pclmulhqlqdq (MN_vpclmulhqlqdq + 1) -#define MN_vpclmulhqlqdq 0x2b6d +#define MN_vpclmulhqlqdq 0x2b85 #define MN_pclmullqlqdq (MN_vpclmullqlqdq + 1) -#define MN_vpclmullqlqdq 0x2b7b +#define MN_vpclmullqlqdq 0x2b93 #define MN_pclmulqdq (MN_vpclmulqdq + 1) -#define MN_vpclmulqdq 0x2b89 -#define MN_vpgatherdq 0x2b94 -#define MN_vpscatterdq 0x2b9f -#define MN_vpshrdq 0x2bab +#define MN_vpclmulqdq 0x2ba1 +#define MN_vpgatherdq 0x2bac +#define MN_vpscatterdq 0x2bb7 +#define MN_vpshrdq 0x2bc3 #define MN_movntdq (MN_vmovntdq + 1) -#define MN_vmovntdq 0x2bb3 -#define MN_vcvttpd2udq 0x2bbc -#define MN_vcvtpd2udq 0x2bc8 -#define MN_vcvttph2udq 0x2bd3 -#define MN_vcvtph2udq 0x2bdf -#define MN_vcvttps2udq 0x2bea -#define MN_vcvtps2udq 0x2bf6 -#define MN_vphaddudq 0x2c01 +#define MN_vmovntdq 0x2bcb +#define MN_vcvttpd2udq 0x2bd4 +#define MN_vcvtpd2udq 0x2be0 +#define MN_vcvttph2udq 0x2beb +#define MN_vcvtph2udq 0x2bf7 +#define MN_vcvttps2udq 0x2c02 +#define MN_vcvtps2udq 0x2c0e +#define MN_vphaddudq 0x2c19 #define MN_pmuludq (MN_vpmuludq + 1) -#define MN_vpmuludq 0x2c0b +#define MN_vpmuludq 0x2c23 #define MN_pmovsxdq (MN_vpmovsxdq + 1) -#define MN_vpmovsxdq 0x2c14 +#define MN_vpmovsxdq 0x2c2c #define MN_pmovzxdq (MN_vpmovzxdq + 1) -#define MN_vpmovzxdq 0x2c1e -#define MN_vpcomgeq 0x2c28 -#define MN_vpcomleq 0x2c31 -#define MN_vpcmpnleq 0x2c3a -#define MN_vpcmpleq 0x2c44 -#define MN_pfcmpeq 0x2c4d -#define MN_vpcomfalseq 0x2c55 -#define MN_vpcomtrueq 0x2c61 -#define MN_vpternlogq 0x2c6c -#define MN_vpshlq 0x2c77 +#define MN_vpmovzxdq 0x2c36 +#define MN_vpcomgeq 0x2c40 +#define MN_vpcomleq 0x2c49 +#define MN_vpcmpnleq 0x2c52 +#define MN_vpcmpleq 0x2c5c +#define MN_pfcmpeq 0x2c65 +#define MN_vpcomfalseq 0x2c6d +#define MN_vpcomtrueq 0x2c79 +#define MN_vpternlogq 0x2c84 +#define MN_vpshlq 0x2c8f #define MN_psllq (MN_vpsllq + 1) -#define MN_vpsllq 0x2c7e -#define MN_vpmullq 0x2c85 -#define MN_vprolq 0x2c8d +#define MN_vpsllq 0x2c96 +#define MN_vpmullq 0x2c9d +#define MN_vprolq 0x2ca5 #define MN_psrlq (MN_vpsrlq + 1) -#define MN_vpsrlq 0x2c94 -#define MN_kshiftlq 0x2c9b -#define MN_vpblendmq 0x2ca4 -#define MN_vptestnmq 0x2cae -#define MN_vpcomq 0x2cb8 -#define MN_vpermq 0x2cbf -#define MN_vptestmq 0x2cc6 -#define MN_kandnq 0x2ccf -#define MN_vpandnq 0x2cd6 -#define MN_valignq 0x2cde -#define MN_vpcmpq 0x2ce6 -#define MN_incsspq 0x2ced -#define MN_rdsspq 0x2cf5 -#define MN_vcvttpd2qq 0x2cfc -#define MN_vcvtpd2qq 0x2d07 -#define MN_vcvttph2qq 0x2d11 -#define MN_vcvtph2qq 0x2d1c -#define MN_vcvttps2qq 0x2d26 -#define MN_vcvtps2qq 0x2d31 -#define MN_vpcomeqq 0x2d3b -#define MN_vpcomneqq 0x2d44 -#define MN_vpcmpneqq 0x2d4e +#define MN_vpsrlq 0x2cac +#define MN_kshiftlq 0x2cb3 +#define MN_vpblendmq 0x2cbc +#define MN_vptestnmq 0x2cc6 +#define MN_vpcomq 0x2cd0 +#define MN_vpermq 0x2cd7 +#define MN_vptestmq 0x2cde +#define MN_kandnq 0x2ce7 +#define MN_vpandnq 0x2cee +#define MN_valignq 0x2cf6 +#define MN_vpcmpq 0x2cfe +#define MN_incsspq 0x2d05 +#define MN_rdsspq 0x2d0d +#define MN_vcvttpd2qq 0x2d14 +#define MN_vcvtpd2qq 0x2d1f +#define MN_vcvttph2qq 0x2d29 +#define MN_vcvtph2qq 0x2d34 +#define MN_vcvttps2qq 0x2d3e +#define MN_vcvtps2qq 0x2d49 +#define MN_vpcomeqq 0x2d53 +#define MN_vpcomneqq 0x2d5c +#define MN_vpcmpneqq 0x2d66 #define MN_pcmpeqq (MN_vpcmpeqq + 1) -#define MN_vpcmpeqq 0x2d58 -#define MN_vpgatherqq 0x2d61 -#define MN_vpscatterqq 0x2d6c -#define MN_vcvttpd2uqq 0x2d78 -#define MN_vcvtpd2uqq 0x2d84 -#define MN_vcvttph2uqq 0x2d8f -#define MN_vcvtph2uqq 0x2d9b -#define MN_vcvttps2uqq 0x2da6 -#define MN_vcvtps2uqq 0x2db2 -#define MN_korq 0x2dbd -#define MN_kxnorq 0x2dc2 -#define MN_vporq 0x2dc9 -#define MN_vprorq 0x2dcf -#define MN_kxorq 0x2dd6 -#define MN_vpxorq 0x2ddc +#define MN_vpcmpeqq 0x2d70 +#define MN_vpgatherqq 0x2d79 +#define MN_vpscatterqq 0x2d84 +#define MN_vcvttpd2uqq 0x2d90 +#define MN_vcvtpd2uqq 0x2d9c +#define MN_vcvttph2uqq 0x2da7 +#define MN_vcvtph2uqq 0x2db3 +#define MN_vcvttps2uqq 0x2dbe +#define MN_vcvtps2uqq 0x2dca +#define MN_korq 0x2dd5 +#define MN_kxnorq 0x2dda +#define MN_vporq 0x2de1 +#define MN_vprorq 0x2de7 +#define MN_kxorq 0x2dee +#define MN_vpxorq 0x2df4 #define MN_pinsrq (MN_vpinsrq + 1) -#define MN_vpinsrq 0x2de3 -#define MN_kshiftrq 0x2deb +#define MN_vpinsrq 0x2dfb +#define MN_kshiftrq 0x2e03 #define MN_extrq (MN_pextrq + 1) #define MN_pextrq (MN_vpextrq + 1) -#define MN_vpextrq 0x2df4 -#define MN_vpabsq 0x2dfc -#define MN_vpminsq 0x2e03 -#define MN_vpcompressq 0x2e0b -#define MN_wrssq 0x2e17 -#define MN_wrussq 0x2e1d -#define MN_vpmaxsq 0x2e24 -#define MN_vp2intersectq 0x2e2c -#define MN_vpconflictq 0x2e3a -#define MN_vpcomgtq 0x2e46 +#define MN_vpextrq 0x2e0c +#define MN_vpabsq 0x2e14 +#define MN_vpminsq 0x2e1b +#define MN_vpcompressq 0x2e23 +#define MN_wrssq 0x2e2f +#define MN_wrussq 0x2e35 +#define MN_vpmaxsq 0x2e3c +#define MN_vp2intersectq 0x2e44 +#define MN_vpconflictq 0x2e52 +#define MN_vpcomgtq 0x2e5e #define MN_pcmpgtq (MN_vpcmpgtq + 1) -#define MN_vpcmpgtq 0x2e4f -#define MN_cltq 0x2e58 -#define MN_vpcomltq 0x2e5d -#define MN_vpcmpnltq 0x2e66 -#define MN_vpcmpltq 0x2e70 -#define MN_vpopcntq 0x2e79 -#define MN_vplzcntq 0x2e82 -#define MN_movntq 0x2e8b -#define MN_knotq 0x2e92 -#define MN_vprotq 0x2e98 -#define MN_insertq 0x2e9f -#define MN_vpbroadcastq 0x2ea7 -#define MN_ktestq 0x2eb4 -#define MN_kortestq 0x2ebb -#define MN_vpcomgeuq 0x2ec4 -#define MN_vpcomleuq 0x2ece -#define MN_vpcmpnleuq 0x2ed8 -#define MN_vpcmpleuq 0x2ee3 -#define MN_vpcomfalseuq 0x2eed -#define MN_vpcomtrueuq 0x2efa -#define MN_vpmadd52huq 0x2f06 -#define MN_vpmadd52luq 0x2f12 -#define MN_vpcomuq 0x2f1e -#define MN_vpminuq 0x2f26 -#define MN_vpcmpuq 0x2f2e -#define MN_vpcomequq 0x2f36 -#define MN_vpcomnequq 0x2f40 -#define MN_vpcmpnequq 0x2f4b -#define MN_vpcmpequq 0x2f56 -#define MN_vpcomgtuq 0x2f60 -#define MN_vpcomltuq 0x2f6a -#define MN_vpcmpnltuq 0x2f74 -#define MN_vpcmpltuq 0x2f7f -#define MN_vpmaxuq 0x2f89 -#define MN_vpsravq 0x2f91 -#define MN_vpshldvq 0x2f99 -#define MN_vpshrdvq 0x2fa2 -#define MN_vpsllvq 0x2fab -#define MN_vprolvq 0x2fb3 -#define MN_vpsrlvq 0x2fbb +#define MN_vpcmpgtq 0x2e67 +#define MN_cltq 0x2e70 +#define MN_vpcomltq 0x2e75 +#define MN_vpcmpnltq 0x2e7e +#define MN_vpcmpltq 0x2e88 +#define MN_vpopcntq 0x2e91 +#define MN_vplzcntq 0x2e9a +#define MN_movntq 0x2ea3 +#define MN_knotq 0x2eaa +#define MN_vprotq 0x2eb0 +#define MN_insertq 0x2eb7 +#define MN_vpbroadcastq 0x2ebf +#define MN_ktestq 0x2ecc +#define MN_kortestq 0x2ed3 +#define MN_vpcomgeuq 0x2edc +#define MN_vpcomleuq 0x2ee6 +#define MN_vpcmpnleuq 0x2ef0 +#define MN_vpcmpleuq 0x2efb +#define MN_vpcomfalseuq 0x2f05 +#define MN_vpcomtrueuq 0x2f12 +#define MN_vpmadd52huq 0x2f1e +#define MN_vpmadd52luq 0x2f2a +#define MN_vpcomuq 0x2f36 +#define MN_vpminuq 0x2f3e +#define MN_vpcmpuq 0x2f46 +#define MN_vpcomequq 0x2f4e +#define MN_vpcomnequq 0x2f58 +#define MN_vpcmpnequq 0x2f63 +#define MN_vpcmpequq 0x2f6e +#define MN_vpcomgtuq 0x2f78 +#define MN_vpcomltuq 0x2f82 +#define MN_vpcmpnltuq 0x2f8c +#define MN_vpcmpltuq 0x2f97 +#define MN_vpmaxuq 0x2fa1 +#define MN_vpsravq 0x2fa9 +#define MN_vpshldvq 0x2fb1 +#define MN_vpshrdvq 0x2fba +#define MN_vpsllvq 0x2fc3 +#define MN_vprolvq 0x2fcb +#define MN_vpsrlvq 0x2fd3 #define MN_movq (MN_kmovq + 1) #define MN_kmovq (MN_maskmovq + 3) #define MN_maskmovq (MN_vpmaskmovq + 2) -#define MN_vpmaskmovq 0x2fc3 -#define MN_vmovq 0x2fce -#define MN_vprorvq 0x2fd4 -#define MN_vphaddwq 0x2fdc -#define MN_vphadduwq 0x2fe5 +#define MN_vpmaskmovq 0x2fdb +#define MN_vmovq 0x2fe6 +#define MN_vprorvq 0x2fec +#define MN_vphaddwq 0x2ff4 +#define MN_vphadduwq 0x2ffd #define MN_pmovsxwq (MN_vpmovsxwq + 1) -#define MN_vpmovsxwq 0x2fef +#define MN_vpmovsxwq 0x3007 #define MN_pmovzxwq (MN_vpmovzxwq + 1) -#define MN_vpmovzxwq 0x2ff9 -#define MN_rex_r 0x3003 -#define MN_vmclear 0x3009 -#define MN_lar 0x3011 -#define MN_sar 0x3015 +#define MN_vpmovzxwq 0x3011 +#define MN_rex_r 0x301b +#define MN_vmclear 0x3021 +#define MN_lar 0x3029 +#define MN_sar 0x302d #define MN_fsubr (MN_pfsubr + 1) -#define MN_pfsubr 0x3019 -#define MN_fisubr 0x3020 -#define MN_rcr 0x3027 -#define MN_vzeroupper 0x302b +#define MN_pfsubr 0x3031 +#define MN_fisubr 0x3038 +#define MN_rcr 0x303f +#define MN_vzeroupper 0x3043 #define MN_enter (MN_sysenter + 3) -#define MN_sysenter 0x3036 -#define MN_shr 0x303f -#define MN_clr 0x3043 +#define MN_sysenter 0x304e +#define MN_shr 0x3057 +#define MN_clr 0x305b #define MN_palignr (MN_vpalignr + 1) -#define MN_vpalignr 0x3047 +#define MN_vpalignr 0x305f #define MN_or (MN_aor + 1) -#define MN_aor 0x3050 +#define MN_aor 0x3068 #define MN_por (MN_vpor + 1) -#define MN_vpor 0x3054 -#define MN_ror 0x3059 +#define MN_vpor 0x306c +#define MN_ror 0x3071 #define MN_monitor (MN_umonitor + 1) -#define MN_umonitor 0x305d -#define MN_frstor 0x3066 +#define MN_umonitor 0x3075 +#define MN_frstor 0x307e #define MN_xrstor (MN_fxrstor + 1) -#define MN_fxrstor 0x306d +#define MN_fxrstor 0x3085 #define MN_xor (MN_axor + 1) -#define MN_axor 0x3075 +#define MN_axor 0x308d #define MN_pxor (MN_vpxor + 1) -#define MN_vpxor 0x307a -#define MN_verr 0x3080 -#define MN_bsr 0x3085 +#define MN_vpxor 0x3092 +#define MN_verr 0x3098 +#define MN_bsr 0x309d #define MN_ldmxcsr (MN_vldmxcsr + 1) -#define MN_vldmxcsr 0x3089 +#define MN_vldmxcsr 0x30a1 #define MN_stmxcsr (MN_vstmxcsr + 1) -#define MN_vstmxcsr 0x3092 -#define MN_blsr 0x309b +#define MN_vstmxcsr 0x30aa +#define MN_blsr 0x30b3 #define MN_rdmsr (MN_urdmsr + 1) -#define MN_urdmsr 0x30a0 +#define MN_urdmsr 0x30b8 #define MN_wrmsr (MN_uwrmsr + 1) -#define MN_uwrmsr 0x30a7 -#define MN_btr 0x30ae -#define MN_xcrypt_ctr 0x30b2 -#define MN_xcryptctr 0x30bd -#define MN_ltr 0x30c7 -#define MN_str 0x30cb -#define MN_bextr 0x30cf -#define MN_fdivr 0x30d5 -#define MN_fidivr 0x30db -#define MN_rex_wr 0x30e2 -#define MN_aas 0x30e9 -#define MN_scas 0x30ed -#define MN_das 0x30f2 -#define MN_fabs 0x30f6 -#define MN_movabs 0x30fb +#define MN_uwrmsr 0x30bf +#define MN_btr 0x30c6 +#define MN_xcrypt_ctr 0x30ca +#define MN_xcryptctr 0x30d5 +#define MN_ltr 0x30df +#define MN_str 0x30e3 +#define MN_bextr 0x30e7 +#define MN_fdivr 0x30ed +#define MN_fidivr 0x30f3 +#define MN_rex_wr 0x30fa +#define MN_aas 0x3101 +#define MN_scas 0x3105 +#define MN_das 0x310a +#define MN_fabs 0x310e +#define MN_movabs 0x3113 #define MN_cs (MN_blcs + 2) -#define MN_blcs 0x3102 +#define MN_blcs 0x311a #define MN_ds (MN_lds + 1) -#define MN_lds 0x3107 -#define MN_enqcmds 0x310b -#define MN_lods 0x3113 -#define MN_vpdpbssds 0x3118 -#define MN_vp4dpwssds 0x3122 -#define MN_vpdpwssds 0x312d -#define MN_vpdpbusds 0x3137 -#define MN_vpdpwusds 0x3141 -#define MN_vpdpbsuds 0x314b -#define MN_vpdpwsuds 0x3155 -#define MN_vpdpbuuds 0x315f -#define MN_vpdpwuuds 0x3169 +#define MN_lds 0x311f +#define MN_enqcmds 0x3123 +#define MN_lods 0x312b +#define MN_vpdpbssds 0x3130 +#define MN_vp4dpwssds 0x313a +#define MN_vpdpwssds 0x3145 +#define MN_vpdpbusds 0x314f +#define MN_vpdpwusds 0x3159 +#define MN_vpdpbsuds 0x3163 +#define MN_vpdpwsuds 0x316d +#define MN_vpdpbuuds 0x3177 +#define MN_vpdpwuuds 0x3181 #define MN_es (MN_les + 1) -#define MN_les 0x3173 -#define MN_xsaves 0x3177 +#define MN_les 0x318b +#define MN_xsaves 0x318f #define MN_fs (MN_lfs + 1) -#define MN_lfs 0x317e +#define MN_lfs 0x3196 #define MN_gs (MN_lkgs + 2) -#define MN_lkgs 0x3182 -#define MN_lgs 0x3187 -#define MN_swapgs 0x318b -#define MN_fchs 0x3192 -#define MN_js 0x3197 -#define MN_encls 0x319a +#define MN_lkgs 0x319a +#define MN_lgs 0x319f +#define MN_swapgs 0x31a3 +#define MN_fchs 0x31aa +#define MN_js 0x31af +#define MN_encls 0x31b2 #define MN_emms (MN_femms + 1) -#define MN_femms 0x31a0 +#define MN_femms 0x31b8 #define MN_ins (MN_lwpins + 3) -#define MN_lwpins 0x31a6 -#define MN_jns 0x31ad -#define MN_wrmsrns 0x31b1 -#define MN_setns 0x31b9 -#define MN_cmovns 0x31bf -#define MN_fcos 0x31c6 -#define MN_fsincos 0x31cb -#define MN_stos 0x31d3 -#define MN_vfmaddsub231ps 0x31d8 -#define MN_vfmsub231ps 0x31e7 -#define MN_vfnmsub231ps 0x31f3 -#define MN_vfmsubadd231ps 0x3200 -#define MN_vfmadd231ps 0x320f -#define MN_vfnmadd231ps 0x321b -#define MN_vfmaddsub132ps 0x3228 -#define MN_vfmsub132ps 0x3237 -#define MN_vfnmsub132ps 0x3243 -#define MN_vfmsubadd132ps 0x3250 -#define MN_vfmadd132ps 0x325f -#define MN_vfnmadd132ps 0x326b -#define MN_vcvtneebf162ps 0x3278 -#define MN_vbcstnebf162ps 0x3287 -#define MN_vcvtneobf162ps 0x3296 +#define MN_lwpins 0x31be +#define MN_jns 0x31c5 +#define MN_wrmsrns 0x31c9 +#define MN_setns 0x31d1 +#define MN_cmovns 0x31d7 +#define MN_fcos 0x31de +#define MN_fsincos 0x31e3 +#define MN_stos 0x31eb +#define MN_vfmaddsub231ps 0x31f0 +#define MN_vfmsub231ps 0x31ff +#define MN_vfnmsub231ps 0x320b +#define MN_vfmsubadd231ps 0x3218 +#define MN_vfmadd231ps 0x3227 +#define MN_vfnmadd231ps 0x3233 +#define MN_vfmaddsub132ps 0x3240 +#define MN_vfmsub132ps 0x324f +#define MN_vfnmsub132ps 0x325b +#define MN_vfmsubadd132ps 0x3268 +#define MN_vfmadd132ps 0x3277 +#define MN_vfnmadd132ps 0x3283 +#define MN_vcvtneebf162ps 0x3290 +#define MN_vbcstnebf162ps 0x329f +#define MN_vcvtneobf162ps 0x32ae #define MN_cvtpd2ps (MN_vcvtpd2ps + 1) -#define MN_vcvtpd2ps 0x32a5 -#define MN_vcvtneeph2ps 0x32af -#define MN_vcvtneoph2ps 0x32bc -#define MN_vcvtph2ps 0x32c9 -#define MN_vbcstnesh2ps 0x32d3 -#define MN_vpermi2ps 0x32e0 -#define MN_cvtpi2ps 0x32ea -#define MN_vpermil2ps 0x32f3 -#define MN_vexp2ps 0x32fe +#define MN_vcvtpd2ps 0x32bd +#define MN_vcvtneeph2ps 0x32c7 +#define MN_vcvtneoph2ps 0x32d4 +#define MN_vcvtph2ps 0x32e1 +#define MN_vbcstnesh2ps 0x32eb +#define MN_vpermi2ps 0x32f8 +#define MN_cvtpi2ps 0x3302 +#define MN_vpermil2ps 0x330b +#define MN_vexp2ps 0x3316 #define MN_cvtdq2ps (MN_vcvtdq2ps + 1) -#define MN_vcvtdq2ps 0x3306 -#define MN_vcvtudq2ps 0x3310 -#define MN_vcvtqq2ps 0x331b -#define MN_vcvtuqq2ps 0x3325 -#define MN_vpermt2ps 0x3330 -#define MN_vfmaddsub213ps 0x333a -#define MN_vfmsub213ps 0x3349 -#define MN_vfnmsub213ps 0x3355 -#define MN_vfmsubadd213ps 0x3362 -#define MN_vfmadd213ps 0x3371 -#define MN_vfnmadd213ps 0x337d -#define MN_vrcp14ps 0x338a -#define MN_vrsqrt14ps 0x3393 -#define MN_tdpbf16ps 0x339e -#define MN_vdpbf16ps 0x33a8 -#define MN_tcmmrlfp16ps 0x33b2 -#define MN_tcmmimfp16ps 0x33bf -#define MN_tdpfp16ps 0x33cc -#define MN_vrcp28ps 0x33d6 -#define MN_vrsqrt28ps 0x33df +#define MN_vcvtdq2ps 0x331e +#define MN_vcvtudq2ps 0x3328 +#define MN_vcvtqq2ps 0x3333 +#define MN_vcvtuqq2ps 0x333d +#define MN_vpermt2ps 0x3348 +#define MN_vfmaddsub213ps 0x3352 +#define MN_vfmsub213ps 0x3361 +#define MN_vfnmsub213ps 0x336d +#define MN_vfmsubadd213ps 0x337a +#define MN_vfmadd213ps 0x3389 +#define MN_vfnmadd213ps 0x3395 +#define MN_vrcp14ps 0x33a2 +#define MN_vrsqrt14ps 0x33ab +#define MN_tdpbf16ps 0x33b6 +#define MN_vdpbf16ps 0x33c0 +#define MN_tcmmrlfp16ps 0x33ca +#define MN_tcmmimfp16ps 0x33d7 +#define MN_tdpfp16ps 0x33e4 +#define MN_vrcp28ps 0x33ee +#define MN_vrsqrt28ps 0x33f7 #define MN_movaps (MN_vmovaps + 1) -#define MN_vmovaps 0x33ea +#define MN_vmovaps 0x3402 #define MN_subps (MN_addsubps + 3) #define MN_addsubps (MN_vfmaddsubps + 3) -#define MN_vfmaddsubps 0x33f2 -#define MN_vaddsubps 0x33fe +#define MN_vfmaddsubps 0x340a +#define MN_vaddsubps 0x3416 #define MN_hsubps (MN_vhsubps + 1) -#define MN_vhsubps 0x3408 -#define MN_vfmsubps 0x3410 -#define MN_vfnmsubps 0x3419 -#define MN_vsubps 0x3423 -#define MN_vgatherpf0dps 0x342a -#define MN_vscatterpf0dps 0x3438 -#define MN_vgatherpf1dps 0x3447 -#define MN_vscatterpf1dps 0x3455 +#define MN_vhsubps 0x3420 +#define MN_vfmsubps 0x3428 +#define MN_vfnmsubps 0x3431 +#define MN_vsubps 0x343b +#define MN_vgatherpf0dps 0x3442 +#define MN_vscatterpf0dps 0x3450 +#define MN_vgatherpf1dps 0x345f +#define MN_vscatterpf1dps 0x346d #define MN_addps (MN_vfmsubaddps + 6) -#define MN_vfmsubaddps 0x3464 +#define MN_vfmsubaddps 0x347c #define MN_haddps (MN_vhaddps + 1) -#define MN_vhaddps 0x3470 -#define MN_v4fmaddps 0x3478 -#define MN_vfmaddps 0x3482 -#define MN_v4fnmaddps 0x348b -#define MN_vfnmaddps 0x3496 -#define MN_vaddps 0x34a0 +#define MN_vhaddps 0x3488 +#define MN_v4fmaddps 0x3490 +#define MN_vfmaddps 0x349a +#define MN_v4fnmaddps 0x34a3 +#define MN_vfnmaddps 0x34ae +#define MN_vaddps 0x34b8 #define MN_andps (MN_vexpandps + 4) -#define MN_vexpandps 0x34a7 -#define MN_vandps 0x34b1 +#define MN_vexpandps 0x34bf +#define MN_vandps 0x34c9 #define MN_blendps (MN_vblendps + 1) -#define MN_vblendps 0x34b8 +#define MN_vblendps 0x34d0 #define MN_roundps (MN_vroundps + 1) -#define MN_vroundps 0x34c1 -#define MN_vgatherdps 0x34ca -#define MN_vscatterdps 0x34d5 +#define MN_vroundps 0x34d9 +#define MN_vgatherdps 0x34e2 +#define MN_vscatterdps 0x34ed #define MN_cmpunordps (MN_vcmpunordps + 1) -#define MN_vcmpunordps 0x34e1 +#define MN_vcmpunordps 0x34f9 #define MN_cmpordps (MN_vcmpordps + 1) -#define MN_vcmpordps 0x34ed -#define MN_vreduceps 0x34f7 -#define MN_vrangeps 0x3501 -#define MN_vcmpngeps 0x350a -#define MN_vcmpgeps 0x3514 -#define MN_vrndscaleps 0x351d +#define MN_vcmpordps 0x3505 +#define MN_vreduceps 0x350f +#define MN_vrangeps 0x3519 +#define MN_vcmpngeps 0x3522 +#define MN_vcmpgeps 0x352c +#define MN_vrndscaleps 0x3535 #define MN_cmpnleps (MN_vcmpnleps + 1) -#define MN_vcmpnleps 0x3529 +#define MN_vcmpnleps 0x3541 #define MN_cmpleps (MN_vcmpleps + 1) -#define MN_vcmpleps 0x3533 -#define MN_vcmpfalseps 0x353c -#define MN_vcmptrueps 0x3548 -#define MN_vscalefps 0x3553 +#define MN_vcmpleps 0x354b +#define MN_vcmpfalseps 0x3554 +#define MN_vcmptrueps 0x3560 +#define MN_vscalefps 0x356b #define MN_shufps (MN_vshufps + 1) -#define MN_vshufps 0x355d +#define MN_vshufps 0x3575 #define MN_unpckhps (MN_vunpckhps + 1) -#define MN_vunpckhps 0x3565 +#define MN_vunpckhps 0x357d #define MN_movlhps (MN_vmovlhps + 1) -#define MN_vmovlhps 0x356f +#define MN_vmovlhps 0x3587 #define MN_movhps (MN_vmovhps + 1) -#define MN_vmovhps 0x3578 +#define MN_vmovhps 0x3590 #define MN_movmskps (MN_vmovmskps + 1) -#define MN_vmovmskps 0x3580 +#define MN_vmovmskps 0x3598 #define MN_movhlps (MN_vmovhlps + 1) -#define MN_vmovhlps 0x358a -#define MN_vpermilps 0x3593 +#define MN_vmovhlps 0x35a2 +#define MN_vpermilps 0x35ab #define MN_unpcklps (MN_vunpcklps + 1) -#define MN_vunpcklps 0x359d +#define MN_vunpcklps 0x35b5 #define MN_mulps (MN_vmulps + 1) -#define MN_vmulps 0x35a7 +#define MN_vmulps 0x35bf #define MN_movlps (MN_vmovlps + 1) -#define MN_vmovlps 0x35ae -#define MN_cmps 0x35b6 -#define MN_vblendmps 0x35bb -#define MN_vfixupimmps 0x35c5 -#define MN_vpermps 0x35d1 +#define MN_vmovlps 0x35c6 +#define MN_cmps 0x35ce +#define MN_vblendmps 0x35d3 +#define MN_vfixupimmps 0x35dd +#define MN_vpermps 0x35e9 #define MN_andnps (MN_vandnps + 1) -#define MN_vandnps 0x35d9 +#define MN_vandnps 0x35f1 #define MN_minps (MN_vminps + 1) -#define MN_vminps 0x35e1 -#define MN_seamops 0x35e8 +#define MN_vminps 0x35f9 +#define MN_seamops 0x3600 #define MN_rcpps (MN_vrcpps + 1) -#define MN_vrcpps 0x35f0 +#define MN_vrcpps 0x3608 #define MN_dpps (MN_vdpps + 1) -#define MN_vdpps 0x35f7 +#define MN_vdpps 0x360f #define MN_cmpps (MN_vcmpps + 1) -#define MN_vcmpps 0x35fd -#define MN_vgetexpps 0x3604 -#define MN_vgatherpf0qps 0x360e -#define MN_vscatterpf0qps 0x361c -#define MN_vgatherpf1qps 0x362b -#define MN_vscatterpf1qps 0x3639 -#define MN_vcmpunord_qps 0x3648 -#define MN_vcmpord_qps 0x3656 +#define MN_vcmpps 0x3615 +#define MN_vgetexpps 0x361c +#define MN_vgatherpf0qps 0x3626 +#define MN_vscatterpf0qps 0x3634 +#define MN_vgatherpf1qps 0x3643 +#define MN_vscatterpf1qps 0x3651 +#define MN_vcmpunord_qps 0x3660 +#define MN_vcmpord_qps 0x366e #define MN_cmpneqps (MN_vcmpneqps + 1) -#define MN_vcmpneqps 0x3662 +#define MN_vcmpneqps 0x367a #define MN_cmpeqps (MN_vcmpeqps + 1) -#define MN_vcmpeqps 0x366c -#define MN_vcmpge_oqps 0x3675 -#define MN_vcmple_oqps 0x3681 -#define MN_vcmpfalse_oqps 0x368d -#define MN_vcmpneq_oqps 0x369c -#define MN_vcmpeq_oqps 0x36a9 -#define MN_vcmpgt_oqps 0x36b5 -#define MN_vcmplt_oqps 0x36c1 -#define MN_vgatherqps 0x36cd -#define MN_vscatterqps 0x36d8 -#define MN_vcmpnge_uqps 0x36e4 -#define MN_vcmpnle_uqps 0x36f1 -#define MN_vcmptrue_uqps 0x36fe -#define MN_vcmpneq_uqps 0x370c -#define MN_vcmpeq_uqps 0x3719 -#define MN_vcmpngt_uqps 0x3725 -#define MN_vcmpnlt_uqps 0x3732 +#define MN_vcmpeqps 0x3684 +#define MN_vcmpge_oqps 0x368d +#define MN_vcmple_oqps 0x3699 +#define MN_vcmpfalse_oqps 0x36a5 +#define MN_vcmpneq_oqps 0x36b4 +#define MN_vcmpeq_oqps 0x36c1 +#define MN_vcmpgt_oqps 0x36cd +#define MN_vcmplt_oqps 0x36d9 +#define MN_vgatherqps 0x36e5 +#define MN_vscatterqps 0x36f0 +#define MN_vcmpnge_uqps 0x36fc +#define MN_vcmpnle_uqps 0x3709 +#define MN_vcmptrue_uqps 0x3716 +#define MN_vcmpneq_uqps 0x3724 +#define MN_vcmpeq_uqps 0x3731 +#define MN_vcmpngt_uqps 0x373d +#define MN_vcmpnlt_uqps 0x374a #define MN_orps (MN_vorps + 1) -#define MN_vorps 0x373f +#define MN_vorps 0x3757 #define MN_xorps (MN_vxorps + 1) -#define MN_vxorps 0x3745 -#define MN_vcmpunord_sps 0x374c -#define MN_vcmpord_sps 0x375a -#define MN_vcmpge_osps 0x3766 -#define MN_vcmple_osps 0x3772 -#define MN_vcmpfalse_osps 0x377e -#define MN_vcmpneq_osps 0x378d -#define MN_vcmpeq_osps 0x379a -#define MN_vcmpgt_osps 0x37a6 -#define MN_vcmplt_osps 0x37b2 -#define MN_vfpclassps 0x37be -#define MN_vcompressps 0x37c9 -#define MN_vcmpnge_usps 0x37d5 -#define MN_vcmpnle_usps 0x37e2 -#define MN_vcmptrue_usps 0x37ef -#define MN_vcmpneq_usps 0x37fd -#define MN_vcmpeq_usps 0x380a -#define MN_vcmpngt_usps 0x3816 -#define MN_vcmpnlt_usps 0x3823 +#define MN_vxorps 0x375d +#define MN_vcmpunord_sps 0x3764 +#define MN_vcmpord_sps 0x3772 +#define MN_vcmpge_osps 0x377e +#define MN_vcmple_osps 0x378a +#define MN_vcmpfalse_osps 0x3796 +#define MN_vcmpneq_osps 0x37a5 +#define MN_vcmpeq_osps 0x37b2 +#define MN_vcmpgt_osps 0x37be +#define MN_vcmplt_osps 0x37ca +#define MN_vfpclassps 0x37d6 +#define MN_vcompressps 0x37e1 +#define MN_vcmpnge_usps 0x37ed +#define MN_vcmpnle_usps 0x37fa +#define MN_vcmptrue_usps 0x3807 +#define MN_vcmpneq_usps 0x3815 +#define MN_vcmpeq_usps 0x3822 +#define MN_vcmpngt_usps 0x382e +#define MN_vcmpnlt_usps 0x383b #define MN_extractps (MN_vextractps + 1) -#define MN_vextractps 0x3830 -#define MN_vcmpngtps 0x383b -#define MN_vcmpgtps 0x3845 +#define MN_vextractps 0x3848 +#define MN_vcmpngtps 0x3853 +#define MN_vcmpgtps 0x385d #define MN_cmpnltps (MN_vcmpnltps + 1) -#define MN_vcmpnltps 0x384e +#define MN_vcmpnltps 0x3866 #define MN_cmpltps (MN_vcmpltps + 1) -#define MN_vcmpltps 0x3858 -#define MN_vgetmantps 0x3861 +#define MN_vcmpltps 0x3870 +#define MN_vgetmantps 0x3879 #define MN_movntps (MN_vmovntps + 1) -#define MN_vmovntps 0x386c +#define MN_vmovntps 0x3884 #define MN_insertps (MN_vinsertps + 1) -#define MN_vinsertps 0x3875 +#define MN_vinsertps 0x388d #define MN_sqrtps (MN_rsqrtps + 1) #define MN_rsqrtps (MN_vrsqrtps + 1) -#define MN_vrsqrtps 0x387f -#define MN_vsqrtps 0x3888 -#define MN_vtestps 0x3890 +#define MN_vrsqrtps 0x3897 +#define MN_vsqrtps 0x38a0 +#define MN_vtestps 0x38a8 #define MN_movups (MN_vmovups + 1) -#define MN_vmovups 0x3898 +#define MN_vmovups 0x38b0 #define MN_blendvps (MN_vblendvps + 1) -#define MN_vblendvps 0x38a0 +#define MN_vblendvps 0x38b8 #define MN_divps (MN_vdivps + 1) -#define MN_vdivps 0x38aa -#define MN_vmaskmovps 0x38b1 +#define MN_vdivps 0x38c2 +#define MN_vmaskmovps 0x38c9 #define MN_maxps (MN_vmaxps + 1) -#define MN_vmaxps 0x38bc -#define MN_vfrczps 0x38c3 -#define MN_xrstors 0x38cb +#define MN_vmaxps 0x38d4 +#define MN_vfrczps 0x38db +#define MN_xrstors 0x38e3 #define MN_ss (MN_vfmsub231ss + 9) -#define MN_vfmsub231ss 0x38d3 -#define MN_vfnmsub231ss 0x38df -#define MN_vfmadd231ss 0x38ec -#define MN_vfnmadd231ss 0x38f8 -#define MN_vfmsub132ss 0x3905 -#define MN_vfnmsub132ss 0x3911 -#define MN_vfmadd132ss 0x391e -#define MN_vfnmadd132ss 0x392a +#define MN_vfmsub231ss 0x38eb +#define MN_vfnmsub231ss 0x38f7 +#define MN_vfmadd231ss 0x3904 +#define MN_vfnmadd231ss 0x3910 +#define MN_vfmsub132ss 0x391d +#define MN_vfnmsub132ss 0x3929 +#define MN_vfmadd132ss 0x3936 +#define MN_vfnmadd132ss 0x3942 #define MN_cvtsd2ss (MN_vcvtsd2ss + 1) -#define MN_vcvtsd2ss 0x3937 -#define MN_vcvtsh2ss 0x3941 +#define MN_vcvtsd2ss 0x394f +#define MN_vcvtsh2ss 0x3959 #define MN_cvtsi2ss (MN_vcvtsi2ss + 1) -#define MN_vcvtsi2ss 0x394b -#define MN_vcvtusi2ss 0x3955 -#define MN_vfmsub213ss 0x3960 -#define MN_vfnmsub213ss 0x396c -#define MN_vfmadd213ss 0x3979 -#define MN_vfnmadd213ss 0x3985 -#define MN_vrcp14ss 0x3992 -#define MN_vrsqrt14ss 0x399b -#define MN_vrcp28ss 0x39a6 -#define MN_vrsqrt28ss 0x39af +#define MN_vcvtsi2ss 0x3963 +#define MN_vcvtusi2ss 0x396d +#define MN_vfmsub213ss 0x3978 +#define MN_vfnmsub213ss 0x3984 +#define MN_vfmadd213ss 0x3991 +#define MN_vfnmadd213ss 0x399d +#define MN_vrcp14ss 0x39aa +#define MN_vrsqrt14ss 0x39b3 +#define MN_vrcp28ss 0x39be +#define MN_vrsqrt28ss 0x39c7 #define MN_subss (MN_vfmsubss + 3) -#define MN_vfmsubss 0x39ba -#define MN_vfnmsubss 0x39c3 -#define MN_vsubss 0x39cd +#define MN_vfmsubss 0x39d2 +#define MN_vfnmsubss 0x39db +#define MN_vsubss 0x39e5 #define MN_addss (MN_v4fmaddss + 4) -#define MN_v4fmaddss 0x39d4 -#define MN_vfmaddss 0x39de -#define MN_v4fnmaddss 0x39e7 -#define MN_vfnmaddss 0x39f2 -#define MN_vaddss 0x39fc +#define MN_v4fmaddss 0x39ec +#define MN_vfmaddss 0x39f6 +#define MN_v4fnmaddss 0x39ff +#define MN_vfnmaddss 0x3a0a +#define MN_vaddss 0x3a14 #define MN_roundss (MN_vroundss + 1) -#define MN_vroundss 0x3a03 +#define MN_vroundss 0x3a1b #define MN_cmpunordss (MN_vcmpunordss + 1) -#define MN_vcmpunordss 0x3a0c +#define MN_vcmpunordss 0x3a24 #define MN_cmpordss (MN_vcmpordss + 1) -#define MN_vcmpordss 0x3a18 -#define MN_vreducess 0x3a22 -#define MN_vrangess 0x3a2c -#define MN_vcmpngess 0x3a35 -#define MN_vcmpgess 0x3a3f -#define MN_vrndscaless 0x3a48 +#define MN_vcmpordss 0x3a30 +#define MN_vreducess 0x3a3a +#define MN_vrangess 0x3a44 +#define MN_vcmpngess 0x3a4d +#define MN_vcmpgess 0x3a57 +#define MN_vrndscaless 0x3a60 #define MN_cmpnless (MN_vcmpnless + 1) -#define MN_vcmpnless 0x3a54 +#define MN_vcmpnless 0x3a6c #define MN_cmpless (MN_vcmpless + 1) -#define MN_vcmpless 0x3a5e -#define MN_vcmpfalsess 0x3a67 -#define MN_vcmptruess 0x3a73 -#define MN_vscalefss 0x3a7e +#define MN_vcmpless 0x3a76 +#define MN_vcmpfalsess 0x3a7f +#define MN_vcmptruess 0x3a8b +#define MN_vscalefss 0x3a96 #define MN_comiss (MN_ucomiss + 1) #define MN_ucomiss (MN_vucomiss + 1) -#define MN_vucomiss 0x3a88 -#define MN_vcomiss 0x3a91 +#define MN_vucomiss 0x3aa0 +#define MN_vcomiss 0x3aa9 #define MN_lss (MN_mulss + 2) #define MN_mulss (MN_vmulss + 1) -#define MN_vmulss 0x3a99 -#define MN_vfixupimmss 0x3aa0 +#define MN_vmulss 0x3ab1 +#define MN_vfixupimmss 0x3ab8 #define MN_minss (MN_vminss + 1) -#define MN_vminss 0x3aac +#define MN_vminss 0x3ac4 #define MN_rcpss (MN_vrcpss + 1) -#define MN_vrcpss 0x3ab3 +#define MN_vrcpss 0x3acb #define MN_cmpss (MN_vcmpss + 1) -#define MN_vcmpss 0x3aba -#define MN_vgetexpss 0x3ac1 -#define MN_vcmpunord_qss 0x3acb -#define MN_vcmpord_qss 0x3ad9 +#define MN_vcmpss 0x3ad2 +#define MN_vgetexpss 0x3ad9 +#define MN_vcmpunord_qss 0x3ae3 +#define MN_vcmpord_qss 0x3af1 #define MN_cmpneqss (MN_vcmpneqss + 1) -#define MN_vcmpneqss 0x3ae5 +#define MN_vcmpneqss 0x3afd #define MN_cmpeqss (MN_vcmpeqss + 1) -#define MN_vcmpeqss 0x3aef -#define MN_vcmpge_oqss 0x3af8 -#define MN_vcmple_oqss 0x3b04 -#define MN_vcmpfalse_oqss 0x3b10 -#define MN_vcmpneq_oqss 0x3b1f -#define MN_vcmpeq_oqss 0x3b2c -#define MN_vcmpgt_oqss 0x3b38 -#define MN_vcmplt_oqss 0x3b44 -#define MN_vcmpnge_uqss 0x3b50 -#define MN_vcmpnle_uqss 0x3b5d -#define MN_vcmptrue_uqss 0x3b6a -#define MN_vcmpneq_uqss 0x3b78 -#define MN_vcmpeq_uqss 0x3b85 -#define MN_vcmpngt_uqss 0x3b91 -#define MN_vcmpnlt_uqss 0x3b9e -#define MN_vcmpunord_sss 0x3bab -#define MN_vcmpord_sss 0x3bb9 -#define MN_vcmpge_osss 0x3bc5 -#define MN_vcmple_osss 0x3bd1 -#define MN_vcmpfalse_osss 0x3bdd -#define MN_vcmpneq_osss 0x3bec -#define MN_vcmpeq_osss 0x3bf9 -#define MN_vcmpgt_osss 0x3c05 -#define MN_vcmplt_osss 0x3c11 -#define MN_vfpclassss 0x3c1d -#define MN_vcmpnge_usss 0x3c28 -#define MN_vcmpnle_usss 0x3c35 -#define MN_vcmptrue_usss 0x3c42 -#define MN_vcmpneq_usss 0x3c50 -#define MN_vcmpeq_usss 0x3c5d -#define MN_vcmpngt_usss 0x3c69 -#define MN_vcmpnlt_usss 0x3c76 -#define MN_vcmpngtss 0x3c83 -#define MN_vcmpgtss 0x3c8d +#define MN_vcmpeqss 0x3b07 +#define MN_vcmpge_oqss 0x3b10 +#define MN_vcmple_oqss 0x3b1c +#define MN_vcmpfalse_oqss 0x3b28 +#define MN_vcmpneq_oqss 0x3b37 +#define MN_vcmpeq_oqss 0x3b44 +#define MN_vcmpgt_oqss 0x3b50 +#define MN_vcmplt_oqss 0x3b5c +#define MN_vcmpnge_uqss 0x3b68 +#define MN_vcmpnle_uqss 0x3b75 +#define MN_vcmptrue_uqss 0x3b82 +#define MN_vcmpneq_uqss 0x3b90 +#define MN_vcmpeq_uqss 0x3b9d +#define MN_vcmpngt_uqss 0x3ba9 +#define MN_vcmpnlt_uqss 0x3bb6 +#define MN_vcmpunord_sss 0x3bc3 +#define MN_vcmpord_sss 0x3bd1 +#define MN_vcmpge_osss 0x3bdd +#define MN_vcmple_osss 0x3be9 +#define MN_vcmpfalse_osss 0x3bf5 +#define MN_vcmpneq_osss 0x3c04 +#define MN_vcmpeq_osss 0x3c11 +#define MN_vcmpgt_osss 0x3c1d +#define MN_vcmplt_osss 0x3c29 +#define MN_vfpclassss 0x3c35 +#define MN_vcmpnge_usss 0x3c40 +#define MN_vcmpnle_usss 0x3c4d +#define MN_vcmptrue_usss 0x3c5a +#define MN_vcmpneq_usss 0x3c68 +#define MN_vcmpeq_usss 0x3c75 +#define MN_vcmpngt_usss 0x3c81 +#define MN_vcmpnlt_usss 0x3c8e +#define MN_vcmpngtss 0x3c9b +#define MN_vcmpgtss 0x3ca5 #define MN_cmpnltss (MN_vcmpnltss + 1) -#define MN_vcmpnltss 0x3c96 +#define MN_vcmpnltss 0x3cae #define MN_cmpltss (MN_vcmpltss + 1) -#define MN_vcmpltss 0x3ca0 -#define MN_vgetmantss 0x3ca9 -#define MN_movntss 0x3cb4 +#define MN_vcmpltss 0x3cb8 +#define MN_vgetmantss 0x3cc1 +#define MN_movntss 0x3ccc #define MN_sqrtss (MN_rsqrtss + 1) #define MN_rsqrtss (MN_vrsqrtss + 1) -#define MN_vrsqrtss 0x3cbc -#define MN_vsqrtss 0x3cc5 -#define MN_vbroadcastss 0x3ccd +#define MN_vrsqrtss 0x3cd4 +#define MN_vsqrtss 0x3cdd +#define MN_vbroadcastss 0x3ce5 #define MN_divss (MN_vdivss + 1) -#define MN_vdivss 0x3cda +#define MN_vdivss 0x3cf2 #define MN_movss (MN_vmovss + 1) -#define MN_vmovss 0x3ce1 +#define MN_vmovss 0x3cf9 #define MN_maxss (MN_vmaxss + 1) -#define MN_vmaxss 0x3ce8 -#define MN_vfrczss 0x3cef -#define MN_bts 0x3cf7 -#define MN_erets 0x3cfb -#define MN_sets 0x3d01 -#define MN_clts 0x3d06 -#define MN_outs 0x3d0b +#define MN_vmaxss 0x3d00 +#define MN_vfrczss 0x3d07 +#define MN_bts 0x3d0f +#define MN_erets 0x3d13 +#define MN_sets 0x3d19 +#define MN_clts 0x3d1e +#define MN_outs 0x3d23 #define MN_movs (MN_cmovs + 1) -#define MN_cmovs 0x3d10 -#define MN_fldl2t 0x3d16 -#define MN_xlat 0x3d1d -#define MN_bt 0x3d22 -#define MN_fxtract 0x3d25 -#define MN_lgdt 0x3d2d -#define MN_sgdt 0x3d32 -#define MN_lidt 0x3d37 -#define MN_sidt 0x3d3c -#define MN_fldt 0x3d41 -#define MN_lldt 0x3d46 -#define MN_sldt 0x3d4b +#define MN_cmovs 0x3d28 +#define MN_fldl2t 0x3d2e +#define MN_xlat 0x3d35 +#define MN_bt 0x3d3a +#define MN_fxtract 0x3d3d +#define MN_lgdt 0x3d45 +#define MN_sgdt 0x3d4a +#define MN_lidt 0x3d4f +#define MN_sidt 0x3d54 +#define MN_fldt 0x3d59 +#define MN_lldt 0x3d5e +#define MN_sldt 0x3d63 #define MN_ret (MN_iret + 1) #define MN_iret (MN_uiret + 1) -#define MN_uiret 0x3d50 -#define MN_lret 0x3d56 -#define MN_seamret 0x3d5b -#define MN_sysret 0x3d63 -#define MN_hreset 0x3d6a -#define MN_pfcmpgt 0x3d71 -#define MN_ht 0x3d79 +#define MN_uiret 0x3d68 +#define MN_lret 0x3d6e +#define MN_seamret 0x3d73 +#define MN_sysret 0x3d7b +#define MN_hreset 0x3d82 +#define MN_pfcmpgt 0x3d89 +#define MN_ht 0x3d91 #define MN_wait (MN_fwait + 1) -#define MN_fwait 0x3d7c +#define MN_fwait 0x3d94 #define MN_mwait (MN_umwait + 1) -#define MN_umwait 0x3d82 -#define MN_mcommit 0x3d89 -#define MN_finit 0x3d91 -#define MN_skinit 0x3d97 -#define MN_fninit 0x3d9e -#define MN_vmgexit 0x3da5 -#define MN_sysexit 0x3dad -#define MN_hlt 0x3db5 -#define MN_popcnt 0x3db9 -#define MN_lzcnt 0x3dc0 -#define MN_tzcnt 0x3dc6 -#define MN_hnt 0x3dcc +#define MN_umwait 0x3d9a +#define MN_mcommit 0x3da1 +#define MN_finit 0x3da9 +#define MN_skinit 0x3daf +#define MN_fninit 0x3db6 +#define MN_vmgexit 0x3dbd +#define MN_sysexit 0x3dc5 +#define MN_hlt 0x3dcd +#define MN_popcnt 0x3dd1 +#define MN_lzcnt 0x3dd8 +#define MN_tzcnt 0x3dde +#define MN_hnt 0x3de4 #define MN_int (MN_frndint + 4) -#define MN_frndint 0x3dd0 -#define MN_not 0x3dd8 -#define MN_invept 0x3ddc -#define MN_xsaveopt 0x3de3 -#define MN_clflushopt 0x3dec -#define MN_fstpt 0x3df7 -#define MN_xabort 0x3dfd -#define MN_fsqrt 0x3e04 -#define MN_pfrsqrt 0x3e0a +#define MN_frndint 0x3de8 +#define MN_not 0x3df0 +#define MN_invept 0x3df4 +#define MN_xsaveopt 0x3dfb +#define MN_clflushopt 0x3e04 +#define MN_fstpt 0x3e0f +#define MN_xabort 0x3e15 +#define MN_fsqrt 0x3e1c +#define MN_pfrsqrt 0x3e22 #define MN_aesdeclast (MN_vaesdeclast + 1) -#define MN_vaesdeclast 0x3e12 +#define MN_vaesdeclast 0x3e2a #define MN_aesenclast (MN_vaesenclast + 1) -#define MN_vaesenclast 0x3e1e +#define MN_vaesenclast 0x3e36 #define MN_test (MN_ptest + 1) #define MN_ptest (MN_vptest + 1) -#define MN_vptest 0x3e2a -#define MN_xtest 0x3e31 -#define MN_fst 0x3e37 -#define MN_fist 0x3e3b -#define MN_rdmsrlist 0x3e40 -#define MN_wrmsrlist 0x3e4a +#define MN_vptest 0x3e42 +#define MN_xtest 0x3e49 +#define MN_fst 0x3e4f +#define MN_fist 0x3e53 +#define MN_rdmsrlist 0x3e58 +#define MN_wrmsrlist 0x3e62 #define MN_aeskeygenassist (MN_vaeskeygenassist + 1) -#define MN_vaeskeygenassist 0x3e54 -#define MN_vmptrst 0x3e65 -#define MN_ftst 0x3e6d -#define MN_rmpadjust 0x3e72 -#define MN_out 0x3e7c -#define MN_pext 0x3e80 -#define MN_bndcu 0x3e85 -#define MN_enclu 0x3e8b -#define MN_fcmovnu 0x3e91 +#define MN_vaeskeygenassist 0x3e6c +#define MN_vmptrst 0x3e7d +#define MN_ftst 0x3e85 +#define MN_rmpadjust 0x3e8a +#define MN_out 0x3e94 +#define MN_pext 0x3e98 +#define MN_bndcu 0x3e9d +#define MN_enclu 0x3ea3 +#define MN_fcmovnu 0x3ea9 #define MN_lddqu (MN_vlddqu + 1) -#define MN_vlddqu 0x3e99 +#define MN_vlddqu 0x3eb1 #define MN_movdqu (MN_maskmovdqu + 4) #define MN_maskmovdqu (MN_vmaskmovdqu + 1) -#define MN_vmaskmovdqu 0x3ea0 -#define MN_vmovdqu 0x3eac -#define MN_rdpkru 0x3eb4 -#define MN_wrpkru 0x3ebb -#define MN_rdpru 0x3ec2 -#define MN_eretu 0x3ec8 -#define MN_fcmovu 0x3ece -#define MN_xgetbv 0x3ed5 -#define MN_xsetbv 0x3edc +#define MN_vmaskmovdqu 0x3eb8 +#define MN_vmovdqu 0x3ec4 +#define MN_rdpkru 0x3ecc +#define MN_wrpkru 0x3ed3 +#define MN_rdpru 0x3eda +#define MN_eretu 0x3ee0 +#define MN_fcmovu 0x3ee6 +#define MN_xgetbv 0x3eed +#define MN_xsetbv 0x3ef4 #define MN_div (MN_fdiv + 1) -#define MN_fdiv 0x3ee3 +#define MN_fdiv 0x3efb #define MN_idiv (MN_fidiv + 1) -#define MN_fidiv 0x3ee8 -#define MN_enclv 0x3eee -#define MN_fldenv 0x3ef4 -#define MN_fstenv 0x3efb -#define MN_fnstenv 0x3f02 +#define MN_fidiv 0x3f00 +#define MN_enclv 0x3f06 +#define MN_fldenv 0x3f0c +#define MN_fstenv 0x3f13 +#define MN_fnstenv 0x3f1a #define MN_mov (MN_vpcmov + 3) -#define MN_vpcmov 0x3f0a -#define MN_bndmov 0x3f11 -#define MN_smov 0x3f18 -#define MN_rex_w 0x3f1d -#define MN_vcvttph2w 0x3f23 -#define MN_vcvtph2w 0x3f2d -#define MN_vpermi2w 0x3f36 -#define MN_vpmovm2w 0x3f3f -#define MN_vpermt2w 0x3f48 -#define MN_vpshaw 0x3f51 +#define MN_vpcmov 0x3f22 +#define MN_bndmov 0x3f29 +#define MN_smov 0x3f30 +#define MN_rex_w 0x3f35 +#define MN_vcvttph2w 0x3f3b +#define MN_vcvtph2w 0x3f45 +#define MN_vpermi2w 0x3f4e +#define MN_vpmovm2w 0x3f57 +#define MN_vpermt2w 0x3f60 +#define MN_vpshaw 0x3f69 #define MN_psraw (MN_vpsraw + 1) -#define MN_vpsraw 0x3f58 -#define MN_vphsubbw 0x3f5f -#define MN_cbw 0x3f68 +#define MN_vpsraw 0x3f70 +#define MN_vphsubbw 0x3f77 +#define MN_cbw 0x3f80 #define MN_psadbw (MN_vdbpsadbw + 3) -#define MN_vdbpsadbw 0x3f6c +#define MN_vdbpsadbw 0x3f84 #define MN_mpsadbw (MN_vmpsadbw + 1) -#define MN_vmpsadbw 0x3f76 -#define MN_vpsadbw 0x3f7f -#define MN_vphaddbw 0x3f87 +#define MN_vmpsadbw 0x3f8e +#define MN_vpsadbw 0x3f97 +#define MN_vphaddbw 0x3f9f #define MN_punpckhbw (MN_vpunpckhbw + 1) -#define MN_vpunpckhbw 0x3f90 -#define MN_kunpckbw 0x3f9b +#define MN_vpunpckhbw 0x3fa8 +#define MN_kunpckbw 0x3fb3 #define MN_punpcklbw (MN_vpunpcklbw + 1) -#define MN_vpunpcklbw 0x3fa4 -#define MN_vphaddubw 0x3faf +#define MN_vpunpcklbw 0x3fbc +#define MN_vphaddubw 0x3fc7 #define MN_phsubw (MN_vphsubw + 1) -#define MN_vphsubw 0x3fb9 +#define MN_vphsubw 0x3fd1 #define MN_psubw (MN_vpsubw + 1) -#define MN_vpsubw 0x3fc1 +#define MN_vpsubw 0x3fd9 #define MN_pmovsxbw (MN_vpmovsxbw + 1) -#define MN_vpmovsxbw 0x3fc8 +#define MN_vpmovsxbw 0x3fe0 #define MN_pmovzxbw (MN_vpmovzxbw + 1) -#define MN_vpmovzxbw 0x3fd2 -#define MN_fldcw 0x3fdc -#define MN_fstcw 0x3fe2 -#define MN_fnstcw 0x3fe8 +#define MN_vpmovzxbw 0x3fea +#define MN_fldcw 0x3ff4 +#define MN_fstcw 0x3ffa +#define MN_fnstcw 0x4000 #define MN_phaddw (MN_vphaddw + 1) -#define MN_vphaddw 0x3fef -#define MN_kaddw 0x3ff7 +#define MN_vphaddw 0x4007 +#define MN_kaddw 0x400f #define MN_paddw (MN_vpaddw + 1) -#define MN_vpaddw 0x3ffd -#define MN_vpshldw 0x4004 -#define MN_kandw 0x400c -#define MN_vpexpandw 0x4012 +#define MN_vpaddw 0x4015 +#define MN_vpshldw 0x401c +#define MN_kandw 0x4024 +#define MN_vpexpandw 0x402a #define MN_pblendw (MN_vpblendw + 1) -#define MN_vpblendw 0x401c -#define MN_vpshrdw 0x4025 +#define MN_vpblendw 0x4034 +#define MN_vpshrdw 0x403d #define MN_packssdw (MN_vpackssdw + 1) -#define MN_vpackssdw 0x402d +#define MN_vpackssdw 0x4045 #define MN_packusdw (MN_vpackusdw + 1) -#define MN_vpackusdw 0x4037 -#define MN_vpmovusdw 0x4041 -#define MN_vpmovsdw 0x404b -#define MN_vpmovdw 0x4054 -#define MN_vpcomgew 0x405c -#define MN_vpcomlew 0x4065 -#define MN_vpcmpnlew 0x406e -#define MN_vpcmplew 0x4078 -#define MN_vpcomfalsew 0x4081 -#define MN_vpcomtruew 0x408d -#define MN_pi2fw 0x4098 -#define MN_pshufw 0x409e +#define MN_vpackusdw 0x404f +#define MN_vpmovusdw 0x4059 +#define MN_vpmovsdw 0x4063 +#define MN_vpmovdw 0x406c +#define MN_vpcomgew 0x4074 +#define MN_vpcomlew 0x407d +#define MN_vpcmpnlew 0x4086 +#define MN_vpcmplew 0x4090 +#define MN_vpcomfalsew 0x4099 +#define MN_vpcomtruew 0x40a5 +#define MN_pi2fw 0x40b0 +#define MN_pshufw 0x40b6 #define MN_pavgw (MN_vpavgw + 1) -#define MN_vpavgw 0x40a5 -#define MN_prefetchw 0x40ac +#define MN_vpavgw 0x40bd +#define MN_prefetchw 0x40c4 #define MN_pshufhw (MN_vpshufhw + 1) -#define MN_vpshufhw 0x40b6 +#define MN_vpshufhw 0x40ce #define MN_pmulhw (MN_vpmulhw + 1) -#define MN_vpmulhw 0x40bf -#define MN_pf2iw 0x40c7 +#define MN_vpmulhw 0x40d7 +#define MN_pf2iw 0x40df #define MN_pshuflw (MN_vpshuflw + 1) -#define MN_vpshuflw 0x40cd -#define MN_vpshlw 0x40d6 +#define MN_vpshuflw 0x40e5 +#define MN_vpshlw 0x40ee #define MN_psllw (MN_vpsllw + 1) -#define MN_vpsllw 0x40dd +#define MN_vpsllw 0x40f5 #define MN_pmullw (MN_vpmullw + 1) -#define MN_vpmullw 0x40e4 +#define MN_vpmullw 0x40fc #define MN_psrlw (MN_vpsrlw + 1) -#define MN_vpsrlw 0x40ec -#define MN_kshiftlw 0x40f3 -#define MN_vpblendmw 0x40fc -#define MN_vptestnmw 0x4106 -#define MN_vpcomw 0x4110 -#define MN_vpermw 0x4117 -#define MN_vptestmw 0x411e -#define MN_kandnw 0x4127 +#define MN_vpsrlw 0x4104 +#define MN_kshiftlw 0x410b +#define MN_vpblendmw 0x4114 +#define MN_vptestnmw 0x411e +#define MN_vpcomw 0x4128 +#define MN_vpermw 0x412f +#define MN_vptestmw 0x4136 +#define MN_kandnw 0x413f #define MN_psignw (MN_vpsignw + 1) -#define MN_vpsignw 0x412e -#define MN_vpcmpw 0x4136 -#define MN_vpcomeqw 0x413d -#define MN_vpcomneqw 0x4146 -#define MN_vpcmpneqw 0x4150 +#define MN_vpsignw 0x4146 +#define MN_vpcmpw 0x414e +#define MN_vpcomeqw 0x4155 +#define MN_vpcomneqw 0x415e +#define MN_vpcmpneqw 0x4168 #define MN_pcmpeqw (MN_vpcmpeqw + 1) -#define MN_vpcmpeqw 0x415a -#define MN_vpmovusqw 0x4163 -#define MN_vpmovsqw 0x416d -#define MN_vpmovqw 0x4176 -#define MN_verw 0x417e -#define MN_pmulhrw 0x4183 -#define MN_korw 0x418b -#define MN_kxnorw 0x4190 -#define MN_kxorw 0x4197 +#define MN_vpcmpeqw 0x4172 +#define MN_vpmovusqw 0x417b +#define MN_vpmovsqw 0x4185 +#define MN_vpmovqw 0x418e +#define MN_verw 0x4196 +#define MN_pmulhrw 0x419b +#define MN_korw 0x41a3 +#define MN_kxnorw 0x41a8 +#define MN_kxorw 0x41af #define MN_pinsrw (MN_vpinsrw + 1) -#define MN_vpinsrw 0x419d -#define MN_kshiftrw 0x41a5 +#define MN_vpinsrw 0x41b5 +#define MN_kshiftrw 0x41bd #define MN_pextrw (MN_vpextrw + 1) -#define MN_vpextrw 0x41ae +#define MN_vpextrw 0x41c6 #define MN_pabsw (MN_vpabsw + 1) -#define MN_vpabsw 0x41b6 +#define MN_vpabsw 0x41ce #define MN_pmaddubsw (MN_vpmaddubsw + 1) -#define MN_vpmaddubsw 0x41bd +#define MN_vpmaddubsw 0x41d5 #define MN_phsubsw (MN_vphsubsw + 1) -#define MN_vphsubsw 0x41c8 +#define MN_vphsubsw 0x41e0 #define MN_psubsw (MN_vpsubsw + 1) -#define MN_vpsubsw 0x41d1 +#define MN_vpsubsw 0x41e9 #define MN_phaddsw (MN_vphaddsw + 1) -#define MN_vphaddsw 0x41d9 +#define MN_vphaddsw 0x41f1 #define MN_paddsw (MN_vpaddsw + 1) -#define MN_vpaddsw 0x41e2 -#define MN_lmsw 0x41ea -#define MN_smsw 0x41ef +#define MN_vpaddsw 0x41fa +#define MN_lmsw 0x4202 +#define MN_smsw 0x4207 #define MN_pminsw (MN_vpminsw + 1) -#define MN_vpminsw 0x41f4 +#define MN_vpminsw 0x420c #define MN_pmulhrsw (MN_vpmulhrsw + 1) -#define MN_vpmulhrsw 0x41fc -#define MN_vpcompressw 0x4206 -#define MN_fstsw 0x4212 -#define MN_fnstsw 0x4218 +#define MN_vpmulhrsw 0x4214 +#define MN_vpcompressw 0x421e +#define MN_fstsw 0x422a +#define MN_fnstsw 0x4230 #define MN_psubusw (MN_vpsubusw + 1) -#define MN_vpsubusw 0x421f +#define MN_vpsubusw 0x4237 #define MN_paddusw (MN_vpaddusw + 1) -#define MN_vpaddusw 0x4228 -#define MN_movsw 0x4231 +#define MN_vpaddusw 0x4240 +#define MN_movsw 0x4249 #define MN_pmaxsw (MN_vpmaxsw + 1) -#define MN_vpmaxsw 0x4237 -#define MN_cbtw 0x423f -#define MN_vpcomgtw 0x4244 +#define MN_vpmaxsw 0x424f +#define MN_cbtw 0x4257 +#define MN_vpcomgtw 0x425c #define MN_pcmpgtw (MN_vpcmpgtw + 1) -#define MN_vpcmpgtw 0x424d -#define MN_vpcomltw 0x4256 -#define MN_vpcmpnltw 0x425f -#define MN_vpcmpltw 0x4269 -#define MN_vpopcntw 0x4272 -#define MN_knotw 0x427b -#define MN_vprotw 0x4281 -#define MN_vpbroadcastw 0x4288 -#define MN_ktestw 0x4295 -#define MN_kortestw 0x429c -#define MN_vcvttph2uw 0x42a5 -#define MN_vcvtph2uw 0x42b0 -#define MN_vpcomgeuw 0x42ba -#define MN_vpcomleuw 0x42c4 -#define MN_vpcmpnleuw 0x42ce -#define MN_vpcmpleuw 0x42d9 -#define MN_vpcomfalseuw 0x42e3 -#define MN_vpcomtrueuw 0x42f0 +#define MN_vpcmpgtw 0x4265 +#define MN_vpcomltw 0x426e +#define MN_vpcmpnltw 0x4277 +#define MN_vpcmpltw 0x4281 +#define MN_vpopcntw 0x428a +#define MN_knotw 0x4293 +#define MN_vprotw 0x4299 +#define MN_vpbroadcastw 0x42a0 +#define MN_ktestw 0x42ad +#define MN_kortestw 0x42b4 +#define MN_vcvttph2uw 0x42bd +#define MN_vcvtph2uw 0x42c8 +#define MN_vpcomgeuw 0x42d2 +#define MN_vpcomleuw 0x42dc +#define MN_vpcmpnleuw 0x42e6 +#define MN_vpcmpleuw 0x42f1 +#define MN_vpcomfalseuw 0x42fb +#define MN_vpcomtrueuw 0x4308 #define MN_pmulhuw (MN_vpmulhuw + 1) -#define MN_vpmulhuw 0x42fc -#define MN_vpcomuw 0x4305 +#define MN_vpmulhuw 0x4314 +#define MN_vpcomuw 0x431d #define MN_pminuw (MN_vpminuw + 1) -#define MN_vpminuw 0x430d -#define MN_vpcmpuw 0x4315 -#define MN_vpcomequw 0x431d -#define MN_vpcomnequw 0x4327 -#define MN_vpcmpnequw 0x4332 -#define MN_vpcmpequw 0x433d +#define MN_vpminuw 0x4325 +#define MN_vpcmpuw 0x432d +#define MN_vpcomequw 0x4335 +#define MN_vpcomnequw 0x433f +#define MN_vpcmpnequw 0x434a +#define MN_vpcmpequw 0x4355 #define MN_phminposuw (MN_vphminposuw + 1) -#define MN_vphminposuw 0x4347 -#define MN_vpcomgtuw 0x4353 -#define MN_vpcomltuw 0x435d -#define MN_vpcmpnltuw 0x4367 -#define MN_vpcmpltuw 0x4372 +#define MN_vphminposuw 0x435f +#define MN_vpcomgtuw 0x436b +#define MN_vpcomltuw 0x4375 +#define MN_vpcmpnltuw 0x437f +#define MN_vpcmpltuw 0x438a #define MN_pmaxuw (MN_vpmaxuw + 1) -#define MN_vpmaxuw 0x437c -#define MN_vpsravw 0x4384 -#define MN_vpshldvw 0x438c -#define MN_vpshrdvw 0x4395 -#define MN_vpsllvw 0x439e -#define MN_vpsrlvw 0x43a6 -#define MN_kmovw 0x43ae -#define MN_vmovw 0x43b4 -#define MN_vpmacsww 0x43ba -#define MN_vpmacssww 0x43c3 -#define MN_movzw 0x43cd -#define MN_rex_x 0x43d3 -#define MN_fyl2x 0x43d9 -#define MN_rex64x 0x43df -#define MN_vcvtneps2bf16x 0x43e6 -#define MN_pfmax 0x43f5 -#define MN_adcx 0x43fb -#define MN_bndldx 0x4400 -#define MN_vfpclasspdx 0x4407 -#define MN_fclex 0x4413 -#define MN_fnclex 0x4419 -#define MN_rex 0x4420 -#define MN_vcvtpd2phx 0x4424 -#define MN_vcvtdq2phx 0x442f -#define MN_vcvtudq2phx 0x443a -#define MN_vcvtqq2phx 0x4446 -#define MN_vcvtuqq2phx 0x4451 -#define MN_vcvtps2phx 0x445d -#define MN_vfpclassphx 0x4468 -#define MN_shlx 0x4474 -#define MN_mulx 0x4479 -#define MN_adox 0x447e -#define MN_vcvttpd2dqx 0x4483 -#define MN_vcvtpd2dqx 0x448f -#define MN_vcvttpd2udqx 0x449a -#define MN_vcvtpd2udqx 0x44a7 -#define MN_rex_rx 0x44b3 -#define MN_sarx 0x44ba -#define MN_shrx 0x44bf -#define MN_rorx 0x44c4 -#define MN_monitorx 0x44c9 -#define MN_rex_wrx 0x44d2 -#define MN_vcvtpd2psx 0x44da -#define MN_vcvtph2psx 0x44e5 -#define MN_vcvtqq2psx 0x44f0 -#define MN_vcvtuqq2psx 0x44fb -#define MN_vfpclasspsx 0x4507 -#define MN_movsx 0x4513 -#define MN_mwaitx 0x4519 -#define MN_bndstx 0x4520 -#define MN_rex_wx 0x4527 -#define MN_rexx 0x452e -#define MN_vcvtps2phxx 0x4533 -#define MN_movzx 0x453f -#define MN_rex64y 0x4545 -#define MN_vcvtneps2bf16y 0x454c -#define MN_vfpclasspdy 0x455b -#define MN_loadiwkey 0x4567 -#define MN_vcvtpd2phy 0x4571 -#define MN_vcvtdq2phy 0x457c -#define MN_vcvtudq2phy 0x4587 -#define MN_vcvtqq2phy 0x4593 -#define MN_vcvtuqq2phy 0x459e -#define MN_vfpclassphy 0x45aa -#define MN_vcvttpd2dqy 0x45b6 -#define MN_vcvtpd2dqy 0x45c2 -#define MN_vcvttpd2udqy 0x45cd -#define MN_vcvtpd2udqy 0x45da -#define MN_rmpquery 0x45e6 -#define MN_clrssbsy 0x45ef -#define MN_setssbsy 0x45f8 -#define MN_vcvtpd2psy 0x4601 -#define MN_vcvtqq2psy 0x460c -#define MN_vcvtuqq2psy 0x4617 -#define MN_vfpclasspsy 0x4623 -#define MN_rex64xy 0x462f -#define MN_rexy 0x4637 -#define MN_vcvtps2phxy 0x463c -#define MN_rexxy 0x4648 -#define MN_rex64z 0x464e -#define MN_fldz 0x4655 -#define MN_vfpclasspdz 0x465a -#define MN_vcvtpd2phz 0x4666 -#define MN_vcvtqq2phz 0x4671 -#define MN_vcvtuqq2phz 0x467c -#define MN_vfpclassphz 0x4688 -#define MN_jz 0x4694 -#define MN_jnz 0x4697 -#define MN_repnz 0x469b -#define MN_loopnz 0x46a1 -#define MN_setnz 0x46a8 -#define MN_cmovnz 0x46ae -#define MN_repz 0x46b5 -#define MN_loopz 0x46ba -#define MN_vfpclasspsz 0x46c0 -#define MN_setz 0x46cc -#define MN_cmovz 0x46d1 -#define MN_rex64xz 0x46d7 -#define MN_jecxz 0x46df -#define MN_jcxz 0x46e5 -#define MN_jrcxz 0x46ea -#define MN_rexz 0x46f0 -#define MN_rexxz 0x46f5 -#define MN_rex64yz 0x46fb -#define MN_rex64xyz 0x4703 -#define MN_rexyz 0x470c -#define MN_rexxyz 0x4712 -#define MN__disp32_ 0x4719 -#define MN__rex2_ 0x4722 -#define MN__vex2_ 0x4729 -#define MN__vex3_ 0x4730 -#define MN__disp16_ 0x4737 -#define MN__disp8_ 0x4740 -#define MN__load_ 0x4748 -#define MN__store_ 0x474f -#define MN__nooptimize_ 0x4757 -#define MN__rex_ 0x4764 -#define MN__evex_ 0x476a -#define MN__vex_ 0x4771 -#define MN__insn 0x4777 +#define MN_vpmaxuw 0x4394 +#define MN_vpsravw 0x439c +#define MN_vpshldvw 0x43a4 +#define MN_vpshrdvw 0x43ad +#define MN_vpsllvw 0x43b6 +#define MN_vpsrlvw 0x43be +#define MN_kmovw 0x43c6 +#define MN_vmovw 0x43cc +#define MN_vpmacsww 0x43d2 +#define MN_vpmacssww 0x43db +#define MN_movzw 0x43e5 +#define MN_rex_x 0x43eb +#define MN_fyl2x 0x43f1 +#define MN_rex64x 0x43f7 +#define MN_vcvtneps2bf16x 0x43fe +#define MN_pfmax 0x440d +#define MN_adcx 0x4413 +#define MN_bndldx 0x4418 +#define MN_vfpclasspdx 0x441f +#define MN_fclex 0x442b +#define MN_fnclex 0x4431 +#define MN_rex 0x4438 +#define MN_vcvtpd2phx 0x443c +#define MN_vcvtdq2phx 0x4447 +#define MN_vcvtudq2phx 0x4452 +#define MN_vcvtqq2phx 0x445e +#define MN_vcvtuqq2phx 0x4469 +#define MN_vcvtps2phx 0x4475 +#define MN_vfpclassphx 0x4480 +#define MN_shlx 0x448c +#define MN_mulx 0x4491 +#define MN_adox 0x4496 +#define MN_vcvttpd2dqx 0x449b +#define MN_vcvtpd2dqx 0x44a7 +#define MN_vcvttpd2udqx 0x44b2 +#define MN_vcvtpd2udqx 0x44bf +#define MN_rex_rx 0x44cb +#define MN_sarx 0x44d2 +#define MN_shrx 0x44d7 +#define MN_rorx 0x44dc +#define MN_monitorx 0x44e1 +#define MN_rex_wrx 0x44ea +#define MN_vcvtpd2psx 0x44f2 +#define MN_vcvtph2psx 0x44fd +#define MN_vcvtqq2psx 0x4508 +#define MN_vcvtuqq2psx 0x4513 +#define MN_vfpclasspsx 0x451f +#define MN_movsx 0x452b +#define MN_mwaitx 0x4531 +#define MN_bndstx 0x4538 +#define MN_rex_wx 0x453f +#define MN_rexx 0x4546 +#define MN_vcvtps2phxx 0x454b +#define MN_movzx 0x4557 +#define MN_rex64y 0x455d +#define MN_vcvtneps2bf16y 0x4564 +#define MN_vfpclasspdy 0x4573 +#define MN_loadiwkey 0x457f +#define MN_vcvtpd2phy 0x4589 +#define MN_vcvtdq2phy 0x4594 +#define MN_vcvtudq2phy 0x459f +#define MN_vcvtqq2phy 0x45ab +#define MN_vcvtuqq2phy 0x45b6 +#define MN_vfpclassphy 0x45c2 +#define MN_vcvttpd2dqy 0x45ce +#define MN_vcvtpd2dqy 0x45da +#define MN_vcvttpd2udqy 0x45e5 +#define MN_vcvtpd2udqy 0x45f2 +#define MN_rmpquery 0x45fe +#define MN_clrssbsy 0x4607 +#define MN_setssbsy 0x4610 +#define MN_vcvtpd2psy 0x4619 +#define MN_vcvtqq2psy 0x4624 +#define MN_vcvtuqq2psy 0x462f +#define MN_vfpclasspsy 0x463b +#define MN_rex64xy 0x4647 +#define MN_rexy 0x464f +#define MN_vcvtps2phxy 0x4654 +#define MN_rexxy 0x4660 +#define MN_rex64z 0x4666 +#define MN_fldz 0x466d +#define MN_vfpclasspdz 0x4672 +#define MN_vcvtpd2phz 0x467e +#define MN_vcvtqq2phz 0x4689 +#define MN_vcvtuqq2phz 0x4694 +#define MN_vfpclassphz 0x46a0 +#define MN_jz 0x46ac +#define MN_jnz 0x46af +#define MN_repnz 0x46b3 +#define MN_loopnz 0x46b9 +#define MN_setnz 0x46c0 +#define MN_cmovnz 0x46c6 +#define MN_repz 0x46cd +#define MN_loopz 0x46d2 +#define MN_vfpclasspsz 0x46d8 +#define MN_setz 0x46e4 +#define MN_cmovz 0x46e9 +#define MN_rex64xz 0x46ef +#define MN_jecxz 0x46f7 +#define MN_jcxz 0x46fd +#define MN_jrcxz 0x4702 +#define MN_rexz 0x4708 +#define MN_rexxz 0x470d +#define MN_rex64yz 0x4713 +#define MN_rex64xyz 0x471b +#define MN_rexyz 0x4724 +#define MN_rexxyz 0x472a +#define MN__disp32_ 0x4731 +#define MN__rex2_ 0x473a +#define MN__vex2_ 0x4741 +#define MN__vex3_ 0x4748 +#define MN__disp16_ 0x474f +#define MN__disp8_ 0x4758 +#define MN__load_ 0x4760 +#define MN__store_ 0x4767 +#define MN__nooptimize_ 0x476f +#define MN__rex_ 0x477c +#define MN__evex_ 0x4782 +#define MN__vex_ 0x4789 +#define MN__insn 0x478f diff --git a/opcodes/i386-opc.tbl b/opcodes/i386-opc.tbl index 54c6590..900ca36 100644 --- a/opcodes/i386-opc.tbl +++ b/opcodes/i386-opc.tbl @@ -3480,3 +3480,12 @@ uwrmsr, 0xf30f38f8, USER_MSR, Modrm|NoSuf|NoRex64, { Reg64, Reg64 } uwrmsr, 0xf3f8/0, USER_MSR, Modrm|Vex128|VexMap7|VexW0|NoSuf, { Imm32, Reg64 } // USER_MSR instructions end. + +// APX Push2/Pop2 instructions. + +push2, 0xff/6, APX_F, Modrm|VexW0|EVex128|EVexMap4|VexVVVV|No_bSuf|No_wSuf|No_lSuf|No_sSuf, { Reg64, Reg64 } +push2p, 0xff/6, APX_F, Modrm|VexW1|EVex128|EVexMap4|VexVVVV|No_bSuf|No_wSuf|No_lSuf|No_sSuf, { Reg64, Reg64 } +pop2, 0x8f/0, APX_F, Modrm|VexW0|EVex128|EVexMap4|VexVVVV|No_bSuf|No_wSuf|No_lSuf|No_sSuf, { Reg64, Reg64 } +pop2p, 0x8f/0, APX_F, Modrm|VexW1|EVex128|EVexMap4|VexVVVV|No_bSuf|No_wSuf|No_lSuf|No_sSuf, { Reg64, Reg64 } + +// APX Push2/Pop2 instructions end. diff --git a/opcodes/i386-tbl.h b/opcodes/i386-tbl.h index b451f5b..303a0e7 100644 --- a/opcodes/i386-tbl.h +++ b/opcodes/i386-tbl.h @@ -37287,6 +37287,42 @@ static const insn_template i386_optab[] = 0, 0, 0, 0, 0, 0 } }, { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 } } } }, + { MN_push2, 0xff, 2, SPACE_EVEXMAP4, 6, + { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { MN_push2p, 0xff, 2, SPACE_EVEXMAP4, 6, + { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { MN_pop2, 0x8f, 2, SPACE_EVEXMAP4, 0, + { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } } } }, + { MN_pop2p, 0x8f, 2, SPACE_EVEXMAP4, 0, + { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, + { { 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0 } }, + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }, + { { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } }, + { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, + 0, 0, 0, 0, 0, 0 } } } }, }; /* i386 opcode sets table. */ @@ -37586,7 +37622,8 @@ static const i386_op_off_t i386_op_sets[] = 3842, 3843, 3844, 3845, 3846, 3847, 3848, 3849, 3850, 3851, 3852, 3853, 3854, 3855, 3856, 3857, 3858, 3859, 3860, 3861, 3862, 3863, 3865, 3867, - 3869, 3871, 3873, 3874, 3875, 3877, 3879 + 3869, 3871, 3873, 3874, 3875, 3877, 3879, 3880, + 3881, 3882, 3883 }; /* i386 mnemonics table. */ @@ -37624,7 +37661,9 @@ const char i386_mnemonics[] = "\0""vsha512msg2" "\0""vsm3msg2" "\0""sha256msg2" + "\0""push2" "\0""fldln2" + "\0""pop2" "\0""vsha512rnds2" "\0""vsm3rnds2" "\0""sha256rnds2" @@ -38714,6 +38753,8 @@ const char i386_mnemonics[] = "\0""cqto" "\0""ssto" "\0""cmovo" + "\0""push2p" + "\0""pop2p" "\0""bswap" "\0""fsubp" "\0""pfrcp" -- 2.7.4