]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Support Intel AVX10.2 minmax, vector copy and compare instructions
authorHaochen Jiang <haochen.jiang@intel.com>
Mon, 23 Dec 2024 03:32:03 +0000 (11:32 +0800)
committerHaochen Jiang <haochen.jiang@intel.com>
Mon, 23 Dec 2024 03:32:03 +0000 (11:32 +0800)
In this patch, we will support AVX10.2 minmax, vector copy and compare
instructions. This will finish the new instruction form support for
AVX10.2. Most of them are new instructions forms except for vmovd
and vmovw, which are extended usage from the old ones.

gas/ChangeLog:

* NEWS: Mention AVX10.2.
* testsuite/gas/i386/i386.exp: Add AVX10.2 tests.
* testsuite/gas/i386/x86-64.exp: Ditto.
* testsuite/gas/i386/avx10_2-256-5-intel.d: New test.
* testsuite/gas/i386/avx10_2-256-miscs.d: Ditto.
* testsuite/gas/i386/avx10_2-256-miscs.s: Ditto.
* testsuite/gas/i386/avx10_2-512-miscs-intel.d: Ditto.
* testsuite/gas/i386/avx10_2-512-miscs.d: Ditto.
* testsuite/gas/i386/avx10_2-512-miscs.s: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-256-miscs-intel.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-256-miscs.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-256-miscs.s: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-512-miscs-intel.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-512-miscs.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-512-miscs.s: Ditto.

opcodes/ChangeLog:

* i386-dis-evex-len.h: Add EVEX_LEN_0F7E_P_1_W_1,
EVEX_LEN_0FD6_P_2_W_0, EVEX_LEN_MAP5_6E and EVEX_LEN_MAP5_7E.
* i386-dis-evex-prefix.h: Add PREFIX_EVEX_0F2E, PREFIX_EVEX_0F2F,
PREFIX_EVEX_0F3A52, PREFIX_EVEX_0F3A53, PREFIX_EVEX_MAP5_2E,
PREFIX_EVEX_MAP5_2F, PREFIX_EVEX_MAP5_6E and PREFIX_EVEX_MAP5_7E.
* i386-dis-evex-w.h: Adjust EVEX_W_0F3A42, EVEX_W_0F7E_P_1
and EVEX_W_0FD6. Add EVEX_W_MAP5_6E_P_1 and EVEX_W_MAP5_7E_P_1.
* i386-dis-evex.h: Add and adjust table entries for AVX10.2.
* i386-dis.c (PREFIX_EVEX_0F2E): New.
(PREFIX_EVEX_0F2F): Ditto.
(PREFIX_EVEX_0F3A52): Ditto.
(PREFIX_EVEX_0F3A53): Ditto.
(PREFIX_EVEX_MAP5_2E): Ditto.
(PREFIX_EVEX_MAP5_2F): Ditto.
(PREFIX_EVEX_MAP5_6E_L_0): Ditto.
(PREFIX_EVEX_MAP5_7E_L_0): Ditto.
(EVEX_LEN_0F7E_P_1_W_1): Ditto.
(EVEX_LEN_0FD6_P_2_W_0): Ditto.
(EVEX_LEN_MAP5_6E): Ditto.
(EVEX_LEN_MAP5_7E): Ditto.
(EVEX_W_MAP5_6E_P_1): Ditto.
(EVEX_W_MAP5_7E_P_1): Ditto.
* i386-opc.tbl: Add AVX10.2 instructions.
* i386-mnem.h: Regenerated.
* i386-tbl.h: Ditto.

Co-authored-by: Jun Zhang <jun.zhang@intel.com>
Co-authored-by: Zewei Mo <zewei.mo@intel.com>
23 files changed:
gas/NEWS
gas/testsuite/gas/i386/avx10_2-256-miscs-intel.d [new file with mode: 0644]
gas/testsuite/gas/i386/avx10_2-256-miscs.d [new file with mode: 0644]
gas/testsuite/gas/i386/avx10_2-256-miscs.s [new file with mode: 0644]
gas/testsuite/gas/i386/avx10_2-512-miscs-intel.d [new file with mode: 0644]
gas/testsuite/gas/i386/avx10_2-512-miscs.d [new file with mode: 0644]
gas/testsuite/gas/i386/avx10_2-512-miscs.s [new file with mode: 0644]
gas/testsuite/gas/i386/i386.exp
gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs-intel.d [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs.d [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs.s [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs-intel.d [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs.d [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs.s [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64.exp
opcodes/i386-dis-evex-len.h
opcodes/i386-dis-evex-prefix.h
opcodes/i386-dis-evex-w.h
opcodes/i386-dis-evex.h
opcodes/i386-dis.c
opcodes/i386-mnem.h
opcodes/i386-opc.tbl
opcodes/i386-tbl.h

index 8d4bca61126c9653cba1387c840e8938c1bf9266..51f2a97291b9e80127eee061b274fa67bc3cd288 100644 (file)
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -1,5 +1,7 @@
 -*- text -*-
 
+* Add support for the x86 Intel AVX10.2 instructions.
+
 * Add support for the x86 Intel SM4 AVX10.2 instructions.
 
 * Support for Nios II targets has been dropped, as the architecture has
diff --git a/gas/testsuite/gas/i386/avx10_2-256-miscs-intel.d b/gas/testsuite/gas/i386/avx10_2-256-miscs-intel.d
new file mode 100644 (file)
index 0000000..6f2215b
--- /dev/null
@@ -0,0 +1,112 @@
+#objdump: -dw -Mintel
+#name: i386 AVX10.2/256 minmax, vector copy and compare insns (Intel disassembly)
+#source: avx10_2-256-miscs.s
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+#...
+[a-f0-9]+ <_intel>:
+\s*[a-f0-9]+:\s*62 f3 57 08 52 f4 7b\s+vminmaxpbf16 xmm6,xmm5,xmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 57 28 52 f4 7b\s+vminmaxpbf16 ymm6,ymm5,ymm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 57 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxpbf16 ymm6\{k7\},ymm5,YMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 28 52 71 7f 7b\s+vminmaxpbf16 ymm6,ymm5,YMMWORD PTR \[ecx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxpbf16 xmm6\{k7\},xmm5,XMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 08 52 71 7f 7b\s+vminmaxpbf16 xmm6,xmm5,XMMWORD PTR \[ecx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 08 52 f4 7b\s+vminmaxpd xmm6,xmm5,xmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 28 52 f4 7b\s+vminmaxpd ymm6,ymm5,ymm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxpd ymm6\{k7\},ymm5,YMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 28 52 71 7f 7b\s+vminmaxpd ymm6,ymm5,YMMWORD PTR \[ecx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxpd xmm6\{k7\},xmm5,XMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 08 52 71 7f 7b\s+vminmaxpd xmm6,xmm5,XMMWORD PTR \[ecx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 08 52 f4 7b\s+vminmaxph xmm6,xmm5,xmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 54 28 52 f4 7b\s+vminmaxph ymm6,ymm5,ymm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 54 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxph ymm6\{k7\},ymm5,YMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 28 52 71 7f 7b\s+vminmaxph ymm6,ymm5,YMMWORD PTR \[ecx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxph xmm6\{k7\},xmm5,XMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 08 52 71 7f 7b\s+vminmaxph xmm6,xmm5,XMMWORD PTR \[ecx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 08 52 f4 7b\s+vminmaxps xmm6,xmm5,xmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 55 28 52 f4 7b\s+vminmaxps ymm6,ymm5,ymm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 55 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxps ymm6\{k7\},ymm5,YMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 28 52 71 7f 7b\s+vminmaxps ymm6,ymm5,YMMWORD PTR \[ecx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxps xmm6\{k7\},xmm5,XMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 08 52 71 7f 7b\s+vminmaxps xmm6,xmm5,XMMWORD PTR \[ecx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 38 52 31 7b\s+vminmaxpbf16 ymm6,ymm5,WORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 bf 52 72 80 7b\s+vminmaxpbf16 ymm6\{k7\}\{z\},ymm5,WORD BCST \[edx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 18 52 31 7b\s+vminmaxpbf16 xmm6,xmm5,WORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 9f 52 72 80 7b\s+vminmaxpbf16 xmm6\{k7\}\{z\},xmm5,WORD BCST \[edx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d1 18 52 f4 7b\s+vminmaxpd ymm6,ymm5,ymm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 38 52 31 7b\s+vminmaxpd ymm6,ymm5,QWORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 bf 52 72 80 7b\s+vminmaxpd ymm6\{k7\}\{z\},ymm5,QWORD BCST \[edx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 18 52 31 7b\s+vminmaxpd xmm6,xmm5,QWORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 9f 52 72 80 7b\s+vminmaxpd xmm6\{k7\}\{z\},xmm5,QWORD BCST \[edx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 f3 50 18 52 f4 7b\s+vminmaxph ymm6,ymm5,ymm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 54 38 52 31 7b\s+vminmaxph ymm6,ymm5,WORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 bf 52 72 80 7b\s+vminmaxph ymm6\{k7\}\{z\},ymm5,WORD BCST \[edx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 18 52 31 7b\s+vminmaxph xmm6,xmm5,WORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 9f 52 72 80 7b\s+vminmaxph xmm6\{k7\}\{z\},xmm5,WORD BCST \[edx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 f3 51 18 52 f4 7b\s+vminmaxps ymm6,ymm5,ymm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 55 38 52 31 7b\s+vminmaxps ymm6,ymm5,DWORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 bf 52 72 80 7b\s+vminmaxps ymm6\{k7\}\{z\},ymm5,DWORD BCST \[edx-0x200\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 18 52 31 7b\s+vminmaxps xmm6,xmm5,DWORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 9f 52 72 80 7b\s+vminmaxps xmm6\{k7\}\{z\},xmm5,DWORD BCST \[edx-0x200\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 08 53 f4 7b\s+vminmaxsd xmm6,xmm5,xmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 18 53 f4 7b\s+vminmaxsd xmm6,xmm5,xmm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 0f 53 b4 f4 00 00 00 10 7b\s+vminmaxsd xmm6\{k7\},xmm5,QWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 08 53 31 7b\s+vminmaxsd xmm6,xmm5,QWORD PTR \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 08 53 f4 7b\s+vminmaxsh xmm6,xmm5,xmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 54 18 53 f4 7b\s+vminmaxsh xmm6,xmm5,xmm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 54 0f 53 b4 f4 00 00 00 10 7b\s+vminmaxsh xmm6\{k7\},xmm5,WORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 08 53 31 7b\s+vminmaxsh xmm6,xmm5,WORD PTR \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 08 53 f4 7b\s+vminmaxss xmm6,xmm5,xmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 55 18 53 f4 7b\s+vminmaxss xmm6,xmm5,xmm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 55 0f 53 b4 f4 00 00 00 10 7b\s+vminmaxss xmm6\{k7\},xmm5,DWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 08 53 31 7b\s+vminmaxss xmm6,xmm5,DWORD PTR \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 08 53 71 7f 7b\s+vminmaxsd xmm6,xmm5,QWORD PTR \[ecx\+0x3f8\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 8f 53 72 80 7b\s+vminmaxsd xmm6\{k7\}\{z\},xmm5,QWORD PTR \[edx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 08 53 71 7f 7b\s+vminmaxsh xmm6,xmm5,WORD PTR \[ecx\+0xfe\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 8f 53 72 80 7b\s+vminmaxsh xmm6\{k7\}\{z\},xmm5,WORD PTR \[edx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 08 53 71 7f 7b\s+vminmaxss xmm6,xmm5,DWORD PTR \[ecx\+0x1fc\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 8f 53 72 80 7b\s+vminmaxss xmm6\{k7\}\{z\},xmm5,DWORD PTR \[edx-0x200\],0x7b
+\s*[a-f0-9]+:\s*62 f1 7e 08 7e f5\s+vmovd  xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f1 7d 08 d6 ee\s+vmovd  xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f5 7e 08 6e f5\s+vmovw  xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f5 7e 08 7e ee\s+vmovw  xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f f5\s+vcomxsd xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f1 ff 18 2f f5\s+vcomxsd xmm6,xmm5\{sae\}
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f b4 f4 00 00 00 10\s+vcomxsd xmm6,QWORD PTR \[esp\+esi\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f 31\s+vcomxsd xmm6,QWORD PTR \[ecx\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f f5\s+vcomxsh xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f5 7e 18 2f f5\s+vcomxsh xmm6,xmm5\{sae\}
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f b4 f4 00 00 00 10\s+vcomxsh xmm6,WORD PTR \[esp\+esi\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f 31\s+vcomxsh xmm6,WORD PTR \[ecx\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f f5\s+vcomxss xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f1 7e 18 2f f5\s+vcomxss xmm6,xmm5\{sae\}
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f b4 f4 00 00 00 10\s+vcomxss xmm6,DWORD PTR \[esp\+esi\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f 31\s+vcomxss xmm6,DWORD PTR \[ecx\]
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f 71 7f\s+vcomxsd xmm6,QWORD PTR \[ecx\+0x3f8\]
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f 72 80\s+vcomxsd xmm6,QWORD PTR \[edx-0x400\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f 71 7f\s+vcomxsh xmm6,WORD PTR \[ecx\+0xfe\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f 72 80\s+vcomxsh xmm6,WORD PTR \[edx-0x100\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f 71 7f\s+vcomxss xmm6,DWORD PTR \[ecx\+0x1fc\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f 72 80\s+vcomxss xmm6,DWORD PTR \[edx-0x200\]
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e f5\s+vucomxsd xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f1 ff 18 2e f5\s+vucomxsd xmm6,xmm5\{sae\}
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e b4 f4 00 00 00 10\s+vucomxsd xmm6,QWORD PTR \[esp\+esi\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e 31\s+vucomxsd xmm6,QWORD PTR \[ecx\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e f5\s+vucomxsh xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f5 7e 18 2e f5\s+vucomxsh xmm6,xmm5\{sae\}
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e b4 f4 00 00 00 10\s+vucomxsh xmm6,WORD PTR \[esp\+esi\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e 31\s+vucomxsh xmm6,WORD PTR \[ecx\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e f5\s+vucomxss xmm6,xmm5
+\s*[a-f0-9]+:\s*62 f1 7e 18 2e f5\s+vucomxss xmm6,xmm5\{sae\}
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e b4 f4 00 00 00 10\s+vucomxss xmm6,DWORD PTR \[esp\+esi\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e 31\s+vucomxss xmm6,DWORD PTR \[ecx\]
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e 71 7f\s+vucomxsd xmm6,QWORD PTR \[ecx\+0x3f8\]
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e 72 80\s+vucomxsd xmm6,QWORD PTR \[edx-0x400\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e 71 7f\s+vucomxsh xmm6,WORD PTR \[ecx\+0xfe\]
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e 72 80\s+vucomxsh xmm6,WORD PTR \[edx-0x100\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e 71 7f\s+vucomxss xmm6,DWORD PTR \[ecx\+0x1fc\]
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e 72 80\s+vucomxss xmm6,DWORD PTR \[edx-0x200\]
+#pass
diff --git a/gas/testsuite/gas/i386/avx10_2-256-miscs.d b/gas/testsuite/gas/i386/avx10_2-256-miscs.d
new file mode 100644 (file)
index 0000000..bb262b1
--- /dev/null
@@ -0,0 +1,110 @@
+#objdump: -dw
+#name: i386 AVX10.2/256 minmax, vector copy and compare insns
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+0+ <_start>:
+\s*[a-f0-9]+:\s*62 f3 57 08 52 f4 7b\s+vminmaxpbf16\s\$0x7b,%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 57 28 52 f4 7b\s+vminmaxpbf16\s\$0x7b,%ymm4,%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 57 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxpbf16\s\$0x7b,0x10000000\(%esp,%esi,8\),%ymm5,%ymm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 57 28 52 71 7f 7b\s+vminmaxpbf16\s\$0x7b,0xfe0\(%ecx\),%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 57 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxpbf16\s\$0x7b,0x10000000\(%esp,%esi,8\),%xmm5,%xmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 57 08 52 71 7f 7b\s+vminmaxpbf16\s\$0x7b,0x7f0\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 d5 08 52 f4 7b\s+vminmaxpd\s\$0x7b,%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 d5 28 52 f4 7b\s+vminmaxpd\s\$0x7b,%ymm4,%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 d5 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxpd\s\$0x7b,0x10000000\(%esp,%esi,8\),%ymm5,%ymm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 d5 28 52 71 7f 7b\s+vminmaxpd\s\$0x7b,0xfe0\(%ecx\),%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 d5 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxpd\s\$0x7b,0x10000000\(%esp,%esi,8\),%xmm5,%xmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 d5 08 52 71 7f 7b\s+vminmaxpd\s\$0x7b,0x7f0\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 54 08 52 f4 7b\s+vminmaxph\s\$0x7b,%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 54 28 52 f4 7b\s+vminmaxph\s\$0x7b,%ymm4,%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 54 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxph\s\$0x7b,0x10000000\(%esp,%esi,8\),%ymm5,%ymm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 54 28 52 71 7f 7b\s+vminmaxph\s\$0x7b,0xfe0\(%ecx\),%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 54 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxph\s\$0x7b,0x10000000\(%esp,%esi,8\),%xmm5,%xmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 54 08 52 71 7f 7b\s+vminmaxph\s\$0x7b,0x7f0\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 55 08 52 f4 7b\s+vminmaxps\s\$0x7b,%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 55 28 52 f4 7b\s+vminmaxps\s\$0x7b,%ymm4,%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 55 2f 52 b4 f4 00 00 00 10 7b\s+vminmaxps\s\$0x7b,0x10000000\(%esp,%esi,8\),%ymm5,%ymm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 55 28 52 71 7f 7b\s+vminmaxps\s\$0x7b,0xfe0\(%ecx\),%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 55 0f 52 b4 f4 00 00 00 10 7b\s+vminmaxps\s\$0x7b,0x10000000\(%esp,%esi,8\),%xmm5,%xmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 55 08 52 71 7f 7b\s+vminmaxps\s\$0x7b,0x7f0\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 57 38 52 31 7b\s+vminmaxpbf16\s\$0x7b,\(%ecx\)\{1to16\},%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 57 bf 52 72 80 7b\s+vminmaxpbf16\s\$0x7b,-0x100\(%edx\)\{1to16\},%ymm5,%ymm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 57 18 52 31 7b\s+vminmaxpbf16\s\$0x7b,\(%ecx\)\{1to8\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 57 9f 52 72 80 7b\s+vminmaxpbf16\s\$0x7b,-0x100\(%edx\)\{1to8\},%xmm5,%xmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 d1 18 52 f4 7b\s+vminmaxpd\s\$0x7b,\{sae\},%ymm4,%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 d5 38 52 31 7b\s+vminmaxpd\s\$0x7b,\(%ecx\)\{1to4\},%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 d5 bf 52 72 80 7b\s+vminmaxpd\s\$0x7b,-0x400\(%edx\)\{1to4\},%ymm5,%ymm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 d5 18 52 31 7b\s+vminmaxpd\s\$0x7b,\(%ecx\)\{1to2\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 d5 9f 52 72 80 7b\s+vminmaxpd\s\$0x7b,-0x400\(%edx\)\{1to2\},%xmm5,%xmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 50 18 52 f4 7b\s+vminmaxph\s\$0x7b,\{sae\},%ymm4,%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 54 38 52 31 7b\s+vminmaxph\s\$0x7b,\(%ecx\)\{1to16\},%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 54 bf 52 72 80 7b\s+vminmaxph\s\$0x7b,-0x100\(%edx\)\{1to16\},%ymm5,%ymm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 54 18 52 31 7b\s+vminmaxph\s\$0x7b,\(%ecx\)\{1to8\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 54 9f 52 72 80 7b\s+vminmaxph\s\$0x7b,-0x100\(%edx\)\{1to8\},%xmm5,%xmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 51 18 52 f4 7b\s+vminmaxps\s\$0x7b,\{sae\},%ymm4,%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 55 38 52 31 7b\s+vminmaxps\s\$0x7b,\(%ecx\)\{1to8\},%ymm5,%ymm6
+\s*[a-f0-9]+:\s*62 f3 55 bf 52 72 80 7b\s+vminmaxps\s\$0x7b,-0x200\(%edx\)\{1to8\},%ymm5,%ymm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 55 18 52 31 7b\s+vminmaxps\s\$0x7b,\(%ecx\)\{1to4\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 55 9f 52 72 80 7b\s+vminmaxps\s\$0x7b,-0x200\(%edx\)\{1to4\},%xmm5,%xmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 d5 08 53 f4 7b\s+vminmaxsd\s\$0x7b,%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 d5 18 53 f4 7b\s+vminmaxsd\s\$0x7b,\{sae\},%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 d5 0f 53 b4 f4 00 00 00 10 7b\s+vminmaxsd\s\$0x7b,0x10000000\(%esp,%esi,8\),%xmm5,%xmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 d5 08 53 31 7b\s+vminmaxsd\s\$0x7b,\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 54 08 53 f4 7b\s+vminmaxsh\s\$0x7b,%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 54 18 53 f4 7b\s+vminmaxsh\s\$0x7b,\{sae\},%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 54 0f 53 b4 f4 00 00 00 10 7b\s+vminmaxsh\s\$0x7b,0x10000000\(%esp,%esi,8\),%xmm5,%xmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 54 08 53 31 7b\s+vminmaxsh\s\$0x7b,\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 55 08 53 f4 7b\s+vminmaxss\s\$0x7b,%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 55 18 53 f4 7b\s+vminmaxss\s\$0x7b,\{sae\},%xmm4,%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 55 0f 53 b4 f4 00 00 00 10 7b\s+vminmaxss\s\$0x7b,0x10000000\(%esp,%esi,8\),%xmm5,%xmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 55 08 53 31 7b\s+vminmaxss\s\$0x7b,\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 d5 08 53 71 7f 7b\s+vminmaxsd\s\$0x7b,0x3f8\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 d5 8f 53 72 80 7b\s+vminmaxsd\s\$0x7b,-0x400\(%edx\),%xmm5,%xmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 54 08 53 71 7f 7b\s+vminmaxsh\s\$0x7b,0xfe\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 54 8f 53 72 80 7b\s+vminmaxsh\s\$0x7b,-0x100\(%edx\),%xmm5,%xmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 55 08 53 71 7f 7b\s+vminmaxss\s\$0x7b,0x1fc\(%ecx\),%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f3 55 8f 53 72 80 7b\s+vminmaxss\s\$0x7b,-0x200\(%edx\),%xmm5,%xmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f1 7e 08 7e f5\s+vmovd  %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 7d 08 d6 ee\s+vmovd  %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 6e f5\s+vmovw  %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 7e ee\s+vmovw  %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f f5\s+vcomxsd %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 18 2f f5\s+vcomxsd \{sae\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f b4 f4 00 00 00 10\s+vcomxsd 0x10000000\(%esp,%esi,8\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f 31\s+vcomxsd \(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f f5\s+vcomxsh %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 18 2f f5\s+vcomxsh \{sae\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f b4 f4 00 00 00 10\s+vcomxsh 0x10000000\(%esp,%esi,8\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f 31\s+vcomxsh \(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f f5\s+vcomxss %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 18 2f f5\s+vcomxss \{sae\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f b4 f4 00 00 00 10\s+vcomxss 0x10000000\(%esp,%esi,8\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f 31\s+vcomxss \(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f 71 7f\s+vcomxsd 0x3f8\(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2f 72 80\s+vcomxsd -0x400\(%edx\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f 71 7f\s+vcomxsh 0xfe\(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2f 72 80\s+vcomxsh -0x100\(%edx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f 71 7f\s+vcomxss 0x1fc\(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2f 72 80\s+vcomxss -0x200\(%edx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e f5\s+vucomxsd %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 18 2e f5\s+vucomxsd \{sae\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e b4 f4 00 00 00 10\s+vucomxsd 0x10000000\(%esp,%esi,8\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e 31\s+vucomxsd \(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e f5\s+vucomxsh %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 18 2e f5\s+vucomxsh \{sae\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e b4 f4 00 00 00 10\s+vucomxsh 0x10000000\(%esp,%esi,8\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e 31\s+vucomxsh \(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e f5\s+vucomxss %xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 18 2e f5\s+vucomxss \{sae\},%xmm5,%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e b4 f4 00 00 00 10\s+vucomxss 0x10000000\(%esp,%esi,8\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e 31\s+vucomxss \(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e 71 7f\s+vucomxsd 0x3f8\(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 ff 08 2e 72 80\s+vucomxsd -0x400\(%edx\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e 71 7f\s+vucomxsh 0xfe\(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f5 7e 08 2e 72 80\s+vucomxsh -0x100\(%edx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e 71 7f\s+vucomxss 0x1fc\(%ecx\),%xmm6
+\s*[a-f0-9]+:\s*62 f1 7e 08 2e 72 80\s+vucomxss -0x200\(%edx\),%xmm6
+#pass
diff --git a/gas/testsuite/gas/i386/avx10_2-256-miscs.s b/gas/testsuite/gas/i386/avx10_2-256-miscs.s
new file mode 100644 (file)
index 0000000..78a1502
--- /dev/null
@@ -0,0 +1,135 @@
+# Check 32bit AVX10.2/256 instructions
+
+       .arch generic32
+       .arch .avx10.2/256
+       .text
+_start:
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       $123, %xmm4, %xmm5, %xmm6
+       vminmax\m       $123, %ymm4, %ymm5, %ymm6
+       vminmax\m       $123, 0x10000000(%esp, %esi, 8), %ymm5, %ymm6{%k7}
+       vminmax\m       $123, 4064(%ecx), %ymm5, %ymm6
+       vminmax\m       $123, 0x10000000(%esp, %esi, 8), %xmm5, %xmm6{%k7}
+       vminmax\m       $123, 2032(%ecx), %xmm5, %xmm6
+       .endr
+
+       vminmaxpbf16    $123, (%ecx){1to16}, %ymm5, %ymm6
+       vminmaxpbf16    $123, -256(%edx){1to16}, %ymm5, %ymm6{%k7}{z}
+       vminmaxpbf16    $123, (%ecx){1to8}, %xmm5, %xmm6
+       vminmaxpbf16    $123, -256(%edx){1to8}, %xmm5, %xmm6{%k7}{z}
+       vminmaxpd       $123, {sae}, %ymm4, %ymm5, %ymm6
+       vminmaxpd       $123, (%ecx){1to4}, %ymm5, %ymm6
+       vminmaxpd       $123, -1024(%edx){1to4}, %ymm5, %ymm6{%k7}{z}
+       vminmaxpd       $123, (%ecx){1to2}, %xmm5, %xmm6
+       vminmaxpd       $123, -1024(%edx){1to2}, %xmm5, %xmm6{%k7}{z}
+       vminmaxph       $123, {sae}, %ymm4, %ymm5, %ymm6
+       vminmaxph       $123, (%ecx){1to16}, %ymm5, %ymm6
+       vminmaxph       $123, -256(%edx){1to16}, %ymm5, %ymm6{%k7}{z}
+       vminmaxph       $123, (%ecx){1to8}, %xmm5, %xmm6
+       vminmaxph       $123, -256(%edx){1to8}, %xmm5, %xmm6{%k7}{z}
+       vminmaxps       $123, {sae}, %ymm4, %ymm5, %ymm6
+       vminmaxps       $123, (%ecx){1to8}, %ymm5, %ymm6
+       vminmaxps       $123, -512(%edx){1to8}, %ymm5, %ymm6{%k7}{z}
+       vminmaxps       $123, (%ecx){1to4}, %xmm5, %xmm6
+       vminmaxps       $123, -512(%edx){1to4}, %xmm5, %xmm6{%k7}{z}
+
+       .irp m, d, h, s
+       vminmaxs\m      $123, %xmm4, %xmm5, %xmm6
+       vminmaxs\m      $123, {sae}, %xmm4, %xmm5, %xmm6
+       vminmaxs\m      $123, 0x10000000(%esp, %esi, 8), %xmm5, %xmm6{%k7}
+       vminmaxs\m      $123, (%ecx), %xmm5, %xmm6
+       .endr
+
+       vminmaxsd       $123, 1016(%ecx), %xmm5, %xmm6
+       vminmaxsd       $123, -1024(%edx), %xmm5, %xmm6{%k7}{z}
+       vminmaxsh       $123, 254(%ecx), %xmm5, %xmm6
+       vminmaxsh       $123, -256(%edx), %xmm5, %xmm6{%k7}{z}
+       vminmaxss       $123, 508(%ecx), %xmm5, %xmm6
+       vminmaxss       $123, -512(%edx), %xmm5, %xmm6{%k7}{z}
+
+       vmovd   %xmm5, %xmm6
+       vmovd.s %xmm5, %xmm6
+       vmovw   %xmm5, %xmm6
+       vmovw.s %xmm5, %xmm6
+
+       .irp u, "", u
+       .irp m, d, h, s
+       v\u\()comxs\m   %xmm5, %xmm6
+       v\u\()comxs\m   {sae}, %xmm5, %xmm6
+       v\u\()comxs\m   0x10000000(%esp, %esi, 8), %xmm6
+       v\u\()comxs\m   (%ecx), %xmm6
+       .endr
+
+       v\u\()comxsd    1016(%ecx), %xmm6
+       v\u\()comxsd    -1024(%edx), %xmm6
+       v\u\()comxsh    254(%ecx), %xmm6
+       v\u\()comxsh    -256(%edx), %xmm6
+       v\u\()comxss    508(%ecx), %xmm6
+       v\u\()comxss    -512(%edx), %xmm6
+       .endr
+
+_intel:
+       .intel_syntax noprefix
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       xmm6, xmm5, xmm4, 123
+       vminmax\m       ymm6, ymm5, ymm4, 123
+       vminmax\m       ymm6{k7}, ymm5, [esp+esi*8+0x10000000], 123
+       vminmax\m       ymm6, ymm5, YMMWORD PTR [ecx+4064], 123
+       vminmax\m       xmm6{k7}, xmm5, [esp+esi*8+0x10000000], 123
+       vminmax\m       xmm6, xmm5, XMMWORD PTR [ecx+2032], 123
+       .endr
+
+       vminmaxpbf16    ymm6, ymm5, [ecx]{1to16}, 123
+       vminmaxpbf16    ymm6{k7}{z}, ymm5, WORD PTR [edx-256]{1to16}, 123
+       vminmaxpbf16    xmm6, xmm5, [ecx]{1to8}, 123
+       vminmaxpbf16    xmm6{k7}{z}, xmm5, WORD PTR [edx-256]{1to8}, 123
+       vminmaxpd       ymm6, ymm5, ymm4, {sae}, 123
+       vminmaxpd       ymm6, ymm5, QWORD PTR [ecx]{1to4}, 123
+       vminmaxpd       ymm6{k7}{z}, ymm5, [edx-1024]{1to4}, 123
+       vminmaxpd       xmm6, xmm5, QWORD PTR [ecx]{1to2}, 123
+       vminmaxpd       xmm6{k7}{z}, xmm5, [edx-1024]{1to2}, 123
+       vminmaxph       ymm6, ymm5, ymm4, {sae}, 123
+       vminmaxph       ymm6, ymm5, [ecx]{1to16}, 123
+       vminmaxph       ymm6{k7}{z}, ymm5, WORD PTR [edx-256]{1to16}, 123
+       vminmaxph       xmm6, xmm5, WORD PTR [ecx]{1to8}, 123
+       vminmaxph       xmm6{k7}{z}, xmm5, [edx-256]{1to8}, 123
+       vminmaxps       ymm6, ymm5, ymm4, {sae}, 123
+       vminmaxps       ymm6, ymm5, DWORD PTR [ecx]{1to8}, 123
+       vminmaxps       ymm6{k7}{z}, ymm5, [edx-512]{1to8}, 123
+       vminmaxps       xmm6, xmm5, [ecx]{1to4}, 123
+       vminmaxps       xmm6{k7}{z}, xmm5, DWORD PTR [edx-512]{1to4}, 123
+
+       .irp m, d, h, s
+       vminmaxs\m      xmm6, xmm5, xmm4, 123
+       vminmaxs\m      xmm6, xmm5, xmm4, {sae}, 123
+       vminmaxs\m      xmm6{k7}, xmm5, [esp+esi*8+0x10000000], 123
+       vminmaxs\m      xmm6, xmm5, [ecx], 123
+       .endr
+
+       vminmaxsd       xmm6, xmm5, [ecx+1016], 123
+       vminmaxsd       xmm6{k7}{z}, xmm5, QWORD PTR [edx-1024], 123
+       vminmaxsh       xmm6, xmm5, [ecx+254], 123
+       vminmaxsh       xmm6{k7}{z}, xmm5, WORD PTR [edx-256], 123
+       vminmaxss       xmm6, xmm5, DWORD PTR [ecx+508], 123
+       vminmaxss       xmm6{k7}{z}, xmm5, [edx-512], 123
+
+       vmovd   xmm6, xmm5
+       vmovd.s xmm6, xmm5
+       vmovw   xmm6, xmm5
+       vmovw.s xmm6, xmm5
+
+       .irp u, "", u
+       .irp m, d, h, s
+       v\u\()comxs\m   xmm6, xmm5
+       v\u\()comxs\m   xmm6, xmm5, {sae}
+       v\u\()comxs\m   xmm6, [esp+esi*8+0x10000000]
+       v\u\()comxs\m   xmm6, [ecx]
+       .endr
+
+       v\u\()comxsd    xmm6, [ecx+1016]
+       v\u\()comxsd    xmm6, QWORD PTR [edx-1024]
+       v\u\()comxsh    xmm6, [ecx+254]
+       v\u\()comxsh    xmm6, WORD PTR [edx-256]
+       v\u\()comxss    xmm6, DWORD PTR [ecx+508]
+       v\u\()comxss    xmm6, [edx-512]
+       .endr
diff --git a/gas/testsuite/gas/i386/avx10_2-512-miscs-intel.d b/gas/testsuite/gas/i386/avx10_2-512-miscs-intel.d
new file mode 100644 (file)
index 0000000..862a397
--- /dev/null
@@ -0,0 +1,34 @@
+#objdump: -dw -Mintel
+#name: i386 AVX10.2/512 minmax insns (Intel disassembly)
+#source: avx10_2-512-miscs.s
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+#...
+[a-f0-9]+ <_intel>:
+\s*[a-f0-9]+:\s*62 f3 57 48 52 f4 7b\s+vminmaxpbf16 zmm6,zmm5,zmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 57 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxpbf16 zmm6\{k7\},zmm5,ZMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 48 52 71 7f 7b\s+vminmaxpbf16 zmm6,zmm5,ZMMWORD PTR \[ecx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 48 52 f4 7b\s+vminmaxpd zmm6,zmm5,zmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxpd zmm6\{k7\},zmm5,ZMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 48 52 71 7f 7b\s+vminmaxpd zmm6,zmm5,ZMMWORD PTR \[ecx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 48 52 f4 7b\s+vminmaxph zmm6,zmm5,zmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 54 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxph zmm6\{k7\},zmm5,ZMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 48 52 71 7f 7b\s+vminmaxph zmm6,zmm5,ZMMWORD PTR \[ecx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 48 52 f4 7b\s+vminmaxps zmm6,zmm5,zmm4,0x7b
+\s*[a-f0-9]+:\s*62 f3 55 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxps zmm6\{k7\},zmm5,ZMMWORD PTR \[esp\+esi\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 48 52 71 7f 7b\s+vminmaxps zmm6,zmm5,ZMMWORD PTR \[ecx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 58 52 31 7b\s+vminmaxpbf16 zmm6,zmm5,WORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 57 df 52 72 80 7b\s+vminmaxpbf16 zmm6\{k7\}\{z\},zmm5,WORD BCST \[edx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 18 52 f4 7b\s+vminmaxpd zmm6,zmm5,zmm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 58 52 31 7b\s+vminmaxpd zmm6,zmm5,QWORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 d5 df 52 72 80 7b\s+vminmaxpd zmm6\{k7\}\{z\},zmm5,QWORD BCST \[edx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 18 52 f4 7b\s+vminmaxph zmm6,zmm5,zmm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 54 58 52 31 7b\s+vminmaxph zmm6,zmm5,WORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 54 df 52 72 80 7b\s+vminmaxph zmm6\{k7\}\{z\},zmm5,WORD BCST \[edx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 18 52 f4 7b\s+vminmaxps zmm6,zmm5,zmm4\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 f3 55 58 52 31 7b\s+vminmaxps zmm6,zmm5,DWORD BCST \[ecx\],0x7b
+\s*[a-f0-9]+:\s*62 f3 55 df 52 72 80 7b\s+vminmaxps zmm6\{k7\}\{z\},zmm5,DWORD BCST \[edx-0x200\],0x7b
+#pass
diff --git a/gas/testsuite/gas/i386/avx10_2-512-miscs.d b/gas/testsuite/gas/i386/avx10_2-512-miscs.d
new file mode 100644 (file)
index 0000000..4eb49ca
--- /dev/null
@@ -0,0 +1,32 @@
+#objdump: -dw
+#name: i386 AVX10.2/512 minmax insns
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+0+ <_start>:
+\s*[a-f0-9]+:\s*62 f3 57 48 52 f4 7b\s+vminmaxpbf16\s\$0x7b,%zmm4,%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 57 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxpbf16\s\$0x7b,0x10000000\(%esp,%esi,8\),%zmm5,%zmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 57 48 52 71 7f 7b\s+vminmaxpbf16\s\$0x7b,0x1fc0\(%ecx\),%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 d5 48 52 f4 7b\s+vminmaxpd\s\$0x7b,%zmm4,%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 d5 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxpd\s\$0x7b,0x10000000\(%esp,%esi,8\),%zmm5,%zmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 d5 48 52 71 7f 7b\s+vminmaxpd\s\$0x7b,0x1fc0\(%ecx\),%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 54 48 52 f4 7b\s+vminmaxph\s\$0x7b,%zmm4,%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 54 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxph\s\$0x7b,0x10000000\(%esp,%esi,8\),%zmm5,%zmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 54 48 52 71 7f 7b\s+vminmaxph\s\$0x7b,0x1fc0\(%ecx\),%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 55 48 52 f4 7b\s+vminmaxps\s\$0x7b,%zmm4,%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 55 4f 52 b4 f4 00 00 00 10 7b\s+vminmaxps\s\$0x7b,0x10000000\(%esp,%esi,8\),%zmm5,%zmm6\{%k7\}
+\s*[a-f0-9]+:\s*62 f3 55 48 52 71 7f 7b\s+vminmaxps\s\$0x7b,0x1fc0\(%ecx\),%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 57 58 52 31 7b\s+vminmaxpbf16\s\$0x7b,\(%ecx\)\{1to32\},%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 57 df 52 72 80 7b\s+vminmaxpbf16\s\$0x7b,-0x100\(%edx\)\{1to32\},%zmm5,%zmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 d5 18 52 f4 7b\s+vminmaxpd\s\$0x7b,\{sae\},%zmm4,%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 d5 58 52 31 7b\s+vminmaxpd\s\$0x7b,\(%ecx\)\{1to8\},%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 d5 df 52 72 80 7b\s+vminmaxpd\s\$0x7b,-0x400\(%edx\)\{1to8\},%zmm5,%zmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 54 18 52 f4 7b\s+vminmaxph\s\$0x7b,\{sae\},%zmm4,%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 54 58 52 31 7b\s+vminmaxph\s\$0x7b,\(%ecx\)\{1to32\},%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 54 df 52 72 80 7b\s+vminmaxph\s\$0x7b,-0x100\(%edx\)\{1to32\},%zmm5,%zmm6\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 f3 55 18 52 f4 7b\s+vminmaxps\s\$0x7b,\{sae\},%zmm4,%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 55 58 52 31 7b\s+vminmaxps\s\$0x7b,\(%ecx\)\{1to16\},%zmm5,%zmm6
+\s*[a-f0-9]+:\s*62 f3 55 df 52 72 80 7b\s+vminmaxps\s\$0x7b,-0x200\(%edx\)\{1to16\},%zmm5,%zmm6\{%k7\}\{z\}
+#pass
diff --git a/gas/testsuite/gas/i386/avx10_2-512-miscs.s b/gas/testsuite/gas/i386/avx10_2-512-miscs.s
new file mode 100644 (file)
index 0000000..20a5614
--- /dev/null
@@ -0,0 +1,43 @@
+# Check 32bit AVX10.2/512 instructions
+
+       .arch generic32
+       .arch .avx10.2/512
+       .text
+_start:
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       $123, %zmm4, %zmm5, %zmm6
+       vminmax\m       $123, 0x10000000(%esp, %esi, 8), %zmm5, %zmm6{%k7}
+       vminmax\m       $123, 8128(%ecx), %zmm5, %zmm6
+       .endr
+
+       vminmaxpbf16    $123, (%ecx){1to32}, %zmm5, %zmm6
+       vminmaxpbf16    $123, -256(%edx){1to32}, %zmm5, %zmm6{%k7}{z}
+       vminmaxpd       $123, {sae}, %zmm4, %zmm5, %zmm6
+       vminmaxpd       $123, (%ecx){1to8}, %zmm5, %zmm6
+       vminmaxpd       $123, -1024(%edx){1to8}, %zmm5, %zmm6{%k7}{z}
+       vminmaxph       $123, {sae}, %zmm4, %zmm5, %zmm6
+       vminmaxph       $123, (%ecx){1to32}, %zmm5, %zmm6
+       vminmaxph       $123, -256(%edx){1to32}, %zmm5, %zmm6{%k7}{z}
+       vminmaxps       $123, {sae}, %zmm4, %zmm5, %zmm6
+       vminmaxps       $123, (%ecx){1to16}, %zmm5, %zmm6
+       vminmaxps       $123, -512(%edx){1to16}, %zmm5, %zmm6{%k7}{z}
+
+_intel:
+       .intel_syntax noprefix
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       zmm6, zmm5, zmm4, 123
+       vminmax\m       zmm6{k7}, zmm5, [esp+esi*8+0x10000000], 123
+       vminmax\m       zmm6, zmm5, ZMMWORD PTR [ecx+8128], 123
+       .endr
+
+       vminmaxpbf16    zmm6, zmm5, [ecx]{1to32}, 123
+       vminmaxpbf16    zmm6{k7}{z}, zmm5, WORD PTR [edx-256]{1to32}, 123
+       vminmaxpd       zmm6, zmm5, zmm4, {sae}, 123
+       vminmaxpd       zmm6, zmm5, QWORD PTR [ecx]{1to8}, 123
+       vminmaxpd       zmm6{k7}{z}, zmm5, [edx-1024]{1to8}, 123
+       vminmaxph       zmm6, zmm5, zmm4, {sae}, 123
+       vminmaxph       zmm6, zmm5, WORD PTR [ecx]{1to32}, 123
+       vminmaxph       zmm6{k7}{z}, zmm5, [edx-256]{1to32}, 123
+       vminmaxps       zmm6, zmm5, zmm4, {sae}, 123
+       vminmaxps       zmm6, zmm5, [ecx]{1to16}, 123
+       vminmaxps       zmm6{k7}{z}, zmm5, DWORD PTR [edx-512]{1to16}, 123
index 75a2aa5337d91534ea8d84150036887273d595e4..9a310375123c58af72933cef337c72cba13b624c 100644 (file)
@@ -532,6 +532,10 @@ if [gas_32_check] then {
     run_dump_test "avx10_2-512-satcvt-intel"
     run_dump_test "avx10_2-256-satcvt"
     run_dump_test "avx10_2-256-satcvt-intel"
+    run_dump_test "avx10_2-512-miscs"
+    run_dump_test "avx10_2-512-miscs-intel"
+    run_dump_test "avx10_2-256-miscs"
+    run_dump_test "avx10_2-256-miscs-intel"
     run_dump_test "avx10_2-256-sm4"
     run_dump_test "avx10_2-256-sm4-intel"
     run_dump_test "avx10_2-512-sm4"
diff --git a/gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs-intel.d b/gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs-intel.d
new file mode 100644 (file)
index 0000000..f16a08b
--- /dev/null
@@ -0,0 +1,112 @@
+#objdump: -dw -Mintel
+#name: x86_64 AVX10.2/256 minmax, vector copy and compare insns (Intel disassembly)
+#source: x86-64-avx10_2-256-miscs.s
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+#...
+[a-f0-9]+ <_intel>:
+\s*[a-f0-9]+:\s*62 03 17 00 52 f4 7b\s+vminmaxpbf16 xmm30,xmm29,xmm28,0x7b
+\s*[a-f0-9]+:\s*62 03 17 20 52 f4 7b\s+vminmaxpbf16 ymm30,ymm29,ymm28,0x7b
+\s*[a-f0-9]+:\s*62 23 17 27 52 b4 f5 00 00 00 10 7b\s+vminmaxpbf16 ymm30\{k7\},ymm29,YMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 17 20 52 71 7f 7b\s+vminmaxpbf16 ymm30,ymm29,YMMWORD PTR \[rcx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 23 17 07 52 b4 f5 00 00 00 10 7b\s+vminmaxpbf16 xmm30\{k7\},xmm29,XMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 17 00 52 71 7f 7b\s+vminmaxpbf16 xmm30,xmm29,XMMWORD PTR \[rcx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 03 95 00 52 f4 7b\s+vminmaxpd xmm30,xmm29,xmm28,0x7b
+\s*[a-f0-9]+:\s*62 03 95 20 52 f4 7b\s+vminmaxpd ymm30,ymm29,ymm28,0x7b
+\s*[a-f0-9]+:\s*62 23 95 27 52 b4 f5 00 00 00 10 7b\s+vminmaxpd ymm30\{k7\},ymm29,YMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 20 52 71 7f 7b\s+vminmaxpd ymm30,ymm29,YMMWORD PTR \[rcx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 23 95 07 52 b4 f5 00 00 00 10 7b\s+vminmaxpd xmm30\{k7\},xmm29,XMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 00 52 71 7f 7b\s+vminmaxpd xmm30,xmm29,XMMWORD PTR \[rcx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 03 14 00 52 f4 7b\s+vminmaxph xmm30,xmm29,xmm28,0x7b
+\s*[a-f0-9]+:\s*62 03 14 20 52 f4 7b\s+vminmaxph ymm30,ymm29,ymm28,0x7b
+\s*[a-f0-9]+:\s*62 23 14 27 52 b4 f5 00 00 00 10 7b\s+vminmaxph ymm30\{k7\},ymm29,YMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 20 52 71 7f 7b\s+vminmaxph ymm30,ymm29,YMMWORD PTR \[rcx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 23 14 07 52 b4 f5 00 00 00 10 7b\s+vminmaxph xmm30\{k7\},xmm29,XMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 00 52 71 7f 7b\s+vminmaxph xmm30,xmm29,XMMWORD PTR \[rcx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 03 15 00 52 f4 7b\s+vminmaxps xmm30,xmm29,xmm28,0x7b
+\s*[a-f0-9]+:\s*62 03 15 20 52 f4 7b\s+vminmaxps ymm30,ymm29,ymm28,0x7b
+\s*[a-f0-9]+:\s*62 23 15 27 52 b4 f5 00 00 00 10 7b\s+vminmaxps ymm30\{k7\},ymm29,YMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 20 52 71 7f 7b\s+vminmaxps ymm30,ymm29,YMMWORD PTR \[rcx\+0xfe0\],0x7b
+\s*[a-f0-9]+:\s*62 23 15 07 52 b4 f5 00 00 00 10 7b\s+vminmaxps xmm30\{k7\},xmm29,XMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 00 52 71 7f 7b\s+vminmaxps xmm30,xmm29,XMMWORD PTR \[rcx\+0x7f0\],0x7b
+\s*[a-f0-9]+:\s*62 43 17 30 52 31 7b\s+vminmaxpbf16 ymm30,ymm29,WORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 17 b7 52 72 80 7b\s+vminmaxpbf16 ymm30\{k7\}\{z\},ymm29,WORD BCST \[rdx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 43 17 10 52 31 7b\s+vminmaxpbf16 xmm30,xmm29,WORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 17 97 52 72 80 7b\s+vminmaxpbf16 xmm30\{k7\}\{z\},xmm29,WORD BCST \[rdx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 03 91 10 52 f4 7b\s+vminmaxpd ymm30,ymm29,ymm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 43 95 30 52 31 7b\s+vminmaxpd ymm30,ymm29,QWORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 b7 52 72 80 7b\s+vminmaxpd ymm30\{k7\}\{z\},ymm29,QWORD BCST \[rdx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 43 95 10 52 31 7b\s+vminmaxpd xmm30,xmm29,QWORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 97 52 72 80 7b\s+vminmaxpd xmm30\{k7\}\{z\},xmm29,QWORD BCST \[rdx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 03 10 10 52 f4 7b\s+vminmaxph ymm30,ymm29,ymm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 43 14 30 52 31 7b\s+vminmaxph ymm30,ymm29,WORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 b7 52 72 80 7b\s+vminmaxph ymm30\{k7\}\{z\},ymm29,WORD BCST \[rdx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 43 14 10 52 31 7b\s+vminmaxph xmm30,xmm29,WORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 97 52 72 80 7b\s+vminmaxph xmm30\{k7\}\{z\},xmm29,WORD BCST \[rdx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 03 11 10 52 f4 7b\s+vminmaxps ymm30,ymm29,ymm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 43 15 30 52 31 7b\s+vminmaxps ymm30,ymm29,DWORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 b7 52 72 80 7b\s+vminmaxps ymm30\{k7\}\{z\},ymm29,DWORD BCST \[rdx-0x200\],0x7b
+\s*[a-f0-9]+:\s*62 43 15 10 52 31 7b\s+vminmaxps xmm30,xmm29,DWORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 97 52 72 80 7b\s+vminmaxps xmm30\{k7\}\{z\},xmm29,DWORD BCST \[rdx-0x200\],0x7b
+\s*[a-f0-9]+:\s*62 03 95 00 53 f4 7b\s+vminmaxsd xmm30,xmm29,xmm28,0x7b
+\s*[a-f0-9]+:\s*62 03 95 10 53 f4 7b\s+vminmaxsd xmm30,xmm29,xmm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 23 95 07 53 b4 f5 00 00 00 10 7b\s+vminmaxsd xmm30\{k7\},xmm29,QWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 43 95 00 53 31 7b\s+vminmaxsd xmm30,xmm29,QWORD PTR \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 03 14 00 53 f4 7b\s+vminmaxsh xmm30,xmm29,xmm28,0x7b
+\s*[a-f0-9]+:\s*62 03 14 10 53 f4 7b\s+vminmaxsh xmm30,xmm29,xmm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 23 14 07 53 b4 f5 00 00 00 10 7b\s+vminmaxsh xmm30\{k7\},xmm29,WORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 43 14 00 53 31 7b\s+vminmaxsh xmm30,xmm29,WORD PTR \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 03 15 00 53 f4 7b\s+vminmaxss xmm30,xmm29,xmm28,0x7b
+\s*[a-f0-9]+:\s*62 03 15 10 53 f4 7b\s+vminmaxss xmm30,xmm29,xmm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 23 15 07 53 b4 f5 00 00 00 10 7b\s+vminmaxss xmm30\{k7\},xmm29,DWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 43 15 00 53 31 7b\s+vminmaxss xmm30,xmm29,DWORD PTR \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 00 53 71 7f 7b\s+vminmaxsd xmm30,xmm29,QWORD PTR \[rcx\+0x3f8\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 87 53 72 80 7b\s+vminmaxsd xmm30\{k7\}\{z\},xmm29,QWORD PTR \[rdx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 00 53 71 7f 7b\s+vminmaxsh xmm30,xmm29,WORD PTR \[rcx\+0xfe\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 87 53 72 80 7b\s+vminmaxsh xmm30\{k7\}\{z\},xmm29,WORD PTR \[rdx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 00 53 71 7f 7b\s+vminmaxss xmm30,xmm29,DWORD PTR \[rcx\+0x1fc\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 87 53 72 80 7b\s+vminmaxss xmm30\{k7\}\{z\},xmm29,DWORD PTR \[rdx-0x200\],0x7b
+\s*[a-f0-9]+:\s*62 01 7e 08 7e f5\s+vmovd  xmm30,xmm29
+\s*[a-f0-9]+:\s*62 01 7d 08 d6 ee\s+vmovd  xmm30,xmm29
+\s*[a-f0-9]+:\s*62 05 7e 08 6e f5\s+vmovw  xmm30,xmm29
+\s*[a-f0-9]+:\s*62 05 7e 08 7e ee\s+vmovw  xmm30,xmm29
+\s*[a-f0-9]+:\s*62 01 ff 08 2f f5\s+vcomxsd xmm30,xmm29
+\s*[a-f0-9]+:\s*62 01 ff 18 2f f5\s+vcomxsd xmm30,xmm29\{sae\}
+\s*[a-f0-9]+:\s*62 21 ff 08 2f b4 f5 00 00 00 10\s+vcomxsd xmm30,QWORD PTR \[rbp\+r14\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 41 ff 08 2f 31\s+vcomxsd xmm30,QWORD PTR \[r9\]
+\s*[a-f0-9]+:\s*62 05 7e 08 2f f5\s+vcomxsh xmm30,xmm29
+\s*[a-f0-9]+:\s*62 05 7e 18 2f f5\s+vcomxsh xmm30,xmm29\{sae\}
+\s*[a-f0-9]+:\s*62 25 7e 08 2f b4 f5 00 00 00 10\s+vcomxsh xmm30,WORD PTR \[rbp\+r14\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 45 7e 08 2f 31\s+vcomxsh xmm30,WORD PTR \[r9\]
+\s*[a-f0-9]+:\s*62 01 7e 08 2f f5\s+vcomxss xmm30,xmm29
+\s*[a-f0-9]+:\s*62 01 7e 18 2f f5\s+vcomxss xmm30,xmm29\{sae\}
+\s*[a-f0-9]+:\s*62 21 7e 08 2f b4 f5 00 00 00 10\s+vcomxss xmm30,DWORD PTR \[rbp\+r14\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 41 7e 08 2f 31\s+vcomxss xmm30,DWORD PTR \[r9\]
+\s*[a-f0-9]+:\s*62 61 ff 08 2f 71 7f\s+vcomxsd xmm30,QWORD PTR \[rcx\+0x3f8\]
+\s*[a-f0-9]+:\s*62 61 ff 08 2f 72 80\s+vcomxsd xmm30,QWORD PTR \[rdx-0x400\]
+\s*[a-f0-9]+:\s*62 65 7e 08 2f 71 7f\s+vcomxsh xmm30,WORD PTR \[rcx\+0xfe\]
+\s*[a-f0-9]+:\s*62 65 7e 08 2f 72 80\s+vcomxsh xmm30,WORD PTR \[rdx-0x100\]
+\s*[a-f0-9]+:\s*62 61 7e 08 2f 71 7f\s+vcomxss xmm30,DWORD PTR \[rcx\+0x1fc\]
+\s*[a-f0-9]+:\s*62 61 7e 08 2f 72 80\s+vcomxss xmm30,DWORD PTR \[rdx-0x200\]
+\s*[a-f0-9]+:\s*62 01 ff 08 2e f5\s+vucomxsd xmm30,xmm29
+\s*[a-f0-9]+:\s*62 01 ff 18 2e f5\s+vucomxsd xmm30,xmm29\{sae\}
+\s*[a-f0-9]+:\s*62 21 ff 08 2e b4 f5 00 00 00 10\s+vucomxsd xmm30,QWORD PTR \[rbp\+r14\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 41 ff 08 2e 31\s+vucomxsd xmm30,QWORD PTR \[r9\]
+\s*[a-f0-9]+:\s*62 05 7e 08 2e f5\s+vucomxsh xmm30,xmm29
+\s*[a-f0-9]+:\s*62 05 7e 18 2e f5\s+vucomxsh xmm30,xmm29\{sae\}
+\s*[a-f0-9]+:\s*62 25 7e 08 2e b4 f5 00 00 00 10\s+vucomxsh xmm30,WORD PTR \[rbp\+r14\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 45 7e 08 2e 31\s+vucomxsh xmm30,WORD PTR \[r9\]
+\s*[a-f0-9]+:\s*62 01 7e 08 2e f5\s+vucomxss xmm30,xmm29
+\s*[a-f0-9]+:\s*62 01 7e 18 2e f5\s+vucomxss xmm30,xmm29\{sae\}
+\s*[a-f0-9]+:\s*62 21 7e 08 2e b4 f5 00 00 00 10\s+vucomxss xmm30,DWORD PTR \[rbp\+r14\*8\+0x10000000\]
+\s*[a-f0-9]+:\s*62 41 7e 08 2e 31\s+vucomxss xmm30,DWORD PTR \[r9\]
+\s*[a-f0-9]+:\s*62 61 ff 08 2e 71 7f\s+vucomxsd xmm30,QWORD PTR \[rcx\+0x3f8\]
+\s*[a-f0-9]+:\s*62 61 ff 08 2e 72 80\s+vucomxsd xmm30,QWORD PTR \[rdx-0x400\]
+\s*[a-f0-9]+:\s*62 65 7e 08 2e 71 7f\s+vucomxsh xmm30,WORD PTR \[rcx\+0xfe\]
+\s*[a-f0-9]+:\s*62 65 7e 08 2e 72 80\s+vucomxsh xmm30,WORD PTR \[rdx-0x100\]
+\s*[a-f0-9]+:\s*62 61 7e 08 2e 71 7f\s+vucomxss xmm30,DWORD PTR \[rcx\+0x1fc\]
+\s*[a-f0-9]+:\s*62 61 7e 08 2e 72 80\s+vucomxss xmm30,DWORD PTR \[rdx-0x200\]
+#pass
diff --git a/gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs.d b/gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs.d
new file mode 100644 (file)
index 0000000..12ef7fb
--- /dev/null
@@ -0,0 +1,110 @@
+#objdump: -dw
+#name: x86_64 AVX10.2/256 minmax, vector copy and compare insns
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+0+ <_start>:
+\s*[a-f0-9]+:\s*62 03 17 00 52 f4 7b\s+vminmaxpbf16\s\$0x7b,%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 17 20 52 f4 7b\s+vminmaxpbf16\s\$0x7b,%ymm28,%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 17 27 52 b4 f5 00 00 00 10 7b\s+vminmaxpbf16\s\$0x7b,0x10000000\(%rbp,%r14,8\),%ymm29,%ymm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 17 20 52 71 7f 7b\s+vminmaxpbf16\s\$0x7b,0xfe0\(%rcx\),%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 17 07 52 b4 f5 00 00 00 10 7b\s+vminmaxpbf16\s\$0x7b,0x10000000\(%rbp,%r14,8\),%xmm29,%xmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 17 00 52 71 7f 7b\s+vminmaxpbf16\s\$0x7b,0x7f0\(%rcx\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 95 00 52 f4 7b\s+vminmaxpd\s\$0x7b,%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 95 20 52 f4 7b\s+vminmaxpd\s\$0x7b,%ymm28,%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 95 27 52 b4 f5 00 00 00 10 7b\s+vminmaxpd\s\$0x7b,0x10000000\(%rbp,%r14,8\),%ymm29,%ymm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 95 20 52 71 7f 7b\s+vminmaxpd\s\$0x7b,0xfe0\(%rcx\),%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 95 07 52 b4 f5 00 00 00 10 7b\s+vminmaxpd\s\$0x7b,0x10000000\(%rbp,%r14,8\),%xmm29,%xmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 95 00 52 71 7f 7b\s+vminmaxpd\s\$0x7b,0x7f0\(%rcx\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 14 00 52 f4 7b\s+vminmaxph\s\$0x7b,%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 14 20 52 f4 7b\s+vminmaxph\s\$0x7b,%ymm28,%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 14 27 52 b4 f5 00 00 00 10 7b\s+vminmaxph\s\$0x7b,0x10000000\(%rbp,%r14,8\),%ymm29,%ymm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 14 20 52 71 7f 7b\s+vminmaxph\s\$0x7b,0xfe0\(%rcx\),%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 14 07 52 b4 f5 00 00 00 10 7b\s+vminmaxph\s\$0x7b,0x10000000\(%rbp,%r14,8\),%xmm29,%xmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 14 00 52 71 7f 7b\s+vminmaxph\s\$0x7b,0x7f0\(%rcx\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 15 00 52 f4 7b\s+vminmaxps\s\$0x7b,%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 15 20 52 f4 7b\s+vminmaxps\s\$0x7b,%ymm28,%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 15 27 52 b4 f5 00 00 00 10 7b\s+vminmaxps\s\$0x7b,0x10000000\(%rbp,%r14,8\),%ymm29,%ymm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 15 20 52 71 7f 7b\s+vminmaxps\s\$0x7b,0xfe0\(%rcx\),%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 23 15 07 52 b4 f5 00 00 00 10 7b\s+vminmaxps\s\$0x7b,0x10000000\(%rbp,%r14,8\),%xmm29,%xmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 15 00 52 71 7f 7b\s+vminmaxps\s\$0x7b,0x7f0\(%rcx\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 43 17 30 52 31 7b\s+vminmaxpbf16\s\$0x7b,\(%r9\)\{1to16\},%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 63 17 b7 52 72 80 7b\s+vminmaxpbf16\s\$0x7b,-0x100\(%rdx\)\{1to16\},%ymm29,%ymm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 43 17 10 52 31 7b\s+vminmaxpbf16\s\$0x7b,\(%r9\)\{1to8\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 17 97 52 72 80 7b\s+vminmaxpbf16\s\$0x7b,-0x100\(%rdx\)\{1to8\},%xmm29,%xmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 03 91 10 52 f4 7b\s+vminmaxpd\s\$0x7b,\{sae\},%ymm28,%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 43 95 30 52 31 7b\s+vminmaxpd\s\$0x7b,\(%r9\)\{1to4\},%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 63 95 b7 52 72 80 7b\s+vminmaxpd\s\$0x7b,-0x400\(%rdx\)\{1to4\},%ymm29,%ymm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 43 95 10 52 31 7b\s+vminmaxpd\s\$0x7b,\(%r9\)\{1to2\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 95 97 52 72 80 7b\s+vminmaxpd\s\$0x7b,-0x400\(%rdx\)\{1to2\},%xmm29,%xmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 03 10 10 52 f4 7b\s+vminmaxph\s\$0x7b,\{sae\},%ymm28,%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 43 14 30 52 31 7b\s+vminmaxph\s\$0x7b,\(%r9\)\{1to16\},%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 63 14 b7 52 72 80 7b\s+vminmaxph\s\$0x7b,-0x100\(%rdx\)\{1to16\},%ymm29,%ymm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 43 14 10 52 31 7b\s+vminmaxph\s\$0x7b,\(%r9\)\{1to8\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 14 97 52 72 80 7b\s+vminmaxph\s\$0x7b,-0x100\(%rdx\)\{1to8\},%xmm29,%xmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 03 11 10 52 f4 7b\s+vminmaxps\s\$0x7b,\{sae\},%ymm28,%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 43 15 30 52 31 7b\s+vminmaxps\s\$0x7b,\(%r9\)\{1to8\},%ymm29,%ymm30
+\s*[a-f0-9]+:\s*62 63 15 b7 52 72 80 7b\s+vminmaxps\s\$0x7b,-0x200\(%rdx\)\{1to8\},%ymm29,%ymm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 43 15 10 52 31 7b\s+vminmaxps\s\$0x7b,\(%r9\)\{1to4\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 15 97 52 72 80 7b\s+vminmaxps\s\$0x7b,-0x200\(%rdx\)\{1to4\},%xmm29,%xmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 03 95 00 53 f4 7b\s+vminmaxsd\s\$0x7b,%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 95 10 53 f4 7b\s+vminmaxsd\s\$0x7b,\{sae\},%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 23 95 07 53 b4 f5 00 00 00 10 7b\s+vminmaxsd\s\$0x7b,0x10000000\(%rbp,%r14,8\),%xmm29,%xmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 43 95 00 53 31 7b\s+vminmaxsd\s\$0x7b,\(%r9\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 14 00 53 f4 7b\s+vminmaxsh\s\$0x7b,%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 14 10 53 f4 7b\s+vminmaxsh\s\$0x7b,\{sae\},%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 23 14 07 53 b4 f5 00 00 00 10 7b\s+vminmaxsh\s\$0x7b,0x10000000\(%rbp,%r14,8\),%xmm29,%xmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 43 14 00 53 31 7b\s+vminmaxsh\s\$0x7b,\(%r9\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 15 00 53 f4 7b\s+vminmaxss\s\$0x7b,%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 03 15 10 53 f4 7b\s+vminmaxss\s\$0x7b,\{sae\},%xmm28,%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 23 15 07 53 b4 f5 00 00 00 10 7b\s+vminmaxss\s\$0x7b,0x10000000\(%rbp,%r14,8\),%xmm29,%xmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 43 15 00 53 31 7b\s+vminmaxss\s\$0x7b,\(%r9\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 95 00 53 71 7f 7b\s+vminmaxsd\s\$0x7b,0x3f8\(%rcx\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 95 87 53 72 80 7b\s+vminmaxsd\s\$0x7b,-0x400\(%rdx\),%xmm29,%xmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 63 14 00 53 71 7f 7b\s+vminmaxsh\s\$0x7b,0xfe\(%rcx\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 14 87 53 72 80 7b\s+vminmaxsh\s\$0x7b,-0x100\(%rdx\),%xmm29,%xmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 63 15 00 53 71 7f 7b\s+vminmaxss\s\$0x7b,0x1fc\(%rcx\),%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 63 15 87 53 72 80 7b\s+vminmaxss\s\$0x7b,-0x200\(%rdx\),%xmm29,%xmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 01 7e 08 7e f5\s+vmovd  %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 01 7d 08 d6 ee\s+vmovd  %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 05 7e 08 6e f5\s+vmovw  %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 05 7e 08 7e ee\s+vmovw  %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 01 ff 08 2f f5\s+vcomxsd %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 01 ff 18 2f f5\s+vcomxsd \{sae\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 21 ff 08 2f b4 f5 00 00 00 10\s+vcomxsd 0x10000000\(%rbp,%r14,8\),%xmm30
+\s*[a-f0-9]+:\s*62 41 ff 08 2f 31\s+vcomxsd \(%r9\),%xmm30
+\s*[a-f0-9]+:\s*62 05 7e 08 2f f5\s+vcomxsh %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 05 7e 18 2f f5\s+vcomxsh \{sae\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 25 7e 08 2f b4 f5 00 00 00 10\s+vcomxsh 0x10000000\(%rbp,%r14,8\),%xmm30
+\s*[a-f0-9]+:\s*62 45 7e 08 2f 31\s+vcomxsh \(%r9\),%xmm30
+\s*[a-f0-9]+:\s*62 01 7e 08 2f f5\s+vcomxss %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 01 7e 18 2f f5\s+vcomxss \{sae\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 21 7e 08 2f b4 f5 00 00 00 10\s+vcomxss 0x10000000\(%rbp,%r14,8\),%xmm30
+\s*[a-f0-9]+:\s*62 41 7e 08 2f 31\s+vcomxss \(%r9\),%xmm30
+\s*[a-f0-9]+:\s*62 61 ff 08 2f 71 7f\s+vcomxsd 0x3f8\(%rcx\),%xmm30
+\s*[a-f0-9]+:\s*62 61 ff 08 2f 72 80\s+vcomxsd -0x400\(%rdx\),%xmm30
+\s*[a-f0-9]+:\s*62 65 7e 08 2f 71 7f\s+vcomxsh 0xfe\(%rcx\),%xmm30
+\s*[a-f0-9]+:\s*62 65 7e 08 2f 72 80\s+vcomxsh -0x100\(%rdx\),%xmm30
+\s*[a-f0-9]+:\s*62 61 7e 08 2f 71 7f\s+vcomxss 0x1fc\(%rcx\),%xmm30
+\s*[a-f0-9]+:\s*62 61 7e 08 2f 72 80\s+vcomxss -0x200\(%rdx\),%xmm30
+\s*[a-f0-9]+:\s*62 01 ff 08 2e f5\s+vucomxsd %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 01 ff 18 2e f5\s+vucomxsd \{sae\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 21 ff 08 2e b4 f5 00 00 00 10\s+vucomxsd 0x10000000\(%rbp,%r14,8\),%xmm30
+\s*[a-f0-9]+:\s*62 41 ff 08 2e 31\s+vucomxsd \(%r9\),%xmm30
+\s*[a-f0-9]+:\s*62 05 7e 08 2e f5\s+vucomxsh %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 05 7e 18 2e f5\s+vucomxsh \{sae\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 25 7e 08 2e b4 f5 00 00 00 10\s+vucomxsh 0x10000000\(%rbp,%r14,8\),%xmm30
+\s*[a-f0-9]+:\s*62 45 7e 08 2e 31\s+vucomxsh \(%r9\),%xmm30
+\s*[a-f0-9]+:\s*62 01 7e 08 2e f5\s+vucomxss %xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 01 7e 18 2e f5\s+vucomxss \{sae\},%xmm29,%xmm30
+\s*[a-f0-9]+:\s*62 21 7e 08 2e b4 f5 00 00 00 10\s+vucomxss 0x10000000\(%rbp,%r14,8\),%xmm30
+\s*[a-f0-9]+:\s*62 41 7e 08 2e 31\s+vucomxss \(%r9\),%xmm30
+\s*[a-f0-9]+:\s*62 61 ff 08 2e 71 7f\s+vucomxsd 0x3f8\(%rcx\),%xmm30
+\s*[a-f0-9]+:\s*62 61 ff 08 2e 72 80\s+vucomxsd -0x400\(%rdx\),%xmm30
+\s*[a-f0-9]+:\s*62 65 7e 08 2e 71 7f\s+vucomxsh 0xfe\(%rcx\),%xmm30
+\s*[a-f0-9]+:\s*62 65 7e 08 2e 72 80\s+vucomxsh -0x100\(%rdx\),%xmm30
+\s*[a-f0-9]+:\s*62 61 7e 08 2e 71 7f\s+vucomxss 0x1fc\(%rcx\),%xmm30
+\s*[a-f0-9]+:\s*62 61 7e 08 2e 72 80\s+vucomxss -0x200\(%rdx\),%xmm30
+#pass
diff --git a/gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs.s b/gas/testsuite/gas/i386/x86-64-avx10_2-256-miscs.s
new file mode 100644 (file)
index 0000000..d5f87f7
--- /dev/null
@@ -0,0 +1,135 @@
+# Check 64bit AVX10.2/256 instructions
+
+       .arch generic64
+       .arch .avx10.2/256
+       .text
+_start:
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       $123, %xmm28, %xmm29, %xmm30
+       vminmax\m       $123, %ymm28, %ymm29, %ymm30
+       vminmax\m       $123, 0x10000000(%rbp, %r14, 8), %ymm29, %ymm30{%k7}
+       vminmax\m       $123, 4064(%rcx), %ymm29, %ymm30
+       vminmax\m       $123, 0x10000000(%rbp, %r14, 8), %xmm29, %xmm30{%k7}
+       vminmax\m       $123, 2032(%rcx), %xmm29, %xmm30
+       .endr
+
+       vminmaxpbf16    $123, (%r9){1to16}, %ymm29, %ymm30
+       vminmaxpbf16    $123, -256(%rdx){1to16}, %ymm29, %ymm30{%k7}{z}
+       vminmaxpbf16    $123, (%r9){1to8}, %xmm29, %xmm30
+       vminmaxpbf16    $123, -256(%rdx){1to8}, %xmm29, %xmm30{%k7}{z}
+       vminmaxpd       $123, {sae}, %ymm28, %ymm29, %ymm30
+       vminmaxpd       $123, (%r9){1to4}, %ymm29, %ymm30
+       vminmaxpd       $123, -1024(%rdx){1to4}, %ymm29, %ymm30{%k7}{z}
+       vminmaxpd       $123, (%r9){1to2}, %xmm29, %xmm30
+       vminmaxpd       $123, -1024(%rdx){1to2}, %xmm29, %xmm30{%k7}{z}
+       vminmaxph       $123, {sae}, %ymm28, %ymm29, %ymm30
+       vminmaxph       $123, (%r9){1to16}, %ymm29, %ymm30
+       vminmaxph       $123, -256(%rdx){1to16}, %ymm29, %ymm30{%k7}{z}
+       vminmaxph       $123, (%r9){1to8}, %xmm29, %xmm30
+       vminmaxph       $123, -256(%rdx){1to8}, %xmm29, %xmm30{%k7}{z}
+       vminmaxps       $123, {sae}, %ymm28, %ymm29, %ymm30
+       vminmaxps       $123, (%r9){1to8}, %ymm29, %ymm30
+       vminmaxps       $123, -512(%rdx){1to8}, %ymm29, %ymm30{%k7}{z}
+       vminmaxps       $123, (%r9){1to4}, %xmm29, %xmm30
+       vminmaxps       $123, -512(%rdx){1to4}, %xmm29, %xmm30{%k7}{z}
+
+       .irp m, d, h, s
+       vminmaxs\m      $123, %xmm28, %xmm29, %xmm30
+       vminmaxs\m      $123, {sae}, %xmm28, %xmm29, %xmm30
+       vminmaxs\m      $123, 0x10000000(%rbp, %r14, 8), %xmm29, %xmm30{%k7}
+       vminmaxs\m      $123, (%r9), %xmm29, %xmm30
+       .endr
+
+       vminmaxsd       $123, 1016(%rcx), %xmm29, %xmm30
+       vminmaxsd       $123, -1024(%rdx), %xmm29, %xmm30{%k7}{z}
+       vminmaxsh       $123, 254(%rcx), %xmm29, %xmm30
+       vminmaxsh       $123, -256(%rdx), %xmm29, %xmm30{%k7}{z}
+       vminmaxss       $123, 508(%rcx), %xmm29, %xmm30
+       vminmaxss       $123, -512(%rdx), %xmm29, %xmm30{%k7}{z}
+
+       vmovd   %xmm29, %xmm30
+       vmovd.s %xmm29, %xmm30
+       vmovw   %xmm29, %xmm30
+       vmovw.s %xmm29, %xmm30
+
+       .irp u, "", u
+       .irp m, d, h, s
+       v\u\()comxs\m   %xmm29, %xmm30
+       v\u\()comxs\m   {sae}, %xmm29, %xmm30
+       v\u\()comxs\m   0x10000000(%rbp, %r14, 8), %xmm30
+       v\u\()comxs\m   (%r9), %xmm30
+       .endr
+
+       v\u\()comxsd    1016(%rcx), %xmm30
+       v\u\()comxsd    -1024(%rdx), %xmm30
+       v\u\()comxsh    254(%rcx), %xmm30
+       v\u\()comxsh    -256(%rdx), %xmm30
+       v\u\()comxss    508(%rcx), %xmm30
+       v\u\()comxss    -512(%rdx), %xmm30
+       .endr
+
+_intel:
+       .intel_syntax noprefix
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       xmm30, xmm29, xmm28, 123
+       vminmax\m       ymm30, ymm29, ymm28, 123
+       vminmax\m       ymm30{k7}, ymm29, [rbp+r14*8+0x10000000], 123
+       vminmax\m       ymm30, ymm29, YMMWORD PTR [rcx+4064], 123
+       vminmax\m       xmm30{k7}, xmm29, [rbp+r14*8+0x10000000], 123
+       vminmax\m       xmm30, xmm29, XMMWORD PTR [rcx+2032], 123
+       .endr
+
+       vminmaxpbf16    ymm30, ymm29, [r9]{1to16}, 123
+       vminmaxpbf16    ymm30{k7}{z}, ymm29, WORD PTR [rdx-256]{1to16}, 123
+       vminmaxpbf16    xmm30, xmm29, [r9]{1to8}, 123
+       vminmaxpbf16    xmm30{k7}{z}, xmm29, WORD PTR [rdx-256]{1to8}, 123
+       vminmaxpd       ymm30, ymm29, ymm28, {sae}, 123
+       vminmaxpd       ymm30, ymm29, QWORD PTR [r9]{1to4}, 123
+       vminmaxpd       ymm30{k7}{z}, ymm29, [rdx-1024]{1to4}, 123
+       vminmaxpd       xmm30, xmm29, QWORD PTR [r9]{1to2}, 123
+       vminmaxpd       xmm30{k7}{z}, xmm29, [rdx-1024]{1to2}, 123
+       vminmaxph       ymm30, ymm29, ymm28, {sae}, 123
+       vminmaxph       ymm30, ymm29, [r9]{1to16}, 123
+       vminmaxph       ymm30{k7}{z}, ymm29, WORD PTR [rdx-256]{1to16}, 123
+       vminmaxph       xmm30, xmm29, WORD PTR [r9]{1to8}, 123
+       vminmaxph       xmm30{k7}{z}, xmm29, [rdx-256]{1to8}, 123
+       vminmaxps       ymm30, ymm29, ymm28, {sae}, 123
+       vminmaxps       ymm30, ymm29, DWORD PTR [r9]{1to8}, 123
+       vminmaxps       ymm30{k7}{z}, ymm29, [rdx-512]{1to8}, 123
+       vminmaxps       xmm30, xmm29, [r9]{1to4}, 123
+       vminmaxps       xmm30{k7}{z}, xmm29, DWORD PTR [rdx-512]{1to4}, 123
+
+       .irp m, d, h, s
+       vminmaxs\m      xmm30, xmm29, xmm28, 123
+       vminmaxs\m      xmm30, xmm29, xmm28, {sae}, 123
+       vminmaxs\m      xmm30{k7}, xmm29, [rbp+r14*8+0x10000000], 123
+       vminmaxs\m      xmm30, xmm29, [r9], 123
+       .endr
+
+       vminmaxsd       xmm30, xmm29, QWORD PTR [rcx+1016], 123
+       vminmaxsd       xmm30{k7}{z}, xmm29, QWORD PTR [rdx-1024], 123
+       vminmaxsh       xmm30, xmm29, [rcx+254], 123
+       vminmaxsh       xmm30{k7}{z}, xmm29, [rdx-256], 123
+       vminmaxss       xmm30, xmm29, DWORD PTR [rcx+508], 123
+       vminmaxss       xmm30{k7}{z}, xmm29, [rdx-512], 123
+
+       vmovd   xmm30, xmm29
+       vmovd.s xmm30, xmm29
+       vmovw   xmm30, xmm29
+       vmovw.s xmm30, xmm29
+
+       .irp u, "", u
+       .irp m, d, h, s
+       v\u\()comxs\m   xmm30, xmm29
+       v\u\()comxs\m   xmm30, xmm29, {sae}
+       v\u\()comxs\m   xmm30, [rbp+r14*8+0x10000000]
+       v\u\()comxs\m   xmm30, [r9]
+       .endr
+
+       v\u\()comxsd    xmm30, QWORD PTR [rcx+1016]
+       v\u\()comxsd    xmm30, [rdx-1024]
+       v\u\()comxsh    xmm30, [rcx+254]
+       v\u\()comxsh    xmm30, WORD PTR [rdx-256]
+       v\u\()comxss    xmm30, [rcx+508]
+       v\u\()comxss    xmm30, DWORD PTR [rdx-512]
+       .endr
diff --git a/gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs-intel.d b/gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs-intel.d
new file mode 100644 (file)
index 0000000..64bcf19
--- /dev/null
@@ -0,0 +1,34 @@
+#objdump: -dw -Mintel
+#name: x86_64 AVX10.2/512 minmax insns (Intel disassembly)
+#source: x86-64-avx10_2-512-miscs.s
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+#...
+[a-f0-9]+ <_intel>:
+\s*[a-f0-9]+:\s*62 03 17 40 52 f4 7b\s+vminmaxpbf16 zmm30,zmm29,zmm28,0x7b
+\s*[a-f0-9]+:\s*62 23 17 47 52 b4 f5 00 00 00 10 7b\s+vminmaxpbf16 zmm30\{k7\},zmm29,ZMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 17 40 52 71 7f 7b\s+vminmaxpbf16 zmm30,zmm29,ZMMWORD PTR \[rcx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 03 95 40 52 f4 7b\s+vminmaxpd zmm30,zmm29,zmm28,0x7b
+\s*[a-f0-9]+:\s*62 23 95 47 52 b4 f5 00 00 00 10 7b\s+vminmaxpd zmm30\{k7\},zmm29,ZMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 40 52 71 7f 7b\s+vminmaxpd zmm30,zmm29,ZMMWORD PTR \[rcx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 03 14 40 52 f4 7b\s+vminmaxph zmm30,zmm29,zmm28,0x7b
+\s*[a-f0-9]+:\s*62 23 14 47 52 b4 f5 00 00 00 10 7b\s+vminmaxph zmm30\{k7\},zmm29,ZMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 40 52 71 7f 7b\s+vminmaxph zmm30,zmm29,ZMMWORD PTR \[rcx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 03 15 40 52 f4 7b\s+vminmaxps zmm30,zmm29,zmm28,0x7b
+\s*[a-f0-9]+:\s*62 23 15 47 52 b4 f5 00 00 00 10 7b\s+vminmaxps zmm30\{k7\},zmm29,ZMMWORD PTR \[rbp\+r14\*8\+0x10000000\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 40 52 71 7f 7b\s+vminmaxps zmm30,zmm29,ZMMWORD PTR \[rcx\+0x1fc0\],0x7b
+\s*[a-f0-9]+:\s*62 43 17 50 52 31 7b\s+vminmaxpbf16 zmm30,zmm29,WORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 17 d7 52 72 80 7b\s+vminmaxpbf16 zmm30\{k7\}\{z\},zmm29,WORD BCST \[rdx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 03 95 10 52 f4 7b\s+vminmaxpd zmm30,zmm29,zmm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 43 95 50 52 31 7b\s+vminmaxpd zmm30,zmm29,QWORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 95 d7 52 72 80 7b\s+vminmaxpd zmm30\{k7\}\{z\},zmm29,QWORD BCST \[rdx-0x400\],0x7b
+\s*[a-f0-9]+:\s*62 03 14 10 52 f4 7b\s+vminmaxph zmm30,zmm29,zmm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 43 14 50 52 31 7b\s+vminmaxph zmm30,zmm29,WORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 14 d7 52 72 80 7b\s+vminmaxph zmm30\{k7\}\{z\},zmm29,WORD BCST \[rdx-0x100\],0x7b
+\s*[a-f0-9]+:\s*62 03 15 10 52 f4 7b\s+vminmaxps zmm30,zmm29,zmm28\{sae\},0x7b
+\s*[a-f0-9]+:\s*62 43 15 50 52 31 7b\s+vminmaxps zmm30,zmm29,DWORD BCST \[r9\],0x7b
+\s*[a-f0-9]+:\s*62 63 15 d7 52 72 80 7b\s+vminmaxps zmm30\{k7\}\{z\},zmm29,DWORD BCST \[rdx-0x200\],0x7b
+#pass
diff --git a/gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs.d b/gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs.d
new file mode 100644 (file)
index 0000000..9a6653e
--- /dev/null
@@ -0,0 +1,32 @@
+#objdump: -dw
+#name: x86_64 AVX10.2/512 minmax insns
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+0+ <_start>:
+\s*[a-f0-9]+:\s*62 03 17 40 52 f4 7b\s+vminmaxpbf16\s\$0x7b,%zmm28,%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 23 17 47 52 b4 f5 00 00 00 10 7b\s+vminmaxpbf16\s\$0x7b,0x10000000\(%rbp,%r14,8\),%zmm29,%zmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 17 40 52 71 7f 7b\s+vminmaxpbf16\s\$0x7b,0x1fc0\(%rcx\),%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 03 95 40 52 f4 7b\s+vminmaxpd\s\$0x7b,%zmm28,%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 23 95 47 52 b4 f5 00 00 00 10 7b\s+vminmaxpd\s\$0x7b,0x10000000\(%rbp,%r14,8\),%zmm29,%zmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 95 40 52 71 7f 7b\s+vminmaxpd\s\$0x7b,0x1fc0\(%rcx\),%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 03 14 40 52 f4 7b\s+vminmaxph\s\$0x7b,%zmm28,%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 23 14 47 52 b4 f5 00 00 00 10 7b\s+vminmaxph\s\$0x7b,0x10000000\(%rbp,%r14,8\),%zmm29,%zmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 14 40 52 71 7f 7b\s+vminmaxph\s\$0x7b,0x1fc0\(%rcx\),%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 03 15 40 52 f4 7b\s+vminmaxps\s\$0x7b,%zmm28,%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 23 15 47 52 b4 f5 00 00 00 10 7b\s+vminmaxps\s\$0x7b,0x10000000\(%rbp,%r14,8\),%zmm29,%zmm30\{%k7\}
+\s*[a-f0-9]+:\s*62 63 15 40 52 71 7f 7b\s+vminmaxps\s\$0x7b,0x1fc0\(%rcx\),%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 43 17 50 52 31 7b\s+vminmaxpbf16\s\$0x7b,\(%r9\)\{1to32\},%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 63 17 d7 52 72 80 7b\s+vminmaxpbf16\s\$0x7b,-0x100\(%rdx\)\{1to32\},%zmm29,%zmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 03 95 10 52 f4 7b\s+vminmaxpd\s\$0x7b,\{sae\},%zmm28,%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 43 95 50 52 31 7b\s+vminmaxpd\s\$0x7b,\(%r9\)\{1to8\},%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 63 95 d7 52 72 80 7b\s+vminmaxpd\s\$0x7b,-0x400\(%rdx\)\{1to8\},%zmm29,%zmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 03 14 10 52 f4 7b\s+vminmaxph\s\$0x7b,\{sae\},%zmm28,%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 43 14 50 52 31 7b\s+vminmaxph\s\$0x7b,\(%r9\)\{1to32\},%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 63 14 d7 52 72 80 7b\s+vminmaxph\s\$0x7b,-0x100\(%rdx\)\{1to32\},%zmm29,%zmm30\{%k7\}\{z\}
+\s*[a-f0-9]+:\s*62 03 15 10 52 f4 7b\s+vminmaxps\s\$0x7b,\{sae\},%zmm28,%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 43 15 50 52 31 7b\s+vminmaxps\s\$0x7b,\(%r9\)\{1to16\},%zmm29,%zmm30
+\s*[a-f0-9]+:\s*62 63 15 d7 52 72 80 7b\s+vminmaxps\s\$0x7b,-0x200\(%rdx\)\{1to16\},%zmm29,%zmm30\{%k7\}\{z\}
+#pass
diff --git a/gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs.s b/gas/testsuite/gas/i386/x86-64-avx10_2-512-miscs.s
new file mode 100644 (file)
index 0000000..9aa54cc
--- /dev/null
@@ -0,0 +1,43 @@
+# Check 64bit AVX10.2/512 instructions
+
+       .arch generic64
+       .arch .avx10.2/512
+       .text
+_start:
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       $123, %zmm28, %zmm29, %zmm30
+       vminmax\m       $123, 0x10000000(%rbp, %r14, 8), %zmm29, %zmm30{%k7}
+       vminmax\m       $123, 8128(%rcx), %zmm29, %zmm30
+       .endr
+
+       vminmaxpbf16    $123, (%r9){1to32}, %zmm29, %zmm30
+       vminmaxpbf16    $123, -256(%rdx){1to32}, %zmm29, %zmm30{%k7}{z}
+       vminmaxpd       $123, {sae}, %zmm28, %zmm29, %zmm30
+       vminmaxpd       $123, (%r9){1to8}, %zmm29, %zmm30
+       vminmaxpd       $123, -1024(%rdx){1to8}, %zmm29, %zmm30{%k7}{z}
+       vminmaxph       $123, {sae}, %zmm28, %zmm29, %zmm30
+       vminmaxph       $123, (%r9){1to32}, %zmm29, %zmm30
+       vminmaxph       $123, -256(%rdx){1to32}, %zmm29, %zmm30{%k7}{z}
+       vminmaxps       $123, {sae}, %zmm28, %zmm29, %zmm30
+       vminmaxps       $123, (%r9){1to16}, %zmm29, %zmm30
+       vminmaxps       $123, -512(%rdx){1to16}, %zmm29, %zmm30{%k7}{z}
+
+_intel:
+       .intel_syntax noprefix
+       .irp m, pbf16, pd, ph, ps
+       vminmax\m       zmm30, zmm29, zmm28, 123
+       vminmax\m       zmm30{k7}, zmm29, [rbp+r14*8+0x10000000], 123
+       vminmax\m       zmm30, zmm29, ZMMWORD PTR [rcx+8128], 123
+       .endr
+
+       vminmaxpbf16    zmm30, zmm29, [r9]{1to32}, 123
+       vminmaxpbf16    zmm30{k7}{z}, zmm29, WORD PTR [rdx-256]{1to32}, 123
+       vminmaxpd       zmm30, zmm29, zmm28, {sae}, 123
+       vminmaxpd       zmm30, zmm29, QWORD PTR [r9]{1to8}, 123
+       vminmaxpd       zmm30{k7}{z}, zmm29, [rdx-1024]{1to8}, 123
+       vminmaxph       zmm30, zmm29, zmm28, {sae}, 123
+       vminmaxph       zmm30, zmm29, WORD PTR [r9]{1to32}, 123
+       vminmaxph       zmm30{k7}{z}, zmm29, [rdx-256]{1to32}, 123
+       vminmaxps       zmm30, zmm29, zmm28, {sae}, 123
+       vminmaxps       zmm30, zmm29, [r9]{1to16}, 123
+       vminmaxps       zmm30{k7}{z}, zmm29, DWORD PTR [rdx-512]{1to16}, 123
index 02a32dc43463d30e0e26585893f61877dbb7f434..bdb066dd456d8a3ccd8094f46f544266681a7327 100644 (file)
@@ -514,6 +514,10 @@ run_dump_test "x86-64-avx10_2-512-satcvt"
 run_dump_test "x86-64-avx10_2-512-satcvt-intel"
 run_dump_test "x86-64-avx10_2-256-satcvt"
 run_dump_test "x86-64-avx10_2-256-satcvt-intel"
+run_dump_test "x86-64-avx10_2-512-miscs"
+run_dump_test "x86-64-avx10_2-512-miscs-intel"
+run_dump_test "x86-64-avx10_2-256-miscs"
+run_dump_test "x86-64-avx10_2-256-miscs-intel"
 run_dump_test "x86-64-avx10_2-256-sm4"
 run_dump_test "x86-64-avx10_2-256-sm4-intel"
 run_dump_test "x86-64-avx10_2-512-sm4"
index a02609c50f2add638122419a0d402ace00f6736a..e931fdd655a178ffc461a92c3ab9fcbded3d1ccf 100644 (file)
@@ -1,4 +1,14 @@
 static const struct dis386 evex_len_table[][3] = {
+  /* EVEX_LEN_0F7E_P_1_W_0  */
+  {
+    { "vmovd", { XMScalar, EXd }, 0 },
+  },
+
+  /* EVEX_LEN_0FD6_P_2_W_0 */
+  {
+    { "vmovd", { EXdS, XMScalar }, 0 },
+  },
+
   /* EVEX_LEN_0F3816 */
   {
     { Bad_Opcode },
@@ -145,4 +155,14 @@ static const struct dis386 evex_len_table[][3] = {
     { VEX_W_TABLE (EVEX_W_0F3A43_L_n) },
     { VEX_W_TABLE (EVEX_W_0F3A43_L_n) },
   },
+
+  /* EVEX_LEN_MAP5_6E */
+  {
+    { PREFIX_TABLE (PREFIX_EVEX_MAP5_6E_L_0) },
+  },
+
+  /* EVEX_LEN_MAP5_7E */
+  {
+    { PREFIX_TABLE (PREFIX_EVEX_MAP5_7E_L_0) },
+  },
 };
index 171600190a6e9ff48bc6e52906a961e10059003f..16fb269839012a1b4949b8f8aa174593a57b89a7 100644 (file)
@@ -1,3 +1,17 @@
+  /* PREFIX_EVEX_0F2E */
+  {
+    { "%XEvucomis%XS", { XMScalar, EXd, EXxEVexS }, 0 },
+    { "vucomxs%XS",    { XMScalar, EXd, EXxEVexS }, 0 },
+    { "%XEvucomis%XD", { XMScalar, EXq, EXxEVexS }, 0 },
+    { "vucomxs%XD",    { XMScalar, EXq, EXxEVexS }, 0 },
+  },
+  /* PREFIX_EVEX_0F2F */
+  {
+    { "%XEvcomis%XS",  { XMScalar, EXd, EXxEVexS }, 0 },
+    { "vcomxs%XS",     { XMScalar, EXd, EXxEVexS }, 0 },
+    { "%XEvcomis%XD",  { XMScalar, EXq, EXxEVexS }, 0 },
+    { "vcomxs%XD",     { XMScalar, EXq, EXxEVexS }, 0 },
+  },
   /* PREFIX_EVEX_0F5B */
   {
     { VEX_W_TABLE (EVEX_W_0F5B_P_0) },
     { "%XEvmpsadbw",   { XM, Vex, EXx, Ib }, 0 },
     { "vdbpsadbw",     { XM, Vex, EXx, Ib }, 0 },
   },
+  /* PREFIX_EVEX_0F3A52 */
+  {
+    { "vminmaxp%XH",   { XM, Vex, EXxh, EXxEVexS, Ib }, 0 },
+    { Bad_Opcode },
+    { "vminmaxp%XW",   { XM, Vex, EXx, EXxEVexS, Ib }, 0 },
+    { "vminmaxp%XB",   { XM, Vex, EXxh, Ib }, 0 },
+  },
+  /* PREFIX_EVEX_0F3A53 */
+  {
+    { "vminmaxs%XH",   { XMScalar, VexScalar, EXw, EXxEVexS, Ib }, 0 },
+    { Bad_Opcode },
+    { "vminmaxs%XW",   { XMScalar, VexScalar, EXdq, EXxEVexS, Ib }, 0 },
+  },
   /* PREFIX_EVEX_0F3A56 */
   {
     { "vreducep%XH",      { XM, EXxh, EXxEVexS, Ib }, 0 },
   },
   /* PREFIX_EVEX_MAP5_2E */
   {
-    { "vucomisY%XH",       { XMScalar, EXw, EXxEVexS }, 0 },
+    { "vucomisY%XH",   { XMScalar, EXw, EXxEVexS }, 0 },
+    { "vucomxs%XH",    { XMScalar, EXw, EXxEVexS }, 0 },
   },
   /* PREFIX_EVEX_MAP5_2F */
   {
-    { "vcomisY%XH",        { XMScalar, EXw, EXxEVexS }, 0 },
-    { Bad_Opcode },
+    { "vcomisY%XH",    { XMScalar, EXw, EXxEVexS }, 0 },
+    { "vcomxs%XH",     { XMScalar, EXw, EXxEVexS }, 0 },
     { "vcoms%XB",      { XMScalar, EXw, EXxEVexS }, 0 },
   },
   /* PREFIX_EVEX_MAP5_51 */
     { VEX_W_TABLE (EVEX_W_MAP5_6D_P_2) },
     { "vcvttsd2sis",   { Gdq, EXq, EXxEVexS }, 0 },
   },
+  /* PREFIX_EVEX_MAP5_6E_L_0 */
+  {
+    { Bad_Opcode },
+    { VEX_W_TABLE (EVEX_W_MAP5_6E_P_1) },
+    { "vmovwY",        { XMScalar, Edw }, 0 },
+  },
   /* PREFIX_EVEX_MAP5_74 */
   {
     { "vcvtbiasp%XH2bf8s",     { XMxmmq, Vex, EXxh }, 0 },
     { "vcvtp%XH2w",     { XM, EXxh, EXxEVexR }, 0 },
     { "vcvtuw2p%XH",    { XM, EXxh, EXxEVexR }, 0 },
   },
+  /* PREFIX_EVEX_MAP5_7E_L_0 */
+  {
+    { Bad_Opcode },
+    { VEX_W_TABLE (EVEX_W_MAP5_7E_P_1) },
+    { "vmovw", { Edw, XMScalar }, 0 },
+  },
   /* PREFIX_EVEX_MAP6_13 */
   {
     { "vcvts%XH2ss",   { XMScalar, VexScalar, EXw, EXxEVexS }, 0 },
index 344eaf3d5279be33a6be282645991d5c0f2f6b57..1bb716c0ba7f3b4cd29d236ec066dd8b8a534744 100644 (file)
   },
   /* EVEX_W_0F7E_P_1 */
   {
-    { Bad_Opcode },
+    { EVEX_LEN_TABLE (EVEX_LEN_0F7E_P_1_W_0) },
     { VEX_LEN_TABLE (VEX_LEN_0F7E_P_1) },
   },
   /* EVEX_W_0F7F_P_1 */
   },
   /* EVEX_W_0FD6 */
   {
-    { Bad_Opcode },
+    { EVEX_LEN_TABLE (EVEX_LEN_0FD6_P_2_W_0) },
     { VEX_LEN_TABLE (VEX_LEN_0FD6) },
   },
   /* EVEX_W_0FE2 */
     { "vcvttps2qqs",   { XM, EXEvexHalfBcstXmmq, EXxEVexS }, 0 },
     { "vcvttpd2qqs",   { XM, EXx, EXxEVexS }, 0 },
   },
+  /* EVEX_W_MAP5_6E_P_1 */
+  {
+    { "vmovw", { XMScalar, EXw }, 0 },
+  },
   /* EVEX_W_MAP5_7A_P_3 */
   {
     { "vcvtudq2ph%XY", { XMxmmq, EXx, EXxEVexR }, 0 },
     { "vcvtuqq2ph%XZ", { XMM, EXx, EXxEVexR }, 0 },
   },
+  /* EVEX_W_MAP5_7E_P_1 */
+  {
+    { "vmovw", { EXwS, XMScalar }, 0 },
+  },
index f94c0d9d6aebccdf0b58030b968a8ee73c292bc7..30312eb1a4e034e54897cb4f2c657a528b2b6d9a 100644 (file)
@@ -53,8 +53,8 @@ static const struct dis386 evex_table[][256] = {
     { "%XEvmovntpX",   { Mx, XM }, PREFIX_OPCODE },
     { PREFIX_TABLE (PREFIX_VEX_0F2C) },
     { PREFIX_TABLE (PREFIX_VEX_0F2D) },
-    { PREFIX_TABLE (PREFIX_0F2E) },
-    { PREFIX_TABLE (PREFIX_0F2F) },
+    { PREFIX_TABLE (PREFIX_EVEX_0F2E) },
+    { PREFIX_TABLE (PREFIX_EVEX_0F2F) },
     /* 30 */
     { Bad_Opcode },
     { Bad_Opcode },
@@ -676,8 +676,8 @@ static const struct dis386 evex_table[][256] = {
     /* 50 */
     { "vrangep%XW",    { XM, Vex, EXx, EXxEVexS, Ib }, PREFIX_DATA },
     { "vranges%XW",    { XMScalar, VexScalar, EXdq, EXxEVexS, Ib }, PREFIX_DATA },
-    { Bad_Opcode },
-    { Bad_Opcode },
+    { PREFIX_TABLE (PREFIX_EVEX_0F3A52) },
+    { PREFIX_TABLE (PREFIX_EVEX_0F3A53) },
     { "vfixupimmp%XW", { XM, Vex, EXx, EXxEVexS, Ib }, PREFIX_DATA },
     { "vfixupimms%XW", { XMScalar, VexScalar, EXdq, EXxEVexS, Ib }, PREFIX_DATA },
     { PREFIX_TABLE (PREFIX_EVEX_0F3A56) },
@@ -1289,7 +1289,7 @@ static const struct dis386 evex_table[][256] = {
     { PREFIX_TABLE (PREFIX_EVEX_MAP5_6B) },
     { PREFIX_TABLE (PREFIX_EVEX_MAP5_6C) },
     { PREFIX_TABLE (PREFIX_EVEX_MAP5_6D) },
-    { "vmovwY", { XMScalar, Edw }, PREFIX_DATA },
+    { EVEX_LEN_TABLE (EVEX_LEN_MAP5_6E) },
     { Bad_Opcode },
     /* 70 */
     { Bad_Opcode },
@@ -1307,7 +1307,7 @@ static const struct dis386 evex_table[][256] = {
     { PREFIX_TABLE (PREFIX_EVEX_MAP5_7B) },
     { PREFIX_TABLE (PREFIX_EVEX_MAP5_7C) },
     { PREFIX_TABLE (PREFIX_EVEX_MAP5_7D) },
-    { "vmovw",   { Edw, XMScalar }, PREFIX_DATA },
+    { EVEX_LEN_TABLE (EVEX_LEN_MAP5_7E) },
     { Bad_Opcode },
     /* 80 */
     { Bad_Opcode },
index e8f5d8b293c6f16a2922e5718e021c6a1757b3ae..813295c8aadfe7b86c18b39dce9f1ea8405fe618 100644 (file)
@@ -1155,6 +1155,8 @@ enum
   PREFIX_VEX_MAP7_F6_L_0_W_0_R_0_X86_64,
   PREFIX_VEX_MAP7_F8_L_0_W_0_R_0_X86_64,
 
+  PREFIX_EVEX_0F2E,
+  PREFIX_EVEX_0F2F,
   PREFIX_EVEX_0F5B,
   PREFIX_EVEX_0F6F,
   PREFIX_EVEX_0F70,
@@ -1207,6 +1209,8 @@ enum
   PREFIX_EVEX_0F3A26,
   PREFIX_EVEX_0F3A27,
   PREFIX_EVEX_0F3A42_W_0,
+  PREFIX_EVEX_0F3A52,
+  PREFIX_EVEX_0F3A53,
   PREFIX_EVEX_0F3A56,
   PREFIX_EVEX_0F3A57,
   PREFIX_EVEX_0F3A66,
@@ -1245,6 +1249,7 @@ enum
   PREFIX_EVEX_MAP5_6B,
   PREFIX_EVEX_MAP5_6C,
   PREFIX_EVEX_MAP5_6D,
+  PREFIX_EVEX_MAP5_6E_L_0,
   PREFIX_EVEX_MAP5_74,
   PREFIX_EVEX_MAP5_78,
   PREFIX_EVEX_MAP5_79,
@@ -1252,6 +1257,7 @@ enum
   PREFIX_EVEX_MAP5_7B,
   PREFIX_EVEX_MAP5_7C,
   PREFIX_EVEX_MAP5_7D,
+  PREFIX_EVEX_MAP5_7E_L_0,
 
   PREFIX_EVEX_MAP6_13,
   PREFIX_EVEX_MAP6_2C,
@@ -1521,7 +1527,9 @@ enum
 
 enum
 {
-  EVEX_LEN_0F3816 = 0,
+  EVEX_LEN_0F7E_P_1_W_0 = 0,
+  EVEX_LEN_0FD6_P_2_W_0,
+  EVEX_LEN_0F3816,
   EVEX_LEN_0F3819,
   EVEX_LEN_0F381A,
   EVEX_LEN_0F381B,
@@ -1541,7 +1549,10 @@ enum
   EVEX_LEN_0F3A39,
   EVEX_LEN_0F3A3A,
   EVEX_LEN_0F3A3B,
-  EVEX_LEN_0F3A43
+  EVEX_LEN_0F3A43,
+
+  EVEX_LEN_MAP5_6E,
+  EVEX_LEN_MAP5_7E,
 };
 
 enum
@@ -1779,7 +1790,9 @@ enum
   EVEX_W_MAP5_6C_P_2,
   EVEX_W_MAP5_6D_P_0,
   EVEX_W_MAP5_6D_P_2,
+  EVEX_W_MAP5_6E_P_1,
   EVEX_W_MAP5_7A_P_3,
+  EVEX_W_MAP5_7E_P_1,
 };
 
 typedef bool (*op_rtn) (instr_info *ins, int bytemode, int sizeflag);
@@ -3315,16 +3328,16 @@ static const struct dis386 prefix_table[][4] = {
 
   /* PREFIX_0F2E */
   {
-    { "%XEVucomisYX",  { XMScalar, EXd, EXxEVexS }, 0 },
+    { "VucomisYX",     { XMScalar, EXd, EXxEVexS }, 0 },
     { Bad_Opcode },
-    { "%XEVucomisYX",  { XMScalar, EXq, EXxEVexS }, 0 },
+    { "VucomisYX",     { XMScalar, EXq, EXxEVexS }, 0 },
   },
 
   /* PREFIX_0F2F */
   {
-    { "%XEVcomisYX",   { XMScalar, EXd, EXxEVexS }, 0 },
+    { "VcomisYX",      { XMScalar, EXd, EXxEVexS }, 0 },
     { Bad_Opcode },
-    { "%XEVcomisYX",   { XMScalar, EXq, EXxEVexS }, 0 },
+    { "VcomisYX",      { XMScalar, EXq, EXxEVexS }, 0 },
   },
 
   /* PREFIX_0F51 */
index f0677d3e995e265f589e40fa7db9ab3352a620fd..bffc882665615aefcfe88512f38dad4994c78866 100644 (file)
@@ -133,2444 +133,2457 @@ extern const char i386_mnemonics[];
 #define MN_vfpclasspbf16 0x4c1
 #define MN_vgetmantpbf16 0x4cf
 #define MN_vrsqrtpbf16 0x4dd
-#define MN_vmaxpbf16 0x4e9
-#define MN_vcomsbf16 0x4f3
-#define MN_addr16 0x4fd
-#define MN_vmovdqu16 0x504
-#define MN_xsha256 0x50e
-#define MN_encodekey256 0x516
-#define MN_vperm2f128 0x523
-#define MN_vextractf128 0x52e
-#define MN_vinsertf128 0x53b
-#define MN_vbroadcastf128 0x547
-#define MN_vperm2i128 0x556
-#define MN_vextracti128 0x561
-#define MN_vinserti128 0x56e
-#define MN_vbroadcasti128 0x57a
-#define MN_encodekey128 0x589
-#define MN_vcvtne2ph2bf8 0x596
-#define MN_vcvtneph2bf8 0x5a4
-#define MN_vcvtbiasph2bf8 0x5b1
-#define MN_vcvtne2ph2hf8 0x5c0
-#define MN_vcvtneph2hf8 0x5ce
-#define MN_vcvtbiasph2hf8 0x5db
-#define MN_vmovdqu8 0x5ea
-#define MN_vextractf32x8 0x5f3
-#define MN_vinsertf32x8 0x601
-#define MN_vbroadcastf32x8 0x60e
-#define MN_vextracti32x8 0x61e
-#define MN_vinserti32x8 0x62c
-#define MN_vbroadcasti32x8 0x639
-#define MN_ud2a 0x649
-#define MN_aaa 0x64e
-#define MN_daa 0x652
-#define MN_ssca 0x656
-#define MN_lea 0x65b
-#define MN_invlpga 0x65f
-#define MN_pusha 0x667
-#define MN_ja 0x66d
-#define MN_jna 0x670
-#define MN_ccmpna 0x674
-#define MN_setna 0x67b
-#define MN_ctestna 0x681
-#define MN_setzuna 0x689
+#define MN_vminmaxpbf16 0x4e9
+#define MN_vmaxpbf16 0x4f6
+#define MN_vcomsbf16 0x500
+#define MN_addr16 0x50a
+#define MN_vmovdqu16 0x511
+#define MN_xsha256 0x51b
+#define MN_encodekey256 0x523
+#define MN_vperm2f128 0x530
+#define MN_vextractf128 0x53b
+#define MN_vinsertf128 0x548
+#define MN_vbroadcastf128 0x554
+#define MN_vperm2i128 0x563
+#define MN_vextracti128 0x56e
+#define MN_vinserti128 0x57b
+#define MN_vbroadcasti128 0x587
+#define MN_encodekey128 0x596
+#define MN_vcvtne2ph2bf8 0x5a3
+#define MN_vcvtneph2bf8 0x5b1
+#define MN_vcvtbiasph2bf8 0x5be
+#define MN_vcvtne2ph2hf8 0x5cd
+#define MN_vcvtneph2hf8 0x5db
+#define MN_vcvtbiasph2hf8 0x5e8
+#define MN_vmovdqu8 0x5f7
+#define MN_vextractf32x8 0x600
+#define MN_vinsertf32x8 0x60e
+#define MN_vbroadcastf32x8 0x61b
+#define MN_vextracti32x8 0x62b
+#define MN_vinserti32x8 0x639
+#define MN_vbroadcasti32x8 0x646
+#define MN_ud2a 0x656
+#define MN_aaa 0x65b
+#define MN_daa 0x65f
+#define MN_ssca 0x663
+#define MN_lea 0x668
+#define MN_invlpga 0x66c
+#define MN_pusha 0x674
+#define MN_ja 0x67a
+#define MN_jna 0x67d
+#define MN_ccmpna 0x681
+#define MN_setna 0x688
+#define MN_ctestna 0x68e
+#define MN_setzuna 0x696
 #define MN_cmovna (MN_fcmovna + 1)
 #define MN_fcmovna (MN_cfcmovna + 1)
-#define MN_cfcmovna 0x691
-#define MN_ccmpa 0x69a
-#define MN_popa 0x6a0
+#define MN_cfcmovna 0x69e
+#define MN_ccmpa 0x6a7
+#define MN_popa 0x6ad
 #define MN_movntdqa (MN_vmovntdqa + 1)
-#define MN_vmovntdqa 0x6a5
+#define MN_vmovntdqa 0x6b2
 #define MN_movdqa (MN_vmovdqa + 1)
-#define MN_vmovdqa 0x6af
-#define MN_seta 0x6b7
-#define MN_prefetchnta 0x6bc
-#define MN_ctesta 0x6c8
-#define MN_setzua 0x6cf
+#define MN_vmovdqa 0x6bc
+#define MN_seta 0x6c4
+#define MN_prefetchnta 0x6c9
+#define MN_ctesta 0x6d5
+#define MN_setzua 0x6dc
 #define MN_cmova (MN_fcmova + 1)
 #define MN_fcmova (MN_cfcmova + 1)
-#define MN_cfcmova 0x6d6
-#define MN_rex_b 0x6de
-#define MN_ud2b 0x6e4
-#define MN_vpermi2b 0x6e9
-#define MN_vpmovm2b 0x6f2
-#define MN_vpermt2b 0x6fb
-#define MN_movdir64b 0x704
-#define MN_cmpxchg16b 0x70e
-#define MN_cmpxchg8b 0x719
-#define MN_vpshab 0x723
-#define MN_sbb 0x72a
+#define MN_cfcmova 0x6e3
+#define MN_rex_b 0x6eb
+#define MN_ud2b 0x6f1
+#define MN_vpermi2b 0x6f6
+#define MN_vpmovm2b 0x6ff
+#define MN_vpermt2b 0x708
+#define MN_movdir64b 0x711
+#define MN_cmpxchg16b 0x71b
+#define MN_cmpxchg8b 0x726
+#define MN_vpshab 0x730
+#define MN_sbb 0x737
 #define MN_psubb (MN_vpsubb + 1)
-#define MN_vpsubb 0x72e
-#define MN_xcrypt_ecb 0x735
-#define MN_xcryptecb 0x740
-#define MN_llwpcb 0x74a
-#define MN_slwpcb 0x751
-#define MN_kaddb 0x758
+#define MN_vpsubb 0x73b
+#define MN_xcrypt_ecb 0x742
+#define MN_xcryptecb 0x74d
+#define MN_llwpcb 0x757
+#define MN_slwpcb 0x75e
+#define MN_kaddb 0x765
 #define MN_paddb (MN_vpaddb + 1)
-#define MN_vpaddb 0x75e
-#define MN_kandb 0x765
-#define MN_vpexpandb 0x76b
-#define MN_vpmovusdb 0x775
-#define MN_vpmovsdb 0x77f
-#define MN_vpmovdb 0x788
-#define MN_vpcomgeb 0x790
-#define MN_vpcomleb 0x799
-#define MN_vpcmpnleb 0x7a2
-#define MN_vpcmpleb 0x7ac
-#define MN_vpcomfalseb 0x7b5
-#define MN_vpcomtrueb 0x7c1
-#define MN_xcrypt_cfb 0x7cc
-#define MN_xcryptcfb 0x7d7
-#define MN_xcrypt_ofb 0x7e1
-#define MN_xcryptofb 0x7ec
+#define MN_vpaddb 0x76b
+#define MN_kandb 0x772
+#define MN_vpexpandb 0x778
+#define MN_vpmovusdb 0x782
+#define MN_vpmovsdb 0x78c
+#define MN_vpmovdb 0x795
+#define MN_vpcomgeb 0x79d
+#define MN_vpcomleb 0x7a6
+#define MN_vpcmpnleb 0x7af
+#define MN_vpcmpleb 0x7b9
+#define MN_vpcomfalseb 0x7c2
+#define MN_vpcomtrueb 0x7ce
+#define MN_xcrypt_cfb 0x7d9
+#define MN_xcryptcfb 0x7e4
+#define MN_xcrypt_ofb 0x7ee
+#define MN_xcryptofb 0x7f9
 #define MN_pshufb (MN_vpshufb + 1)
-#define MN_vpshufb 0x7f6
-#define MN_invlpgb 0x7fe
+#define MN_vpshufb 0x803
+#define MN_invlpgb 0x80b
 #define MN_pavgb (MN_vpavgb + 1)
-#define MN_vpavgb 0x806
-#define MN_jb 0x80d
-#define MN_pbndkb 0x810
+#define MN_vpavgb 0x813
+#define MN_jb 0x81a
+#define MN_pbndkb 0x81d
 #define MN_pmovmskb (MN_vpmovmskb + 1)
-#define MN_vpmovmskb 0x817
-#define MN_vpshlb 0x821
-#define MN_kshiftlb 0x828
+#define MN_vpmovmskb 0x824
+#define MN_vpshlb 0x82e
+#define MN_kshiftlb 0x835
 #define MN_gf2p8mulb (MN_vgf2p8mulb + 1)
-#define MN_vgf2p8mulb 0x831
-#define MN_vpblendmb 0x83c
-#define MN_vptestnmb 0x846
-#define MN_vpcomb 0x850
-#define MN_vpshufbitqmb 0x857
-#define MN_vpermb 0x864
-#define MN_vptestmb 0x86b
-#define MN_kandnb 0x874
+#define MN_vgf2p8mulb 0x83e
+#define MN_vpblendmb 0x849
+#define MN_vptestnmb 0x853
+#define MN_vpcomb 0x85d
+#define MN_vpshufbitqmb 0x864
+#define MN_vpermb 0x871
+#define MN_vptestmb 0x878
+#define MN_kandnb 0x881
 #define MN_psignb (MN_vpsignb + 1)
-#define MN_vpsignb 0x87b
-#define MN_jnb 0x883
-#define MN_ccmpnb 0x887
-#define MN_setnb 0x88e
-#define MN_ctestnb 0x894
-#define MN_setzunb 0x89c
+#define MN_vpsignb 0x888
+#define MN_jnb 0x890
+#define MN_ccmpnb 0x894
+#define MN_setnb 0x89b
+#define MN_ctestnb 0x8a1
+#define MN_setzunb 0x8a9
 #define MN_cmovnb (MN_fcmovnb + 1)
 #define MN_fcmovnb (MN_cfcmovnb + 1)
-#define MN_cfcmovnb 0x8a4
-#define MN_ccmpb 0x8ad
-#define MN_vpcmpb 0x8b3
-#define MN_vpcomeqb 0x8ba
+#define MN_cfcmovnb 0x8b1
+#define MN_ccmpb 0x8ba
+#define MN_vpcmpb 0x8c0
+#define MN_vpcomeqb 0x8c7
 #define MN_gf2p8affineqb (MN_vgf2p8affineqb + 1)
-#define MN_vgf2p8affineqb 0x8c3
-#define MN_vpcomneqb 0x8d2
-#define MN_vpcmpneqb 0x8dc
+#define MN_vgf2p8affineqb 0x8d0
+#define MN_vpcomneqb 0x8df
+#define MN_vpcmpneqb 0x8e9
 #define MN_pcmpeqb (MN_vpcmpeqb + 1)
-#define MN_vpcmpeqb 0x8e6
-#define MN_vpmovusqb 0x8ef
-#define MN_vpmovsqb 0x8f9
-#define MN_vpmultishiftqb 0x902
+#define MN_vpcmpeqb 0x8f3
+#define MN_vpmovusqb 0x8fc
+#define MN_vpmovsqb 0x906
+#define MN_vpmultishiftqb 0x90f
 #define MN_gf2p8affineinvqb (MN_vgf2p8affineinvqb + 1)
-#define MN_vgf2p8affineinvqb 0x911
-#define MN_vpmovqb 0x923
-#define MN_rex_rb 0x92b
-#define MN_korb 0x932
-#define MN_kxnorb 0x937
-#define MN_kxorb 0x93e
+#define MN_vgf2p8affineinvqb 0x91e
+#define MN_vpmovqb 0x930
+#define MN_rex_rb 0x938
+#define MN_korb 0x93f
+#define MN_kxnorb 0x944
+#define MN_kxorb 0x94b
 #define MN_pinsrb (MN_vpinsrb + 1)
-#define MN_vpinsrb 0x944
-#define MN_kshiftrb 0x94c
+#define MN_vpinsrb 0x951
+#define MN_kshiftrb 0x959
 #define MN_pextrb (MN_vpextrb + 1)
-#define MN_vpextrb 0x955
-#define MN_rex_wrb 0x95d
+#define MN_vpextrb 0x962
+#define MN_rex_wrb 0x96a
 #define MN_pabsb (MN_vpabsb + 1)
-#define MN_vpabsb 0x965
+#define MN_vpabsb 0x972
 #define MN_psubsb (MN_vpsubsb + 1)
-#define MN_vpsubsb 0x96c
+#define MN_vpsubsb 0x979
 #define MN_paddsb (MN_vpaddsb + 1)
-#define MN_vpaddsb 0x974
+#define MN_vpaddsb 0x981
 #define MN_pminsb (MN_vpminsb + 1)
-#define MN_vpminsb 0x97c
-#define MN_vpcompressb 0x984
+#define MN_vpminsb 0x989
+#define MN_vpcompressb 0x991
 #define MN_psubusb (MN_vpsubusb + 1)
-#define MN_vpsubusb 0x990
+#define MN_vpsubusb 0x99d
 #define MN_paddusb (MN_vpaddusb + 1)
-#define MN_vpaddusb 0x999
-#define MN_pavgusb 0x9a2
-#define MN_movsb 0x9aa
+#define MN_vpaddusb 0x9a6
+#define MN_pavgusb 0x9af
+#define MN_movsb 0x9b7
 #define MN_pmaxsb (MN_vpmaxsb + 1)
-#define MN_vpmaxsb 0x9b0
-#define MN_setb 0x9b8
-#define MN_vpcomgtb 0x9bd
+#define MN_vpmaxsb 0x9bd
+#define MN_setb 0x9c5
+#define MN_vpcomgtb 0x9ca
 #define MN_pcmpgtb (MN_vpcmpgtb + 1)
-#define MN_vpcmpgtb 0x9c6
-#define MN_vpcomltb 0x9cf
-#define MN_vpcmpnltb 0x9d8
-#define MN_vpcmpltb 0x9e2
-#define MN_vpopcntb 0x9eb
-#define MN_knotb 0x9f4
-#define MN_vprotb 0x9fa
-#define MN_vpbroadcastb 0xa01
-#define MN_ctestb 0xa0e
-#define MN_ktestb 0xa15
-#define MN_kortestb 0xa1c
-#define MN_vpcomgeub 0xa25
-#define MN_vpcomleub 0xa2f
-#define MN_vpcmpnleub 0xa39
-#define MN_vpcmpleub 0xa44
-#define MN_vpcomfalseub 0xa4e
-#define MN_vpcomtrueub 0xa5b
-#define MN_vpcomub 0xa67
+#define MN_vpcmpgtb 0x9d3
+#define MN_vpcomltb 0x9dc
+#define MN_vpcmpnltb 0x9e5
+#define MN_vpcmpltb 0x9ef
+#define MN_vpopcntb 0x9f8
+#define MN_knotb 0xa01
+#define MN_vprotb 0xa07
+#define MN_vpbroadcastb 0xa0e
+#define MN_ctestb 0xa1b
+#define MN_ktestb 0xa22
+#define MN_kortestb 0xa29
+#define MN_vpcomgeub 0xa32
+#define MN_vpcomleub 0xa3c
+#define MN_vpcmpnleub 0xa46
+#define MN_vpcmpleub 0xa51
+#define MN_vpcomfalseub 0xa5b
+#define MN_vpcomtrueub 0xa68
+#define MN_vpcomub 0xa74
 #define MN_pminub (MN_vpminub + 1)
-#define MN_vpminub 0xa6f
-#define MN_vpcmpub 0xa77
-#define MN_vpcomequb 0xa7f
-#define MN_vpcomnequb 0xa89
-#define MN_vpcmpnequb 0xa94
-#define MN_vpcmpequb 0xa9f
+#define MN_vpminub 0xa7c
+#define MN_vpcmpub 0xa84
+#define MN_vpcomequb 0xa8c
+#define MN_vpcomnequb 0xa96
+#define MN_vpcmpnequb 0xaa1
+#define MN_vpcmpequb 0xaac
 #define MN_sub (MN_fsub + 1)
 #define MN_fsub (MN_pfsub + 1)
-#define MN_pfsub 0xaa9
-#define MN_fisub 0xaaf
-#define MN_vpcomgtub 0xab5
-#define MN_vpcomltub 0xabf
-#define MN_vpcmpnltub 0xac9
-#define MN_vpcmpltub 0xad4
+#define MN_pfsub 0xab6
+#define MN_fisub 0xabc
+#define MN_vpcomgtub 0xac2
+#define MN_vpcomltub 0xacc
+#define MN_vpcmpnltub 0xad6
+#define MN_vpcmpltub 0xae1
 #define MN_pmaxub (MN_vpmaxub + 1)
-#define MN_vpmaxub 0xade
-#define MN_setzub 0xae6
+#define MN_vpmaxub 0xaeb
+#define MN_setzub 0xaf3
 #define MN_pblendvb (MN_vpblendvb + 1)
-#define MN_vpblendvb 0xaed
+#define MN_vpblendvb 0xafa
 #define MN_cmovb (MN_fcmovb + 1)
 #define MN_fcmovb (MN_cfcmovb + 1)
-#define MN_cfcmovb 0xaf7
-#define MN_kmovb 0xaff
-#define MN_rex_wb 0xb05
-#define MN_clwb 0xb0c
+#define MN_cfcmovb 0xb04
+#define MN_kmovb 0xb0c
+#define MN_rex_wb 0xb12
+#define MN_clwb 0xb19
 #define MN_packsswb (MN_vpacksswb + 1)
-#define MN_vpacksswb 0xb11
+#define MN_vpacksswb 0xb1e
 #define MN_packuswb (MN_vpackuswb + 1)
-#define MN_vpackuswb 0xb1b
-#define MN_vpmovuswb 0xb25
-#define MN_vpmovswb 0xb2f
-#define MN_vpmovwb 0xb38
-#define MN_rex_xb 0xb40
-#define MN_rex_rxb 0xb47
-#define MN_rex_wrxb 0xb4f
-#define MN_rex_wxb 0xb58
-#define MN_movzb 0xb60
-#define MN_clac 0xb66
-#define MN_stac 0xb6b
-#define MN_xcrypt_cbc 0xb70
-#define MN_xcryptcbc 0xb7b
-#define MN_pfacc 0xb85
-#define MN_pfnacc 0xb8b
-#define MN_pfpnacc 0xb92
-#define MN_adc 0xb9a
+#define MN_vpackuswb 0xb28
+#define MN_vpmovuswb 0xb32
+#define MN_vpmovswb 0xb3c
+#define MN_vpmovwb 0xb45
+#define MN_rex_xb 0xb4d
+#define MN_rex_rxb 0xb54
+#define MN_rex_wrxb 0xb5c
+#define MN_rex_wxb 0xb65
+#define MN_movzb 0xb6d
+#define MN_clac 0xb73
+#define MN_stac 0xb78
+#define MN_xcrypt_cbc 0xb7d
+#define MN_xcryptcbc 0xb88
+#define MN_pfacc 0xb92
+#define MN_pfnacc 0xb98
+#define MN_pfpnacc 0xb9f
+#define MN_adc 0xba7
 #define MN_dec (MN_aesdec + 3)
 #define MN_aesdec (MN_vaesdec + 1)
-#define MN_vaesdec 0xb9e
-#define MN_getsec 0xba6
-#define MN_xsavec 0xbad
-#define MN_blcic 0xbb4
-#define MN_blsic 0xbba
-#define MN_jc 0xbc0
-#define MN_t1mskc 0xbc3
-#define MN_clc 0xbca
-#define MN_cmc 0xbce
+#define MN_vaesdec 0xbab
+#define MN_getsec 0xbb3
+#define MN_xsavec 0xbba
+#define MN_blcic 0xbc1
+#define MN_blsic 0xbc7
+#define MN_jc 0xbcd
+#define MN_t1mskc 0xbd0
+#define MN_clc 0xbd7
+#define MN_cmc 0xbdb
 #define MN_aesimc (MN_vaesimc + 1)
-#define MN_vaesimc 0xbd2
-#define MN_rdpmc 0xbda
+#define MN_vaesimc 0xbdf
+#define MN_rdpmc 0xbe7
 #define MN_aesenc (MN_vaesenc + 1)
-#define MN_vaesenc 0xbe0
-#define MN_inc 0xbe8
-#define MN_jnc 0xbec
-#define MN_ccmpnc 0xbf0
-#define MN_setnc 0xbf7
-#define MN_ctestnc 0xbfd
-#define MN_vmfunc 0xc05
-#define MN_setzunc 0xc0c
+#define MN_vaesenc 0xbed
+#define MN_inc 0xbf5
+#define MN_jnc 0xbf9
+#define MN_ccmpnc 0xbfd
+#define MN_setnc 0xc04
+#define MN_ctestnc 0xc0a
+#define MN_vmfunc 0xc12
+#define MN_setzunc 0xc19
 #define MN_cmovnc (MN_cfcmovnc + 2)
-#define MN_cfcmovnc 0xc14
-#define MN_tlbsync 0xc1d
-#define MN_ccmpc 0xc25
-#define MN_rdtsc 0xc2b
-#define MN_btc 0xc31
-#define MN_setc 0xc35
+#define MN_cfcmovnc 0xc21
+#define MN_tlbsync 0xc2a
+#define MN_ccmpc 0xc32
+#define MN_rdtsc 0xc38
+#define MN_btc 0xc3e
+#define MN_setc 0xc42
 #define MN_stc (MN_ctestc + 3)
-#define MN_ctestc 0xc3a
-#define MN_setzuc 0xc41
+#define MN_ctestc 0xc47
+#define MN_setzuc 0xc4e
 #define MN_cmovc (MN_cfcmovc + 2)
-#define MN_cfcmovc 0xc48
-#define MN_vpermi2d 0xc50
-#define MN_vpmovm2d 0xc59
-#define MN_vpermt2d 0xc62
-#define MN_vpbroadcastmw2d 0xc6b
-#define MN_aad 0xc7b
-#define MN_vmread 0xc7f
-#define MN_vpshad 0xc86
-#define MN_vmload 0xc8d
+#define MN_cfcmovc 0xc55
+#define MN_vpermi2d 0xc5d
+#define MN_vpmovm2d 0xc66
+#define MN_vpermt2d 0xc6f
+#define MN_vpbroadcastmw2d 0xc78
+#define MN_aad 0xc88
+#define MN_vmread 0xc8c
+#define MN_vpshad 0xc93
+#define MN_vmload 0xc9a
 #define MN_psrad (MN_vpsrad + 1)
-#define MN_vpsrad 0xc94
-#define MN_vphaddbd 0xc9b
-#define MN_vphaddubd 0xca4
+#define MN_vpsrad 0xca1
+#define MN_vphaddbd 0xca8
+#define MN_vphaddubd 0xcb1
 #define MN_phsubd (MN_vphsubd + 1)
-#define MN_vphsubd 0xcae
+#define MN_vphsubd 0xcbb
 #define MN_psubd (MN_vpsubd + 1)
-#define MN_vpsubd 0xcb6
+#define MN_vpsubd 0xcc3
 #define MN_pmovsxbd (MN_vpmovsxbd + 1)
-#define MN_vpmovsxbd 0xcbd
+#define MN_vpmovsxbd 0xcca
 #define MN_pmovzxbd (MN_vpmovzxbd + 1)
-#define MN_vpmovzxbd 0xcc7
+#define MN_vpmovzxbd 0xcd4
 #define MN_add (MN_aadd + 1)
-#define MN_aadd 0xcd1
+#define MN_aadd 0xcde
 #define MN_fadd (MN_pfadd + 1)
-#define MN_pfadd 0xcd6
-#define MN_fiadd 0xcdc
-#define MN_tileloadd 0xce2
+#define MN_pfadd 0xce3
+#define MN_fiadd 0xce9
+#define MN_tileloadd 0xcef
 #define MN_xadd (MN_cmpnaxadd + 5)
-#define MN_cmpnaxadd 0xcec
-#define MN_cmpaxadd 0xcf6
-#define MN_cmpnbxadd 0xcff
-#define MN_cmpbxadd 0xd09
-#define MN_cmpncxadd 0xd12
-#define MN_cmpcxadd 0xd1c
-#define MN_cmpnaexadd 0xd25
-#define MN_cmpaexadd 0xd30
-#define MN_cmpnbexadd 0xd3a
-#define MN_cmpbexadd 0xd45
-#define MN_cmpngexadd 0xd4f
-#define MN_cmpgexadd 0xd5a
-#define MN_cmpnlexadd 0xd64
-#define MN_cmplexadd 0xd6f
-#define MN_cmpnexadd 0xd79
-#define MN_cmpexadd 0xd83
-#define MN_cmppexadd 0xd8c
-#define MN_cmpngxadd 0xd96
-#define MN_cmpgxadd 0xda0
-#define MN_cmpnlxadd 0xda9
-#define MN_cmplxadd 0xdb3
-#define MN_cmpnoxadd 0xdbc
-#define MN_cmpoxadd 0xdc6
-#define MN_cmppoxadd 0xdcf
-#define MN_cmpnpxadd 0xdd9
-#define MN_cmppxadd 0xde3
-#define MN_cmpnsxadd 0xdec
-#define MN_cmpsxadd 0xdf6
-#define MN_cmpnzxadd 0xdff
-#define MN_cmpzxadd 0xe09
+#define MN_cmpnaxadd 0xcf9
+#define MN_cmpaxadd 0xd03
+#define MN_cmpnbxadd 0xd0c
+#define MN_cmpbxadd 0xd16
+#define MN_cmpncxadd 0xd1f
+#define MN_cmpcxadd 0xd29
+#define MN_cmpnaexadd 0xd32
+#define MN_cmpaexadd 0xd3d
+#define MN_cmpnbexadd 0xd47
+#define MN_cmpbexadd 0xd52
+#define MN_cmpngexadd 0xd5c
+#define MN_cmpgexadd 0xd67
+#define MN_cmpnlexadd 0xd71
+#define MN_cmplexadd 0xd7c
+#define MN_cmpnexadd 0xd86
+#define MN_cmpexadd 0xd90
+#define MN_cmppexadd 0xd99
+#define MN_cmpngxadd 0xda3
+#define MN_cmpgxadd 0xdad
+#define MN_cmpnlxadd 0xdb6
+#define MN_cmplxadd 0xdc0
+#define MN_cmpnoxadd 0xdc9
+#define MN_cmpoxadd 0xdd3
+#define MN_cmppoxadd 0xddc
+#define MN_cmpnpxadd 0xde6
+#define MN_cmppxadd 0xdf0
+#define MN_cmpnsxadd 0xdf9
+#define MN_cmpsxadd 0xe03
+#define MN_cmpnzxadd 0xe0c
+#define MN_cmpzxadd 0xe16
 #define MN_phaddd (MN_vphaddd + 1)
-#define MN_vphaddd 0xe12
-#define MN_kaddd 0xe1a
+#define MN_vphaddd 0xe1f
+#define MN_kaddd 0xe27
 #define MN_paddd (MN_vpaddd + 1)
-#define MN_vpaddd 0xe20
-#define MN_vpshldd 0xe27
-#define MN_kandd 0xe2f
-#define MN_vpandd 0xe35
-#define MN_vpexpandd 0xe3c
-#define MN_vpblendd 0xe46
-#define MN_vpgatherdd 0xe4f
-#define MN_vpscatterdd 0xe5a
-#define MN_vpshrdd 0xe66
-#define MN_vpmacsdd 0xe6e
-#define MN_vpmacssdd 0xe77
-#define MN_rdseed 0xe81
-#define MN_vpcomged 0xe88
-#define MN_vpcomled 0xe91
-#define MN_vpcmpnled 0xe9a
-#define MN_vpcmpled 0xea4
-#define MN_tilestored 0xead
-#define MN_vpcomfalsed 0xeb8
-#define MN_vpcomtrued 0xec4
-#define MN_pi2fd 0xecf
+#define MN_vpaddd 0xe2d
+#define MN_vpshldd 0xe34
+#define MN_kandd 0xe3c
+#define MN_vpandd 0xe42
+#define MN_vpexpandd 0xe49
+#define MN_vpblendd 0xe53
+#define MN_vpgatherdd 0xe5c
+#define MN_vpscatterdd 0xe67
+#define MN_vpshrdd 0xe73
+#define MN_vpmacsdd 0xe7b
+#define MN_vpmacssdd 0xe84
+#define MN_rdseed 0xe8e
+#define MN_vpcomged 0xe95
+#define MN_vpcomled 0xe9e
+#define MN_vpcmpnled 0xea7
+#define MN_vpcmpled 0xeb1
+#define MN_tilestored 0xeba
+#define MN_vpcomfalsed 0xec5
+#define MN_vpcomtrued 0xed1
+#define MN_pi2fd 0xedc
 #define MN_pshufd (MN_vpshufd + 1)
-#define MN_vpshufd 0xed5
-#define MN_vpternlogd 0xedd
-#define MN_pf2id 0xee8
-#define MN_invpcid 0xeee
-#define MN_rdpid 0xef6
-#define MN_invvpid 0xefc
-#define MN_cpuid 0xf04
-#define MN_fbld 0xf0a
-#define MN_cld 0xf0f
-#define MN_fld 0xf13
+#define MN_vpshufd 0xee2
+#define MN_vpternlogd 0xeea
+#define MN_pf2id 0xef5
+#define MN_invpcid 0xefb
+#define MN_rdpid 0xf03
+#define MN_invvpid 0xf09
+#define MN_cpuid 0xf11
+#define MN_fbld 0xf17
+#define MN_cld 0xf1c
+#define MN_fld 0xf20
 #define MN_shld (MN_vpshld + 2)
-#define MN_vpshld 0xf17
-#define MN_fild 0xf1e
+#define MN_vpshld 0xf24
+#define MN_fild 0xf2b
 #define MN_pslld (MN_vpslld + 1)
-#define MN_vpslld 0xf23
+#define MN_vpslld 0xf30
 #define MN_pmulld (MN_vpmulld + 1)
-#define MN_vpmulld 0xf2a
-#define MN_vprold 0xf32
+#define MN_vpmulld 0xf37
+#define MN_vprold 0xf3f
 #define MN_psrld (MN_vpsrld + 1)
-#define MN_vpsrld 0xf39
-#define MN_vmptrld 0xf40
-#define MN_kshiftld 0xf48
-#define MN_enqcmd 0xf51
-#define MN_vpblendmd 0xf58
-#define MN_vptestnmd 0xf62
-#define MN_vpcomd 0xf6c
-#define MN_vpermd 0xf73
-#define MN_vptestmd 0xf7a
+#define MN_vpsrld 0xf46
+#define MN_vmptrld 0xf4d
+#define MN_kshiftld 0xf55
+#define MN_enqcmd 0xf5e
+#define MN_vpblendmd 0xf65
+#define MN_vptestnmd 0xf6f
+#define MN_vpcomd 0xf79
+#define MN_vpermd 0xf80
+#define MN_vptestmd 0xf87
 #define MN_and (MN_aand + 1)
-#define MN_aand 0xf83
+#define MN_aand 0xf90
 #define MN_pand (MN_vpand + 1)
-#define MN_vpand 0xf88
-#define MN_rdrand 0xf8e
-#define MN_bnd 0xf95
-#define MN_kandnd 0xf99
-#define MN_vpandnd 0xfa0
-#define MN_xend 0xfa8
-#define MN_valignd 0xfad
+#define MN_vpand 0xf95
+#define MN_rdrand 0xf9b
+#define MN_bnd 0xfa2
+#define MN_kandnd 0xfa6
+#define MN_vpandnd 0xfad
+#define MN_xend 0xfb5
+#define MN_valignd 0xfba
 #define MN_psignd (MN_vpsignd + 1)
-#define MN_vpsignd 0xfb5
-#define MN_bound 0xfbd
-#define MN_slod 0xfc3
-#define MN_vfmaddsub231pd 0xfc8
-#define MN_vfmsub231pd 0xfd7
-#define MN_vfnmsub231pd 0xfe3
-#define MN_vfmsubadd231pd 0xff0
-#define MN_vfmadd231pd 0xfff
-#define MN_vfnmadd231pd 0x100b
-#define MN_vfmaddsub132pd 0x1018
-#define MN_vfmsub132pd 0x1027
-#define MN_vfnmsub132pd 0x1033
-#define MN_vfmsubadd132pd 0x1040
-#define MN_vfmadd132pd 0x104f
-#define MN_vfnmadd132pd 0x105b
-#define MN_vcvtph2pd 0x1068
-#define MN_vpermi2pd 0x1072
-#define MN_cvtpi2pd 0x107c
-#define MN_vpermil2pd 0x1085
-#define MN_vexp2pd 0x1090
+#define MN_vpsignd 0xfc2
+#define MN_bound 0xfca
+#define MN_slod 0xfd0
+#define MN_vfmaddsub231pd 0xfd5
+#define MN_vfmsub231pd 0xfe4
+#define MN_vfnmsub231pd 0xff0
+#define MN_vfmsubadd231pd 0xffd
+#define MN_vfmadd231pd 0x100c
+#define MN_vfnmadd231pd 0x1018
+#define MN_vfmaddsub132pd 0x1025
+#define MN_vfmsub132pd 0x1034
+#define MN_vfnmsub132pd 0x1040
+#define MN_vfmsubadd132pd 0x104d
+#define MN_vfmadd132pd 0x105c
+#define MN_vfnmadd132pd 0x1068
+#define MN_vcvtph2pd 0x1075
+#define MN_vpermi2pd 0x107f
+#define MN_cvtpi2pd 0x1089
+#define MN_vpermil2pd 0x1092
+#define MN_vexp2pd 0x109d
 #define MN_cvtdq2pd (MN_vcvtdq2pd + 1)
-#define MN_vcvtdq2pd 0x1098
-#define MN_vcvtudq2pd 0x10a2
-#define MN_vcvtqq2pd 0x10ad
-#define MN_vcvtuqq2pd 0x10b7
+#define MN_vcvtdq2pd 0x10a5
+#define MN_vcvtudq2pd 0x10af
+#define MN_vcvtqq2pd 0x10ba
+#define MN_vcvtuqq2pd 0x10c4
 #define MN_cvtps2pd (MN_vcvtps2pd + 1)
-#define MN_vcvtps2pd 0x10c2
-#define MN_vpermt2pd 0x10cc
-#define MN_vfmaddsub213pd 0x10d6
-#define MN_vfmsub213pd 0x10e5
-#define MN_vfnmsub213pd 0x10f1
-#define MN_vfmsubadd213pd 0x10fe
-#define MN_vfmadd213pd 0x110d
-#define MN_vfnmadd213pd 0x1119
-#define MN_vrcp14pd 0x1126
-#define MN_vrsqrt14pd 0x112f
-#define MN_vrcp28pd 0x113a
-#define MN_vrsqrt28pd 0x1143
+#define MN_vcvtps2pd 0x10cf
+#define MN_vpermt2pd 0x10d9
+#define MN_vfmaddsub213pd 0x10e3
+#define MN_vfmsub213pd 0x10f2
+#define MN_vfnmsub213pd 0x10fe
+#define MN_vfmsubadd213pd 0x110b
+#define MN_vfmadd213pd 0x111a
+#define MN_vfnmadd213pd 0x1126
+#define MN_vrcp14pd 0x1133
+#define MN_vrsqrt14pd 0x113c
+#define MN_vrcp28pd 0x1147
+#define MN_vrsqrt28pd 0x1150
 #define MN_movapd (MN_vmovapd + 1)
-#define MN_vmovapd 0x114e
-#define MN_pswapd 0x1156
+#define MN_vmovapd 0x115b
+#define MN_pswapd 0x1163
 #define MN_subpd (MN_addsubpd + 3)
 #define MN_addsubpd (MN_vfmaddsubpd + 3)
-#define MN_vfmaddsubpd 0x115d
-#define MN_vaddsubpd 0x1169
+#define MN_vfmaddsubpd 0x116a
+#define MN_vaddsubpd 0x1176
 #define MN_hsubpd (MN_vhsubpd + 1)
-#define MN_vhsubpd 0x1173
-#define MN_vfmsubpd 0x117b
-#define MN_vfnmsubpd 0x1184
-#define MN_vsubpd 0x118e
-#define MN_vgatherpf0dpd 0x1195
-#define MN_vscatterpf0dpd 0x11a3
-#define MN_vgatherpf1dpd 0x11b2
-#define MN_vscatterpf1dpd 0x11c0
+#define MN_vhsubpd 0x1180
+#define MN_vfmsubpd 0x1188
+#define MN_vfnmsubpd 0x1191
+#define MN_vsubpd 0x119b
+#define MN_vgatherpf0dpd 0x11a2
+#define MN_vscatterpf0dpd 0x11b0
+#define MN_vgatherpf1dpd 0x11bf
+#define MN_vscatterpf1dpd 0x11cd
 #define MN_addpd (MN_vfmsubaddpd + 6)
-#define MN_vfmsubaddpd 0x11cf
+#define MN_vfmsubaddpd 0x11dc
 #define MN_haddpd (MN_vhaddpd + 1)
-#define MN_vhaddpd 0x11db
-#define MN_vfmaddpd 0x11e3
-#define MN_vfnmaddpd 0x11ec
-#define MN_vaddpd 0x11f6
+#define MN_vhaddpd 0x11e8
+#define MN_vfmaddpd 0x11f0
+#define MN_vfnmaddpd 0x11f9
+#define MN_vaddpd 0x1203
 #define MN_andpd (MN_vexpandpd + 4)
-#define MN_vexpandpd 0x11fd
-#define MN_vandpd 0x1207
+#define MN_vexpandpd 0x120a
+#define MN_vandpd 0x1214
 #define MN_blendpd (MN_vblendpd + 1)
-#define MN_vblendpd 0x120e
+#define MN_vblendpd 0x121b
 #define MN_roundpd (MN_vroundpd + 1)
-#define MN_vroundpd 0x1217
-#define MN_vgatherdpd 0x1220
-#define MN_vscatterdpd 0x122b
+#define MN_vroundpd 0x1224
+#define MN_vgatherdpd 0x122d
+#define MN_vscatterdpd 0x1238
 #define MN_cmpunordpd (MN_vcmpunordpd + 1)
-#define MN_vcmpunordpd 0x1237
+#define MN_vcmpunordpd 0x1244
 #define MN_cmpordpd (MN_vcmpordpd + 1)
-#define MN_vcmpordpd 0x1243
-#define MN_vreducepd 0x124d
-#define MN_vrangepd 0x1257
-#define MN_vcmpngepd 0x1260
-#define MN_vcmpgepd 0x126a
-#define MN_vrndscalepd 0x1273
+#define MN_vcmpordpd 0x1250
+#define MN_vreducepd 0x125a
+#define MN_vrangepd 0x1264
+#define MN_vcmpngepd 0x126d
+#define MN_vcmpgepd 0x1277
+#define MN_vrndscalepd 0x1280
 #define MN_cmpnlepd (MN_vcmpnlepd + 1)
-#define MN_vcmpnlepd 0x127f
+#define MN_vcmpnlepd 0x128c
 #define MN_cmplepd (MN_vcmplepd + 1)
-#define MN_vcmplepd 0x1289
-#define MN_vcmpfalsepd 0x1292
-#define MN_vcmptruepd 0x129e
-#define MN_vscalefpd 0x12a9
+#define MN_vcmplepd 0x1296
+#define MN_vcmpfalsepd 0x129f
+#define MN_vcmptruepd 0x12ab
+#define MN_vscalefpd 0x12b6
 #define MN_shufpd (MN_vshufpd + 1)
-#define MN_vshufpd 0x12b3
+#define MN_vshufpd 0x12c0
 #define MN_unpckhpd (MN_vunpckhpd + 1)
-#define MN_vunpckhpd 0x12bb
+#define MN_vunpckhpd 0x12c8
 #define MN_movhpd (MN_vmovhpd + 1)
-#define MN_vmovhpd 0x12c5
+#define MN_vmovhpd 0x12d2
 #define MN_movmskpd (MN_vmovmskpd + 1)
-#define MN_vmovmskpd 0x12cd
-#define MN_vpermilpd 0x12d7
+#define MN_vmovmskpd 0x12da
+#define MN_vpermilpd 0x12e4
 #define MN_unpcklpd (MN_vunpcklpd + 1)
-#define MN_vunpcklpd 0x12e1
+#define MN_vunpcklpd 0x12ee
 #define MN_mulpd (MN_vmulpd + 1)
-#define MN_vmulpd 0x12eb
+#define MN_vmulpd 0x12f8
 #define MN_movlpd (MN_vmovlpd + 1)
-#define MN_vmovlpd 0x12f2
-#define MN_vpcmpd 0x12fa
-#define MN_vblendmpd 0x1301
-#define MN_vfixupimmpd 0x130b
-#define MN_vpermpd 0x1317
+#define MN_vmovlpd 0x12ff
+#define MN_vpcmpd 0x1307
+#define MN_vblendmpd 0x130e
+#define MN_vfixupimmpd 0x1318
+#define MN_vpermpd 0x1324
 #define MN_andnpd (MN_vandnpd + 1)
-#define MN_vandnpd 0x131f
+#define MN_vandnpd 0x132c
 #define MN_minpd (MN_vminpd + 1)
-#define MN_vminpd 0x1327
+#define MN_vminpd 0x1334
 #define MN_dppd (MN_vdppd + 1)
-#define MN_vdppd 0x132e
+#define MN_vdppd 0x133b
 #define MN_cmppd (MN_vcmppd + 1)
-#define MN_vcmppd 0x1334
-#define MN_vgetexppd 0x133b
-#define MN_vgatherpf0qpd 0x1345
-#define MN_vscatterpf0qpd 0x1353
-#define MN_vgatherpf1qpd 0x1362
-#define MN_vscatterpf1qpd 0x1370
-#define MN_vcmpunord_qpd 0x137f
-#define MN_vcmpord_qpd 0x138d
+#define MN_vcmppd 0x1341
+#define MN_vgetexppd 0x1348
+#define MN_vgatherpf0qpd 0x1352
+#define MN_vscatterpf0qpd 0x1360
+#define MN_vgatherpf1qpd 0x136f
+#define MN_vscatterpf1qpd 0x137d
+#define MN_vcmpunord_qpd 0x138c
+#define MN_vcmpord_qpd 0x139a
 #define MN_cmpneqpd (MN_vcmpneqpd + 1)
-#define MN_vcmpneqpd 0x1399
+#define MN_vcmpneqpd 0x13a6
 #define MN_cmpeqpd (MN_vcmpeqpd + 1)
-#define MN_vcmpeqpd 0x13a3
-#define MN_vcmpge_oqpd 0x13ac
-#define MN_vcmple_oqpd 0x13b8
-#define MN_vcmpfalse_oqpd 0x13c4
-#define MN_vcmpneq_oqpd 0x13d3
-#define MN_vcmpeq_oqpd 0x13e0
-#define MN_vcmpgt_oqpd 0x13ec
-#define MN_vcmplt_oqpd 0x13f8
-#define MN_vgatherqpd 0x1404
-#define MN_vscatterqpd 0x140f
-#define MN_vcmpnge_uqpd 0x141b
-#define MN_vcmpnle_uqpd 0x1428
-#define MN_vcmptrue_uqpd 0x1435
-#define MN_vcmpneq_uqpd 0x1443
-#define MN_vcmpeq_uqpd 0x1450
-#define MN_vcmpngt_uqpd 0x145c
-#define MN_vcmpnlt_uqpd 0x1469
+#define MN_vcmpeqpd 0x13b0
+#define MN_vcmpge_oqpd 0x13b9
+#define MN_vcmple_oqpd 0x13c5
+#define MN_vcmpfalse_oqpd 0x13d1
+#define MN_vcmpneq_oqpd 0x13e0
+#define MN_vcmpeq_oqpd 0x13ed
+#define MN_vcmpgt_oqpd 0x13f9
+#define MN_vcmplt_oqpd 0x1405
+#define MN_vgatherqpd 0x1411
+#define MN_vscatterqpd 0x141c
+#define MN_vcmpnge_uqpd 0x1428
+#define MN_vcmpnle_uqpd 0x1435
+#define MN_vcmptrue_uqpd 0x1442
+#define MN_vcmpneq_uqpd 0x1450
+#define MN_vcmpeq_uqpd 0x145d
+#define MN_vcmpngt_uqpd 0x1469
+#define MN_vcmpnlt_uqpd 0x1476
 #define MN_orpd (MN_vorpd + 1)
-#define MN_vorpd 0x1476
+#define MN_vorpd 0x1483
 #define MN_xorpd (MN_vxorpd + 1)
-#define MN_vxorpd 0x147c
-#define MN_vcmpunord_spd 0x1483
-#define MN_vcmpord_spd 0x1491
-#define MN_vcmpge_ospd 0x149d
-#define MN_vcmple_ospd 0x14a9
-#define MN_vcmpfalse_ospd 0x14b5
-#define MN_vcmpneq_ospd 0x14c4
-#define MN_vcmpeq_ospd 0x14d1
-#define MN_vcmpgt_ospd 0x14dd
-#define MN_vcmplt_ospd 0x14e9
-#define MN_vfpclasspd 0x14f5
-#define MN_incsspd 0x1500
-#define MN_rdsspd 0x1508
-#define MN_vcompresspd 0x150f
-#define MN_vcmpnge_uspd 0x151b
-#define MN_vcmpnle_uspd 0x1528
-#define MN_vcmptrue_uspd 0x1535
-#define MN_vcmpneq_uspd 0x1543
-#define MN_vcmpeq_uspd 0x1550
-#define MN_vcmpngt_uspd 0x155c
-#define MN_vcmpnlt_uspd 0x1569
-#define MN_vcmpngtpd 0x1576
-#define MN_vcmpgtpd 0x1580
+#define MN_vxorpd 0x1489
+#define MN_vcmpunord_spd 0x1490
+#define MN_vcmpord_spd 0x149e
+#define MN_vcmpge_ospd 0x14aa
+#define MN_vcmple_ospd 0x14b6
+#define MN_vcmpfalse_ospd 0x14c2
+#define MN_vcmpneq_ospd 0x14d1
+#define MN_vcmpeq_ospd 0x14de
+#define MN_vcmpgt_ospd 0x14ea
+#define MN_vcmplt_ospd 0x14f6
+#define MN_vfpclasspd 0x1502
+#define MN_incsspd 0x150d
+#define MN_rdsspd 0x1515
+#define MN_vcompresspd 0x151c
+#define MN_vcmpnge_uspd 0x1528
+#define MN_vcmpnle_uspd 0x1535
+#define MN_vcmptrue_uspd 0x1542
+#define MN_vcmpneq_uspd 0x1550
+#define MN_vcmpeq_uspd 0x155d
+#define MN_vcmpngt_uspd 0x1569
+#define MN_vcmpnlt_uspd 0x1576
+#define MN_vcmpngtpd 0x1583
+#define MN_vcmpgtpd 0x158d
 #define MN_cmpnltpd (MN_vcmpnltpd + 1)
-#define MN_vcmpnltpd 0x1589
+#define MN_vcmpnltpd 0x1596
 #define MN_cmpltpd (MN_vcmpltpd + 1)
-#define MN_vcmpltpd 0x1593
-#define MN_vgetmantpd 0x159c
+#define MN_vcmpltpd 0x15a0
+#define MN_vgetmantpd 0x15a9
 #define MN_movntpd (MN_vmovntpd + 1)
-#define MN_vmovntpd 0x15a7
+#define MN_vmovntpd 0x15b4
 #define MN_sqrtpd (MN_vsqrtpd + 1)
-#define MN_vsqrtpd 0x15b0
-#define MN_vtestpd 0x15b8
+#define MN_vsqrtpd 0x15bd
+#define MN_vtestpd 0x15c5
 #define MN_movupd (MN_vmovupd + 1)
-#define MN_vmovupd 0x15c0
+#define MN_vmovupd 0x15cd
 #define MN_blendvpd (MN_vblendvpd + 1)
-#define MN_vblendvpd 0x15c8
+#define MN_vblendvpd 0x15d5
 #define MN_divpd (MN_vdivpd + 1)
-#define MN_vdivpd 0x15d2
-#define MN_vmaskmovpd 0x15d9
-#define MN_maxpd (MN_vmaxpd + 1)
-#define MN_vmaxpd 0x15e4
-#define MN_vfrczpd 0x15eb
-#define MN_vpcomeqd 0x15f3
-#define MN_vpcomneqd 0x15fc
-#define MN_vpcmpneqd 0x1606
+#define MN_vdivpd 0x15df
+#define MN_vmaskmovpd 0x15e6
+#define MN_maxpd (MN_vminmaxpd + 4)
+#define MN_vminmaxpd 0x15f1
+#define MN_vmaxpd 0x15fb
+#define MN_vfrczpd 0x1602
+#define MN_vpcomeqd 0x160a
+#define MN_vpcomneqd 0x1613
+#define MN_vpcmpneqd 0x161d
 #define MN_pcmpeqd (MN_vpcmpeqd + 1)
-#define MN_vpcmpeqd 0x1610
-#define MN_vpgatherqd 0x1619
-#define MN_vpscatterqd 0x1624
-#define MN_vpmovusqd 0x1630
-#define MN_vpmovsqd 0x163a
-#define MN_vpmovqd 0x1643
-#define MN_shrd 0x164b
-#define MN_kord 0x1650
-#define MN_kxnord 0x1655
-#define MN_vpord 0x165c
-#define MN_vprord 0x1662
+#define MN_vpcmpeqd 0x1627
+#define MN_vpgatherqd 0x1630
+#define MN_vpscatterqd 0x163b
+#define MN_vpmovusqd 0x1647
+#define MN_vpmovsqd 0x1651
+#define MN_vpmovqd 0x165a
+#define MN_shrd 0x1662
+#define MN_kord 0x1667
+#define MN_kxnord 0x166c
+#define MN_vpord 0x1673
+#define MN_vprord 0x1679
 #define MN_word (MN_aword + 1)
-#define MN_aword 0x1669
+#define MN_aword 0x1680
 #define MN_dword (MN_adword + 1)
-#define MN_adword 0x166f
-#define MN_kxord 0x1676
-#define MN_vpxord 0x167c
+#define MN_adword 0x1686
+#define MN_kxord 0x168d
+#define MN_vpxord 0x1693
 #define MN_pinsrd (MN_vpinsrd + 1)
-#define MN_vpinsrd 0x1683
-#define MN_kshiftrd 0x168b
+#define MN_vpinsrd 0x169a
+#define MN_kshiftrd 0x16a2
 #define MN_pextrd (MN_vpextrd + 1)
-#define MN_vpextrd 0x1694
-#define MN_vfmsub231sd 0x169c
-#define MN_vfnmsub231sd 0x16a8
-#define MN_vfmadd231sd 0x16b5
-#define MN_vfnmadd231sd 0x16c1
-#define MN_vfmsub132sd 0x16ce
-#define MN_vfnmsub132sd 0x16da
-#define MN_vfmadd132sd 0x16e7
-#define MN_vfnmadd132sd 0x16f3
-#define MN_vcvtsh2sd 0x1700
+#define MN_vpextrd 0x16ab
+#define MN_vfmsub231sd 0x16b3
+#define MN_vfnmsub231sd 0x16bf
+#define MN_vfmadd231sd 0x16cc
+#define MN_vfnmadd231sd 0x16d8
+#define MN_vfmsub132sd 0x16e5
+#define MN_vfnmsub132sd 0x16f1
+#define MN_vfmadd132sd 0x16fe
+#define MN_vfnmadd132sd 0x170a
+#define MN_vcvtsh2sd 0x1717
 #define MN_cvtsi2sd (MN_vcvtsi2sd + 1)
-#define MN_vcvtsi2sd 0x170a
-#define MN_vcvtusi2sd 0x1714
+#define MN_vcvtsi2sd 0x1721
+#define MN_vcvtusi2sd 0x172b
 #define MN_cvtss2sd (MN_vcvtss2sd + 1)
-#define MN_vcvtss2sd 0x171f
-#define MN_vfmsub213sd 0x1729
-#define MN_vfnmsub213sd 0x1735
-#define MN_vfmadd213sd 0x1742
-#define MN_vfnmadd213sd 0x174e
-#define MN_vrcp14sd 0x175b
-#define MN_vrsqrt14sd 0x1764
-#define MN_vrcp28sd 0x176f
-#define MN_vrsqrt28sd 0x1778
+#define MN_vcvtss2sd 0x1736
+#define MN_vfmsub213sd 0x1740
+#define MN_vfnmsub213sd 0x174c
+#define MN_vfmadd213sd 0x1759
+#define MN_vfnmadd213sd 0x1765
+#define MN_vrcp14sd 0x1772
+#define MN_vrsqrt14sd 0x177b
+#define MN_vrcp28sd 0x1786
+#define MN_vrsqrt28sd 0x178f
 #define MN_pabsd (MN_vpabsd + 1)
-#define MN_vpabsd 0x1783
+#define MN_vpabsd 0x179a
 #define MN_subsd (MN_vfmsubsd + 3)
-#define MN_vfmsubsd 0x178a
-#define MN_vfnmsubsd 0x1793
-#define MN_vsubsd 0x179d
+#define MN_vfmsubsd 0x17a1
+#define MN_vfnmsubsd 0x17aa
+#define MN_vsubsd 0x17b4
 #define MN_addsd (MN_vfmaddsd + 3)
-#define MN_vfmaddsd 0x17a4
-#define MN_vfnmaddsd 0x17ad
-#define MN_vaddsd 0x17b7
+#define MN_vfmaddsd 0x17bb
+#define MN_vfnmaddsd 0x17c4
+#define MN_vaddsd 0x17ce
 #define MN_roundsd (MN_vroundsd + 1)
-#define MN_vroundsd 0x17be
+#define MN_vroundsd 0x17d5
 #define MN_cmpunordsd (MN_vcmpunordsd + 1)
-#define MN_vcmpunordsd 0x17c7
+#define MN_vcmpunordsd 0x17de
 #define MN_cmpordsd (MN_vcmpordsd + 1)
-#define MN_vcmpordsd 0x17d3
-#define MN_vreducesd 0x17dd
-#define MN_vrangesd 0x17e7
-#define MN_vcmpngesd 0x17f0
-#define MN_vcmpgesd 0x17fa
-#define MN_vrndscalesd 0x1803
+#define MN_vcmpordsd 0x17ea
+#define MN_vreducesd 0x17f4
+#define MN_vrangesd 0x17fe
+#define MN_vcmpngesd 0x1807
+#define MN_vcmpgesd 0x1811
+#define MN_vrndscalesd 0x181a
 #define MN_cmpnlesd (MN_vcmpnlesd + 1)
-#define MN_vcmpnlesd 0x180f
+#define MN_vcmpnlesd 0x1826
 #define MN_cmplesd (MN_vcmplesd + 1)
-#define MN_vcmplesd 0x1819
-#define MN_vcmpfalsesd 0x1822
-#define MN_vcmptruesd 0x182e
-#define MN_vscalefsd 0x1839
+#define MN_vcmplesd 0x1830
+#define MN_vcmpfalsesd 0x1839
+#define MN_vcmptruesd 0x1845
+#define MN_vscalefsd 0x1850
 #define MN_comisd (MN_ucomisd + 1)
 #define MN_ucomisd (MN_vucomisd + 1)
-#define MN_vucomisd 0x1843
-#define MN_vcomisd 0x184c
+#define MN_vucomisd 0x185a
+#define MN_vcomisd 0x1863
 #define MN_mulsd (MN_vmulsd + 1)
-#define MN_vmulsd 0x1854
-#define MN_vfixupimmsd 0x185b
+#define MN_vmulsd 0x186b
+#define MN_vfixupimmsd 0x1872
 #define MN_minsd (MN_pminsd + 1)
 #define MN_pminsd (MN_vpminsd + 1)
-#define MN_vpminsd 0x1867
-#define MN_vminsd 0x186f
+#define MN_vpminsd 0x187e
+#define MN_vminsd 0x1886
 #define MN_cmpsd (MN_vcmpsd + 1)
-#define MN_vcmpsd 0x1876
-#define MN_vgetexpsd 0x187d
-#define MN_vcmpunord_qsd 0x1887
-#define MN_vcmpord_qsd 0x1895
+#define MN_vcmpsd 0x188d
+#define MN_vgetexpsd 0x1894
+#define MN_vcmpunord_qsd 0x189e
+#define MN_vcmpord_qsd 0x18ac
 #define MN_cmpneqsd (MN_vcmpneqsd + 1)
-#define MN_vcmpneqsd 0x18a1
+#define MN_vcmpneqsd 0x18b8
 #define MN_cmpeqsd (MN_vcmpeqsd + 1)
-#define MN_vcmpeqsd 0x18ab
-#define MN_vcmpge_oqsd 0x18b4
-#define MN_vcmple_oqsd 0x18c0
-#define MN_vcmpfalse_oqsd 0x18cc
-#define MN_vcmpneq_oqsd 0x18db
-#define MN_vcmpeq_oqsd 0x18e8
-#define MN_vcmpgt_oqsd 0x18f4
-#define MN_vcmplt_oqsd 0x1900
-#define MN_vcmpnge_uqsd 0x190c
-#define MN_vcmpnle_uqsd 0x1919
-#define MN_vcmptrue_uqsd 0x1926
-#define MN_vcmpneq_uqsd 0x1934
-#define MN_vcmpeq_uqsd 0x1941
-#define MN_vcmpngt_uqsd 0x194d
-#define MN_vcmpnlt_uqsd 0x195a
-#define MN_vcmpunord_ssd 0x1967
-#define MN_vcmpord_ssd 0x1975
-#define MN_vpdpbssd 0x1981
-#define MN_tdpbssd 0x198a
-#define MN_vpcompressd 0x1992
-#define MN_vcmpge_ossd 0x199e
-#define MN_vcmple_ossd 0x19aa
-#define MN_vcmpfalse_ossd 0x19b6
-#define MN_vcmpneq_ossd 0x19c5
-#define MN_vcmpeq_ossd 0x19d2
-#define MN_vcmpgt_ossd 0x19de
-#define MN_vcmplt_ossd 0x19ea
-#define MN_wrssd 0x19f6
-#define MN_vfpclasssd 0x19fc
-#define MN_vcmpnge_ussd 0x1a07
-#define MN_vcmpnle_ussd 0x1a14
-#define MN_vcmptrue_ussd 0x1a21
-#define MN_vcmpneq_ussd 0x1a2f
-#define MN_vcmpeq_ussd 0x1a3c
-#define MN_vcmpngt_ussd 0x1a48
-#define MN_vcmpnlt_ussd 0x1a55
-#define MN_wrussd 0x1a62
-#define MN_vp4dpwssd 0x1a69
-#define MN_vpdpwssd 0x1a73
-#define MN_vcmpngtsd 0x1a7c
-#define MN_vcmpgtsd 0x1a86
+#define MN_vcmpeqsd 0x18c2
+#define MN_vcmpge_oqsd 0x18cb
+#define MN_vcmple_oqsd 0x18d7
+#define MN_vcmpfalse_oqsd 0x18e3
+#define MN_vcmpneq_oqsd 0x18f2
+#define MN_vcmpeq_oqsd 0x18ff
+#define MN_vcmpgt_oqsd 0x190b
+#define MN_vcmplt_oqsd 0x1917
+#define MN_vcmpnge_uqsd 0x1923
+#define MN_vcmpnle_uqsd 0x1930
+#define MN_vcmptrue_uqsd 0x193d
+#define MN_vcmpneq_uqsd 0x194b
+#define MN_vcmpeq_uqsd 0x1958
+#define MN_vcmpngt_uqsd 0x1964
+#define MN_vcmpnlt_uqsd 0x1971
+#define MN_vcmpunord_ssd 0x197e
+#define MN_vcmpord_ssd 0x198c
+#define MN_vpdpbssd 0x1998
+#define MN_tdpbssd 0x19a1
+#define MN_vpcompressd 0x19a9
+#define MN_vcmpge_ossd 0x19b5
+#define MN_vcmple_ossd 0x19c1
+#define MN_vcmpfalse_ossd 0x19cd
+#define MN_vcmpneq_ossd 0x19dc
+#define MN_vcmpeq_ossd 0x19e9
+#define MN_vcmpgt_ossd 0x19f5
+#define MN_vcmplt_ossd 0x1a01
+#define MN_wrssd 0x1a0d
+#define MN_vfpclasssd 0x1a13
+#define MN_vcmpnge_ussd 0x1a1e
+#define MN_vcmpnle_ussd 0x1a2b
+#define MN_vcmptrue_ussd 0x1a38
+#define MN_vcmpneq_ussd 0x1a46
+#define MN_vcmpeq_ussd 0x1a53
+#define MN_vcmpngt_ussd 0x1a5f
+#define MN_vcmpnlt_ussd 0x1a6c
+#define MN_wrussd 0x1a79
+#define MN_vp4dpwssd 0x1a80
+#define MN_vpdpwssd 0x1a8a
+#define MN_vcmpngtsd 0x1a93
+#define MN_vcmpgtsd 0x1a9d
 #define MN_cmpnltsd (MN_vcmpnltsd + 1)
-#define MN_vcmpnltsd 0x1a8f
+#define MN_vcmpnltsd 0x1aa6
 #define MN_cmpltsd (MN_vcmpltsd + 1)
-#define MN_vcmpltsd 0x1a99
-#define MN_vgetmantsd 0x1aa2
-#define MN_movntsd 0x1aad
+#define MN_vcmpltsd 0x1ab0
+#define MN_vgetmantsd 0x1ab9
+#define MN_movntsd 0x1ac4
 #define MN_sqrtsd (MN_vsqrtsd + 1)
-#define MN_vsqrtsd 0x1ab5
-#define MN_vbroadcastsd 0x1abd
-#define MN_vpdpbusd 0x1aca
-#define MN_tdpbusd 0x1ad3
-#define MN_vpdpwusd 0x1adb
+#define MN_vsqrtsd 0x1acc
+#define MN_vbroadcastsd 0x1ad4
+#define MN_vpdpbusd 0x1ae1
+#define MN_tdpbusd 0x1aea
+#define MN_vpdpwusd 0x1af2
 #define MN_divsd (MN_vdivsd + 1)
-#define MN_vdivsd 0x1ae4
+#define MN_vdivsd 0x1afb
 #define MN_movsd (MN_vmovsd + 1)
-#define MN_vmovsd 0x1aeb
-#define MN_maxsd (MN_pmaxsd + 1)
+#define MN_vmovsd 0x1b02
+#define MN_maxsd (MN_vminmaxsd + 4)
+#define MN_vminmaxsd 0x1b09
 #define MN_pmaxsd (MN_vpmaxsd + 1)
-#define MN_vpmaxsd 0x1af2
-#define MN_vmaxsd 0x1afa
-#define MN_vfrczsd 0x1b01
-#define MN_vp2intersectd 0x1b09
-#define MN_vpconflictd 0x1b17
-#define MN_vpcomgtd 0x1b23
+#define MN_vpmaxsd 0x1b13
+#define MN_vmaxsd 0x1b1b
+#define MN_vucomxsd 0x1b22
+#define MN_vcomxsd 0x1b2b
+#define MN_vfrczsd 0x1b33
+#define MN_vp2intersectd 0x1b3b
+#define MN_vpconflictd 0x1b49
+#define MN_vpcomgtd 0x1b55
 #define MN_pcmpgtd (MN_vpcmpgtd + 1)
-#define MN_vpcmpgtd 0x1b2c
-#define MN_cltd 0x1b35
-#define MN_vpcomltd 0x1b3a
-#define MN_vpcmpnltd 0x1b43
-#define MN_vpcmpltd 0x1b4d
-#define MN_vpopcntd 0x1b56
-#define MN_vplzcntd 0x1b5f
-#define MN_knotd 0x1b68
-#define MN_vprotd 0x1b6e
+#define MN_vpcmpgtd 0x1b5e
+#define MN_cltd 0x1b67
+#define MN_vpcomltd 0x1b6c
+#define MN_vpcmpnltd 0x1b75
+#define MN_vpcmpltd 0x1b7f
+#define MN_vpopcntd 0x1b88
+#define MN_vplzcntd 0x1b91
+#define MN_knotd 0x1b9a
+#define MN_vprotd 0x1ba0
 #define MN_std (MN_vpbroadcastd + 9)
-#define MN_vpbroadcastd 0x1b75
-#define MN_ktestd 0x1b82
-#define MN_kortestd 0x1b89
-#define MN_cwtd 0x1b92
-#define MN_vpcomgeud 0x1b97
-#define MN_vpcomleud 0x1ba1
-#define MN_vpcmpnleud 0x1bab
-#define MN_vpcmpleud 0x1bb6
-#define MN_vpcomfalseud 0x1bc0
-#define MN_vpcomtrueud 0x1bcd
-#define MN_vpcomud 0x1bd9
+#define MN_vpbroadcastd 0x1ba7
+#define MN_ktestd 0x1bb4
+#define MN_kortestd 0x1bbb
+#define MN_cwtd 0x1bc4
+#define MN_vpcomgeud 0x1bc9
+#define MN_vpcomleud 0x1bd3
+#define MN_vpcmpnleud 0x1bdd
+#define MN_vpcmpleud 0x1be8
+#define MN_vpcomfalseud 0x1bf2
+#define MN_vpcomtrueud 0x1bff
+#define MN_vpcomud 0x1c0b
 #define MN_pminud (MN_vpminud + 1)
-#define MN_vpminud 0x1be1
-#define MN_vpcmpud 0x1be9
-#define MN_vpcomequd 0x1bf1
-#define MN_vpcomnequd 0x1bfb
-#define MN_vpcmpnequd 0x1c06
-#define MN_vpcmpequd 0x1c11
-#define MN_vpdpbsud 0x1c1b
-#define MN_tdpbsud 0x1c24
-#define MN_vpdpwsud 0x1c2c
-#define MN_vpcomgtud 0x1c35
-#define MN_vpcomltud 0x1c3f
-#define MN_vpcmpnltud 0x1c49
-#define MN_vpcmpltud 0x1c54
-#define MN_vpdpbuud 0x1c5e
-#define MN_tdpbuud 0x1c67
-#define MN_vpdpwuud 0x1c6f
+#define MN_vpminud 0x1c13
+#define MN_vpcmpud 0x1c1b
+#define MN_vpcomequd 0x1c23
+#define MN_vpcomnequd 0x1c2d
+#define MN_vpcmpnequd 0x1c38
+#define MN_vpcmpequd 0x1c43
+#define MN_vpdpbsud 0x1c4d
+#define MN_tdpbsud 0x1c56
+#define MN_vpdpwsud 0x1c5e
+#define MN_vpcomgtud 0x1c67
+#define MN_vpcomltud 0x1c71
+#define MN_vpcmpnltud 0x1c7b
+#define MN_vpcmpltud 0x1c86
+#define MN_vpdpbuud 0x1c90
+#define MN_tdpbuud 0x1c99
+#define MN_vpdpwuud 0x1ca1
 #define MN_pmaxud (MN_vpmaxud + 1)
-#define MN_vpmaxud 0x1c78
-#define MN_vpsravd 0x1c80
-#define MN_vpshldvd 0x1c88
-#define MN_vpshrdvd 0x1c91
-#define MN_vpsllvd 0x1c9a
-#define MN_vprolvd 0x1ca2
-#define MN_vpsrlvd 0x1caa
+#define MN_vpmaxud 0x1caa
+#define MN_vpsravd 0x1cb2
+#define MN_vpshldvd 0x1cba
+#define MN_vpshrdvd 0x1cc3
+#define MN_vpsllvd 0x1ccc
+#define MN_vprolvd 0x1cd4
+#define MN_vpsrlvd 0x1cdc
 #define MN_invd (MN_wbinvd + 2)
-#define MN_wbinvd 0x1cb2
-#define MN_wbnoinvd 0x1cb9
+#define MN_wbinvd 0x1ce4
+#define MN_wbnoinvd 0x1ceb
 #define MN_movd (MN_kmovd + 1)
 #define MN_kmovd (MN_vpmaskmovd + 5)
-#define MN_vpmaskmovd 0x1cc2
-#define MN_vmovd 0x1ccd
-#define MN_vprorvd 0x1cd3
-#define MN_vphsubwd 0x1cdb
-#define MN_cwd 0x1ce4
-#define MN_vphaddwd 0x1ce8
+#define MN_vpmaskmovd 0x1cf4
+#define MN_vmovd 0x1cff
+#define MN_vprorvd 0x1d05
+#define MN_vphsubwd 0x1d0d
+#define MN_cwd 0x1d16
+#define MN_vphaddwd 0x1d1a
 #define MN_pmaddwd (MN_vpmaddwd + 1)
-#define MN_vpmaddwd 0x1cf1
+#define MN_vpmaddwd 0x1d23
 #define MN_punpckhwd (MN_vpunpckhwd + 1)
-#define MN_vpunpckhwd 0x1cfa
-#define MN_kunpckwd 0x1d05
+#define MN_vpunpckhwd 0x1d2c
+#define MN_kunpckwd 0x1d37
 #define MN_punpcklwd (MN_vpunpcklwd + 1)
-#define MN_vpunpcklwd 0x1d0e
-#define MN_vpmacswd 0x1d19
-#define MN_vpmadcswd 0x1d22
-#define MN_vpmacsswd 0x1d2c
-#define MN_vpmadcsswd 0x1d36
-#define MN_vphadduwd 0x1d41
+#define MN_vpunpcklwd 0x1d40
+#define MN_vpmacswd 0x1d4b
+#define MN_vpmadcswd 0x1d54
+#define MN_vpmacsswd 0x1d5e
+#define MN_vpmadcsswd 0x1d68
+#define MN_vphadduwd 0x1d73
 #define MN_pmovsxwd (MN_vpmovsxwd + 1)
-#define MN_vpmovsxwd 0x1d4b
+#define MN_vpmovsxwd 0x1d7d
 #define MN_pmovzxwd (MN_vpmovzxwd + 1)
-#define MN_vpmovzxwd 0x1d55
-#define MN_movsxd 0x1d5f
-#define MN_fldl2e 0x1d66
-#define MN_jae 0x1d6d
-#define MN_jnae 0x1d71
-#define MN_ccmpnae 0x1d76
-#define MN_setnae 0x1d7e
-#define MN_ctestnae 0x1d85
-#define MN_setzunae 0x1d8e
+#define MN_vpmovzxwd 0x1d87
+#define MN_movsxd 0x1d91
+#define MN_fldl2e 0x1d98
+#define MN_jae 0x1d9f
+#define MN_jnae 0x1da3
+#define MN_ccmpnae 0x1da8
+#define MN_setnae 0x1db0
+#define MN_ctestnae 0x1db7
+#define MN_setzunae 0x1dc0
 #define MN_cmovnae (MN_fcmovnae + 1)
 #define MN_fcmovnae (MN_cfcmovnae + 1)
-#define MN_cfcmovnae 0x1d97
-#define MN_ccmpae 0x1da1
-#define MN_setae 0x1da8
-#define MN_ctestae 0x1dae
-#define MN_setzuae 0x1db6
+#define MN_cfcmovnae 0x1dc9
+#define MN_ccmpae 0x1dd3
+#define MN_setae 0x1dda
+#define MN_ctestae 0x1de0
+#define MN_setzuae 0x1de8
 #define MN_cmovae (MN_fcmovae + 1)
 #define MN_fcmovae (MN_cfcmovae + 1)
-#define MN_cfcmovae 0x1dbe
-#define MN_jbe 0x1dc7
-#define MN_jnbe 0x1dcb
-#define MN_ccmpnbe 0x1dd0
-#define MN_setnbe 0x1dd8
-#define MN_ctestnbe 0x1ddf
-#define MN_setzunbe 0x1de8
+#define MN_cfcmovae 0x1df0
+#define MN_jbe 0x1df9
+#define MN_jnbe 0x1dfd
+#define MN_ccmpnbe 0x1e02
+#define MN_setnbe 0x1e0a
+#define MN_ctestnbe 0x1e11
+#define MN_setzunbe 0x1e1a
 #define MN_cmovnbe (MN_fcmovnbe + 1)
 #define MN_fcmovnbe (MN_cfcmovnbe + 1)
-#define MN_cfcmovnbe 0x1df1
-#define MN_ccmpbe 0x1dfb
-#define MN_setbe 0x1e02
-#define MN_ctestbe 0x1e08
-#define MN_setzube 0x1e10
+#define MN_cfcmovnbe 0x1e23
+#define MN_ccmpbe 0x1e2d
+#define MN_setbe 0x1e34
+#define MN_ctestbe 0x1e3a
+#define MN_setzube 0x1e42
 #define MN_movbe (MN_cmovbe + 1)
 #define MN_cmovbe (MN_fcmovbe + 1)
 #define MN_fcmovbe (MN_cfcmovbe + 1)
-#define MN_cfcmovbe 0x1e18
-#define MN_lfence 0x1e21
-#define MN_mfence 0x1e28
-#define MN_sfence 0x1e2f
-#define MN_cwde 0x1e36
-#define MN_ffree 0x1e3b
-#define MN_jge 0x1e41
-#define MN_jnge 0x1e45
-#define MN_ccmpnge 0x1e4a
-#define MN_setnge 0x1e52
-#define MN_ctestnge 0x1e59
-#define MN_setzunge 0x1e62
+#define MN_cfcmovbe 0x1e4a
+#define MN_lfence 0x1e53
+#define MN_mfence 0x1e5a
+#define MN_sfence 0x1e61
+#define MN_cwde 0x1e68
+#define MN_ffree 0x1e6d
+#define MN_jge 0x1e73
+#define MN_jnge 0x1e77
+#define MN_ccmpnge 0x1e7c
+#define MN_setnge 0x1e84
+#define MN_ctestnge 0x1e8b
+#define MN_setzunge 0x1e94
 #define MN_cmovnge (MN_cfcmovnge + 2)
-#define MN_cfcmovnge 0x1e6b
-#define MN_ccmpge 0x1e75
-#define MN_pfcmpge 0x1e7c
-#define MN_setge 0x1e84
-#define MN_ctestge 0x1e8a
-#define MN_setzuge 0x1e92
+#define MN_cfcmovnge 0x1e9d
+#define MN_ccmpge 0x1ea7
+#define MN_pfcmpge 0x1eae
+#define MN_setge 0x1eb6
+#define MN_ctestge 0x1ebc
+#define MN_setzuge 0x1ec4
 #define MN_cmovge (MN_cfcmovge + 2)
-#define MN_cfcmovge 0x1e9a
-#define MN_je 0x1ea3
-#define MN_fscale 0x1ea6
-#define MN_jle 0x1ead
-#define MN_jnle 0x1eb1
-#define MN_ccmpnle 0x1eb6
-#define MN_setnle 0x1ebe
-#define MN_ctestnle 0x1ec5
-#define MN_setzunle 0x1ece
+#define MN_cfcmovge 0x1ecc
+#define MN_je 0x1ed5
+#define MN_fscale 0x1ed8
+#define MN_jle 0x1edf
+#define MN_jnle 0x1ee3
+#define MN_ccmpnle 0x1ee8
+#define MN_setnle 0x1ef0
+#define MN_ctestnle 0x1ef7
+#define MN_setzunle 0x1f00
 #define MN_cmovnle (MN_cfcmovnle + 2)
-#define MN_cfcmovnle 0x1ed7
-#define MN_ccmple 0x1ee1
-#define MN_setle 0x1ee8
-#define MN_ctestle 0x1eee
-#define MN_setzule 0x1ef6
+#define MN_cfcmovnle 0x1f09
+#define MN_ccmple 0x1f13
+#define MN_setle 0x1f1a
+#define MN_ctestle 0x1f20
+#define MN_setzule 0x1f28
 #define MN_cmovle (MN_cfcmovle + 2)
-#define MN_cfcmovle 0x1efe
-#define MN_vmresume 0x1f07
-#define MN_jne 0x1f10
-#define MN_repne 0x1f14
-#define MN_ccmpne 0x1f1a
-#define MN_loopne 0x1f21
-#define MN_setne 0x1f28
-#define MN_ctestne 0x1f2e
-#define MN_setzune 0x1f36
+#define MN_cfcmovle 0x1f30
+#define MN_vmresume 0x1f39
+#define MN_jne 0x1f42
+#define MN_repne 0x1f46
+#define MN_ccmpne 0x1f4c
+#define MN_loopne 0x1f53
+#define MN_setne 0x1f5a
+#define MN_ctestne 0x1f60
+#define MN_setzune 0x1f68
 #define MN_cmovne (MN_fcmovne + 1)
 #define MN_fcmovne (MN_cfcmovne + 1)
-#define MN_cfcmovne 0x1f3e
-#define MN_repe 0x1f47
-#define MN_jpe 0x1f4c
-#define MN_ccmpe 0x1f50
-#define MN_loope 0x1f56
-#define MN_setpe 0x1f5c
-#define MN_setzupe 0x1f62
+#define MN_cfcmovne 0x1f70
+#define MN_repe 0x1f79
+#define MN_jpe 0x1f7e
+#define MN_ccmpe 0x1f82
+#define MN_loope 0x1f88
+#define MN_setpe 0x1f8e
+#define MN_setzupe 0x1f94
 #define MN_cmovpe (MN_cfcmovpe + 2)
-#define MN_cfcmovpe 0x1f6a
-#define MN_cdqe 0x1f73
-#define MN_xacquire 0x1f78
-#define MN_xstore 0x1f81
-#define MN_rdfsbase 0x1f88
-#define MN_wrfsbase 0x1f91
-#define MN_rdgsbase 0x1f9a
-#define MN_wrgsbase 0x1fa3
-#define MN_tilerelease 0x1fac
-#define MN_xrelease 0x1fb8
+#define MN_cfcmovpe 0x1f9c
+#define MN_cdqe 0x1fa5
+#define MN_xacquire 0x1faa
+#define MN_xstore 0x1fb3
+#define MN_rdfsbase 0x1fba
+#define MN_wrfsbase 0x1fc3
+#define MN_rdgsbase 0x1fcc
+#define MN_wrgsbase 0x1fd5
+#define MN_tilerelease 0x1fde
+#define MN_xrelease 0x1fea
 #define MN_pause (MN_tpause + 1)
-#define MN_tpause 0x1fc1
-#define MN_pvalidate 0x1fc8
-#define MN_rmpupdate 0x1fd2
-#define MN_sete 0x1fdc
-#define MN_vmwrite 0x1fe1
-#define MN_ptwrite 0x1fe9
-#define MN_cldemote 0x1ff1
-#define MN_cteste 0x1ffa
-#define MN_sha1nexte 0x2001
-#define MN_setzue 0x200b
-#define MN_leave 0x2012
-#define MN_fsave 0x2018
-#define MN_vmsave 0x201e
-#define MN_fnsave 0x2025
+#define MN_tpause 0x1ff3
+#define MN_pvalidate 0x1ffa
+#define MN_rmpupdate 0x2004
+#define MN_sete 0x200e
+#define MN_vmwrite 0x2013
+#define MN_ptwrite 0x201b
+#define MN_cldemote 0x2023
+#define MN_cteste 0x202c
+#define MN_sha1nexte 0x2033
+#define MN_setzue 0x203d
+#define MN_leave 0x2044
+#define MN_fsave 0x204a
+#define MN_vmsave 0x2050
+#define MN_fnsave 0x2057
 #define MN_xsave (MN_fxsave + 1)
-#define MN_fxsave 0x202c
+#define MN_fxsave 0x205e
 #define MN_cmove (MN_fcmove + 1)
 #define MN_fcmove (MN_cfcmove + 1)
-#define MN_cfcmove 0x2033
-#define MN_serialize 0x203b
-#define MN_vmxoff 0x2045
-#define MN_lahf 0x204c
-#define MN_sahf 0x2051
-#define MN_pushf 0x2056
-#define MN_ccmpf 0x205c
-#define MN_popf 0x2062
-#define MN_bsf 0x2067
-#define MN_retf 0x206b
-#define MN_ctestf 0x2070
-#define MN_neg 0x2077
-#define MN_ldtilecfg 0x207b
-#define MN_sttilecfg 0x2085
+#define MN_cfcmove 0x2065
+#define MN_serialize 0x206d
+#define MN_vmxoff 0x2077
+#define MN_lahf 0x207e
+#define MN_sahf 0x2083
+#define MN_pushf 0x2088
+#define MN_ccmpf 0x208e
+#define MN_popf 0x2094
+#define MN_bsf 0x2099
+#define MN_retf 0x209d
+#define MN_ctestf 0x20a2
+#define MN_neg 0x20a9
+#define MN_ldtilecfg 0x20ad
+#define MN_sttilecfg 0x20b7
 #define MN_xchg (MN_cmpxchg + 3)
-#define MN_cmpxchg 0x208f
-#define MN_pconfig 0x2097
-#define MN_jg 0x209f
-#define MN_jng 0x20a2
-#define MN_ccmpng 0x20a6
-#define MN_xstore_rng 0x20ad
-#define MN_xstorerng 0x20b8
-#define MN_setng 0x20c2
-#define MN_ctestng 0x20c8
-#define MN_setzung 0x20d0
+#define MN_cmpxchg 0x20c1
+#define MN_pconfig 0x20c9
+#define MN_jg 0x20d1
+#define MN_jng 0x20d4
+#define MN_ccmpng 0x20d8
+#define MN_xstore_rng 0x20df
+#define MN_xstorerng 0x20ea
+#define MN_setng 0x20f4
+#define MN_ctestng 0x20fa
+#define MN_setzung 0x2102
 #define MN_cmovng (MN_cfcmovng + 2)
-#define MN_cfcmovng 0x20d8
-#define MN_invlpg 0x20e1
-#define MN_ccmpg 0x20e8
-#define MN_setg 0x20ee
-#define MN_ctestg 0x20f3
-#define MN_setzug 0x20fa
+#define MN_cfcmovng 0x210a
+#define MN_invlpg 0x2113
+#define MN_ccmpg 0x211a
+#define MN_setg 0x2120
+#define MN_ctestg 0x2125
+#define MN_setzug 0x212c
 #define MN_cmovg (MN_cfcmovg + 2)
-#define MN_cfcmovg 0x2101
-#define MN_vmlaunch 0x2109
-#define MN_prefetch 0x2112
-#define MN_fxch 0x211b
-#define MN_vfmaddsub231ph 0x2120
-#define MN_vfmsub231ph 0x212f
-#define MN_vfnmsub231ph 0x213b
-#define MN_vfmsubadd231ph 0x2148
-#define MN_vfmadd231ph 0x2157
-#define MN_vfnmadd231ph 0x2163
-#define MN_vfmaddsub132ph 0x2170
-#define MN_vfmsub132ph 0x217f
-#define MN_vfnmsub132ph 0x218b
-#define MN_vfmsubadd132ph 0x2198
-#define MN_vfmadd132ph 0x21a7
-#define MN_vfnmadd132ph 0x21b3
-#define MN_vcvthf82ph 0x21c0
-#define MN_vcvtpd2ph 0x21cb
-#define MN_vcvtdq2ph 0x21d5
-#define MN_vcvtudq2ph 0x21df
-#define MN_vcvtqq2ph 0x21ea
-#define MN_vcvtuqq2ph 0x21f4
-#define MN_vcvtps2ph 0x21ff
-#define MN_vcvtw2ph 0x2209
-#define MN_vcvtuw2ph 0x2212
-#define MN_vfmaddsub213ph 0x221c
-#define MN_vfmsub213ph 0x222b
-#define MN_vfnmsub213ph 0x2237
-#define MN_vfmsubadd213ph 0x2244
-#define MN_vfmadd213ph 0x2253
-#define MN_vfnmadd213ph 0x225f
-#define MN_vsubph 0x226c
-#define MN_vfcmaddcph 0x2273
-#define MN_vfmaddcph 0x227e
-#define MN_vfcmulcph 0x2288
-#define MN_vfmulcph 0x2292
-#define MN_vaddph 0x229b
-#define MN_vcmpunordph 0x22a2
-#define MN_vcmpordph 0x22ae
-#define MN_vreduceph 0x22b8
-#define MN_vcmpngeph 0x22c2
-#define MN_vcmpgeph 0x22cc
-#define MN_vrndscaleph 0x22d5
-#define MN_vcmpnleph 0x22e1
-#define MN_vcmpleph 0x22eb
-#define MN_vcmpfalseph 0x22f4
-#define MN_vcmptrueph 0x2300
-#define MN_vscalefph 0x230b
-#define MN_vmulph 0x2315
-#define MN_vminph 0x231c
-#define MN_vrcpph 0x2323
-#define MN_vcmpph 0x232a
-#define MN_vgetexpph 0x2331
-#define MN_vcmpunord_qph 0x233b
-#define MN_vcmpord_qph 0x2349
-#define MN_vcmpneqph 0x2355
-#define MN_vcmpeqph 0x235f
-#define MN_vcmpge_oqph 0x2368
-#define MN_vcmple_oqph 0x2374
-#define MN_vcmpfalse_oqph 0x2380
-#define MN_vcmpneq_oqph 0x238f
-#define MN_vcmpeq_oqph 0x239c
-#define MN_vcmpgt_oqph 0x23a8
-#define MN_vcmplt_oqph 0x23b4
-#define MN_vcmpnge_uqph 0x23c0
-#define MN_vcmpnle_uqph 0x23cd
-#define MN_vcmptrue_uqph 0x23da
-#define MN_vcmpneq_uqph 0x23e8
-#define MN_vcmpeq_uqph 0x23f5
-#define MN_vcmpngt_uqph 0x2401
-#define MN_vcmpnlt_uqph 0x240e
-#define MN_vcmpunord_sph 0x241b
-#define MN_vcmpord_sph 0x2429
-#define MN_vcmpge_osph 0x2435
-#define MN_vcmple_osph 0x2441
-#define MN_vcmpfalse_osph 0x244d
-#define MN_vcmpneq_osph 0x245c
-#define MN_vcmpeq_osph 0x2469
-#define MN_vcmpgt_osph 0x2475
-#define MN_vcmplt_osph 0x2481
-#define MN_vfpclassph 0x248d
-#define MN_vcmpnge_usph 0x2498
-#define MN_vcmpnle_usph 0x24a5
-#define MN_vcmptrue_usph 0x24b2
-#define MN_vcmpneq_usph 0x24c0
-#define MN_vcmpeq_usph 0x24cd
-#define MN_vcmpngt_usph 0x24d9
-#define MN_vcmpnlt_usph 0x24e6
-#define MN_vcmpngtph 0x24f3
-#define MN_vcmpgtph 0x24fd
-#define MN_vcmpnltph 0x2506
-#define MN_vcmpltph 0x2510
-#define MN_vgetmantph 0x2519
-#define MN_vrsqrtph 0x2524
-#define MN_vsqrtph 0x252d
-#define MN_vdivph 0x2535
-#define MN_vmaxph 0x253c
-#define MN_vpmacsdqh 0x2543
-#define MN_vpmacssdqh 0x254d
-#define MN_vfmsub231sh 0x2558
-#define MN_vfnmsub231sh 0x2564
-#define MN_vfmadd231sh 0x2571
-#define MN_vfnmadd231sh 0x257d
-#define MN_vfmsub132sh 0x258a
-#define MN_vfnmsub132sh 0x2596
-#define MN_vfmadd132sh 0x25a3
-#define MN_vfnmadd132sh 0x25af
-#define MN_vcvtsd2sh 0x25bc
-#define MN_vcvtsi2sh 0x25c6
-#define MN_vcvtusi2sh 0x25d0
-#define MN_vcvtss2sh 0x25db
-#define MN_vfmsub213sh 0x25e5
-#define MN_vfnmsub213sh 0x25f1
-#define MN_vfmadd213sh 0x25fe
-#define MN_vfnmadd213sh 0x260a
-#define MN_psmash 0x2617
-#define MN_vsubsh 0x261e
-#define MN_vfcmaddcsh 0x2625
-#define MN_vfmaddcsh 0x2630
-#define MN_vfcmulcsh 0x263a
-#define MN_vfmulcsh 0x2644
-#define MN_vaddsh 0x264d
-#define MN_vcmpunordsh 0x2654
-#define MN_vcmpordsh 0x2660
-#define MN_vreducesh 0x266a
-#define MN_vcmpngesh 0x2674
-#define MN_vcmpgesh 0x267e
-#define MN_vrndscalesh 0x2687
-#define MN_vcmpnlesh 0x2693
-#define MN_vcmplesh 0x269d
-#define MN_vcmpfalsesh 0x26a6
-#define MN_vcmptruesh 0x26b2
-#define MN_vscalefsh 0x26bd
-#define MN_vucomish 0x26c7
-#define MN_vcomish 0x26d0
-#define MN_vmulsh 0x26d8
-#define MN_vminsh 0x26df
-#define MN_vrcpsh 0x26e6
-#define MN_vcmpsh 0x26ed
-#define MN_vgetexpsh 0x26f4
-#define MN_vcmpunord_qsh 0x26fe
-#define MN_vcmpord_qsh 0x270c
-#define MN_vcmpneqsh 0x2718
-#define MN_vcmpeqsh 0x2722
-#define MN_vcmpge_oqsh 0x272b
-#define MN_vcmple_oqsh 0x2737
-#define MN_vcmpfalse_oqsh 0x2743
-#define MN_vcmpneq_oqsh 0x2752
-#define MN_vcmpeq_oqsh 0x275f
-#define MN_vcmpgt_oqsh 0x276b
-#define MN_vcmplt_oqsh 0x2777
-#define MN_vcmpnge_uqsh 0x2783
-#define MN_vcmpnle_uqsh 0x2790
-#define MN_vcmptrue_uqsh 0x279d
-#define MN_vcmpneq_uqsh 0x27ab
-#define MN_vcmpeq_uqsh 0x27b8
-#define MN_vcmpngt_uqsh 0x27c4
-#define MN_vcmpnlt_uqsh 0x27d1
-#define MN_vcmpunord_ssh 0x27de
-#define MN_vcmpord_ssh 0x27ec
-#define MN_vcmpge_ossh 0x27f8
-#define MN_vcmple_ossh 0x2804
-#define MN_vcmpfalse_ossh 0x2810
-#define MN_vcmpneq_ossh 0x281f
-#define MN_vcmpeq_ossh 0x282c
-#define MN_vcmpgt_ossh 0x2838
-#define MN_vcmplt_ossh 0x2844
-#define MN_vfpclasssh 0x2850
-#define MN_vcmpnge_ussh 0x285b
-#define MN_vcmpnle_ussh 0x2868
-#define MN_vcmptrue_ussh 0x2875
-#define MN_vcmpneq_ussh 0x2883
-#define MN_vcmpeq_ussh 0x2890
-#define MN_vcmpngt_ussh 0x289c
-#define MN_vcmpnlt_ussh 0x28a9
-#define MN_vcmpngtsh 0x28b6
-#define MN_vcmpgtsh 0x28c0
-#define MN_vcmpnltsh 0x28c9
-#define MN_vcmpltsh 0x28d3
-#define MN_vgetmantsh 0x28dc
-#define MN_vrsqrtsh 0x28e7
-#define MN_vsqrtsh 0x28f0
-#define MN_clflush 0x28f8
-#define MN_push 0x2900
-#define MN_vdivsh 0x2905
-#define MN_vmovsh 0x290c
-#define MN_vmaxsh 0x2913
-#define MN_blci 0x291a
-#define MN_clgi 0x291f
-#define MN_stgi 0x2924
-#define MN_bzhi 0x2929
-#define MN_cli 0x292e
-#define MN_fcomi 0x2932
-#define MN_fucomi 0x2938
-#define MN_feni 0x293f
-#define MN_fneni 0x2944
-#define MN_cvttpd2pi 0x294a
-#define MN_cvtpd2pi 0x2954
-#define MN_cvttps2pi 0x295d
-#define MN_cvtps2pi 0x2967
-#define MN_fldpi 0x2970
-#define MN_senduipi 0x2976
-#define MN_fcompi 0x297f
-#define MN_fucompi 0x2986
-#define MN_movdiri 0x298e
+#define MN_cfcmovg 0x2133
+#define MN_vmlaunch 0x213b
+#define MN_prefetch 0x2144
+#define MN_fxch 0x214d
+#define MN_vfmaddsub231ph 0x2152
+#define MN_vfmsub231ph 0x2161
+#define MN_vfnmsub231ph 0x216d
+#define MN_vfmsubadd231ph 0x217a
+#define MN_vfmadd231ph 0x2189
+#define MN_vfnmadd231ph 0x2195
+#define MN_vfmaddsub132ph 0x21a2
+#define MN_vfmsub132ph 0x21b1
+#define MN_vfnmsub132ph 0x21bd
+#define MN_vfmsubadd132ph 0x21ca
+#define MN_vfmadd132ph 0x21d9
+#define MN_vfnmadd132ph 0x21e5
+#define MN_vcvthf82ph 0x21f2
+#define MN_vcvtpd2ph 0x21fd
+#define MN_vcvtdq2ph 0x2207
+#define MN_vcvtudq2ph 0x2211
+#define MN_vcvtqq2ph 0x221c
+#define MN_vcvtuqq2ph 0x2226
+#define MN_vcvtps2ph 0x2231
+#define MN_vcvtw2ph 0x223b
+#define MN_vcvtuw2ph 0x2244
+#define MN_vfmaddsub213ph 0x224e
+#define MN_vfmsub213ph 0x225d
+#define MN_vfnmsub213ph 0x2269
+#define MN_vfmsubadd213ph 0x2276
+#define MN_vfmadd213ph 0x2285
+#define MN_vfnmadd213ph 0x2291
+#define MN_vsubph 0x229e
+#define MN_vfcmaddcph 0x22a5
+#define MN_vfmaddcph 0x22b0
+#define MN_vfcmulcph 0x22ba
+#define MN_vfmulcph 0x22c4
+#define MN_vaddph 0x22cd
+#define MN_vcmpunordph 0x22d4
+#define MN_vcmpordph 0x22e0
+#define MN_vreduceph 0x22ea
+#define MN_vcmpngeph 0x22f4
+#define MN_vcmpgeph 0x22fe
+#define MN_vrndscaleph 0x2307
+#define MN_vcmpnleph 0x2313
+#define MN_vcmpleph 0x231d
+#define MN_vcmpfalseph 0x2326
+#define MN_vcmptrueph 0x2332
+#define MN_vscalefph 0x233d
+#define MN_vmulph 0x2347
+#define MN_vminph 0x234e
+#define MN_vrcpph 0x2355
+#define MN_vcmpph 0x235c
+#define MN_vgetexpph 0x2363
+#define MN_vcmpunord_qph 0x236d
+#define MN_vcmpord_qph 0x237b
+#define MN_vcmpneqph 0x2387
+#define MN_vcmpeqph 0x2391
+#define MN_vcmpge_oqph 0x239a
+#define MN_vcmple_oqph 0x23a6
+#define MN_vcmpfalse_oqph 0x23b2
+#define MN_vcmpneq_oqph 0x23c1
+#define MN_vcmpeq_oqph 0x23ce
+#define MN_vcmpgt_oqph 0x23da
+#define MN_vcmplt_oqph 0x23e6
+#define MN_vcmpnge_uqph 0x23f2
+#define MN_vcmpnle_uqph 0x23ff
+#define MN_vcmptrue_uqph 0x240c
+#define MN_vcmpneq_uqph 0x241a
+#define MN_vcmpeq_uqph 0x2427
+#define MN_vcmpngt_uqph 0x2433
+#define MN_vcmpnlt_uqph 0x2440
+#define MN_vcmpunord_sph 0x244d
+#define MN_vcmpord_sph 0x245b
+#define MN_vcmpge_osph 0x2467
+#define MN_vcmple_osph 0x2473
+#define MN_vcmpfalse_osph 0x247f
+#define MN_vcmpneq_osph 0x248e
+#define MN_vcmpeq_osph 0x249b
+#define MN_vcmpgt_osph 0x24a7
+#define MN_vcmplt_osph 0x24b3
+#define MN_vfpclassph 0x24bf
+#define MN_vcmpnge_usph 0x24ca
+#define MN_vcmpnle_usph 0x24d7
+#define MN_vcmptrue_usph 0x24e4
+#define MN_vcmpneq_usph 0x24f2
+#define MN_vcmpeq_usph 0x24ff
+#define MN_vcmpngt_usph 0x250b
+#define MN_vcmpnlt_usph 0x2518
+#define MN_vcmpngtph 0x2525
+#define MN_vcmpgtph 0x252f
+#define MN_vcmpnltph 0x2538
+#define MN_vcmpltph 0x2542
+#define MN_vgetmantph 0x254b
+#define MN_vrsqrtph 0x2556
+#define MN_vsqrtph 0x255f
+#define MN_vdivph 0x2567
+#define MN_vminmaxph 0x256e
+#define MN_vmaxph 0x2578
+#define MN_vpmacsdqh 0x257f
+#define MN_vpmacssdqh 0x2589
+#define MN_vfmsub231sh 0x2594
+#define MN_vfnmsub231sh 0x25a0
+#define MN_vfmadd231sh 0x25ad
+#define MN_vfnmadd231sh 0x25b9
+#define MN_vfmsub132sh 0x25c6
+#define MN_vfnmsub132sh 0x25d2
+#define MN_vfmadd132sh 0x25df
+#define MN_vfnmadd132sh 0x25eb
+#define MN_vcvtsd2sh 0x25f8
+#define MN_vcvtsi2sh 0x2602
+#define MN_vcvtusi2sh 0x260c
+#define MN_vcvtss2sh 0x2617
+#define MN_vfmsub213sh 0x2621
+#define MN_vfnmsub213sh 0x262d
+#define MN_vfmadd213sh 0x263a
+#define MN_vfnmadd213sh 0x2646
+#define MN_psmash 0x2653
+#define MN_vsubsh 0x265a
+#define MN_vfcmaddcsh 0x2661
+#define MN_vfmaddcsh 0x266c
+#define MN_vfcmulcsh 0x2676
+#define MN_vfmulcsh 0x2680
+#define MN_vaddsh 0x2689
+#define MN_vcmpunordsh 0x2690
+#define MN_vcmpordsh 0x269c
+#define MN_vreducesh 0x26a6
+#define MN_vcmpngesh 0x26b0
+#define MN_vcmpgesh 0x26ba
+#define MN_vrndscalesh 0x26c3
+#define MN_vcmpnlesh 0x26cf
+#define MN_vcmplesh 0x26d9
+#define MN_vcmpfalsesh 0x26e2
+#define MN_vcmptruesh 0x26ee
+#define MN_vscalefsh 0x26f9
+#define MN_vucomish 0x2703
+#define MN_vcomish 0x270c
+#define MN_vmulsh 0x2714
+#define MN_vminsh 0x271b
+#define MN_vrcpsh 0x2722
+#define MN_vcmpsh 0x2729
+#define MN_vgetexpsh 0x2730
+#define MN_vcmpunord_qsh 0x273a
+#define MN_vcmpord_qsh 0x2748
+#define MN_vcmpneqsh 0x2754
+#define MN_vcmpeqsh 0x275e
+#define MN_vcmpge_oqsh 0x2767
+#define MN_vcmple_oqsh 0x2773
+#define MN_vcmpfalse_oqsh 0x277f
+#define MN_vcmpneq_oqsh 0x278e
+#define MN_vcmpeq_oqsh 0x279b
+#define MN_vcmpgt_oqsh 0x27a7
+#define MN_vcmplt_oqsh 0x27b3
+#define MN_vcmpnge_uqsh 0x27bf
+#define MN_vcmpnle_uqsh 0x27cc
+#define MN_vcmptrue_uqsh 0x27d9
+#define MN_vcmpneq_uqsh 0x27e7
+#define MN_vcmpeq_uqsh 0x27f4
+#define MN_vcmpngt_uqsh 0x2800
+#define MN_vcmpnlt_uqsh 0x280d
+#define MN_vcmpunord_ssh 0x281a
+#define MN_vcmpord_ssh 0x2828
+#define MN_vcmpge_ossh 0x2834
+#define MN_vcmple_ossh 0x2840
+#define MN_vcmpfalse_ossh 0x284c
+#define MN_vcmpneq_ossh 0x285b
+#define MN_vcmpeq_ossh 0x2868
+#define MN_vcmpgt_ossh 0x2874
+#define MN_vcmplt_ossh 0x2880
+#define MN_vfpclasssh 0x288c
+#define MN_vcmpnge_ussh 0x2897
+#define MN_vcmpnle_ussh 0x28a4
+#define MN_vcmptrue_ussh 0x28b1
+#define MN_vcmpneq_ussh 0x28bf
+#define MN_vcmpeq_ussh 0x28cc
+#define MN_vcmpngt_ussh 0x28d8
+#define MN_vcmpnlt_ussh 0x28e5
+#define MN_vcmpngtsh 0x28f2
+#define MN_vcmpgtsh 0x28fc
+#define MN_vcmpnltsh 0x2905
+#define MN_vcmpltsh 0x290f
+#define MN_vgetmantsh 0x2918
+#define MN_vrsqrtsh 0x2923
+#define MN_vsqrtsh 0x292c
+#define MN_clflush 0x2934
+#define MN_push 0x293c
+#define MN_vdivsh 0x2941
+#define MN_vmovsh 0x2948
+#define MN_vminmaxsh 0x294f
+#define MN_vmaxsh 0x2959
+#define MN_vucomxsh 0x2960
+#define MN_vcomxsh 0x2969
+#define MN_blci 0x2971
+#define MN_clgi 0x2976
+#define MN_stgi 0x297b
+#define MN_bzhi 0x2980
+#define MN_cli 0x2985
+#define MN_fcomi 0x2989
+#define MN_fucomi 0x298f
+#define MN_feni 0x2996
+#define MN_fneni 0x299b
+#define MN_cvttpd2pi 0x29a1
+#define MN_cvtpd2pi 0x29ab
+#define MN_cvttps2pi 0x29b4
+#define MN_cvtps2pi 0x29be
+#define MN_fldpi 0x29c7
+#define MN_senduipi 0x29cd
+#define MN_fcompi 0x29d6
+#define MN_fucompi 0x29dd
+#define MN_movdiri 0x29e5
 #define MN_pcmpestri (MN_vpcmpestri + 1)
-#define MN_vpcmpestri 0x2996
+#define MN_vpcmpestri 0x29ed
 #define MN_pcmpistri (MN_vpcmpistri + 1)
-#define MN_vpcmpistri 0x29a1
+#define MN_vpcmpistri 0x29f8
 #define MN_cvttsd2si (MN_vcvttsd2si + 1)
-#define MN_vcvttsd2si 0x29ac
+#define MN_vcvttsd2si 0x2a03
 #define MN_cvtsd2si (MN_vcvtsd2si + 1)
-#define MN_vcvtsd2si 0x29b7
-#define MN_vcvttsh2si 0x29c1
-#define MN_vcvtsh2si 0x29cc
+#define MN_vcvtsd2si 0x2a0e
+#define MN_vcvttsh2si 0x2a18
+#define MN_vcvtsh2si 0x2a23
 #define MN_cvttss2si (MN_vcvttss2si + 1)
-#define MN_vcvttss2si 0x29d6
+#define MN_vcvttss2si 0x2a2d
 #define MN_cvtss2si (MN_vcvtss2si + 1)
-#define MN_vcvtss2si 0x29e1
-#define MN_fdisi 0x29eb
-#define MN_fndisi 0x29f1
-#define MN_blsi 0x29f8
-#define MN_vcvttsd2usi 0x29fd
-#define MN_vcvtsd2usi 0x2a09
-#define MN_vcvttsh2usi 0x2a14
-#define MN_vcvtsh2usi 0x2a20
-#define MN_vcvttss2usi 0x2a2b
-#define MN_vcvtss2usi 0x2a37
-#define MN_movnti 0x2a42
-#define MN_sti 0x2a49
-#define MN_clui 0x2a4d
+#define MN_vcvtss2si 0x2a38
+#define MN_fdisi 0x2a42
+#define MN_fndisi 0x2a48
+#define MN_blsi 0x2a4f
+#define MN_vcvttsd2usi 0x2a54
+#define MN_vcvtsd2usi 0x2a60
+#define MN_vcvttsh2usi 0x2a6b
+#define MN_vcvtsh2usi 0x2a77
+#define MN_vcvttss2usi 0x2a82
+#define MN_vcvtss2usi 0x2a8e
+#define MN_movnti 0x2a99
+#define MN_sti 0x2aa0
+#define MN_clui 0x2aa4
 #define MN_stui (MN_testui + 2)
-#define MN_testui 0x2a52
-#define MN_notrack 0x2a59
-#define MN_lock 0x2a61
-#define MN_bndmk 0x2a66
-#define MN_xresldtrk 0x2a6c
-#define MN_xsusldtrk 0x2a76
-#define MN_blcmsk 0x2a80
-#define MN_blsmsk 0x2a87
-#define MN_tzmsk 0x2a8e
-#define MN_sal 0x2a94
-#define MN_lwpval 0x2a98
-#define MN_bndcl 0x2a9f
-#define MN_rcl 0x2aa5
-#define MN_shl 0x2aa9
-#define MN_jl 0x2aad
-#define MN_aesdec256kl 0x2ab0
-#define MN_aesenc256kl 0x2abc
-#define MN_aesdecwide256kl 0x2ac8
-#define MN_aesencwide256kl 0x2ad8
-#define MN_aesdec128kl 0x2ae8
-#define MN_aesenc128kl 0x2af4
-#define MN_aesdecwide128kl 0x2b00
-#define MN_aesencwide128kl 0x2b10
+#define MN_testui 0x2aa9
+#define MN_notrack 0x2ab0
+#define MN_lock 0x2ab8
+#define MN_bndmk 0x2abd
+#define MN_xresldtrk 0x2ac3
+#define MN_xsusldtrk 0x2acd
+#define MN_blcmsk 0x2ad7
+#define MN_blsmsk 0x2ade
+#define MN_tzmsk 0x2ae5
+#define MN_sal 0x2aeb
+#define MN_lwpval 0x2aef
+#define MN_bndcl 0x2af6
+#define MN_rcl 0x2afc
+#define MN_shl 0x2b00
+#define MN_jl 0x2b04
+#define MN_aesdec256kl 0x2b07
+#define MN_aesenc256kl 0x2b13
+#define MN_aesdecwide256kl 0x2b1f
+#define MN_aesencwide256kl 0x2b2f
+#define MN_aesdec128kl 0x2b3f
+#define MN_aesenc128kl 0x2b4b
+#define MN_aesdecwide128kl 0x2b57
+#define MN_aesencwide128kl 0x2b67
 #define MN_call (MN_tdcall + 2)
-#define MN_tdcall 0x2b20
-#define MN_lcall 0x2b27
-#define MN_seamcall 0x2b2d
-#define MN_vmmcall 0x2b36
-#define MN_vmcall 0x2b3e
-#define MN_syscall 0x2b45
-#define MN_vzeroall 0x2b4d
-#define MN_fildll 0x2b56
-#define MN_blcfill 0x2b5d
-#define MN_blsfill 0x2b65
-#define MN_fistpll 0x2b6d
-#define MN_fisttpll 0x2b75
-#define MN_jnl 0x2b7e
-#define MN_ccmpnl 0x2b82
-#define MN_setnl 0x2b89
-#define MN_ctestnl 0x2b8f
-#define MN_setzunl 0x2b97
+#define MN_tdcall 0x2b77
+#define MN_lcall 0x2b7e
+#define MN_seamcall 0x2b84
+#define MN_vmmcall 0x2b8d
+#define MN_vmcall 0x2b95
+#define MN_syscall 0x2b9c
+#define MN_vzeroall 0x2ba4
+#define MN_fildll 0x2bad
+#define MN_blcfill 0x2bb4
+#define MN_blsfill 0x2bbc
+#define MN_fistpll 0x2bc4
+#define MN_fisttpll 0x2bcc
+#define MN_jnl 0x2bd5
+#define MN_ccmpnl 0x2bd9
+#define MN_setnl 0x2be0
+#define MN_ctestnl 0x2be6
+#define MN_setzunl 0x2bee
 #define MN_cmovnl (MN_cfcmovnl + 2)
-#define MN_cfcmovnl 0x2b9f
-#define MN_rol 0x2ba8
-#define MN_ccmpl 0x2bac
-#define MN_arpl 0x2bb2
-#define MN_vpmacsdql 0x2bb7
-#define MN_vpmacssdql 0x2bc1
-#define MN_lsl 0x2bcc
-#define MN_movsl 0x2bd0
-#define MN_setl 0x2bd6
-#define MN_ctestl 0x2bdb
-#define MN_cwtl 0x2be2
+#define MN_cfcmovnl 0x2bf6
+#define MN_rol 0x2bff
+#define MN_ccmpl 0x2c03
+#define MN_arpl 0x2c09
+#define MN_vpmacsdql 0x2c0e
+#define MN_vpmacssdql 0x2c18
+#define MN_lsl 0x2c23
+#define MN_movsl 0x2c27
+#define MN_setl 0x2c2d
+#define MN_ctestl 0x2c32
+#define MN_cwtl 0x2c39
 #define MN_mul (MN_fmul + 1)
 #define MN_fmul (MN_pfmul + 1)
-#define MN_pfmul 0x2be7
+#define MN_pfmul 0x2c3e
 #define MN_imul (MN_fimul + 1)
-#define MN_fimul 0x2bed
-#define MN_montmul 0x2bf3
-#define MN_setzul 0x2bfb
+#define MN_fimul 0x2c44
+#define MN_montmul 0x2c4a
+#define MN_setzul 0x2c52
 #define MN_cmovl (MN_cfcmovl + 2)
-#define MN_cfcmovl 0x2c02
-#define MN_vpmovb2m 0x2c0a
-#define MN_vpmovd2m 0x2c13
-#define MN_vpmovq2m 0x2c1c
-#define MN_vpmovw2m 0x2c25
-#define MN_aam 0x2c2e
-#define MN_fxam 0x2c32
-#define MN_fprem 0x2c37
-#define MN_fcom 0x2c3d
-#define MN_ficom 0x2c42
-#define MN_fucom 0x2c48
-#define MN_fsetpm 0x2c4e
-#define MN_fnsetpm 0x2c55
-#define MN_frstpm 0x2c5d
-#define MN_vpperm 0x2c64
+#define MN_cfcmovl 0x2c59
+#define MN_vpmovb2m 0x2c61
+#define MN_vpmovd2m 0x2c6a
+#define MN_vpmovq2m 0x2c73
+#define MN_vpmovw2m 0x2c7c
+#define MN_aam 0x2c85
+#define MN_fxam 0x2c89
+#define MN_fprem 0x2c8e
+#define MN_fcom 0x2c94
+#define MN_ficom 0x2c99
+#define MN_fucom 0x2c9f
+#define MN_fsetpm 0x2ca5
+#define MN_fnsetpm 0x2cac
+#define MN_frstpm 0x2cb4
+#define MN_vpperm 0x2cbb
 #define MN_pcmpestrm (MN_vpcmpestrm + 1)
-#define MN_vpcmpestrm 0x2c6b
+#define MN_vpcmpestrm 0x2cc2
 #define MN_pcmpistrm (MN_vpcmpistrm + 1)
-#define MN_vpcmpistrm 0x2c76
-#define MN_rsm 0x2c81
-#define MN_fpatan 0x2c85
-#define MN_fptan 0x2c8c
-#define MN_bndcn 0x2c92
+#define MN_vpcmpistrm 0x2ccd
+#define MN_rsm 0x2cd8
+#define MN_fpatan 0x2cdc
+#define MN_fptan 0x2ce3
+#define MN_bndcn 0x2ce9
 #define MN_andn (MN_pandn + 1)
 #define MN_pandn (MN_vpandn + 1)
-#define MN_vpandn 0x2c98
+#define MN_vpandn 0x2cef
 #define MN_in (MN_xbegin + 4)
-#define MN_xbegin 0x2c9f
-#define MN_pfmin 0x2ca6
-#define MN_fsin 0x2cac
-#define MN_vmxon 0x2cb1
-#define MN_vmrun 0x2cb7
-#define MN_jo 0x2cbd
-#define MN_jno 0x2cc0
-#define MN_ccmpno 0x2cc4
-#define MN_setno 0x2ccb
-#define MN_ctestno 0x2cd1
-#define MN_setzuno 0x2cd9
+#define MN_xbegin 0x2cf6
+#define MN_pfmin 0x2cfd
+#define MN_fsin 0x2d03
+#define MN_vmxon 0x2d08
+#define MN_vmrun 0x2d0e
+#define MN_jo 0x2d14
+#define MN_jno 0x2d17
+#define MN_ccmpno 0x2d1b
+#define MN_setno 0x2d22
+#define MN_ctestno 0x2d28
+#define MN_setzuno 0x2d30
 #define MN_cmovno (MN_cfcmovno + 2)
-#define MN_cfcmovno 0x2ce1
-#define MN_jpo 0x2cea
-#define MN_ccmpo 0x2cee
-#define MN_setpo 0x2cf4
-#define MN_setzupo 0x2cfa
+#define MN_cfcmovno 0x2d38
+#define MN_jpo 0x2d41
+#define MN_ccmpo 0x2d45
+#define MN_setpo 0x2d4b
+#define MN_setzupo 0x2d51
 #define MN_cmovpo (MN_cfcmovpo + 2)
-#define MN_cfcmovpo 0x2d02
-#define MN_cqo 0x2d0b
-#define MN_tilezero 0x2d0f
-#define MN_clzero 0x2d18
-#define MN_seto 0x2d1f
-#define MN_into 0x2d24
-#define MN_cqto 0x2d29
-#define MN_ctesto 0x2d2e
-#define MN_ssto 0x2d35
-#define MN_setzuo 0x2d3a
+#define MN_cfcmovpo 0x2d59
+#define MN_cqo 0x2d62
+#define MN_tilezero 0x2d66
+#define MN_clzero 0x2d6f
+#define MN_seto 0x2d76
+#define MN_into 0x2d7b
+#define MN_cqto 0x2d80
+#define MN_ctesto 0x2d85
+#define MN_ssto 0x2d8c
+#define MN_setzuo 0x2d91
 #define MN_cmovo (MN_cfcmovo + 2)
-#define MN_cfcmovo 0x2d41
-#define MN_push2p 0x2d49
-#define MN_pop2p 0x2d50
-#define MN_bswap 0x2d56
-#define MN_fsubp 0x2d5c
-#define MN_pfrcp 0x2d62
-#define MN_rdtscp 0x2d68
-#define MN_faddp 0x2d6f
-#define MN_pdep 0x2d75
-#define MN_ffreep 0x2d7a
-#define MN_rep 0x2d81
-#define MN_pushp 0x2d85
-#define MN_fcomip 0x2d8b
-#define MN_fucomip 0x2d92
-#define MN_jp 0x2d9a
-#define MN_fmulp 0x2d9d
+#define MN_cfcmovo 0x2d98
+#define MN_push2p 0x2da0
+#define MN_pop2p 0x2da7
+#define MN_bswap 0x2dad
+#define MN_fsubp 0x2db3
+#define MN_pfrcp 0x2db9
+#define MN_rdtscp 0x2dbf
+#define MN_faddp 0x2dc6
+#define MN_pdep 0x2dcc
+#define MN_ffreep 0x2dd1
+#define MN_rep 0x2dd8
+#define MN_pushp 0x2ddc
+#define MN_fcomip 0x2de2
+#define MN_fucomip 0x2de9
+#define MN_jp 0x2df1
+#define MN_fmulp 0x2df4
 #define MN_cmp (MN_scmp + 1)
-#define MN_scmp 0x2da3
+#define MN_scmp 0x2dfa
 #define MN_jmp (MN_ljmp + 1)
-#define MN_ljmp 0x2da8
-#define MN_fcomp 0x2dad
-#define MN_ficomp 0x2db3
-#define MN_fucomp 0x2dba
-#define MN_jnp 0x2dc1
-#define MN_setnp 0x2dc5
-#define MN_setzunp 0x2dcb
+#define MN_ljmp 0x2dff
+#define MN_fcomp 0x2e04
+#define MN_ficomp 0x2e0a
+#define MN_fucomp 0x2e11
+#define MN_jnp 0x2e18
+#define MN_setnp 0x2e1c
+#define MN_setzunp 0x2e22
 #define MN_cmovnp (MN_cfcmovnp + 2)
-#define MN_cfcmovnp 0x2dd3
+#define MN_cfcmovnp 0x2e2a
 #define MN_nop (MN_fnop + 1)
-#define MN_fnop 0x2ddc
-#define MN_loop 0x2de1
-#define MN_pop 0x2de6
-#define MN_fcompp 0x2dea
-#define MN_fucompp 0x2df1
-#define MN_popp 0x2df9
-#define MN_fsubrp 0x2dfe
-#define MN_fdivrp 0x2e05
-#define MN_rstorssp 0x2e0c
-#define MN_saveprevssp 0x2e15
-#define MN_setp 0x2e21
-#define MN_fbstp 0x2e26
-#define MN_fdecstp 0x2e2c
-#define MN_fincstp 0x2e34
-#define MN_fstp 0x2e3c
-#define MN_fistp 0x2e41
-#define MN_fisttp 0x2e47
+#define MN_fnop 0x2e33
+#define MN_loop 0x2e38
+#define MN_pop 0x2e3d
+#define MN_fcompp 0x2e41
+#define MN_fucompp 0x2e48
+#define MN_popp 0x2e50
+#define MN_fsubrp 0x2e55
+#define MN_fdivrp 0x2e5c
+#define MN_rstorssp 0x2e63
+#define MN_saveprevssp 0x2e6c
+#define MN_setp 0x2e78
+#define MN_fbstp 0x2e7d
+#define MN_fdecstp 0x2e83
+#define MN_fincstp 0x2e8b
+#define MN_fstp 0x2e93
+#define MN_fistp 0x2e98
+#define MN_fisttp 0x2e9e
 #define MN_movddup (MN_vmovddup + 1)
-#define MN_vmovddup 0x2e4e
+#define MN_vmovddup 0x2ea5
 #define MN_movshdup (MN_vmovshdup + 1)
-#define MN_vmovshdup 0x2e57
+#define MN_vmovshdup 0x2eae
 #define MN_movsldup (MN_vmovsldup + 1)
-#define MN_vmovsldup 0x2e61
-#define MN_setzup 0x2e6b
-#define MN_fdivp 0x2e72
+#define MN_vmovsldup 0x2eb8
+#define MN_setzup 0x2ec2
+#define MN_fdivp 0x2ec9
 #define MN_cmovp (MN_cfcmovp + 2)
-#define MN_cfcmovp 0x2e78
-#define MN_vpbroadcastmb2q 0x2e80
-#define MN_vpermi2q 0x2e90
-#define MN_vpmovm2q 0x2e99
-#define MN_movdq2q 0x2ea2
-#define MN_vpermt2q 0x2eaa
-#define MN_vpshaq 0x2eb3
-#define MN_vpsraq 0x2eba
-#define MN_vphaddbq 0x2ec1
-#define MN_vphaddubq 0x2eca
+#define MN_cfcmovp 0x2ecf
+#define MN_vpbroadcastmb2q 0x2ed7
+#define MN_vpermi2q 0x2ee7
+#define MN_vpmovm2q 0x2ef0
+#define MN_movdq2q 0x2ef9
+#define MN_vpermt2q 0x2f01
+#define MN_vpshaq 0x2f0a
+#define MN_vpsraq 0x2f11
+#define MN_vphaddbq 0x2f18
+#define MN_vphaddubq 0x2f21
 #define MN_psubq (MN_vpsubq + 1)
-#define MN_vpsubq 0x2ed4
+#define MN_vpsubq 0x2f2b
 #define MN_pmovsxbq (MN_vpmovsxbq + 1)
-#define MN_vpmovsxbq 0x2edb
+#define MN_vpmovsxbq 0x2f32
 #define MN_pmovzxbq (MN_vpmovzxbq + 1)
-#define MN_vpmovzxbq 0x2ee5
+#define MN_vpmovzxbq 0x2f3c
 #define MN_cvttpd2dq (MN_vcvttpd2dq + 1)
-#define MN_vcvttpd2dq 0x2eef
+#define MN_vcvttpd2dq 0x2f46
 #define MN_cvtpd2dq (MN_vcvtpd2dq + 1)
-#define MN_vcvtpd2dq 0x2efa
-#define MN_vcvttph2dq 0x2f04
-#define MN_vcvtph2dq 0x2f0f
-#define MN_movq2dq 0x2f19
+#define MN_vcvtpd2dq 0x2f51
+#define MN_vcvttph2dq 0x2f5b
+#define MN_vcvtph2dq 0x2f66
+#define MN_movq2dq 0x2f70
 #define MN_cvttps2dq (MN_vcvttps2dq + 1)
-#define MN_vcvttps2dq 0x2f21
+#define MN_vcvttps2dq 0x2f78
 #define MN_cvtps2dq (MN_vcvtps2dq + 1)
-#define MN_vcvtps2dq 0x2f2c
-#define MN_vphsubdq 0x2f36
-#define MN_cdq 0x2f3f
-#define MN_kaddq 0x2f43
+#define MN_vcvtps2dq 0x2f83
+#define MN_vphsubdq 0x2f8d
+#define MN_cdq 0x2f96
+#define MN_kaddq 0x2f9a
 #define MN_paddq (MN_vpaddq + 1)
-#define MN_vpaddq 0x2f49
-#define MN_vphadddq 0x2f50
+#define MN_vpaddq 0x2fa0
+#define MN_vphadddq 0x2fa7
 #define MN_punpckhdq (MN_vpunpckhdq + 1)
-#define MN_vpunpckhdq 0x2f59
-#define MN_kunpckdq 0x2f64
-#define MN_vpshldq 0x2f6d
+#define MN_vpunpckhdq 0x2fb0
+#define MN_kunpckdq 0x2fbb
+#define MN_vpshldq 0x2fc4
 #define MN_punpckldq (MN_vpunpckldq + 1)
-#define MN_vpunpckldq 0x2f75
+#define MN_vpunpckldq 0x2fcc
 #define MN_pslldq (MN_vpslldq + 1)
-#define MN_vpslldq 0x2f80
+#define MN_vpslldq 0x2fd7
 #define MN_psrldq (MN_vpsrldq + 1)
-#define MN_vpsrldq 0x2f88
+#define MN_vpsrldq 0x2fdf
 #define MN_pmuldq (MN_vpmuldq + 1)
-#define MN_vpmuldq 0x2f90
-#define MN_kandq 0x2f98
-#define MN_vpandq 0x2f9e
-#define MN_vpexpandq 0x2fa5
+#define MN_vpmuldq 0x2fe7
+#define MN_kandq 0x2fef
+#define MN_vpandq 0x2ff5
+#define MN_vpexpandq 0x2ffc
 #define MN_punpckhqdq (MN_vpunpckhqdq + 1)
-#define MN_vpunpckhqdq 0x2faf
+#define MN_vpunpckhqdq 0x3006
 #define MN_pclmulhqhqdq (MN_vpclmulhqhqdq + 1)
-#define MN_vpclmulhqhqdq 0x2fbb
+#define MN_vpclmulhqhqdq 0x3012
 #define MN_pclmullqhqdq (MN_vpclmullqhqdq + 1)
-#define MN_vpclmullqhqdq 0x2fc9
+#define MN_vpclmullqhqdq 0x3020
 #define MN_punpcklqdq (MN_vpunpcklqdq + 1)
-#define MN_vpunpcklqdq 0x2fd7
+#define MN_vpunpcklqdq 0x302e
 #define MN_pclmulhqlqdq (MN_vpclmulhqlqdq + 1)
-#define MN_vpclmulhqlqdq 0x2fe3
+#define MN_vpclmulhqlqdq 0x303a
 #define MN_pclmullqlqdq (MN_vpclmullqlqdq + 1)
-#define MN_vpclmullqlqdq 0x2ff1
+#define MN_vpclmullqlqdq 0x3048
 #define MN_pclmulqdq (MN_vpclmulqdq + 1)
-#define MN_vpclmulqdq 0x2fff
-#define MN_vpgatherdq 0x300a
-#define MN_vpscatterdq 0x3015
-#define MN_vpshrdq 0x3021
+#define MN_vpclmulqdq 0x3056
+#define MN_vpgatherdq 0x3061
+#define MN_vpscatterdq 0x306c
+#define MN_vpshrdq 0x3078
 #define MN_movntdq (MN_vmovntdq + 1)
-#define MN_vmovntdq 0x3029
-#define MN_vcvttpd2udq 0x3032
-#define MN_vcvtpd2udq 0x303e
-#define MN_vcvttph2udq 0x3049
-#define MN_vcvtph2udq 0x3055
-#define MN_vcvttps2udq 0x3060
-#define MN_vcvtps2udq 0x306c
-#define MN_vphaddudq 0x3077
+#define MN_vmovntdq 0x3080
+#define MN_vcvttpd2udq 0x3089
+#define MN_vcvtpd2udq 0x3095
+#define MN_vcvttph2udq 0x30a0
+#define MN_vcvtph2udq 0x30ac
+#define MN_vcvttps2udq 0x30b7
+#define MN_vcvtps2udq 0x30c3
+#define MN_vphaddudq 0x30ce
 #define MN_pmuludq (MN_vpmuludq + 1)
-#define MN_vpmuludq 0x3081
+#define MN_vpmuludq 0x30d8
 #define MN_pmovsxdq (MN_vpmovsxdq + 1)
-#define MN_vpmovsxdq 0x308a
+#define MN_vpmovsxdq 0x30e1
 #define MN_pmovzxdq (MN_vpmovzxdq + 1)
-#define MN_vpmovzxdq 0x3094
-#define MN_vpcomgeq 0x309e
-#define MN_vpcomleq 0x30a7
-#define MN_vpcmpnleq 0x30b0
-#define MN_vpcmpleq 0x30ba
-#define MN_pfcmpeq 0x30c3
-#define MN_vpcomfalseq 0x30cb
-#define MN_vpcomtrueq 0x30d7
-#define MN_vpternlogq 0x30e2
-#define MN_vpshlq 0x30ed
+#define MN_vpmovzxdq 0x30eb
+#define MN_vpcomgeq 0x30f5
+#define MN_vpcomleq 0x30fe
+#define MN_vpcmpnleq 0x3107
+#define MN_vpcmpleq 0x3111
+#define MN_pfcmpeq 0x311a
+#define MN_vpcomfalseq 0x3122
+#define MN_vpcomtrueq 0x312e
+#define MN_vpternlogq 0x3139
+#define MN_vpshlq 0x3144
 #define MN_psllq (MN_vpsllq + 1)
-#define MN_vpsllq 0x30f4
-#define MN_vpmullq 0x30fb
-#define MN_vprolq 0x3103
+#define MN_vpsllq 0x314b
+#define MN_vpmullq 0x3152
+#define MN_vprolq 0x315a
 #define MN_psrlq (MN_vpsrlq + 1)
-#define MN_vpsrlq 0x310a
-#define MN_kshiftlq 0x3111
-#define MN_vpblendmq 0x311a
-#define MN_vptestnmq 0x3124
-#define MN_vpcomq 0x312e
-#define MN_vpermq 0x3135
-#define MN_vptestmq 0x313c
-#define MN_kandnq 0x3145
-#define MN_vpandnq 0x314c
-#define MN_valignq 0x3154
-#define MN_vpcmpq 0x315c
-#define MN_incsspq 0x3163
-#define MN_rdsspq 0x316b
-#define MN_vcvttpd2qq 0x3172
-#define MN_vcvtpd2qq 0x317d
-#define MN_vcvttph2qq 0x3187
-#define MN_vcvtph2qq 0x3192
-#define MN_vcvttps2qq 0x319c
-#define MN_vcvtps2qq 0x31a7
-#define MN_vpcomeqq 0x31b1
-#define MN_vpcomneqq 0x31ba
-#define MN_vpcmpneqq 0x31c4
+#define MN_vpsrlq 0x3161
+#define MN_kshiftlq 0x3168
+#define MN_vpblendmq 0x3171
+#define MN_vptestnmq 0x317b
+#define MN_vpcomq 0x3185
+#define MN_vpermq 0x318c
+#define MN_vptestmq 0x3193
+#define MN_kandnq 0x319c
+#define MN_vpandnq 0x31a3
+#define MN_valignq 0x31ab
+#define MN_vpcmpq 0x31b3
+#define MN_incsspq 0x31ba
+#define MN_rdsspq 0x31c2
+#define MN_vcvttpd2qq 0x31c9
+#define MN_vcvtpd2qq 0x31d4
+#define MN_vcvttph2qq 0x31de
+#define MN_vcvtph2qq 0x31e9
+#define MN_vcvttps2qq 0x31f3
+#define MN_vcvtps2qq 0x31fe
+#define MN_vpcomeqq 0x3208
+#define MN_vpcomneqq 0x3211
+#define MN_vpcmpneqq 0x321b
 #define MN_pcmpeqq (MN_vpcmpeqq + 1)
-#define MN_vpcmpeqq 0x31ce
-#define MN_vpgatherqq 0x31d7
-#define MN_vpscatterqq 0x31e2
-#define MN_vcvttpd2uqq 0x31ee
-#define MN_vcvtpd2uqq 0x31fa
-#define MN_vcvttph2uqq 0x3205
-#define MN_vcvtph2uqq 0x3211
-#define MN_vcvttps2uqq 0x321c
-#define MN_vcvtps2uqq 0x3228
-#define MN_korq 0x3233
-#define MN_kxnorq 0x3238
-#define MN_vporq 0x323f
-#define MN_vprorq 0x3245
-#define MN_kxorq 0x324c
-#define MN_vpxorq 0x3252
+#define MN_vpcmpeqq 0x3225
+#define MN_vpgatherqq 0x322e
+#define MN_vpscatterqq 0x3239
+#define MN_vcvttpd2uqq 0x3245
+#define MN_vcvtpd2uqq 0x3251
+#define MN_vcvttph2uqq 0x325c
+#define MN_vcvtph2uqq 0x3268
+#define MN_vcvttps2uqq 0x3273
+#define MN_vcvtps2uqq 0x327f
+#define MN_korq 0x328a
+#define MN_kxnorq 0x328f
+#define MN_vporq 0x3296
+#define MN_vprorq 0x329c
+#define MN_kxorq 0x32a3
+#define MN_vpxorq 0x32a9
 #define MN_pinsrq (MN_vpinsrq + 1)
-#define MN_vpinsrq 0x3259
-#define MN_kshiftrq 0x3261
+#define MN_vpinsrq 0x32b0
+#define MN_kshiftrq 0x32b8
 #define MN_extrq (MN_pextrq + 1)
 #define MN_pextrq (MN_vpextrq + 1)
-#define MN_vpextrq 0x326a
-#define MN_vpabsq 0x3272
-#define MN_vpminsq 0x3279
-#define MN_vpcompressq 0x3281
-#define MN_wrssq 0x328d
-#define MN_wrussq 0x3293
-#define MN_vpmaxsq 0x329a
-#define MN_vp2intersectq 0x32a2
-#define MN_vpconflictq 0x32b0
-#define MN_vpcomgtq 0x32bc
+#define MN_vpextrq 0x32c1
+#define MN_vpabsq 0x32c9
+#define MN_vpminsq 0x32d0
+#define MN_vpcompressq 0x32d8
+#define MN_wrssq 0x32e4
+#define MN_wrussq 0x32ea
+#define MN_vpmaxsq 0x32f1
+#define MN_vp2intersectq 0x32f9
+#define MN_vpconflictq 0x3307
+#define MN_vpcomgtq 0x3313
 #define MN_pcmpgtq (MN_vpcmpgtq + 1)
-#define MN_vpcmpgtq 0x32c5
-#define MN_cltq 0x32ce
-#define MN_vpcomltq 0x32d3
-#define MN_vpcmpnltq 0x32dc
-#define MN_vpcmpltq 0x32e6
-#define MN_vpopcntq 0x32ef
-#define MN_vplzcntq 0x32f8
-#define MN_movntq 0x3301
-#define MN_knotq 0x3308
-#define MN_vprotq 0x330e
-#define MN_insertq 0x3315
-#define MN_vpbroadcastq 0x331d
-#define MN_ktestq 0x332a
-#define MN_kortestq 0x3331
-#define MN_vpcomgeuq 0x333a
-#define MN_vpcomleuq 0x3344
-#define MN_vpcmpnleuq 0x334e
-#define MN_vpcmpleuq 0x3359
-#define MN_vpcomfalseuq 0x3363
-#define MN_vpcomtrueuq 0x3370
-#define MN_vpmadd52huq 0x337c
-#define MN_vpmadd52luq 0x3388
-#define MN_vpcomuq 0x3394
-#define MN_vpminuq 0x339c
-#define MN_vpcmpuq 0x33a4
-#define MN_vpcomequq 0x33ac
-#define MN_vpcomnequq 0x33b6
-#define MN_vpcmpnequq 0x33c1
-#define MN_vpcmpequq 0x33cc
-#define MN_vpcomgtuq 0x33d6
-#define MN_vpcomltuq 0x33e0
-#define MN_vpcmpnltuq 0x33ea
-#define MN_vpcmpltuq 0x33f5
-#define MN_vpmaxuq 0x33ff
-#define MN_vpsravq 0x3407
-#define MN_vpshldvq 0x340f
-#define MN_vpshrdvq 0x3418
-#define MN_vpsllvq 0x3421
-#define MN_vprolvq 0x3429
-#define MN_vpsrlvq 0x3431
+#define MN_vpcmpgtq 0x331c
+#define MN_cltq 0x3325
+#define MN_vpcomltq 0x332a
+#define MN_vpcmpnltq 0x3333
+#define MN_vpcmpltq 0x333d
+#define MN_vpopcntq 0x3346
+#define MN_vplzcntq 0x334f
+#define MN_movntq 0x3358
+#define MN_knotq 0x335f
+#define MN_vprotq 0x3365
+#define MN_insertq 0x336c
+#define MN_vpbroadcastq 0x3374
+#define MN_ktestq 0x3381
+#define MN_kortestq 0x3388
+#define MN_vpcomgeuq 0x3391
+#define MN_vpcomleuq 0x339b
+#define MN_vpcmpnleuq 0x33a5
+#define MN_vpcmpleuq 0x33b0
+#define MN_vpcomfalseuq 0x33ba
+#define MN_vpcomtrueuq 0x33c7
+#define MN_vpmadd52huq 0x33d3
+#define MN_vpmadd52luq 0x33df
+#define MN_vpcomuq 0x33eb
+#define MN_vpminuq 0x33f3
+#define MN_vpcmpuq 0x33fb
+#define MN_vpcomequq 0x3403
+#define MN_vpcomnequq 0x340d
+#define MN_vpcmpnequq 0x3418
+#define MN_vpcmpequq 0x3423
+#define MN_vpcomgtuq 0x342d
+#define MN_vpcomltuq 0x3437
+#define MN_vpcmpnltuq 0x3441
+#define MN_vpcmpltuq 0x344c
+#define MN_vpmaxuq 0x3456
+#define MN_vpsravq 0x345e
+#define MN_vpshldvq 0x3466
+#define MN_vpshrdvq 0x346f
+#define MN_vpsllvq 0x3478
+#define MN_vprolvq 0x3480
+#define MN_vpsrlvq 0x3488
 #define MN_movq (MN_kmovq + 1)
 #define MN_kmovq (MN_maskmovq + 3)
 #define MN_maskmovq (MN_vpmaskmovq + 2)
-#define MN_vpmaskmovq 0x3439
-#define MN_vmovq 0x3444
-#define MN_vprorvq 0x344a
-#define MN_vphaddwq 0x3452
-#define MN_vphadduwq 0x345b
+#define MN_vpmaskmovq 0x3490
+#define MN_vmovq 0x349b
+#define MN_vprorvq 0x34a1
+#define MN_vphaddwq 0x34a9
+#define MN_vphadduwq 0x34b2
 #define MN_pmovsxwq (MN_vpmovsxwq + 1)
-#define MN_vpmovsxwq 0x3465
+#define MN_vpmovsxwq 0x34bc
 #define MN_pmovzxwq (MN_vpmovzxwq + 1)
-#define MN_vpmovzxwq 0x346f
-#define MN_rex_r 0x3479
-#define MN_vmclear 0x347f
-#define MN_lar 0x3487
-#define MN_sar 0x348b
+#define MN_vpmovzxwq 0x34c6
+#define MN_rex_r 0x34d0
+#define MN_vmclear 0x34d6
+#define MN_lar 0x34de
+#define MN_sar 0x34e2
 #define MN_fsubr (MN_pfsubr + 1)
-#define MN_pfsubr 0x348f
-#define MN_fisubr 0x3496
-#define MN_rcr 0x349d
-#define MN_vzeroupper 0x34a1
+#define MN_pfsubr 0x34e6
+#define MN_fisubr 0x34ed
+#define MN_rcr 0x34f4
+#define MN_vzeroupper 0x34f8
 #define MN_enter (MN_sysenter + 3)
-#define MN_sysenter 0x34ac
-#define MN_shr 0x34b5
-#define MN_clr 0x34b9
+#define MN_sysenter 0x3503
+#define MN_shr 0x350c
+#define MN_clr 0x3510
 #define MN_palignr (MN_vpalignr + 1)
-#define MN_vpalignr 0x34bd
+#define MN_vpalignr 0x3514
 #define MN_or (MN_aor + 1)
-#define MN_aor 0x34c6
+#define MN_aor 0x351d
 #define MN_por (MN_vpor + 1)
-#define MN_vpor 0x34ca
-#define MN_ror 0x34cf
+#define MN_vpor 0x3521
+#define MN_ror 0x3526
 #define MN_monitor (MN_umonitor + 1)
-#define MN_umonitor 0x34d3
-#define MN_frstor 0x34dc
+#define MN_umonitor 0x352a
+#define MN_frstor 0x3533
 #define MN_xrstor (MN_fxrstor + 1)
-#define MN_fxrstor 0x34e3
+#define MN_fxrstor 0x353a
 #define MN_xor (MN_axor + 1)
-#define MN_axor 0x34eb
+#define MN_axor 0x3542
 #define MN_pxor (MN_vpxor + 1)
-#define MN_vpxor 0x34f0
-#define MN_verr 0x34f6
-#define MN_bsr 0x34fb
+#define MN_vpxor 0x3547
+#define MN_verr 0x354d
+#define MN_bsr 0x3552
 #define MN_ldmxcsr (MN_vldmxcsr + 1)
-#define MN_vldmxcsr 0x34ff
+#define MN_vldmxcsr 0x3556
 #define MN_stmxcsr (MN_vstmxcsr + 1)
-#define MN_vstmxcsr 0x3508
-#define MN_blsr 0x3511
+#define MN_vstmxcsr 0x355f
+#define MN_blsr 0x3568
 #define MN_rdmsr (MN_urdmsr + 1)
-#define MN_urdmsr 0x3516
+#define MN_urdmsr 0x356d
 #define MN_wrmsr (MN_uwrmsr + 1)
-#define MN_uwrmsr 0x351d
-#define MN_btr 0x3524
-#define MN_xcrypt_ctr 0x3528
-#define MN_xcryptctr 0x3533
-#define MN_ltr 0x353d
-#define MN_str 0x3541
-#define MN_bextr 0x3545
-#define MN_fdivr 0x354b
-#define MN_fidivr 0x3551
-#define MN_rex_wr 0x3558
-#define MN_vcvtne2ph2bf8s 0x355f
-#define MN_vcvtneph2bf8s 0x356e
-#define MN_vcvtbiasph2bf8s 0x357c
-#define MN_vcvtne2ph2hf8s 0x358c
-#define MN_vcvtneph2hf8s 0x359b
-#define MN_vcvtbiasph2hf8s 0x35a9
-#define MN_aas 0x35b9
-#define MN_scas 0x35bd
-#define MN_das 0x35c2
-#define MN_fabs 0x35c6
-#define MN_jmpabs 0x35cb
-#define MN_movabs 0x35d2
-#define MN_vcvtnebf162ibs 0x35d9
-#define MN_vcvttbf162ibs 0x35e8
-#define MN_vcvttph2ibs 0x35f6
-#define MN_vcvtph2ibs 0x3602
-#define MN_vcvttps2ibs 0x360d
-#define MN_vcvtps2ibs 0x3619
-#define MN_vcvtnebf162iubs 0x3624
-#define MN_vcvttbf162iubs 0x3634
-#define MN_vcvttph2iubs 0x3643
-#define MN_vcvtph2iubs 0x3650
-#define MN_vcvttps2iubs 0x365c
-#define MN_vcvtps2iubs 0x3669
+#define MN_uwrmsr 0x3574
+#define MN_btr 0x357b
+#define MN_xcrypt_ctr 0x357f
+#define MN_xcryptctr 0x358a
+#define MN_ltr 0x3594
+#define MN_str 0x3598
+#define MN_bextr 0x359c
+#define MN_fdivr 0x35a2
+#define MN_fidivr 0x35a8
+#define MN_rex_wr 0x35af
+#define MN_vcvtne2ph2bf8s 0x35b6
+#define MN_vcvtneph2bf8s 0x35c5
+#define MN_vcvtbiasph2bf8s 0x35d3
+#define MN_vcvtne2ph2hf8s 0x35e3
+#define MN_vcvtneph2hf8s 0x35f2
+#define MN_vcvtbiasph2hf8s 0x3600
+#define MN_aas 0x3610
+#define MN_scas 0x3614
+#define MN_das 0x3619
+#define MN_fabs 0x361d
+#define MN_jmpabs 0x3622
+#define MN_movabs 0x3629
+#define MN_vcvtnebf162ibs 0x3630
+#define MN_vcvttbf162ibs 0x363f
+#define MN_vcvttph2ibs 0x364d
+#define MN_vcvtph2ibs 0x3659
+#define MN_vcvttps2ibs 0x3664
+#define MN_vcvtps2ibs 0x3670
+#define MN_vcvtnebf162iubs 0x367b
+#define MN_vcvttbf162iubs 0x368b
+#define MN_vcvttph2iubs 0x369a
+#define MN_vcvtph2iubs 0x36a7
+#define MN_vcvttps2iubs 0x36b3
+#define MN_vcvtps2iubs 0x36c0
 #define MN_cs (MN_blcs + 2)
-#define MN_blcs 0x3675
+#define MN_blcs 0x36cc
 #define MN_ds (MN_lds + 1)
-#define MN_lds 0x367a
-#define MN_enqcmds 0x367e
-#define MN_lods 0x3686
-#define MN_vpdpbssds 0x368b
-#define MN_vp4dpwssds 0x3695
-#define MN_vpdpwssds 0x36a0
-#define MN_vpdpbusds 0x36aa
-#define MN_vpdpwusds 0x36b4
-#define MN_vpdpbsuds 0x36be
-#define MN_vpdpwsuds 0x36c8
-#define MN_vpdpbuuds 0x36d2
-#define MN_vpdpwuuds 0x36dc
+#define MN_lds 0x36d1
+#define MN_enqcmds 0x36d5
+#define MN_lods 0x36dd
+#define MN_vpdpbssds 0x36e2
+#define MN_vp4dpwssds 0x36ec
+#define MN_vpdpwssds 0x36f7
+#define MN_vpdpbusds 0x3701
+#define MN_vpdpwusds 0x370b
+#define MN_vpdpbsuds 0x3715
+#define MN_vpdpwsuds 0x371f
+#define MN_vpdpbuuds 0x3729
+#define MN_vpdpwuuds 0x3733
 #define MN_es (MN_les + 1)
-#define MN_les 0x36e6
-#define MN_xsaves 0x36ea
+#define MN_les 0x373d
+#define MN_xsaves 0x3741
 #define MN_fs (MN_lfs + 1)
-#define MN_lfs 0x36f1
+#define MN_lfs 0x3748
 #define MN_gs (MN_lkgs + 2)
-#define MN_lkgs 0x36f5
-#define MN_lgs 0x36fa
-#define MN_swapgs 0x36fe
-#define MN_fchs 0x3705
-#define MN_vcvttsd2sis 0x370a
-#define MN_vcvttss2sis 0x3716
-#define MN_vcvttsd2usis 0x3722
-#define MN_vcvttss2usis 0x372f
-#define MN_js 0x373c
-#define MN_encls 0x373f
+#define MN_lkgs 0x374c
+#define MN_lgs 0x3751
+#define MN_swapgs 0x3755
+#define MN_fchs 0x375c
+#define MN_vcvttsd2sis 0x3761
+#define MN_vcvttss2sis 0x376d
+#define MN_vcvttsd2usis 0x3779
+#define MN_vcvttss2usis 0x3786
+#define MN_js 0x3793
+#define MN_encls 0x3796
 #define MN_emms (MN_femms + 1)
-#define MN_femms 0x3745
+#define MN_femms 0x379c
 #define MN_ins (MN_lwpins + 3)
-#define MN_lwpins 0x374b
-#define MN_jns 0x3752
-#define MN_ccmpns 0x3756
-#define MN_wrmsrns 0x375d
-#define MN_setns 0x3765
-#define MN_ctestns 0x376b
-#define MN_setzuns 0x3773
+#define MN_lwpins 0x37a2
+#define MN_jns 0x37a9
+#define MN_ccmpns 0x37ad
+#define MN_wrmsrns 0x37b4
+#define MN_setns 0x37bc
+#define MN_ctestns 0x37c2
+#define MN_setzuns 0x37ca
 #define MN_cmovns (MN_cfcmovns + 2)
-#define MN_cfcmovns 0x377b
-#define MN_fcos 0x3784
-#define MN_fsincos 0x3789
-#define MN_stos 0x3791
-#define MN_vfmaddsub231ps 0x3796
-#define MN_vfmsub231ps 0x37a5
-#define MN_vfnmsub231ps 0x37b1
-#define MN_vfmsubadd231ps 0x37be
-#define MN_vfmadd231ps 0x37cd
-#define MN_vfnmadd231ps 0x37d9
-#define MN_vfmaddsub132ps 0x37e6
-#define MN_vfmsub132ps 0x37f5
-#define MN_vfnmsub132ps 0x3801
-#define MN_vfmsubadd132ps 0x380e
-#define MN_vfmadd132ps 0x381d
-#define MN_vfnmadd132ps 0x3829
-#define MN_vcvtneebf162ps 0x3836
-#define MN_vbcstnebf162ps 0x3845
-#define MN_vcvtneobf162ps 0x3854
+#define MN_cfcmovns 0x37d2
+#define MN_fcos 0x37db
+#define MN_fsincos 0x37e0
+#define MN_stos 0x37e8
+#define MN_vfmaddsub231ps 0x37ed
+#define MN_vfmsub231ps 0x37fc
+#define MN_vfnmsub231ps 0x3808
+#define MN_vfmsubadd231ps 0x3815
+#define MN_vfmadd231ps 0x3824
+#define MN_vfnmadd231ps 0x3830
+#define MN_vfmaddsub132ps 0x383d
+#define MN_vfmsub132ps 0x384c
+#define MN_vfnmsub132ps 0x3858
+#define MN_vfmsubadd132ps 0x3865
+#define MN_vfmadd132ps 0x3874
+#define MN_vfnmadd132ps 0x3880
+#define MN_vcvtneebf162ps 0x388d
+#define MN_vbcstnebf162ps 0x389c
+#define MN_vcvtneobf162ps 0x38ab
 #define MN_cvtpd2ps (MN_vcvtpd2ps + 1)
-#define MN_vcvtpd2ps 0x3863
-#define MN_vcvtneeph2ps 0x386d
-#define MN_vcvtneoph2ps 0x387a
-#define MN_vcvtph2ps 0x3887
-#define MN_vbcstnesh2ps 0x3891
-#define MN_vpermi2ps 0x389e
-#define MN_cvtpi2ps 0x38a8
-#define MN_vpermil2ps 0x38b1
-#define MN_vexp2ps 0x38bc
+#define MN_vcvtpd2ps 0x38ba
+#define MN_vcvtneeph2ps 0x38c4
+#define MN_vcvtneoph2ps 0x38d1
+#define MN_vcvtph2ps 0x38de
+#define MN_vbcstnesh2ps 0x38e8
+#define MN_vpermi2ps 0x38f5
+#define MN_cvtpi2ps 0x38ff
+#define MN_vpermil2ps 0x3908
+#define MN_vexp2ps 0x3913
 #define MN_cvtdq2ps (MN_vcvtdq2ps + 1)
-#define MN_vcvtdq2ps 0x38c4
-#define MN_vcvtudq2ps 0x38ce
-#define MN_vcvtqq2ps 0x38d9
-#define MN_vcvtuqq2ps 0x38e3
-#define MN_vpermt2ps 0x38ee
-#define MN_vfmaddsub213ps 0x38f8
-#define MN_vfmsub213ps 0x3907
-#define MN_vfnmsub213ps 0x3913
-#define MN_vfmsubadd213ps 0x3920
-#define MN_vfmadd213ps 0x392f
-#define MN_vfnmadd213ps 0x393b
-#define MN_vrcp14ps 0x3948
-#define MN_vrsqrt14ps 0x3951
-#define MN_tdpbf16ps 0x395c
-#define MN_vdpbf16ps 0x3966
-#define MN_tcmmrlfp16ps 0x3970
-#define MN_tcmmimfp16ps 0x397d
-#define MN_tdpfp16ps 0x398a
-#define MN_vrcp28ps 0x3994
-#define MN_vrsqrt28ps 0x399d
+#define MN_vcvtdq2ps 0x391b
+#define MN_vcvtudq2ps 0x3925
+#define MN_vcvtqq2ps 0x3930
+#define MN_vcvtuqq2ps 0x393a
+#define MN_vpermt2ps 0x3945
+#define MN_vfmaddsub213ps 0x394f
+#define MN_vfmsub213ps 0x395e
+#define MN_vfnmsub213ps 0x396a
+#define MN_vfmsubadd213ps 0x3977
+#define MN_vfmadd213ps 0x3986
+#define MN_vfnmadd213ps 0x3992
+#define MN_vrcp14ps 0x399f
+#define MN_vrsqrt14ps 0x39a8
+#define MN_tdpbf16ps 0x39b3
+#define MN_vdpbf16ps 0x39bd
+#define MN_tcmmrlfp16ps 0x39c7
+#define MN_tcmmimfp16ps 0x39d4
+#define MN_tdpfp16ps 0x39e1
+#define MN_vrcp28ps 0x39eb
+#define MN_vrsqrt28ps 0x39f4
 #define MN_movaps (MN_vmovaps + 1)
-#define MN_vmovaps 0x39a8
+#define MN_vmovaps 0x39ff
 #define MN_subps (MN_addsubps + 3)
 #define MN_addsubps (MN_vfmaddsubps + 3)
-#define MN_vfmaddsubps 0x39b0
-#define MN_vaddsubps 0x39bc
+#define MN_vfmaddsubps 0x3a07
+#define MN_vaddsubps 0x3a13
 #define MN_hsubps (MN_vhsubps + 1)
-#define MN_vhsubps 0x39c6
-#define MN_vfmsubps 0x39ce
-#define MN_vfnmsubps 0x39d7
-#define MN_vsubps 0x39e1
-#define MN_vgatherpf0dps 0x39e8
-#define MN_vscatterpf0dps 0x39f6
-#define MN_vgatherpf1dps 0x3a05
-#define MN_vscatterpf1dps 0x3a13
+#define MN_vhsubps 0x3a1d
+#define MN_vfmsubps 0x3a25
+#define MN_vfnmsubps 0x3a2e
+#define MN_vsubps 0x3a38
+#define MN_vgatherpf0dps 0x3a3f
+#define MN_vscatterpf0dps 0x3a4d
+#define MN_vgatherpf1dps 0x3a5c
+#define MN_vscatterpf1dps 0x3a6a
 #define MN_addps (MN_vfmsubaddps + 6)
-#define MN_vfmsubaddps 0x3a22
+#define MN_vfmsubaddps 0x3a79
 #define MN_haddps (MN_vhaddps + 1)
-#define MN_vhaddps 0x3a2e
-#define MN_v4fmaddps 0x3a36
-#define MN_vfmaddps 0x3a40
-#define MN_v4fnmaddps 0x3a49
-#define MN_vfnmaddps 0x3a54
-#define MN_vaddps 0x3a5e
+#define MN_vhaddps 0x3a85
+#define MN_v4fmaddps 0x3a8d
+#define MN_vfmaddps 0x3a97
+#define MN_v4fnmaddps 0x3aa0
+#define MN_vfnmaddps 0x3aab
+#define MN_vaddps 0x3ab5
 #define MN_andps (MN_vexpandps + 4)
-#define MN_vexpandps 0x3a65
-#define MN_vandps 0x3a6f
+#define MN_vexpandps 0x3abc
+#define MN_vandps 0x3ac6
 #define MN_blendps (MN_vblendps + 1)
-#define MN_vblendps 0x3a76
+#define MN_vblendps 0x3acd
 #define MN_roundps (MN_vroundps + 1)
-#define MN_vroundps 0x3a7f
-#define MN_vgatherdps 0x3a88
-#define MN_vscatterdps 0x3a93
+#define MN_vroundps 0x3ad6
+#define MN_vgatherdps 0x3adf
+#define MN_vscatterdps 0x3aea
 #define MN_cmpunordps (MN_vcmpunordps + 1)
-#define MN_vcmpunordps 0x3a9f
+#define MN_vcmpunordps 0x3af6
 #define MN_cmpordps (MN_vcmpordps + 1)
-#define MN_vcmpordps 0x3aab
-#define MN_vreduceps 0x3ab5
-#define MN_vrangeps 0x3abf
-#define MN_vcmpngeps 0x3ac8
-#define MN_vcmpgeps 0x3ad2
-#define MN_vrndscaleps 0x3adb
+#define MN_vcmpordps 0x3b02
+#define MN_vreduceps 0x3b0c
+#define MN_vrangeps 0x3b16
+#define MN_vcmpngeps 0x3b1f
+#define MN_vcmpgeps 0x3b29
+#define MN_vrndscaleps 0x3b32
 #define MN_cmpnleps (MN_vcmpnleps + 1)
-#define MN_vcmpnleps 0x3ae7
+#define MN_vcmpnleps 0x3b3e
 #define MN_cmpleps (MN_vcmpleps + 1)
-#define MN_vcmpleps 0x3af1
-#define MN_vcmpfalseps 0x3afa
-#define MN_vcmptrueps 0x3b06
-#define MN_vscalefps 0x3b11
+#define MN_vcmpleps 0x3b48
+#define MN_vcmpfalseps 0x3b51
+#define MN_vcmptrueps 0x3b5d
+#define MN_vscalefps 0x3b68
 #define MN_shufps (MN_vshufps + 1)
-#define MN_vshufps 0x3b1b
+#define MN_vshufps 0x3b72
 #define MN_unpckhps (MN_vunpckhps + 1)
-#define MN_vunpckhps 0x3b23
+#define MN_vunpckhps 0x3b7a
 #define MN_movlhps (MN_vmovlhps + 1)
-#define MN_vmovlhps 0x3b2d
-#define MN_vdpphps 0x3b36
+#define MN_vmovlhps 0x3b84
+#define MN_vdpphps 0x3b8d
 #define MN_movhps (MN_vmovhps + 1)
-#define MN_vmovhps 0x3b3e
+#define MN_vmovhps 0x3b95
 #define MN_movmskps (MN_vmovmskps + 1)
-#define MN_vmovmskps 0x3b46
+#define MN_vmovmskps 0x3b9d
 #define MN_movhlps (MN_vmovhlps + 1)
-#define MN_vmovhlps 0x3b50
-#define MN_vpermilps 0x3b59
+#define MN_vmovhlps 0x3ba7
+#define MN_vpermilps 0x3bb0
 #define MN_unpcklps (MN_vunpcklps + 1)
-#define MN_vunpcklps 0x3b63
+#define MN_vunpcklps 0x3bba
 #define MN_mulps (MN_vmulps + 1)
-#define MN_vmulps 0x3b6d
+#define MN_vmulps 0x3bc4
 #define MN_movlps (MN_vmovlps + 1)
-#define MN_vmovlps 0x3b74
+#define MN_vmovlps 0x3bcb
 #define MN_cmps (MN_ccmps + 1)
-#define MN_ccmps 0x3b7c
-#define MN_vblendmps 0x3b82
-#define MN_vfixupimmps 0x3b8c
-#define MN_vpermps 0x3b98
+#define MN_ccmps 0x3bd3
+#define MN_vblendmps 0x3bd9
+#define MN_vfixupimmps 0x3be3
+#define MN_vpermps 0x3bef
 #define MN_andnps (MN_vandnps + 1)
-#define MN_vandnps 0x3ba0
+#define MN_vandnps 0x3bf7
 #define MN_minps (MN_vminps + 1)
-#define MN_vminps 0x3ba8
-#define MN_seamops 0x3baf
+#define MN_vminps 0x3bff
+#define MN_seamops 0x3c06
 #define MN_rcpps (MN_vrcpps + 1)
-#define MN_vrcpps 0x3bb7
+#define MN_vrcpps 0x3c0e
 #define MN_dpps (MN_vdpps + 1)
-#define MN_vdpps 0x3bbe
+#define MN_vdpps 0x3c15
 #define MN_cmpps (MN_vcmpps + 1)
-#define MN_vcmpps 0x3bc4
-#define MN_vgetexpps 0x3bcb
-#define MN_vgatherpf0qps 0x3bd5
-#define MN_vscatterpf0qps 0x3be3
-#define MN_vgatherpf1qps 0x3bf2
-#define MN_vscatterpf1qps 0x3c00
-#define MN_vcmpunord_qps 0x3c0f
-#define MN_vcmpord_qps 0x3c1d
+#define MN_vcmpps 0x3c1b
+#define MN_vgetexpps 0x3c22
+#define MN_vgatherpf0qps 0x3c2c
+#define MN_vscatterpf0qps 0x3c3a
+#define MN_vgatherpf1qps 0x3c49
+#define MN_vscatterpf1qps 0x3c57
+#define MN_vcmpunord_qps 0x3c66
+#define MN_vcmpord_qps 0x3c74
 #define MN_cmpneqps (MN_vcmpneqps + 1)
-#define MN_vcmpneqps 0x3c29
+#define MN_vcmpneqps 0x3c80
 #define MN_cmpeqps (MN_vcmpeqps + 1)
-#define MN_vcmpeqps 0x3c33
-#define MN_vcmpge_oqps 0x3c3c
-#define MN_vcmple_oqps 0x3c48
-#define MN_vcmpfalse_oqps 0x3c54
-#define MN_vcmpneq_oqps 0x3c63
-#define MN_vcmpeq_oqps 0x3c70
-#define MN_vcmpgt_oqps 0x3c7c
-#define MN_vcmplt_oqps 0x3c88
-#define MN_vgatherqps 0x3c94
-#define MN_vscatterqps 0x3c9f
-#define MN_vcmpnge_uqps 0x3cab
-#define MN_vcmpnle_uqps 0x3cb8
-#define MN_vcmptrue_uqps 0x3cc5
-#define MN_vcmpneq_uqps 0x3cd3
-#define MN_vcmpeq_uqps 0x3ce0
-#define MN_vcmpngt_uqps 0x3cec
-#define MN_vcmpnlt_uqps 0x3cf9
+#define MN_vcmpeqps 0x3c8a
+#define MN_vcmpge_oqps 0x3c93
+#define MN_vcmple_oqps 0x3c9f
+#define MN_vcmpfalse_oqps 0x3cab
+#define MN_vcmpneq_oqps 0x3cba
+#define MN_vcmpeq_oqps 0x3cc7
+#define MN_vcmpgt_oqps 0x3cd3
+#define MN_vcmplt_oqps 0x3cdf
+#define MN_vgatherqps 0x3ceb
+#define MN_vscatterqps 0x3cf6
+#define MN_vcmpnge_uqps 0x3d02
+#define MN_vcmpnle_uqps 0x3d0f
+#define MN_vcmptrue_uqps 0x3d1c
+#define MN_vcmpneq_uqps 0x3d2a
+#define MN_vcmpeq_uqps 0x3d37
+#define MN_vcmpngt_uqps 0x3d43
+#define MN_vcmpnlt_uqps 0x3d50
 #define MN_orps (MN_vorps + 1)
-#define MN_vorps 0x3d06
+#define MN_vorps 0x3d5d
 #define MN_xorps (MN_vxorps + 1)
-#define MN_vxorps 0x3d0c
-#define MN_vcmpunord_sps 0x3d13
-#define MN_vcmpord_sps 0x3d21
-#define MN_vcmpge_osps 0x3d2d
-#define MN_vcmple_osps 0x3d39
-#define MN_vcmpfalse_osps 0x3d45
-#define MN_vcmpneq_osps 0x3d54
-#define MN_vcmpeq_osps 0x3d61
-#define MN_vcmpgt_osps 0x3d6d
-#define MN_vcmplt_osps 0x3d79
-#define MN_vfpclassps 0x3d85
-#define MN_vcompressps 0x3d90
-#define MN_vcmpnge_usps 0x3d9c
-#define MN_vcmpnle_usps 0x3da9
-#define MN_vcmptrue_usps 0x3db6
-#define MN_vcmpneq_usps 0x3dc4
-#define MN_vcmpeq_usps 0x3dd1
-#define MN_vcmpngt_usps 0x3ddd
-#define MN_vcmpnlt_usps 0x3dea
+#define MN_vxorps 0x3d63
+#define MN_vcmpunord_sps 0x3d6a
+#define MN_vcmpord_sps 0x3d78
+#define MN_vcmpge_osps 0x3d84
+#define MN_vcmple_osps 0x3d90
+#define MN_vcmpfalse_osps 0x3d9c
+#define MN_vcmpneq_osps 0x3dab
+#define MN_vcmpeq_osps 0x3db8
+#define MN_vcmpgt_osps 0x3dc4
+#define MN_vcmplt_osps 0x3dd0
+#define MN_vfpclassps 0x3ddc
+#define MN_vcompressps 0x3de7
+#define MN_vcmpnge_usps 0x3df3
+#define MN_vcmpnle_usps 0x3e00
+#define MN_vcmptrue_usps 0x3e0d
+#define MN_vcmpneq_usps 0x3e1b
+#define MN_vcmpeq_usps 0x3e28
+#define MN_vcmpngt_usps 0x3e34
+#define MN_vcmpnlt_usps 0x3e41
 #define MN_extractps (MN_vextractps + 1)
-#define MN_vextractps 0x3df7
-#define MN_vcmpngtps 0x3e02
-#define MN_vcmpgtps 0x3e0c
+#define MN_vextractps 0x3e4e
+#define MN_vcmpngtps 0x3e59
+#define MN_vcmpgtps 0x3e63
 #define MN_cmpnltps (MN_vcmpnltps + 1)
-#define MN_vcmpnltps 0x3e15
+#define MN_vcmpnltps 0x3e6c
 #define MN_cmpltps (MN_vcmpltps + 1)
-#define MN_vcmpltps 0x3e1f
-#define MN_vgetmantps 0x3e28
+#define MN_vcmpltps 0x3e76
+#define MN_vgetmantps 0x3e7f
 #define MN_movntps (MN_vmovntps + 1)
-#define MN_vmovntps 0x3e33
+#define MN_vmovntps 0x3e8a
 #define MN_insertps (MN_vinsertps + 1)
-#define MN_vinsertps 0x3e3c
+#define MN_vinsertps 0x3e93
 #define MN_sqrtps (MN_rsqrtps + 1)
 #define MN_rsqrtps (MN_vrsqrtps + 1)
-#define MN_vrsqrtps 0x3e46
-#define MN_vsqrtps 0x3e4f
-#define MN_vtestps 0x3e57
+#define MN_vrsqrtps 0x3e9d
+#define MN_vsqrtps 0x3ea6
+#define MN_vtestps 0x3eae
 #define MN_movups (MN_vmovups + 1)
-#define MN_vmovups 0x3e5f
+#define MN_vmovups 0x3eb6
 #define MN_blendvps (MN_vblendvps + 1)
-#define MN_vblendvps 0x3e67
+#define MN_vblendvps 0x3ebe
 #define MN_divps (MN_vdivps + 1)
-#define MN_vdivps 0x3e71
-#define MN_vmaskmovps 0x3e78
-#define MN_maxps (MN_vmaxps + 1)
-#define MN_vmaxps 0x3e83
-#define MN_vfrczps 0x3e8a
-#define MN_vcvttpd2dqs 0x3e92
-#define MN_vcvttps2dqs 0x3e9e
-#define MN_vcvttpd2udqs 0x3eaa
-#define MN_vcvttps2udqs 0x3eb7
-#define MN_vcvttpd2qqs 0x3ec4
-#define MN_vcvttps2qqs 0x3ed0
-#define MN_vcvttpd2uqqs 0x3edc
-#define MN_vcvttps2uqqs 0x3ee9
-#define MN_xrstors 0x3ef6
+#define MN_vdivps 0x3ec8
+#define MN_vmaskmovps 0x3ecf
+#define MN_maxps (MN_vminmaxps + 4)
+#define MN_vminmaxps 0x3eda
+#define MN_vmaxps 0x3ee4
+#define MN_vfrczps 0x3eeb
+#define MN_vcvttpd2dqs 0x3ef3
+#define MN_vcvttps2dqs 0x3eff
+#define MN_vcvttpd2udqs 0x3f0b
+#define MN_vcvttps2udqs 0x3f18
+#define MN_vcvttpd2qqs 0x3f25
+#define MN_vcvttps2qqs 0x3f31
+#define MN_vcvttpd2uqqs 0x3f3d
+#define MN_vcvttps2uqqs 0x3f4a
+#define MN_xrstors 0x3f57
 #define MN_ss (MN_vfmsub231ss + 9)
-#define MN_vfmsub231ss 0x3efe
-#define MN_vfnmsub231ss 0x3f0a
-#define MN_vfmadd231ss 0x3f17
-#define MN_vfnmadd231ss 0x3f23
-#define MN_vfmsub132ss 0x3f30
-#define MN_vfnmsub132ss 0x3f3c
-#define MN_vfmadd132ss 0x3f49
-#define MN_vfnmadd132ss 0x3f55
+#define MN_vfmsub231ss 0x3f5f
+#define MN_vfnmsub231ss 0x3f6b
+#define MN_vfmadd231ss 0x3f78
+#define MN_vfnmadd231ss 0x3f84
+#define MN_vfmsub132ss 0x3f91
+#define MN_vfnmsub132ss 0x3f9d
+#define MN_vfmadd132ss 0x3faa
+#define MN_vfnmadd132ss 0x3fb6
 #define MN_cvtsd2ss (MN_vcvtsd2ss + 1)
-#define MN_vcvtsd2ss 0x3f62
-#define MN_vcvtsh2ss 0x3f6c
+#define MN_vcvtsd2ss 0x3fc3
+#define MN_vcvtsh2ss 0x3fcd
 #define MN_cvtsi2ss (MN_vcvtsi2ss + 1)
-#define MN_vcvtsi2ss 0x3f76
-#define MN_vcvtusi2ss 0x3f80
-#define MN_vfmsub213ss 0x3f8b
-#define MN_vfnmsub213ss 0x3f97
-#define MN_vfmadd213ss 0x3fa4
-#define MN_vfnmadd213ss 0x3fb0
-#define MN_vrcp14ss 0x3fbd
-#define MN_vrsqrt14ss 0x3fc6
-#define MN_vrcp28ss 0x3fd1
-#define MN_vrsqrt28ss 0x3fda
+#define MN_vcvtsi2ss 0x3fd7
+#define MN_vcvtusi2ss 0x3fe1
+#define MN_vfmsub213ss 0x3fec
+#define MN_vfnmsub213ss 0x3ff8
+#define MN_vfmadd213ss 0x4005
+#define MN_vfnmadd213ss 0x4011
+#define MN_vrcp14ss 0x401e
+#define MN_vrsqrt14ss 0x4027
+#define MN_vrcp28ss 0x4032
+#define MN_vrsqrt28ss 0x403b
 #define MN_subss (MN_vfmsubss + 3)
-#define MN_vfmsubss 0x3fe5
-#define MN_vfnmsubss 0x3fee
-#define MN_vsubss 0x3ff8
+#define MN_vfmsubss 0x4046
+#define MN_vfnmsubss 0x404f
+#define MN_vsubss 0x4059
 #define MN_addss (MN_v4fmaddss + 4)
-#define MN_v4fmaddss 0x3fff
-#define MN_vfmaddss 0x4009
-#define MN_v4fnmaddss 0x4012
-#define MN_vfnmaddss 0x401d
-#define MN_vaddss 0x4027
+#define MN_v4fmaddss 0x4060
+#define MN_vfmaddss 0x406a
+#define MN_v4fnmaddss 0x4073
+#define MN_vfnmaddss 0x407e
+#define MN_vaddss 0x4088
 #define MN_roundss (MN_vroundss + 1)
-#define MN_vroundss 0x402e
+#define MN_vroundss 0x408f
 #define MN_cmpunordss (MN_vcmpunordss + 1)
-#define MN_vcmpunordss 0x4037
+#define MN_vcmpunordss 0x4098
 #define MN_cmpordss (MN_vcmpordss + 1)
-#define MN_vcmpordss 0x4043
-#define MN_vreducess 0x404d
-#define MN_vrangess 0x4057
-#define MN_vcmpngess 0x4060
-#define MN_vcmpgess 0x406a
-#define MN_vrndscaless 0x4073
+#define MN_vcmpordss 0x40a4
+#define MN_vreducess 0x40ae
+#define MN_vrangess 0x40b8
+#define MN_vcmpngess 0x40c1
+#define MN_vcmpgess 0x40cb
+#define MN_vrndscaless 0x40d4
 #define MN_cmpnless (MN_vcmpnless + 1)
-#define MN_vcmpnless 0x407f
+#define MN_vcmpnless 0x40e0
 #define MN_cmpless (MN_vcmpless + 1)
-#define MN_vcmpless 0x4089
-#define MN_vcmpfalsess 0x4092
-#define MN_vcmptruess 0x409e
-#define MN_vscalefss 0x40a9
+#define MN_vcmpless 0x40ea
+#define MN_vcmpfalsess 0x40f3
+#define MN_vcmptruess 0x40ff
+#define MN_vscalefss 0x410a
 #define MN_comiss (MN_ucomiss + 1)
 #define MN_ucomiss (MN_vucomiss + 1)
-#define MN_vucomiss 0x40b3
-#define MN_vcomiss 0x40bc
+#define MN_vucomiss 0x4114
+#define MN_vcomiss 0x411d
 #define MN_lss (MN_mulss + 2)
 #define MN_mulss (MN_vmulss + 1)
-#define MN_vmulss 0x40c4
-#define MN_vfixupimmss 0x40cb
+#define MN_vmulss 0x4125
+#define MN_vfixupimmss 0x412c
 #define MN_minss (MN_vminss + 1)
-#define MN_vminss 0x40d7
+#define MN_vminss 0x4138
 #define MN_rcpss (MN_vrcpss + 1)
-#define MN_vrcpss 0x40de
+#define MN_vrcpss 0x413f
 #define MN_cmpss (MN_vcmpss + 1)
-#define MN_vcmpss 0x40e5
-#define MN_vgetexpss 0x40ec
-#define MN_vcmpunord_qss 0x40f6
-#define MN_vcmpord_qss 0x4104
+#define MN_vcmpss 0x4146
+#define MN_vgetexpss 0x414d
+#define MN_vcmpunord_qss 0x4157
+#define MN_vcmpord_qss 0x4165
 #define MN_cmpneqss (MN_vcmpneqss + 1)
-#define MN_vcmpneqss 0x4110
+#define MN_vcmpneqss 0x4171
 #define MN_cmpeqss (MN_vcmpeqss + 1)
-#define MN_vcmpeqss 0x411a
-#define MN_vcmpge_oqss 0x4123
-#define MN_vcmple_oqss 0x412f
-#define MN_vcmpfalse_oqss 0x413b
-#define MN_vcmpneq_oqss 0x414a
-#define MN_vcmpeq_oqss 0x4157
-#define MN_vcmpgt_oqss 0x4163
-#define MN_vcmplt_oqss 0x416f
-#define MN_vcmpnge_uqss 0x417b
-#define MN_vcmpnle_uqss 0x4188
-#define MN_vcmptrue_uqss 0x4195
-#define MN_vcmpneq_uqss 0x41a3
-#define MN_vcmpeq_uqss 0x41b0
-#define MN_vcmpngt_uqss 0x41bc
-#define MN_vcmpnlt_uqss 0x41c9
-#define MN_vcmpunord_sss 0x41d6
-#define MN_vcmpord_sss 0x41e4
-#define MN_vcmpge_osss 0x41f0
-#define MN_vcmple_osss 0x41fc
-#define MN_vcmpfalse_osss 0x4208
-#define MN_vcmpneq_osss 0x4217
-#define MN_vcmpeq_osss 0x4224
-#define MN_vcmpgt_osss 0x4230
-#define MN_vcmplt_osss 0x423c
-#define MN_vfpclassss 0x4248
-#define MN_vcmpnge_usss 0x4253
-#define MN_vcmpnle_usss 0x4260
-#define MN_vcmptrue_usss 0x426d
-#define MN_vcmpneq_usss 0x427b
-#define MN_vcmpeq_usss 0x4288
-#define MN_vcmpngt_usss 0x4294
-#define MN_vcmpnlt_usss 0x42a1
-#define MN_vcmpngtss 0x42ae
-#define MN_vcmpgtss 0x42b8
+#define MN_vcmpeqss 0x417b
+#define MN_vcmpge_oqss 0x4184
+#define MN_vcmple_oqss 0x4190
+#define MN_vcmpfalse_oqss 0x419c
+#define MN_vcmpneq_oqss 0x41ab
+#define MN_vcmpeq_oqss 0x41b8
+#define MN_vcmpgt_oqss 0x41c4
+#define MN_vcmplt_oqss 0x41d0
+#define MN_vcmpnge_uqss 0x41dc
+#define MN_vcmpnle_uqss 0x41e9
+#define MN_vcmptrue_uqss 0x41f6
+#define MN_vcmpneq_uqss 0x4204
+#define MN_vcmpeq_uqss 0x4211
+#define MN_vcmpngt_uqss 0x421d
+#define MN_vcmpnlt_uqss 0x422a
+#define MN_vcmpunord_sss 0x4237
+#define MN_vcmpord_sss 0x4245
+#define MN_vcmpge_osss 0x4251
+#define MN_vcmple_osss 0x425d
+#define MN_vcmpfalse_osss 0x4269
+#define MN_vcmpneq_osss 0x4278
+#define MN_vcmpeq_osss 0x4285
+#define MN_vcmpgt_osss 0x4291
+#define MN_vcmplt_osss 0x429d
+#define MN_vfpclassss 0x42a9
+#define MN_vcmpnge_usss 0x42b4
+#define MN_vcmpnle_usss 0x42c1
+#define MN_vcmptrue_usss 0x42ce
+#define MN_vcmpneq_usss 0x42dc
+#define MN_vcmpeq_usss 0x42e9
+#define MN_vcmpngt_usss 0x42f5
+#define MN_vcmpnlt_usss 0x4302
+#define MN_vcmpngtss 0x430f
+#define MN_vcmpgtss 0x4319
 #define MN_cmpnltss (MN_vcmpnltss + 1)
-#define MN_vcmpnltss 0x42c1
+#define MN_vcmpnltss 0x4322
 #define MN_cmpltss (MN_vcmpltss + 1)
-#define MN_vcmpltss 0x42cb
-#define MN_vgetmantss 0x42d4
-#define MN_movntss 0x42df
+#define MN_vcmpltss 0x432c
+#define MN_vgetmantss 0x4335
+#define MN_movntss 0x4340
 #define MN_sqrtss (MN_rsqrtss + 1)
 #define MN_rsqrtss (MN_vrsqrtss + 1)
-#define MN_vrsqrtss 0x42e7
-#define MN_vsqrtss 0x42f0
-#define MN_vbroadcastss 0x42f8
+#define MN_vrsqrtss 0x4348
+#define MN_vsqrtss 0x4351
+#define MN_vbroadcastss 0x4359
 #define MN_divss (MN_vdivss + 1)
-#define MN_vdivss 0x4305
+#define MN_vdivss 0x4366
 #define MN_movss (MN_vmovss + 1)
-#define MN_vmovss 0x430c
-#define MN_maxss (MN_vmaxss + 1)
-#define MN_vmaxss 0x4313
-#define MN_vfrczss 0x431a
-#define MN_bts 0x4322
-#define MN_erets 0x4326
-#define MN_sets 0x432c
-#define MN_clts 0x4331
-#define MN_ctests 0x4336
-#define MN_outs 0x433d
-#define MN_setzus 0x4342
+#define MN_vmovss 0x436d
+#define MN_maxss (MN_vminmaxss + 4)
+#define MN_vminmaxss 0x4374
+#define MN_vmaxss 0x437e
+#define MN_vucomxss 0x4385
+#define MN_vcomxss 0x438e
+#define MN_vfrczss 0x4396
+#define MN_bts 0x439e
+#define MN_erets 0x43a2
+#define MN_sets 0x43a8
+#define MN_clts 0x43ad
+#define MN_ctests 0x43b2
+#define MN_outs 0x43b9
+#define MN_setzus 0x43be
 #define MN_movs (MN_cmovs + 1)
 #define MN_cmovs (MN_cfcmovs + 2)
-#define MN_cfcmovs 0x4349
-#define MN_fldl2t 0x4351
-#define MN_xlat 0x4358
-#define MN_bt 0x435d
-#define MN_fxtract 0x4360
-#define MN_lgdt 0x4368
-#define MN_sgdt 0x436d
-#define MN_lidt 0x4372
-#define MN_sidt 0x4377
-#define MN_fldt 0x437c
-#define MN_lldt 0x4381
-#define MN_sldt 0x4386
+#define MN_cfcmovs 0x43c5
+#define MN_fldl2t 0x43cd
+#define MN_xlat 0x43d4
+#define MN_bt 0x43d9
+#define MN_fxtract 0x43dc
+#define MN_lgdt 0x43e4
+#define MN_sgdt 0x43e9
+#define MN_lidt 0x43ee
+#define MN_sidt 0x43f3
+#define MN_fldt 0x43f8
+#define MN_lldt 0x43fd
+#define MN_sldt 0x4402
 #define MN_ret (MN_iret + 1)
 #define MN_iret (MN_uiret + 1)
-#define MN_uiret 0x438b
-#define MN_lret 0x4391
-#define MN_seamret 0x4396
-#define MN_sysret 0x439e
-#define MN_hreset 0x43a5
-#define MN_pfcmpgt 0x43ac
-#define MN_ht 0x43b4
+#define MN_uiret 0x4407
+#define MN_lret 0x440d
+#define MN_seamret 0x4412
+#define MN_sysret 0x441a
+#define MN_hreset 0x4421
+#define MN_pfcmpgt 0x4428
+#define MN_ht 0x4430
 #define MN_wait (MN_fwait + 1)
-#define MN_fwait 0x43b7
+#define MN_fwait 0x4433
 #define MN_mwait (MN_umwait + 1)
-#define MN_umwait 0x43bd
-#define MN_mcommit 0x43c4
-#define MN_finit 0x43cc
-#define MN_skinit 0x43d2
-#define MN_fninit 0x43d9
-#define MN_vmgexit 0x43e0
-#define MN_sysexit 0x43e8
-#define MN_hlt 0x43f0
-#define MN_popcnt 0x43f4
-#define MN_lzcnt 0x43fb
-#define MN_tzcnt 0x4401
-#define MN_hnt 0x4407
+#define MN_umwait 0x4439
+#define MN_mcommit 0x4440
+#define MN_finit 0x4448
+#define MN_skinit 0x444e
+#define MN_fninit 0x4455
+#define MN_vmgexit 0x445c
+#define MN_sysexit 0x4464
+#define MN_hlt 0x446c
+#define MN_popcnt 0x4470
+#define MN_lzcnt 0x4477
+#define MN_tzcnt 0x447d
+#define MN_hnt 0x4483
 #define MN_int (MN_frndint + 4)
-#define MN_frndint 0x440b
-#define MN_not 0x4413
-#define MN_invept 0x4417
-#define MN_ccmpt 0x441e
-#define MN_xsaveopt 0x4424
-#define MN_clflushopt 0x442d
-#define MN_fstpt 0x4438
-#define MN_xabort 0x443e
-#define MN_fsqrt 0x4445
-#define MN_pfrsqrt 0x444b
+#define MN_frndint 0x4487
+#define MN_not 0x448f
+#define MN_invept 0x4493
+#define MN_ccmpt 0x449a
+#define MN_xsaveopt 0x44a0
+#define MN_clflushopt 0x44a9
+#define MN_fstpt 0x44b4
+#define MN_xabort 0x44ba
+#define MN_fsqrt 0x44c1
+#define MN_pfrsqrt 0x44c7
 #define MN_aesdeclast (MN_vaesdeclast + 1)
-#define MN_vaesdeclast 0x4453
+#define MN_vaesdeclast 0x44cf
 #define MN_aesenclast (MN_vaesenclast + 1)
-#define MN_vaesenclast 0x445f
+#define MN_vaesenclast 0x44db
 #define MN_test (MN_ptest + 1)
 #define MN_ptest (MN_vptest + 1)
-#define MN_vptest 0x446b
-#define MN_xtest 0x4472
-#define MN_fst 0x4478
-#define MN_fist 0x447c
-#define MN_rdmsrlist 0x4481
-#define MN_wrmsrlist 0x448b
+#define MN_vptest 0x44e7
+#define MN_xtest 0x44ee
+#define MN_fst 0x44f4
+#define MN_fist 0x44f8
+#define MN_rdmsrlist 0x44fd
+#define MN_wrmsrlist 0x4507
 #define MN_aeskeygenassist (MN_vaeskeygenassist + 1)
-#define MN_vaeskeygenassist 0x4495
-#define MN_vmptrst 0x44a6
-#define MN_ftst 0x44ae
-#define MN_rmpadjust 0x44b3
-#define MN_ctestt 0x44bd
-#define MN_out 0x44c4
-#define MN_pext 0x44c8
-#define MN_bndcu 0x44cd
-#define MN_enclu 0x44d3
-#define MN_fcmovnu 0x44d9
+#define MN_vaeskeygenassist 0x4511
+#define MN_vmptrst 0x4522
+#define MN_ftst 0x452a
+#define MN_rmpadjust 0x452f
+#define MN_ctestt 0x4539
+#define MN_out 0x4540
+#define MN_pext 0x4544
+#define MN_bndcu 0x4549
+#define MN_enclu 0x454f
+#define MN_fcmovnu 0x4555
 #define MN_lddqu (MN_vlddqu + 1)
-#define MN_vlddqu 0x44e1
+#define MN_vlddqu 0x455d
 #define MN_movdqu (MN_maskmovdqu + 4)
 #define MN_maskmovdqu (MN_vmaskmovdqu + 1)
-#define MN_vmaskmovdqu 0x44e8
-#define MN_vmovdqu 0x44f4
-#define MN_rdpkru 0x44fc
-#define MN_wrpkru 0x4503
-#define MN_rdpru 0x450a
-#define MN_eretu 0x4510
-#define MN_fcmovu 0x4516
-#define MN_imulzu 0x451d
-#define MN_xgetbv 0x4524
-#define MN_xsetbv 0x452b
+#define MN_vmaskmovdqu 0x4564
+#define MN_vmovdqu 0x4570
+#define MN_rdpkru 0x4578
+#define MN_wrpkru 0x457f
+#define MN_rdpru 0x4586
+#define MN_eretu 0x458c
+#define MN_fcmovu 0x4592
+#define MN_imulzu 0x4599
+#define MN_xgetbv 0x45a0
+#define MN_xsetbv 0x45a7
 #define MN_div (MN_fdiv + 1)
-#define MN_fdiv 0x4532
+#define MN_fdiv 0x45ae
 #define MN_idiv (MN_fidiv + 1)
-#define MN_fidiv 0x4537
-#define MN_enclv 0x453d
-#define MN_fldenv 0x4543
-#define MN_fstenv 0x454a
-#define MN_fnstenv 0x4551
+#define MN_fidiv 0x45b3
+#define MN_enclv 0x45b9
+#define MN_fldenv 0x45bf
+#define MN_fstenv 0x45c6
+#define MN_fnstenv 0x45cd
 #define MN_mov (MN_vpcmov + 3)
-#define MN_vpcmov 0x4559
-#define MN_bndmov 0x4560
-#define MN_smov 0x4567
-#define MN_rex_w 0x456c
-#define MN_vcvttph2w 0x4572
-#define MN_vcvtph2w 0x457c
-#define MN_vpermi2w 0x4585
-#define MN_vpmovm2w 0x458e
-#define MN_vpermt2w 0x4597
-#define MN_vpshaw 0x45a0
+#define MN_vpcmov 0x45d5
+#define MN_bndmov 0x45dc
+#define MN_smov 0x45e3
+#define MN_rex_w 0x45e8
+#define MN_vcvttph2w 0x45ee
+#define MN_vcvtph2w 0x45f8
+#define MN_vpermi2w 0x4601
+#define MN_vpmovm2w 0x460a
+#define MN_vpermt2w 0x4613
+#define MN_vpshaw 0x461c
 #define MN_psraw (MN_vpsraw + 1)
-#define MN_vpsraw 0x45a7
-#define MN_vphsubbw 0x45ae
-#define MN_cbw 0x45b7
+#define MN_vpsraw 0x4623
+#define MN_vphsubbw 0x462a
+#define MN_cbw 0x4633
 #define MN_psadbw (MN_vdbpsadbw + 3)
-#define MN_vdbpsadbw 0x45bb
+#define MN_vdbpsadbw 0x4637
 #define MN_mpsadbw (MN_vmpsadbw + 1)
-#define MN_vmpsadbw 0x45c5
-#define MN_vpsadbw 0x45ce
-#define MN_vphaddbw 0x45d6
+#define MN_vmpsadbw 0x4641
+#define MN_vpsadbw 0x464a
+#define MN_vphaddbw 0x4652
 #define MN_punpckhbw (MN_vpunpckhbw + 1)
-#define MN_vpunpckhbw 0x45df
-#define MN_kunpckbw 0x45ea
+#define MN_vpunpckhbw 0x465b
+#define MN_kunpckbw 0x4666
 #define MN_punpcklbw (MN_vpunpcklbw + 1)
-#define MN_vpunpcklbw 0x45f3
-#define MN_vphaddubw 0x45fe
+#define MN_vpunpcklbw 0x466f
+#define MN_vphaddubw 0x467a
 #define MN_phsubw (MN_vphsubw + 1)
-#define MN_vphsubw 0x4608
+#define MN_vphsubw 0x4684
 #define MN_psubw (MN_vpsubw + 1)
-#define MN_vpsubw 0x4610
+#define MN_vpsubw 0x468c
 #define MN_pmovsxbw (MN_vpmovsxbw + 1)
-#define MN_vpmovsxbw 0x4617
+#define MN_vpmovsxbw 0x4693
 #define MN_pmovzxbw (MN_vpmovzxbw + 1)
-#define MN_vpmovzxbw 0x4621
-#define MN_fldcw 0x462b
-#define MN_fstcw 0x4631
-#define MN_fnstcw 0x4637
+#define MN_vpmovzxbw 0x469d
+#define MN_fldcw 0x46a7
+#define MN_fstcw 0x46ad
+#define MN_fnstcw 0x46b3
 #define MN_phaddw (MN_vphaddw + 1)
-#define MN_vphaddw 0x463e
-#define MN_kaddw 0x4646
+#define MN_vphaddw 0x46ba
+#define MN_kaddw 0x46c2
 #define MN_paddw (MN_vpaddw + 1)
-#define MN_vpaddw 0x464c
-#define MN_vpshldw 0x4653
-#define MN_kandw 0x465b
-#define MN_vpexpandw 0x4661
+#define MN_vpaddw 0x46c8
+#define MN_vpshldw 0x46cf
+#define MN_kandw 0x46d7
+#define MN_vpexpandw 0x46dd
 #define MN_pblendw (MN_vpblendw + 1)
-#define MN_vpblendw 0x466b
-#define MN_vpshrdw 0x4674
+#define MN_vpblendw 0x46e7
+#define MN_vpshrdw 0x46f0
 #define MN_packssdw (MN_vpackssdw + 1)
-#define MN_vpackssdw 0x467c
+#define MN_vpackssdw 0x46f8
 #define MN_packusdw (MN_vpackusdw + 1)
-#define MN_vpackusdw 0x4686
-#define MN_vpmovusdw 0x4690
-#define MN_vpmovsdw 0x469a
-#define MN_vpmovdw 0x46a3
-#define MN_vpcomgew 0x46ab
-#define MN_vpcomlew 0x46b4
-#define MN_vpcmpnlew 0x46bd
-#define MN_vpcmplew 0x46c7
-#define MN_vpcomfalsew 0x46d0
-#define MN_vpcomtruew 0x46dc
-#define MN_pi2fw 0x46e7
-#define MN_pshufw 0x46ed
+#define MN_vpackusdw 0x4702
+#define MN_vpmovusdw 0x470c
+#define MN_vpmovsdw 0x4716
+#define MN_vpmovdw 0x471f
+#define MN_vpcomgew 0x4727
+#define MN_vpcomlew 0x4730
+#define MN_vpcmpnlew 0x4739
+#define MN_vpcmplew 0x4743
+#define MN_vpcomfalsew 0x474c
+#define MN_vpcomtruew 0x4758
+#define MN_pi2fw 0x4763
+#define MN_pshufw 0x4769
 #define MN_pavgw (MN_vpavgw + 1)
-#define MN_vpavgw 0x46f4
-#define MN_prefetchw 0x46fb
+#define MN_vpavgw 0x4770
+#define MN_prefetchw 0x4777
 #define MN_pshufhw (MN_vpshufhw + 1)
-#define MN_vpshufhw 0x4705
+#define MN_vpshufhw 0x4781
 #define MN_pmulhw (MN_vpmulhw + 1)
-#define MN_vpmulhw 0x470e
-#define MN_pf2iw 0x4716
+#define MN_vpmulhw 0x478a
+#define MN_pf2iw 0x4792
 #define MN_pshuflw (MN_vpshuflw + 1)
-#define MN_vpshuflw 0x471c
-#define MN_vpshlw 0x4725
+#define MN_vpshuflw 0x4798
+#define MN_vpshlw 0x47a1
 #define MN_psllw (MN_vpsllw + 1)
-#define MN_vpsllw 0x472c
+#define MN_vpsllw 0x47a8
 #define MN_pmullw (MN_vpmullw + 1)
-#define MN_vpmullw 0x4733
+#define MN_vpmullw 0x47af
 #define MN_psrlw (MN_vpsrlw + 1)
-#define MN_vpsrlw 0x473b
-#define MN_kshiftlw 0x4742
-#define MN_vpblendmw 0x474b
-#define MN_vptestnmw 0x4755
-#define MN_vpcomw 0x475f
-#define MN_vpermw 0x4766
-#define MN_vptestmw 0x476d
-#define MN_kandnw 0x4776
+#define MN_vpsrlw 0x47b7
+#define MN_kshiftlw 0x47be
+#define MN_vpblendmw 0x47c7
+#define MN_vptestnmw 0x47d1
+#define MN_vpcomw 0x47db
+#define MN_vpermw 0x47e2
+#define MN_vptestmw 0x47e9
+#define MN_kandnw 0x47f2
 #define MN_psignw (MN_vpsignw + 1)
-#define MN_vpsignw 0x477d
-#define MN_vpcmpw 0x4785
-#define MN_vpcomeqw 0x478c
-#define MN_vpcomneqw 0x4795
-#define MN_vpcmpneqw 0x479f
+#define MN_vpsignw 0x47f9
+#define MN_vpcmpw 0x4801
+#define MN_vpcomeqw 0x4808
+#define MN_vpcomneqw 0x4811
+#define MN_vpcmpneqw 0x481b
 #define MN_pcmpeqw (MN_vpcmpeqw + 1)
-#define MN_vpcmpeqw 0x47a9
-#define MN_vpmovusqw 0x47b2
-#define MN_vpmovsqw 0x47bc
-#define MN_vpmovqw 0x47c5
-#define MN_verw 0x47cd
-#define MN_pmulhrw 0x47d2
-#define MN_korw 0x47da
-#define MN_kxnorw 0x47df
-#define MN_kxorw 0x47e6
+#define MN_vpcmpeqw 0x4825
+#define MN_vpmovusqw 0x482e
+#define MN_vpmovsqw 0x4838
+#define MN_vpmovqw 0x4841
+#define MN_verw 0x4849
+#define MN_pmulhrw 0x484e
+#define MN_korw 0x4856
+#define MN_kxnorw 0x485b
+#define MN_kxorw 0x4862
 #define MN_pinsrw (MN_vpinsrw + 1)
-#define MN_vpinsrw 0x47ec
-#define MN_kshiftrw 0x47f4
+#define MN_vpinsrw 0x4868
+#define MN_kshiftrw 0x4870
 #define MN_pextrw (MN_vpextrw + 1)
-#define MN_vpextrw 0x47fd
+#define MN_vpextrw 0x4879
 #define MN_pabsw (MN_vpabsw + 1)
-#define MN_vpabsw 0x4805
+#define MN_vpabsw 0x4881
 #define MN_pmaddubsw (MN_vpmaddubsw + 1)
-#define MN_vpmaddubsw 0x480c
+#define MN_vpmaddubsw 0x4888
 #define MN_phsubsw (MN_vphsubsw + 1)
-#define MN_vphsubsw 0x4817
+#define MN_vphsubsw 0x4893
 #define MN_psubsw (MN_vpsubsw + 1)
-#define MN_vpsubsw 0x4820
+#define MN_vpsubsw 0x489c
 #define MN_phaddsw (MN_vphaddsw + 1)
-#define MN_vphaddsw 0x4828
+#define MN_vphaddsw 0x48a4
 #define MN_paddsw (MN_vpaddsw + 1)
-#define MN_vpaddsw 0x4831
-#define MN_lmsw 0x4839
-#define MN_smsw 0x483e
+#define MN_vpaddsw 0x48ad
+#define MN_lmsw 0x48b5
+#define MN_smsw 0x48ba
 #define MN_pminsw (MN_vpminsw + 1)
-#define MN_vpminsw 0x4843
+#define MN_vpminsw 0x48bf
 #define MN_pmulhrsw (MN_vpmulhrsw + 1)
-#define MN_vpmulhrsw 0x484b
-#define MN_vpcompressw 0x4855
-#define MN_fstsw 0x4861
-#define MN_fnstsw 0x4867
+#define MN_vpmulhrsw 0x48c7
+#define MN_vpcompressw 0x48d1
+#define MN_fstsw 0x48dd
+#define MN_fnstsw 0x48e3
 #define MN_psubusw (MN_vpsubusw + 1)
-#define MN_vpsubusw 0x486e
+#define MN_vpsubusw 0x48ea
 #define MN_paddusw (MN_vpaddusw + 1)
-#define MN_vpaddusw 0x4877
-#define MN_movsw 0x4880
+#define MN_vpaddusw 0x48f3
+#define MN_movsw 0x48fc
 #define MN_pmaxsw (MN_vpmaxsw + 1)
-#define MN_vpmaxsw 0x4886
-#define MN_cbtw 0x488e
-#define MN_vpcomgtw 0x4893
+#define MN_vpmaxsw 0x4902
+#define MN_cbtw 0x490a
+#define MN_vpcomgtw 0x490f
 #define MN_pcmpgtw (MN_vpcmpgtw + 1)
-#define MN_vpcmpgtw 0x489c
-#define MN_vpcomltw 0x48a5
-#define MN_vpcmpnltw 0x48ae
-#define MN_vpcmpltw 0x48b8
-#define MN_vpopcntw 0x48c1
-#define MN_knotw 0x48ca
-#define MN_vprotw 0x48d0
-#define MN_vpbroadcastw 0x48d7
-#define MN_ktestw 0x48e4
-#define MN_kortestw 0x48eb
-#define MN_vcvttph2uw 0x48f4
-#define MN_vcvtph2uw 0x48ff
-#define MN_vpcomgeuw 0x4909
-#define MN_vpcomleuw 0x4913
-#define MN_vpcmpnleuw 0x491d
-#define MN_vpcmpleuw 0x4928
-#define MN_vpcomfalseuw 0x4932
-#define MN_vpcomtrueuw 0x493f
+#define MN_vpcmpgtw 0x4918
+#define MN_vpcomltw 0x4921
+#define MN_vpcmpnltw 0x492a
+#define MN_vpcmpltw 0x4934
+#define MN_vpopcntw 0x493d
+#define MN_knotw 0x4946
+#define MN_vprotw 0x494c
+#define MN_vpbroadcastw 0x4953
+#define MN_ktestw 0x4960
+#define MN_kortestw 0x4967
+#define MN_vcvttph2uw 0x4970
+#define MN_vcvtph2uw 0x497b
+#define MN_vpcomgeuw 0x4985
+#define MN_vpcomleuw 0x498f
+#define MN_vpcmpnleuw 0x4999
+#define MN_vpcmpleuw 0x49a4
+#define MN_vpcomfalseuw 0x49ae
+#define MN_vpcomtrueuw 0x49bb
 #define MN_pmulhuw (MN_vpmulhuw + 1)
-#define MN_vpmulhuw 0x494b
-#define MN_vpcomuw 0x4954
+#define MN_vpmulhuw 0x49c7
+#define MN_vpcomuw 0x49d0
 #define MN_pminuw (MN_vpminuw + 1)
-#define MN_vpminuw 0x495c
-#define MN_vpcmpuw 0x4964
-#define MN_vpcomequw 0x496c
-#define MN_vpcomnequw 0x4976
-#define MN_vpcmpnequw 0x4981
-#define MN_vpcmpequw 0x498c
+#define MN_vpminuw 0x49d8
+#define MN_vpcmpuw 0x49e0
+#define MN_vpcomequw 0x49e8
+#define MN_vpcomnequw 0x49f2
+#define MN_vpcmpnequw 0x49fd
+#define MN_vpcmpequw 0x4a08
 #define MN_phminposuw (MN_vphminposuw + 1)
-#define MN_vphminposuw 0x4996
-#define MN_vpcomgtuw 0x49a2
-#define MN_vpcomltuw 0x49ac
-#define MN_vpcmpnltuw 0x49b6
-#define MN_vpcmpltuw 0x49c1
+#define MN_vphminposuw 0x4a12
+#define MN_vpcomgtuw 0x4a1e
+#define MN_vpcomltuw 0x4a28
+#define MN_vpcmpnltuw 0x4a32
+#define MN_vpcmpltuw 0x4a3d
 #define MN_pmaxuw (MN_vpmaxuw + 1)
-#define MN_vpmaxuw 0x49cb
-#define MN_vpsravw 0x49d3
-#define MN_vpshldvw 0x49db
-#define MN_vpshrdvw 0x49e4
-#define MN_vpsllvw 0x49ed
-#define MN_vpsrlvw 0x49f5
-#define MN_kmovw 0x49fd
-#define MN_vmovw 0x4a03
-#define MN_vpmacsww 0x4a09
-#define MN_vpmacssww 0x4a12
-#define MN_movzw 0x4a1c
-#define MN_rex_x 0x4a22
-#define MN_fyl2x 0x4a28
-#define MN_rex64x 0x4a2e
-#define MN_vcvtneps2bf16x 0x4a35
-#define MN_vfpclasspbf16x 0x4a44
-#define MN_vcvtneph2bf8x 0x4a53
-#define MN_vcvtneph2hf8x 0x4a61
-#define MN_pfmax 0x4a6f
-#define MN_adcx 0x4a75
-#define MN_bndldx 0x4a7a
-#define MN_vfpclasspdx 0x4a81
-#define MN_fclex 0x4a8d
-#define MN_fnclex 0x4a93
-#define MN_rex 0x4a9a
-#define MN_vcvtpd2phx 0x4a9e
-#define MN_vcvtdq2phx 0x4aa9
-#define MN_vcvtudq2phx 0x4ab4
-#define MN_vcvtqq2phx 0x4ac0
-#define MN_vcvtuqq2phx 0x4acb
-#define MN_vcvt2ps2phx 0x4ad7
-#define MN_vcvtps2phx 0x4ae3
-#define MN_vfpclassphx 0x4aee
-#define MN_shlx 0x4afa
-#define MN_mulx 0x4aff
-#define MN_adox 0x4b04
-#define MN_vcvttpd2dqx 0x4b09
-#define MN_vcvtpd2dqx 0x4b15
-#define MN_vcvttpd2udqx 0x4b20
-#define MN_vcvtpd2udqx 0x4b2d
-#define MN_rex_rx 0x4b39
-#define MN_sarx 0x4b40
-#define MN_shrx 0x4b45
-#define MN_rorx 0x4b4a
-#define MN_monitorx 0x4b4f
-#define MN_rex_wrx 0x4b58
-#define MN_vcvtneph2bf8sx 0x4b60
-#define MN_vcvtneph2hf8sx 0x4b6f
-#define MN_vcvtpd2psx 0x4b7e
-#define MN_vcvtph2psx 0x4b89
-#define MN_vcvtqq2psx 0x4b94
-#define MN_vcvtuqq2psx 0x4b9f
-#define MN_vfpclasspsx 0x4bab
-#define MN_vcvttpd2dqsx 0x4bb7
-#define MN_vcvttpd2udqsx 0x4bc4
-#define MN_movsx 0x4bd2
-#define MN_mwaitx 0x4bd8
-#define MN_bndstx 0x4bdf
-#define MN_rex_wx 0x4be6
-#define MN_rexx 0x4bed
-#define MN_vcvtps2phxx 0x4bf2
-#define MN_movzx 0x4bfe
-#define MN_rex64y 0x4c04
-#define MN_vcvtneps2bf16y 0x4c0b
-#define MN_vfpclasspbf16y 0x4c1a
-#define MN_vcvtneph2bf8y 0x4c29
-#define MN_vcvtneph2hf8y 0x4c37
-#define MN_vfpclasspdy 0x4c45
-#define MN_loadiwkey 0x4c51
-#define MN_vcvtpd2phy 0x4c5b
-#define MN_vcvtdq2phy 0x4c66
-#define MN_vcvtudq2phy 0x4c71
-#define MN_vcvtqq2phy 0x4c7d
-#define MN_vcvtuqq2phy 0x4c88
-#define MN_vfpclassphy 0x4c94
-#define MN_vcvttpd2dqy 0x4ca0
-#define MN_vcvtpd2dqy 0x4cac
-#define MN_vcvttpd2udqy 0x4cb7
-#define MN_vcvtpd2udqy 0x4cc4
-#define MN_rmpquery 0x4cd0
-#define MN_vcvtneph2bf8sy 0x4cd9
-#define MN_vcvtneph2hf8sy 0x4ce8
-#define MN_clrssbsy 0x4cf7
-#define MN_setssbsy 0x4d00
-#define MN_vcvtpd2psy 0x4d09
-#define MN_vcvtqq2psy 0x4d14
-#define MN_vcvtuqq2psy 0x4d1f
-#define MN_vfpclasspsy 0x4d2b
-#define MN_vcvttpd2dqsy 0x4d37
-#define MN_vcvttpd2udqsy 0x4d44
-#define MN_rex64xy 0x4d52
-#define MN_rexy 0x4d5a
-#define MN_vcvtps2phxy 0x4d5f
-#define MN_rexxy 0x4d6b
-#define MN_rex64z 0x4d71
-#define MN_vfpclasspbf16z 0x4d78
-#define MN_fldz 0x4d87
-#define MN_vfpclasspdz 0x4d8c
-#define MN_vcvtpd2phz 0x4d98
-#define MN_vcvtqq2phz 0x4da3
-#define MN_vcvtuqq2phz 0x4dae
-#define MN_vfpclassphz 0x4dba
-#define MN_jz 0x4dc6
-#define MN_jnz 0x4dc9
-#define MN_repnz 0x4dcd
-#define MN_ccmpnz 0x4dd3
-#define MN_loopnz 0x4dda
-#define MN_setnz 0x4de1
-#define MN_ctestnz 0x4de7
-#define MN_setzunz 0x4def
+#define MN_vpmaxuw 0x4a47
+#define MN_vpsravw 0x4a4f
+#define MN_vpshldvw 0x4a57
+#define MN_vpshrdvw 0x4a60
+#define MN_vpsllvw 0x4a69
+#define MN_vpsrlvw 0x4a71
+#define MN_kmovw 0x4a79
+#define MN_vmovw 0x4a7f
+#define MN_vpmacsww 0x4a85
+#define MN_vpmacssww 0x4a8e
+#define MN_movzw 0x4a98
+#define MN_rex_x 0x4a9e
+#define MN_fyl2x 0x4aa4
+#define MN_rex64x 0x4aaa
+#define MN_vcvtneps2bf16x 0x4ab1
+#define MN_vfpclasspbf16x 0x4ac0
+#define MN_vcvtneph2bf8x 0x4acf
+#define MN_vcvtneph2hf8x 0x4add
+#define MN_pfmax 0x4aeb
+#define MN_adcx 0x4af1
+#define MN_bndldx 0x4af6
+#define MN_vfpclasspdx 0x4afd
+#define MN_fclex 0x4b09
+#define MN_fnclex 0x4b0f
+#define MN_rex 0x4b16
+#define MN_vcvtpd2phx 0x4b1a
+#define MN_vcvtdq2phx 0x4b25
+#define MN_vcvtudq2phx 0x4b30
+#define MN_vcvtqq2phx 0x4b3c
+#define MN_vcvtuqq2phx 0x4b47
+#define MN_vcvt2ps2phx 0x4b53
+#define MN_vcvtps2phx 0x4b5f
+#define MN_vfpclassphx 0x4b6a
+#define MN_shlx 0x4b76
+#define MN_mulx 0x4b7b
+#define MN_adox 0x4b80
+#define MN_vcvttpd2dqx 0x4b85
+#define MN_vcvtpd2dqx 0x4b91
+#define MN_vcvttpd2udqx 0x4b9c
+#define MN_vcvtpd2udqx 0x4ba9
+#define MN_rex_rx 0x4bb5
+#define MN_sarx 0x4bbc
+#define MN_shrx 0x4bc1
+#define MN_rorx 0x4bc6
+#define MN_monitorx 0x4bcb
+#define MN_rex_wrx 0x4bd4
+#define MN_vcvtneph2bf8sx 0x4bdc
+#define MN_vcvtneph2hf8sx 0x4beb
+#define MN_vcvtpd2psx 0x4bfa
+#define MN_vcvtph2psx 0x4c05
+#define MN_vcvtqq2psx 0x4c10
+#define MN_vcvtuqq2psx 0x4c1b
+#define MN_vfpclasspsx 0x4c27
+#define MN_vcvttpd2dqsx 0x4c33
+#define MN_vcvttpd2udqsx 0x4c40
+#define MN_movsx 0x4c4e
+#define MN_mwaitx 0x4c54
+#define MN_bndstx 0x4c5b
+#define MN_rex_wx 0x4c62
+#define MN_rexx 0x4c69
+#define MN_vcvtps2phxx 0x4c6e
+#define MN_movzx 0x4c7a
+#define MN_rex64y 0x4c80
+#define MN_vcvtneps2bf16y 0x4c87
+#define MN_vfpclasspbf16y 0x4c96
+#define MN_vcvtneph2bf8y 0x4ca5
+#define MN_vcvtneph2hf8y 0x4cb3
+#define MN_vfpclasspdy 0x4cc1
+#define MN_loadiwkey 0x4ccd
+#define MN_vcvtpd2phy 0x4cd7
+#define MN_vcvtdq2phy 0x4ce2
+#define MN_vcvtudq2phy 0x4ced
+#define MN_vcvtqq2phy 0x4cf9
+#define MN_vcvtuqq2phy 0x4d04
+#define MN_vfpclassphy 0x4d10
+#define MN_vcvttpd2dqy 0x4d1c
+#define MN_vcvtpd2dqy 0x4d28
+#define MN_vcvttpd2udqy 0x4d33
+#define MN_vcvtpd2udqy 0x4d40
+#define MN_rmpquery 0x4d4c
+#define MN_vcvtneph2bf8sy 0x4d55
+#define MN_vcvtneph2hf8sy 0x4d64
+#define MN_clrssbsy 0x4d73
+#define MN_setssbsy 0x4d7c
+#define MN_vcvtpd2psy 0x4d85
+#define MN_vcvtqq2psy 0x4d90
+#define MN_vcvtuqq2psy 0x4d9b
+#define MN_vfpclasspsy 0x4da7
+#define MN_vcvttpd2dqsy 0x4db3
+#define MN_vcvttpd2udqsy 0x4dc0
+#define MN_rex64xy 0x4dce
+#define MN_rexy 0x4dd6
+#define MN_vcvtps2phxy 0x4ddb
+#define MN_rexxy 0x4de7
+#define MN_rex64z 0x4ded
+#define MN_vfpclasspbf16z 0x4df4
+#define MN_fldz 0x4e03
+#define MN_vfpclasspdz 0x4e08
+#define MN_vcvtpd2phz 0x4e14
+#define MN_vcvtqq2phz 0x4e1f
+#define MN_vcvtuqq2phz 0x4e2a
+#define MN_vfpclassphz 0x4e36
+#define MN_jz 0x4e42
+#define MN_jnz 0x4e45
+#define MN_repnz 0x4e49
+#define MN_ccmpnz 0x4e4f
+#define MN_loopnz 0x4e56
+#define MN_setnz 0x4e5d
+#define MN_ctestnz 0x4e63
+#define MN_setzunz 0x4e6b
 #define MN_cmovnz (MN_cfcmovnz + 2)
-#define MN_cfcmovnz 0x4df7
-#define MN_repz 0x4e00
-#define MN_ccmpz 0x4e05
-#define MN_loopz 0x4e0b
-#define MN_vfpclasspsz 0x4e11
-#define MN_setz 0x4e1d
-#define MN_ctestz 0x4e22
-#define MN_setzuz 0x4e29
+#define MN_cfcmovnz 0x4e73
+#define MN_repz 0x4e7c
+#define MN_ccmpz 0x4e81
+#define MN_loopz 0x4e87
+#define MN_vfpclasspsz 0x4e8d
+#define MN_setz 0x4e99
+#define MN_ctestz 0x4e9e
+#define MN_setzuz 0x4ea5
 #define MN_cmovz (MN_cfcmovz + 2)
-#define MN_cfcmovz 0x4e30
-#define MN_rex64xz 0x4e38
-#define MN_jecxz 0x4e40
-#define MN_jcxz 0x4e46
-#define MN_jrcxz 0x4e4b
-#define MN_rexz 0x4e51
-#define MN_rexxz 0x4e56
-#define MN_rex64yz 0x4e5c
-#define MN_rex64xyz 0x4e64
-#define MN_rexyz 0x4e6d
-#define MN_rexxyz 0x4e73
-#define MN__disp32_ 0x4e7a
-#define MN__rex2_ 0x4e83
-#define MN__vex2_ 0x4e8a
-#define MN__vex3_ 0x4e91
-#define MN__disp16_ 0x4e98
-#define MN__disp8_ 0x4ea1
-#define MN__load_ 0x4ea9
-#define MN__store_ 0x4eb0
-#define MN__nooptimize_ 0x4eb8
-#define MN__nf_ 0x4ec5
-#define MN__rex_ 0x4eca
-#define MN__evex_ 0x4ed0
-#define MN__vex_ 0x4ed7
-#define MN__insn 0x4edd
+#define MN_cfcmovz 0x4eac
+#define MN_rex64xz 0x4eb4
+#define MN_jecxz 0x4ebc
+#define MN_jcxz 0x4ec2
+#define MN_jrcxz 0x4ec7
+#define MN_rexz 0x4ecd
+#define MN_rexxz 0x4ed2
+#define MN_rex64yz 0x4ed8
+#define MN_rex64xyz 0x4ee0
+#define MN_rexyz 0x4ee9
+#define MN_rexxyz 0x4eef
+#define MN__disp32_ 0x4ef6
+#define MN__rex2_ 0x4eff
+#define MN__vex2_ 0x4f06
+#define MN__vex3_ 0x4f0d
+#define MN__disp16_ 0x4f14
+#define MN__disp8_ 0x4f1d
+#define MN__load_ 0x4f25
+#define MN__store_ 0x4f2c
+#define MN__nooptimize_ 0x4f34
+#define MN__nf_ 0x4f41
+#define MN__rex_ 0x4f46
+#define MN__evex_ 0x4f4c
+#define MN__vex_ 0x4f53
+#define MN__insn 0x4f59
index 5800e5811f45452a472fdbc2dc1fde6c7f0a2c65..666ad99563a813f085a7e1b92169f330c0248ff1 100644 (file)
@@ -3514,4 +3514,15 @@ vcvttss2<sign>sis, 0xf3<sign:opc>, AVX10_2, Modrm|Map5|EVexLIG|Disp8MemShift=2|N
 
 <sign>
 
+vminmaxpbf16, 0xf252, AVX10_2, Modrm|Masking|Space0F3A|Src1VVVV|VexW0|Disp8ShiftVL|Broadcast|CheckOperandSize|NoSuf, { Imm8, RegXMM|RegYMM|RegZMM|Word|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM }
+vminmaxp<sdh>, 0x<sdh:pfx>52, AVX10_2, Modrm|Masking|Space0F3A|<sdh:vexw>|Broadcast|Src1VVVV|Disp8ShiftVL|CheckOperandSize|NoSuf|SAE, { Imm8, RegXMM|RegYMM|RegZMM|<sdh:elem>|Unspecified|BaseIndex, RegXMM|RegYMM|RegZMM, RegXMM|RegYMM|RegZMM }
+vminmaxs<sdh>, 0x<sdh:pfx>53, AVX10_2, Modrm|EVexLIG|Masking|Space0F3A|Src1VVVV|<sdh:vexw>|Disp8MemShift|CheckOperandSize|NoSuf|SAE, { Imm8, RegXMM|<sdh:elem>|Unspecified|BaseIndex, RegXMM, RegXMM }
+
+vmovd, 0xf37e, AVX10_2, Load|Modrm|EVex128|VexW0|Space0F|Disp8MemShift=2|NoSuf, { Dword|Unspecified|BaseIndex|RegXMM, RegXMM }
+vmovd, 0x66d6, AVX10_2, Modrm|EVex128|VexW0|Space0F|Disp8MemShift=2|NoSuf, { RegXMM, Dword|Unspecified|BaseIndex|RegXMM }
+vmovw, 0xf36e, AVX10_2, D|Modrm|EVex128|VexW0|Map5|Disp8MemShift=1|NoSuf, { Word|Unspecified|BaseIndex|RegXMM, RegXMM }
+
+vcomxs<sdh>, 0x<sdh:spfx>2f, AVX10_2, Modrm|EVexLIG|<sdh:spc1>|<sdh:vexw>|Disp8MemShift|NoSuf|SAE, { RegXMM|<sdh:elem>|Unspecified|BaseIndex, RegXMM }
+vucomxs<sdh>, 0x<sdh:spfx>2e, AVX10_2, Modrm|EVexLIG|<sdh:spc1>|<sdh:vexw>|Disp8MemShift|NoSuf|SAE, { RegXMM|<sdh:elem>|Unspecified|BaseIndex, RegXMM }
+
 // AVX10.2 instructions end.
index 93146d962630e32b6aca5e91b7ad537dc559c517..ae7c521c1c862dae4bea1dffe9b7e46229e41ac3 100644 (file)
@@ -26238,6 +26238,26 @@ static const insn_template i386_optab[] =
          1, 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_vmovd, 0x7e, 2, SPACE_0F, None,
+    { 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 1, 2, 0, 0, 2, 0, 0, 0, 0, 2, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vmovd, 0xd6, 2, SPACE_0F, None,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 1, 1, 0, 0, 2, 0, 0, 0, 0, 2, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } } } },
   { MN_vmovddup, 0x12, 2, SPACE_0F, None,
     { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
       0, 0, 0, 1, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
@@ -45350,6 +45370,16 @@ static const insn_template i386_optab[] =
          1, 0, 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 } } } },
+  { MN_vmovw, 0x6e, 2, SPACE_MAP5, None,
+    { 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 1, 2, 0, 0, 2, 0, 0, 0, 0, 1, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
   { MN_vrcpph, 0x4c, 2, SPACE_MAP6, None,
     { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
       0, 0, 0, 0, 0, 1, 1, 0, 0, 5, 1, 2, 0, 0, 7, 0, 0, 0, 0, 0,
@@ -47150,6 +47180,164 @@ static const insn_template i386_optab[] =
          1, 0, 0, 0, 1, 0 } },
       { { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0,
          0, 0, 0, 0, 0, 0 } } } },
+  { MN_vminmaxpbf16, 0x52, 4, SPACE_0F3A, None,
+    { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 1, 1, 3, 0, 0, 5, 1, 2, 0, 0, 7, 0, 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, 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, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0,
+         1, 1, 1, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } } } },
+  { MN_vminmaxps, 0x52, 4, SPACE_0F3A, None,
+    { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 1, 1, 1, 0, 0, 5, 1, 3, 0, 1, 7, 0, 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, 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, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0,
+         1, 1, 1, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } } } },
+  { MN_vminmaxpd, 0x52, 4, SPACE_0F3A, None,
+    { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 1, 2, 1, 0, 0, 5, 1, 4, 0, 1, 7, 0, 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, 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, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0,
+         1, 1, 1, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } } } },
+  { MN_vminmaxph, 0x52, 4, SPACE_0F3A, None,
+    { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 1, 1, 0, 0, 0, 5, 1, 2, 0, 1, 7, 0, 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, 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, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0,
+         1, 1, 1, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 1, 1, 0, 0, 0 } } } },
+  { MN_vminmaxss, 0x53, 4, SPACE_0F3A, None,
+    { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 1, 1, 1, 0, 0, 4, 1, 0, 0, 1, 2, 0, 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, 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, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vminmaxsd, 0x53, 4, SPACE_0F3A, None,
+    { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 1, 2, 1, 0, 0, 4, 1, 0, 0, 1, 3, 0, 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, 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, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vminmaxsh, 0x53, 4, SPACE_0F3A, None,
+    { 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 1, 1, 0, 0, 0, 4, 1, 0, 0, 1, 1, 0, 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, 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, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vcomxss, 0x2f, 2, SPACE_0F, None,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 1, 2, 0, 0, 4, 0, 0, 0, 1, 2, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vcomxsd, 0x2f, 2, SPACE_0F, None,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 2, 3, 0, 0, 4, 0, 0, 0, 1, 3, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vcomxsh, 0x2f, 2, SPACE_MAP5, None,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 1, 2, 0, 0, 4, 0, 0, 0, 1, 1, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vucomxss, 0x2e, 2, SPACE_0F, None,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 1, 2, 0, 0, 4, 0, 0, 0, 1, 2, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vucomxsd, 0x2e, 2, SPACE_0F, None,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 2, 3, 0, 0, 4, 0, 0, 0, 1, 3, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
+  { MN_vucomxsh, 0x2e, 2, SPACE_MAP5, None,
+    { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 1, 2, 0, 0, 4, 0, 0, 0, 1, 1, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0 } },
+    { { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0,
+         1, 0, 0, 0, 1, 0 } },
+      { { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         1, 0, 0, 0, 0, 0 } } } },
 };
 
 /* i386 opcode sets table.  */
@@ -47301,182 +47489,183 @@ static const i386_op_off_t i386_op_sets[] =
   2538, 2540, 2542, 2544, 2548, 2554, 2556, 2561,
   2563, 2565, 2567, 2569, 2571, 2572, 2573, 2574,
   2576, 2577, 2578, 2579, 2580, 2581, 2583, 2584,
-  2585, 2586, 2588, 2590, 2592, 2594, 2596, 2600,
-  2601, 2602, 2604, 2608, 2612, 2614, 2618, 2622,
-  2623, 2624, 2626, 2628, 2630, 2632, 2637, 2641,
-  2645, 2647, 2649, 2651, 2653, 2655, 2657, 2659,
-  2661, 2663, 2665, 2667, 2669, 2671, 2673, 2675,
-  2677, 2679, 2681, 2683, 2685, 2687, 2688, 2689,
-  2691, 2693, 2694, 2695, 2698, 2701, 2704, 2707,
-  2709, 2711, 2713, 2715, 2717, 2719, 2720, 2721,
-  2722, 2724, 2728, 2730, 2732, 2738, 2742, 2743,
-  2744, 2745, 2746, 2747, 2748, 2749, 2753, 2755,
-  2757, 2761, 2763, 2765, 2767, 2769, 2771, 2773,
-  2775, 2777, 2779, 2781, 2783, 2785, 2787, 2789,
-  2790, 2793, 2796, 2799, 2802, 2807, 2812, 2817,
-  2822, 2825, 2828, 2831, 2834, 2836, 2838, 2840,
-  2842, 2844, 2846, 2848, 2849, 2851, 2853, 2855,
-  2857, 2859, 2860, 2861, 2862, 2866, 2870, 2872,
-  2876, 2880, 2884, 2888, 2892, 2894, 2898, 2900,
-  2902, 2904, 2906, 2908, 2910, 2912, 2914, 2915,
-  2917, 2919, 2921, 2923, 2925, 2927, 2929, 2931,
-  2932, 2933, 2934, 2935, 2936, 2937, 2938, 2939,
-  2940, 2942, 2944, 2946, 2948, 2950, 2952, 2953,
-  2954, 2955, 2957, 2959, 2961, 2963, 2965, 2967,
-  2968, 2969, 2970, 2971, 2974, 2977, 2979, 2982,
-  2983, 2984, 2986, 2987, 2989, 2990, 2991, 2993,
-  2995, 2996, 2997, 2998, 2999, 3000, 3003, 3008,
-  3013, 3018, 3023, 3026, 3031, 3036, 3038, 3040,
-  3042, 3044, 3045, 3046, 3048, 3050, 3052, 3054,
-  3056, 3058, 3060, 3061, 3062, 3063, 3064, 3065,
-  3066, 3071, 3076, 3077, 3078, 3079, 3080, 3081,
-  3082, 3083, 3084, 3085, 3086, 3087, 3088, 3089,
-  3090, 3091, 3092, 3093, 3094, 3095, 3096, 3097,
-  3098, 3099, 3100, 3101, 3102, 3103, 3104, 3105,
-  3106, 3107, 3108, 3109, 3110, 3111, 3112, 3113,
-  3114, 3115, 3116, 3117, 3118, 3119, 3120, 3121,
-  3122, 3123, 3124, 3125, 3126, 3127, 3128, 3129,
-  3130, 3131, 3132, 3133, 3134, 3135, 3136, 3137,
-  3138, 3139, 3140, 3141, 3142, 3143, 3144, 3145,
-  3146, 3147, 3148, 3149, 3150, 3151, 3152, 3153,
-  3154, 3155, 3156, 3157, 3158, 3159, 3160, 3161,
-  3162, 3163, 3164, 3165, 3166, 3167, 3168, 3169,
-  3170, 3171, 3172, 3173, 3174, 3175, 3176, 3177,
-  3178, 3179, 3180, 3181, 3182, 3183, 3184, 3185,
-  3186, 3187, 3188, 3189, 3190, 3191, 3192, 3193,
-  3194, 3195, 3196, 3197, 3198, 3199, 3200, 3201,
-  3202, 3203, 3204, 3205, 3206, 3207, 3208, 3209,
-  3210, 3211, 3212, 3213, 3214, 3215, 3216, 3217,
-  3218, 3219, 3220, 3221, 3222, 3223, 3224, 3225,
-  3226, 3227, 3228, 3229, 3230, 3231, 3232, 3233,
-  3234, 3235, 3236, 3237, 3238, 3239, 3240, 3241,
-  3242, 3243, 3244, 3245, 3246, 3247, 3248, 3249,
-  3250, 3251, 3252, 3253, 3254, 3255, 3256, 3257,
-  3258, 3259, 3260, 3261, 3262, 3263, 3264, 3265,
-  3266, 3267, 3268, 3269, 3270, 3271, 3272, 3273,
-  3274, 3275, 3276, 3277, 3279, 3281, 3282, 3283,
-  3284, 3285, 3286, 3287, 3288, 3289, 3290, 3291,
-  3292, 3293, 3294, 3295, 3296, 3297, 3298, 3299,
-  3300, 3301, 3302, 3303, 3304, 3305, 3306, 3307,
-  3308, 3309, 3311, 3313, 3315, 3317, 3318, 3319,
-  3320, 3321, 3322, 3323, 3324, 3325, 3326, 3327,
-  3328, 3329, 3330, 3332, 3333, 3334, 3335, 3337,
-  3338, 3339, 3340, 3341, 3342, 3343, 3344, 3345,
-  3346, 3347, 3348, 3349, 3350, 3351, 3352, 3353,
-  3354, 3355, 3356, 3357, 3358, 3359, 3360, 3361,
-  3362, 3363, 3364, 3365, 3366, 3367, 3368, 3369,
-  3370, 3371, 3372, 3373, 3374, 3375, 3376, 3377,
-  3378, 3380, 3382, 3383, 3384, 3386, 3387, 3389,
-  3391, 3392, 3393, 3395, 3397, 3399, 3401, 3402,
-  3403, 3404, 3405, 3406, 3407, 3408, 3409, 3410,
-  3411, 3412, 3413, 3414, 3415, 3416, 3417, 3418,
-  3419, 3420, 3423, 3426, 3427, 3428, 3429, 3430,
-  3431, 3432, 3434, 3436, 3438, 3439, 3440, 3441,
-  3442, 3443, 3444, 3446, 3447, 3448, 3449, 3450,
-  3451, 3452, 3453, 3454, 3456, 3458, 3459, 3460,
-  3461, 3462, 3463, 3464, 3465, 3466, 3467, 3468,
-  3471, 3474, 3475, 3476, 3477, 3478, 3479, 3480,
-  3481, 3482, 3483, 3484, 3485, 3486, 3487, 3488,
-  3489, 3490, 3491, 3492, 3493, 3494, 3495, 3496,
-  3497, 3498, 3499, 3500, 3501, 3502, 3503, 3504,
-  3505, 3506, 3507, 3508, 3509, 3510, 3511, 3512,
-  3513, 3514, 3515, 3516, 3517, 3518, 3519, 3520,
-  3521, 3522, 3523, 3524, 3525, 3526, 3527, 3528,
-  3529, 3530, 3531, 3532, 3535, 3537, 3540, 3543,
-  3545, 3548, 3551, 3554, 3557, 3558, 3561, 3562,
-  3563, 3564, 3565, 3566, 3570, 3572, 3575, 3576,
-  3577, 3578, 3579, 3580, 3581, 3582, 3583, 3584,
-  3585, 3586, 3587, 3588, 3589, 3590, 3591, 3592,
-  3593, 3594, 3595, 3596, 3597, 3598, 3599, 3600,
-  3601, 3602, 3603, 3604, 3605, 3606, 3607, 3608,
-  3609, 3610, 3611, 3612, 3613, 3614, 3615, 3616,
-  3617, 3618, 3619, 3620, 3621, 3622, 3623, 3624,
-  3625, 3626, 3628, 3629, 3630, 3631, 3632, 3633,
-  3634, 3635, 3636, 3637, 3638, 3639, 3640, 3641,
-  3642, 3643, 3644, 3645, 3646, 3647, 3648, 3649,
-  3650, 3651, 3652, 3653, 3654, 3655, 3656, 3657,
-  3658, 3659, 3660, 3661, 3662, 3663, 3664, 3665,
-  3666, 3667, 3670, 3673, 3676, 3679, 3682, 3685,
-  3688, 3691, 3694, 3697, 3700, 3703, 3706, 3709,
-  3712, 3713, 3714, 3715, 3716, 3718, 3719, 3720,
-  3721, 3722, 3723, 3724, 3725, 3726, 3727, 3728,
-  3729, 3730, 3731, 3732, 3733, 3734, 3735, 3736,
-  3737, 3738, 3739, 3740, 3741, 3742, 3743, 3744,
-  3745, 3746, 3747, 3748, 3749, 3750, 3751, 3752,
-  3753, 3754, 3755, 3756, 3757, 3758, 3759, 3760,
-  3761, 3762, 3763, 3764, 3765, 3766, 3767, 3768,
-  3769, 3770, 3771, 3772, 3773, 3774, 3775, 3776,
-  3777, 3778, 3779, 3782, 3785, 3786, 3787, 3788,
-  3789, 3790, 3791, 3792, 3793, 3794, 3795, 3796,
-  3797, 3798, 3799, 3800, 3801, 3802, 3803, 3804,
-  3805, 3806, 3807, 3808, 3809, 3810, 3811, 3812,
-  3813, 3814, 3815, 3816, 3817, 3818, 3819, 3820,
-  3821, 3822, 3823, 3824, 3825, 3826, 3827, 3828,
-  3829, 3830, 3831, 3832, 3833, 3834, 3835, 3836,
-  3837, 3838, 3839, 3840, 3841, 3842, 3843, 3844,
-  3845, 3846, 3847, 3850, 3853, 3856, 3857, 3858,
-  3859, 3860, 3861, 3862, 3863, 3864, 3865, 3866,
-  3867, 3868, 3869, 3870, 3871, 3872, 3875, 3878,
-  3879, 3880, 3883, 3884, 3885, 3886, 3887, 3890,
-  3893, 3896, 3897, 3898, 3899, 3900, 3901, 3902,
-  3903, 3904, 3905, 3906, 3908, 3909, 3910, 3911,
-  3913, 3914, 3915, 3916, 3917, 3918, 3919, 3920,
-  3921, 3922, 3923, 3924, 3925, 3926, 3927, 3928,
-  3929, 3930, 3931, 3932, 3933, 3934, 3935, 3937,
-  3939, 3940, 3941, 3942, 3943, 3944, 3945, 3946,
-  3947, 3948, 3949, 3950, 3951, 3952, 3953, 3954,
-  3955, 3956, 3957, 3958, 3959, 3960, 3961, 3962,
-  3963, 3964, 3966, 3968, 3970, 3972, 3974, 3976,
-  3978, 3980, 3982, 3984, 3986, 3988, 3990, 3992,
-  3994, 3996, 3997, 3998, 3999, 4001, 4002, 4004,
-  4007, 4009, 4010, 4011, 4013, 4015, 4016, 4017,
-  4018, 4019, 4020, 4021, 4023, 4025, 4027, 4029,
-  4030, 4031, 4032, 4033, 4034, 4035, 4036, 4037,
-  4038, 4040, 4042, 4043, 4045, 4047, 4048, 4053,
-  4055, 4057, 4058, 4059, 4060, 4061, 4062, 4063,
-  4064, 4066, 4068, 4069, 4070, 4071, 4073, 4076,
-  4079, 4082, 4084, 4085, 4086, 4087, 4088, 4089,
-  4090, 4091, 4092, 4093, 4094, 4095, 4096, 4097,
-  4098, 4099, 4100, 4101, 4102, 4103, 4104, 4105,
-  4106, 4107, 4108, 4109, 4110, 4111, 4112, 4113,
-  4114, 4115, 4116, 4117, 4118, 4119, 4120, 4121,
-  4122, 4123, 4124, 4125, 4126, 4127, 4128, 4129,
-  4130, 4131, 4132, 4133, 4134, 4135, 4136, 4137,
-  4138, 4139, 4140, 4141, 4142, 4143, 4144, 4145,
-  4146, 4147, 4148, 4149, 4150, 4151, 4152, 4153,
-  4154, 4155, 4156, 4157, 4158, 4159, 4160, 4161,
-  4162, 4163, 4164, 4165, 4166, 4167, 4168, 4169,
-  4170, 4171, 4172, 4173, 4174, 4175, 4176, 4177,
-  4178, 4179, 4180, 4181, 4182, 4183, 4184, 4185,
-  4186, 4187, 4188, 4189, 4190, 4191, 4192, 4193,
-  4194, 4195, 4196, 4197, 4198, 4199, 4200, 4201,
-  4202, 4203, 4204, 4205, 4206, 4207, 4208, 4209,
-  4210, 4211, 4212, 4213, 4214, 4215, 4216, 4217,
-  4218, 4219, 4220, 4221, 4222, 4223, 4224, 4225,
-  4226, 4229, 4230, 4231, 4234, 4235, 4236, 4238,
-  4239, 4240, 4241, 4243, 4244, 4245, 4246, 4248,
-  4249, 4250, 4251, 4254, 4255, 4256, 4257, 4258,
-  4261, 4264, 4267, 4270, 4273, 4274, 4275, 4276,
-  4277, 4279, 4281, 4282, 4283, 4284, 4287, 4290,
-  4293, 4296, 4299, 4300, 4301, 4302, 4304, 4305,
-  4306, 4307, 4309, 4310, 4311, 4312, 4313, 4314,
-  4315, 4316, 4317, 4318, 4319, 4320, 4321, 4322,
-  4323, 4324, 4325, 4326, 4327, 4328, 4329, 4330,
-  4331, 4332, 4333, 4334, 4335, 4336, 4337, 4338,
-  4339, 4340, 4341, 4342, 4343, 4344, 4345, 4347,
-  4348, 4349, 4351, 4353, 4355, 4357, 4359, 4360,
-  4361, 4364, 4367, 4368, 4369, 4370, 4371, 4372,
-  4373, 4375, 4377, 4379, 4381, 4382, 4383, 4384,
-  4385, 4388, 4389, 4390, 4393, 4394, 4395, 4398,
-  4399, 4400, 4403, 4404, 4405, 4408, 4409, 4410,
-  4411, 4412, 4413, 4414, 4415, 4416, 4417, 4418,
-  4419, 4420, 4421, 4422, 4423, 4424, 4425, 4426,
-  4427, 4428, 4429, 4430, 4431, 4432, 4433, 4434,
-  4435, 4436, 4437, 4438, 4439, 4440, 4441, 4442,
-  4443, 4444, 4445, 4446, 4447, 4448, 4449, 4450,
-  4451, 4452, 4455, 4456, 4457, 4460, 4461, 4462,
-  4463, 4464, 4465, 4466, 4469, 4472, 4473, 4474,
-  4475, 4476
+  2585, 2586, 2588, 2590, 2592, 2594, 2598, 2602,
+  2603, 2604, 2606, 2610, 2614, 2616, 2620, 2624,
+  2625, 2626, 2628, 2630, 2632, 2634, 2639, 2643,
+  2647, 2649, 2651, 2653, 2655, 2657, 2659, 2661,
+  2663, 2665, 2667, 2669, 2671, 2673, 2675, 2677,
+  2679, 2681, 2683, 2685, 2687, 2689, 2690, 2691,
+  2693, 2695, 2696, 2697, 2700, 2703, 2706, 2709,
+  2711, 2713, 2715, 2717, 2719, 2721, 2722, 2723,
+  2724, 2726, 2730, 2732, 2734, 2740, 2744, 2745,
+  2746, 2747, 2748, 2749, 2750, 2751, 2755, 2757,
+  2759, 2763, 2765, 2767, 2769, 2771, 2773, 2775,
+  2777, 2779, 2781, 2783, 2785, 2787, 2789, 2791,
+  2792, 2795, 2798, 2801, 2804, 2809, 2814, 2819,
+  2824, 2827, 2830, 2833, 2836, 2838, 2840, 2842,
+  2844, 2846, 2848, 2850, 2851, 2853, 2855, 2857,
+  2859, 2861, 2862, 2863, 2864, 2868, 2872, 2874,
+  2878, 2882, 2886, 2890, 2894, 2896, 2900, 2902,
+  2904, 2906, 2908, 2910, 2912, 2914, 2916, 2917,
+  2919, 2921, 2923, 2925, 2927, 2929, 2931, 2933,
+  2934, 2935, 2936, 2937, 2938, 2939, 2940, 2941,
+  2942, 2944, 2946, 2948, 2950, 2952, 2954, 2955,
+  2956, 2957, 2959, 2961, 2963, 2965, 2967, 2969,
+  2970, 2971, 2972, 2973, 2976, 2979, 2981, 2984,
+  2985, 2986, 2988, 2989, 2991, 2992, 2993, 2995,
+  2997, 2998, 2999, 3000, 3001, 3002, 3005, 3010,
+  3015, 3020, 3025, 3028, 3033, 3038, 3040, 3042,
+  3044, 3046, 3047, 3048, 3050, 3052, 3054, 3056,
+  3058, 3060, 3062, 3063, 3064, 3065, 3066, 3067,
+  3068, 3073, 3078, 3079, 3080, 3081, 3082, 3083,
+  3084, 3085, 3086, 3087, 3088, 3089, 3090, 3091,
+  3092, 3093, 3094, 3095, 3096, 3097, 3098, 3099,
+  3100, 3101, 3102, 3103, 3104, 3105, 3106, 3107,
+  3108, 3109, 3110, 3111, 3112, 3113, 3114, 3115,
+  3116, 3117, 3118, 3119, 3120, 3121, 3122, 3123,
+  3124, 3125, 3126, 3127, 3128, 3129, 3130, 3131,
+  3132, 3133, 3134, 3135, 3136, 3137, 3138, 3139,
+  3140, 3141, 3142, 3143, 3144, 3145, 3146, 3147,
+  3148, 3149, 3150, 3151, 3152, 3153, 3154, 3155,
+  3156, 3157, 3158, 3159, 3160, 3161, 3162, 3163,
+  3164, 3165, 3166, 3167, 3168, 3169, 3170, 3171,
+  3172, 3173, 3174, 3175, 3176, 3177, 3178, 3179,
+  3180, 3181, 3182, 3183, 3184, 3185, 3186, 3187,
+  3188, 3189, 3190, 3191, 3192, 3193, 3194, 3195,
+  3196, 3197, 3198, 3199, 3200, 3201, 3202, 3203,
+  3204, 3205, 3206, 3207, 3208, 3209, 3210, 3211,
+  3212, 3213, 3214, 3215, 3216, 3217, 3218, 3219,
+  3220, 3221, 3222, 3223, 3224, 3225, 3226, 3227,
+  3228, 3229, 3230, 3231, 3232, 3233, 3234, 3235,
+  3236, 3237, 3238, 3239, 3240, 3241, 3242, 3243,
+  3244, 3245, 3246, 3247, 3248, 3249, 3250, 3251,
+  3252, 3253, 3254, 3255, 3256, 3257, 3258, 3259,
+  3260, 3261, 3262, 3263, 3264, 3265, 3266, 3267,
+  3268, 3269, 3270, 3271, 3272, 3273, 3274, 3275,
+  3276, 3277, 3278, 3279, 3281, 3283, 3284, 3285,
+  3286, 3287, 3288, 3289, 3290, 3291, 3292, 3293,
+  3294, 3295, 3296, 3297, 3298, 3299, 3300, 3301,
+  3302, 3303, 3304, 3305, 3306, 3307, 3308, 3309,
+  3310, 3311, 3313, 3315, 3317, 3319, 3320, 3321,
+  3322, 3323, 3324, 3325, 3326, 3327, 3328, 3329,
+  3330, 3331, 3332, 3334, 3335, 3336, 3337, 3339,
+  3340, 3341, 3342, 3343, 3344, 3345, 3346, 3347,
+  3348, 3349, 3350, 3351, 3352, 3353, 3354, 3355,
+  3356, 3357, 3358, 3359, 3360, 3361, 3362, 3363,
+  3364, 3365, 3366, 3367, 3368, 3369, 3370, 3371,
+  3372, 3373, 3374, 3375, 3376, 3377, 3378, 3379,
+  3380, 3382, 3384, 3385, 3386, 3388, 3389, 3391,
+  3393, 3394, 3395, 3397, 3399, 3401, 3403, 3404,
+  3405, 3406, 3407, 3408, 3409, 3410, 3411, 3412,
+  3413, 3414, 3415, 3416, 3417, 3418, 3419, 3420,
+  3421, 3422, 3425, 3428, 3429, 3430, 3431, 3432,
+  3433, 3434, 3436, 3438, 3440, 3441, 3442, 3443,
+  3444, 3445, 3446, 3448, 3449, 3450, 3451, 3452,
+  3453, 3454, 3455, 3456, 3458, 3460, 3461, 3462,
+  3463, 3464, 3465, 3466, 3467, 3468, 3469, 3470,
+  3473, 3476, 3477, 3478, 3479, 3480, 3481, 3482,
+  3483, 3484, 3485, 3486, 3487, 3488, 3489, 3490,
+  3491, 3492, 3493, 3494, 3495, 3496, 3497, 3498,
+  3499, 3500, 3501, 3502, 3503, 3504, 3505, 3506,
+  3507, 3508, 3509, 3510, 3511, 3512, 3513, 3514,
+  3515, 3516, 3517, 3518, 3519, 3520, 3521, 3522,
+  3523, 3524, 3525, 3526, 3527, 3528, 3529, 3530,
+  3531, 3532, 3533, 3534, 3537, 3539, 3542, 3545,
+  3547, 3550, 3553, 3556, 3559, 3560, 3563, 3564,
+  3565, 3566, 3567, 3568, 3572, 3574, 3577, 3578,
+  3579, 3580, 3581, 3582, 3583, 3584, 3585, 3586,
+  3587, 3588, 3589, 3590, 3591, 3592, 3593, 3594,
+  3595, 3596, 3597, 3598, 3599, 3600, 3601, 3602,
+  3603, 3604, 3605, 3606, 3607, 3608, 3609, 3610,
+  3611, 3612, 3613, 3614, 3615, 3616, 3617, 3618,
+  3619, 3620, 3621, 3622, 3623, 3624, 3625, 3626,
+  3627, 3628, 3630, 3631, 3632, 3633, 3634, 3635,
+  3636, 3637, 3638, 3639, 3640, 3641, 3642, 3643,
+  3644, 3645, 3646, 3647, 3648, 3649, 3650, 3651,
+  3652, 3653, 3654, 3655, 3656, 3657, 3658, 3659,
+  3660, 3661, 3662, 3663, 3664, 3665, 3666, 3667,
+  3668, 3669, 3672, 3675, 3678, 3681, 3684, 3687,
+  3690, 3693, 3696, 3699, 3702, 3705, 3708, 3711,
+  3714, 3715, 3716, 3717, 3718, 3720, 3721, 3722,
+  3723, 3724, 3725, 3726, 3727, 3728, 3729, 3730,
+  3731, 3732, 3733, 3734, 3735, 3736, 3737, 3738,
+  3739, 3740, 3741, 3742, 3743, 3744, 3745, 3746,
+  3747, 3748, 3749, 3750, 3751, 3752, 3753, 3754,
+  3755, 3756, 3757, 3758, 3759, 3760, 3761, 3762,
+  3763, 3764, 3765, 3766, 3767, 3768, 3769, 3770,
+  3771, 3772, 3773, 3774, 3775, 3776, 3777, 3778,
+  3779, 3780, 3781, 3784, 3787, 3788, 3789, 3790,
+  3791, 3792, 3793, 3794, 3795, 3796, 3797, 3798,
+  3799, 3800, 3801, 3802, 3803, 3804, 3805, 3806,
+  3807, 3808, 3809, 3810, 3811, 3812, 3813, 3814,
+  3815, 3816, 3817, 3818, 3819, 3820, 3821, 3822,
+  3823, 3824, 3825, 3826, 3827, 3828, 3829, 3830,
+  3831, 3832, 3833, 3834, 3835, 3836, 3837, 3838,
+  3839, 3840, 3841, 3842, 3843, 3844, 3845, 3846,
+  3847, 3848, 3849, 3852, 3855, 3858, 3859, 3860,
+  3861, 3862, 3863, 3864, 3865, 3866, 3867, 3868,
+  3869, 3870, 3871, 3872, 3873, 3874, 3877, 3880,
+  3881, 3882, 3885, 3886, 3887, 3888, 3889, 3892,
+  3895, 3898, 3899, 3900, 3901, 3902, 3903, 3904,
+  3905, 3906, 3907, 3908, 3910, 3911, 3912, 3913,
+  3915, 3916, 3917, 3918, 3919, 3920, 3921, 3922,
+  3923, 3924, 3925, 3926, 3927, 3928, 3929, 3930,
+  3931, 3932, 3933, 3934, 3935, 3936, 3937, 3939,
+  3941, 3942, 3943, 3944, 3945, 3946, 3947, 3948,
+  3949, 3950, 3951, 3952, 3953, 3954, 3955, 3956,
+  3957, 3958, 3959, 3960, 3961, 3962, 3963, 3964,
+  3965, 3966, 3968, 3970, 3972, 3974, 3976, 3978,
+  3980, 3982, 3984, 3986, 3988, 3990, 3992, 3994,
+  3996, 3998, 3999, 4000, 4001, 4003, 4004, 4006,
+  4009, 4011, 4012, 4013, 4015, 4017, 4018, 4019,
+  4020, 4021, 4022, 4023, 4025, 4027, 4029, 4031,
+  4032, 4033, 4034, 4035, 4036, 4037, 4038, 4039,
+  4040, 4042, 4044, 4045, 4047, 4049, 4050, 4055,
+  4057, 4059, 4060, 4061, 4062, 4063, 4064, 4065,
+  4066, 4068, 4070, 4071, 4072, 4073, 4075, 4078,
+  4081, 4084, 4086, 4087, 4088, 4089, 4090, 4091,
+  4092, 4093, 4094, 4095, 4096, 4097, 4098, 4099,
+  4100, 4101, 4102, 4103, 4104, 4105, 4106, 4107,
+  4108, 4109, 4110, 4111, 4112, 4113, 4114, 4115,
+  4116, 4117, 4118, 4119, 4120, 4121, 4122, 4123,
+  4124, 4125, 4126, 4127, 4128, 4129, 4130, 4131,
+  4132, 4133, 4134, 4135, 4136, 4137, 4138, 4139,
+  4140, 4141, 4142, 4143, 4144, 4145, 4146, 4147,
+  4148, 4149, 4150, 4151, 4152, 4153, 4154, 4155,
+  4156, 4157, 4158, 4159, 4160, 4161, 4162, 4163,
+  4164, 4165, 4166, 4167, 4168, 4169, 4170, 4171,
+  4172, 4173, 4174, 4175, 4176, 4177, 4178, 4179,
+  4180, 4181, 4182, 4183, 4184, 4185, 4186, 4187,
+  4188, 4189, 4190, 4191, 4192, 4193, 4194, 4195,
+  4196, 4197, 4198, 4199, 4200, 4201, 4202, 4203,
+  4204, 4205, 4206, 4207, 4208, 4209, 4210, 4211,
+  4212, 4213, 4214, 4215, 4216, 4217, 4218, 4219,
+  4220, 4221, 4222, 4223, 4224, 4225, 4226, 4227,
+  4228, 4231, 4232, 4233, 4236, 4237, 4238, 4240,
+  4241, 4242, 4243, 4245, 4246, 4247, 4248, 4250,
+  4251, 4252, 4253, 4256, 4257, 4258, 4259, 4260,
+  4263, 4266, 4269, 4272, 4275, 4276, 4277, 4278,
+  4279, 4281, 4283, 4284, 4285, 4286, 4289, 4292,
+  4295, 4298, 4301, 4302, 4303, 4304, 4306, 4307,
+  4308, 4309, 4312, 4313, 4314, 4315, 4316, 4317,
+  4318, 4319, 4320, 4321, 4322, 4323, 4324, 4325,
+  4326, 4327, 4328, 4329, 4330, 4331, 4332, 4333,
+  4334, 4335, 4336, 4337, 4338, 4339, 4340, 4341,
+  4342, 4343, 4344, 4345, 4346, 4347, 4348, 4350,
+  4351, 4352, 4354, 4356, 4358, 4360, 4362, 4363,
+  4364, 4367, 4370, 4371, 4372, 4373, 4374, 4375,
+  4376, 4378, 4380, 4382, 4384, 4385, 4386, 4387,
+  4388, 4391, 4392, 4393, 4396, 4397, 4398, 4401,
+  4402, 4403, 4406, 4407, 4408, 4411, 4412, 4413,
+  4414, 4415, 4416, 4417, 4418, 4419, 4420, 4421,
+  4422, 4423, 4424, 4425, 4426, 4427, 4428, 4429,
+  4430, 4431, 4432, 4433, 4434, 4435, 4436, 4437,
+  4438, 4439, 4440, 4441, 4442, 4443, 4444, 4445,
+  4446, 4447, 4448, 4449, 4450, 4451, 4452, 4453,
+  4454, 4455, 4458, 4459, 4460, 4463, 4464, 4465,
+  4466, 4467, 4468, 4469, 4472, 4475, 4476, 4477,
+  4478, 4479, 4480, 4481, 4482, 4483, 4484, 4485,
+  4486, 4487, 4488, 4489, 4490, 4491, 4492
 };
 
 /* i386 mnemonics table.  */
@@ -47593,6 +47782,7 @@ const char i386_mnemonics[] =
   "\0""vfpclasspbf16"
   "\0""vgetmantpbf16"
   "\0""vrsqrtpbf16"
+  "\0""vminmaxpbf16"
   "\0""vmaxpbf16"
   "\0""vcomsbf16"
   "\0""addr16"
@@ -48063,6 +48253,7 @@ const char i386_mnemonics[] =
   "\0""vblendvpd"
   "\0""vdivpd"
   "\0""vmaskmovpd"
+  "\0""vminmaxpd"
   "\0""vmaxpd"
   "\0""vfrczpd"
   "\0""vpcomeqd"
@@ -48189,8 +48380,11 @@ const char i386_mnemonics[] =
   "\0""vpdpwusd"
   "\0""vdivsd"
   "\0""vmovsd"
+  "\0""vminmaxsd"
   "\0""vpmaxsd"
   "\0""vmaxsd"
+  "\0""vucomxsd"
+  "\0""vcomxsd"
   "\0""vfrczsd"
   "\0""vp2intersectd"
   "\0""vpconflictd"
@@ -48481,6 +48675,7 @@ const char i386_mnemonics[] =
   "\0""vrsqrtph"
   "\0""vsqrtph"
   "\0""vdivph"
+  "\0""vminmaxph"
   "\0""vmaxph"
   "\0""vpmacsdqh"
   "\0""vpmacssdqh"
@@ -48571,7 +48766,10 @@ const char i386_mnemonics[] =
   "\0""push"
   "\0""vdivsh"
   "\0""vmovsh"
+  "\0""vminmaxsh"
   "\0""vmaxsh"
+  "\0""vucomxsh"
+  "\0""vcomxsh"
   "\0""blci"
   "\0""clgi"
   "\0""stgi"
@@ -49183,6 +49381,7 @@ const char i386_mnemonics[] =
   "\0""vblendvps"
   "\0""vdivps"
   "\0""vmaskmovps"
+  "\0""vminmaxps"
   "\0""vmaxps"
   "\0""vfrczps"
   "\0""vcvttpd2dqs"
@@ -49289,7 +49488,10 @@ const char i386_mnemonics[] =
   "\0""vbroadcastss"
   "\0""vdivss"
   "\0""vmovss"
+  "\0""vminmaxss"
   "\0""vmaxss"
+  "\0""vucomxss"
+  "\0""vcomxss"
   "\0""vfrczss"
   "\0""bts"
   "\0""erets"