summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-10-23 18:17:50 +0000
committerflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-10-23 18:17:50 +0000
commit610707bb85d96361d8fb3ef63c86ff4b2151b640 (patch)
tree6e6183e34bdb34ed638d357f61a8624a6ec061b9
parent7e226f2eebfaee319fde865b360ce5cb56e14924 (diff)
downloadfpc-610707bb85d96361d8fb3ef63c86ff4b2151b640.tar.gz
-- Zusammenführen von r42725 bis r43306 in ».«:
A tests/webtbs/tw32219.pp U tests/utils/avx/avxopcodes.pas U tests/utils/avx/asmtestgenerator.pas U compiler/i386/i386tab.inc U compiler/i386/i386nop.inc U compiler/i8086/i8086tab.inc U compiler/i8086/i8086nop.inc U compiler/x86_64/x8664tab.inc U compiler/x86_64/x8664nop.inc U compiler/x86/aasmcpu.pas U compiler/x86/x86ins.dat U compiler/x86/rax86.pas -- Aufzeichnung der Informationen für Zusammenführung von r42706 bis r43306 in ».«: U . git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@43307 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r--compiler/i386/i386nop.inc2
-rw-r--r--compiler/i386/i386tab.inc625
-rw-r--r--compiler/i8086/i8086nop.inc2
-rw-r--r--compiler/i8086/i8086tab.inc625
-rw-r--r--compiler/x86/aasmcpu.pas132
-rw-r--r--compiler/x86/rax86.pas107
-rw-r--r--compiler/x86/x86ins.dat317
-rw-r--r--compiler/x86_64/x8664nop.inc2
-rw-r--r--compiler/x86_64/x8664tab.inc625
-rw-r--r--tests/utils/avx/asmtestgenerator.pas7
-rw-r--r--tests/utils/avx/avxopcodes.pas2972
-rw-r--r--tests/webtbs/tw32219.pp13
12 files changed, 2366 insertions, 3063 deletions
diff --git a/compiler/i386/i386nop.inc b/compiler/i386/i386nop.inc
index f8ff92e9d2..feae02f2e6 100644
--- a/compiler/i386/i386nop.inc
+++ b/compiler/i386/i386nop.inc
@@ -1,2 +1,2 @@
{ don't edit, this file is generated from x86ins.dat }
-4053;
+4012;
diff --git a/compiler/i386/i386tab.inc b/compiler/i386/i386tab.inc
index 3d03de38f7..ba7bdf1202 100644
--- a/compiler/i386/i386tab.inc
+++ b/compiler/i386/i386tab.inc
@@ -6220,7 +6220,7 @@
opcode : A_ADDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#88#72;
+ code : #222#219#2#15#88#72;
flags : [if_katmai,if_sse]
),
(
@@ -6248,7 +6248,7 @@
opcode : A_CMPEQSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#0;
+ code : #222#219#2#15#194#72#1#0;
flags : [if_katmai,if_sse]
),
(
@@ -6262,7 +6262,7 @@
opcode : A_CMPLESS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#2;
+ code : #222#219#2#15#194#72#1#2;
flags : [if_katmai,if_sse]
),
(
@@ -6276,7 +6276,7 @@
opcode : A_CMPLTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#1;
+ code : #222#219#2#15#194#72#1#1;
flags : [if_katmai,if_sse]
),
(
@@ -6290,7 +6290,7 @@
opcode : A_CMPNEQSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#4;
+ code : #222#219#2#15#194#72#1#4;
flags : [if_katmai,if_sse]
),
(
@@ -6304,7 +6304,7 @@
opcode : A_CMPNLESS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#6;
+ code : #222#219#2#15#194#72#1#6;
flags : [if_katmai,if_sse]
),
(
@@ -6318,7 +6318,7 @@
opcode : A_CMPNLTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#5;
+ code : #222#219#2#15#194#72#1#5;
flags : [if_katmai,if_sse]
),
(
@@ -6332,7 +6332,7 @@
opcode : A_CMPORDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#7;
+ code : #222#219#2#15#194#72#1#7;
flags : [if_katmai,if_sse]
),
(
@@ -6346,7 +6346,7 @@
opcode : A_CMPUNORDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#3;
+ code : #222#219#2#15#194#72#1#3;
flags : [if_katmai,if_sse]
),
(
@@ -6360,14 +6360,14 @@
opcode : A_CMPSS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #219#2#15#194#72#18;
+ code : #222#219#2#15#194#72#18;
flags : [if_katmai,if_sse,if_sb,if_ar2]
),
(
opcode : A_COMISS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #2#15#47#72;
+ code : #222#2#15#47#72;
flags : [if_katmai,if_sse]
),
(
@@ -6451,7 +6451,7 @@
opcode : A_DIVSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#94#72;
+ code : #222#219#2#15#94#72;
flags : [if_katmai,if_sse]
),
(
@@ -6472,7 +6472,7 @@
opcode : A_MAXSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#95#72;
+ code : #222#219#2#15#95#72;
flags : [if_katmai,if_sse]
),
(
@@ -6486,7 +6486,7 @@
opcode : A_MINSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#93#72;
+ code : #222#219#2#15#93#72;
flags : [if_katmai,if_sse]
),
(
@@ -6612,7 +6612,7 @@
opcode : A_MULSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#89#72;
+ code : #222#219#2#15#89#72;
flags : [if_katmai,if_sse]
),
(
@@ -6633,7 +6633,7 @@
opcode : A_RCPSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#83#72;
+ code : #222#219#2#15#83#72;
flags : [if_katmai,if_sse]
),
(
@@ -6647,7 +6647,7 @@
opcode : A_RSQRTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#82#72;
+ code : #222#219#2#15#82#72;
flags : [if_katmai,if_sse]
),
(
@@ -6668,7 +6668,7 @@
opcode : A_SQRTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#81#72;
+ code : #222#219#2#15#81#72;
flags : [if_katmai,if_sse]
),
(
@@ -6689,14 +6689,14 @@
opcode : A_SUBSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#92#72;
+ code : #222#219#2#15#92#72;
flags : [if_katmai,if_sse]
),
(
opcode : A_UCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #2#15#46#72;
+ code : #222#2#15#46#72;
flags : [if_katmai,if_sse]
),
(
@@ -7228,7 +7228,7 @@
opcode : A_ADDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#88#72;
+ code : #223#221#220#2#15#88#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7256,7 +7256,7 @@
opcode : A_CMPEQSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#0;
+ code : #223#220#2#15#194#72#1#0;
flags : [if_willamette,if_sse2]
),
(
@@ -7270,7 +7270,7 @@
opcode : A_CMPLESD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#2;
+ code : #223#220#2#15#194#72#1#2;
flags : [if_willamette,if_sse2]
),
(
@@ -7284,7 +7284,7 @@
opcode : A_CMPLTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#1;
+ code : #223#220#2#15#194#72#1#1;
flags : [if_willamette,if_sse2]
),
(
@@ -7298,7 +7298,7 @@
opcode : A_CMPNEQSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#4;
+ code : #223#220#2#15#194#72#1#4;
flags : [if_willamette,if_sse2]
),
(
@@ -7312,7 +7312,7 @@
opcode : A_CMPNLESD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#6;
+ code : #223#220#2#15#194#72#1#6;
flags : [if_willamette,if_sse2]
),
(
@@ -7326,7 +7326,7 @@
opcode : A_CMPNLTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#5;
+ code : #223#220#2#15#194#72#1#5;
flags : [if_willamette,if_sse2]
),
(
@@ -7340,7 +7340,7 @@
opcode : A_CMPORDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#7;
+ code : #223#220#2#15#194#72#1#7;
flags : [if_willamette,if_sse2]
),
(
@@ -7354,7 +7354,7 @@
opcode : A_CMPUNORDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#3;
+ code : #223#220#2#15#194#72#1#3;
flags : [if_willamette,if_sse2]
),
(
@@ -7368,7 +7368,7 @@
opcode : A_COMISD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#2#15#47#72;
+ code : #223#241#2#15#47#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7536,7 +7536,7 @@
opcode : A_DIVSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#94#72;
+ code : #223#220#2#15#94#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7550,7 +7550,7 @@
opcode : A_MAXSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#95#72;
+ code : #223#220#2#15#95#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7564,7 +7564,7 @@
opcode : A_MINSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#93#72;
+ code : #223#220#2#15#93#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7641,7 +7641,7 @@
opcode : A_MULSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#89#72;
+ code : #223#220#2#15#89#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7669,7 +7669,7 @@
opcode : A_SQRTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#81#72;
+ code : #223#220#2#15#81#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7683,14 +7683,14 @@
opcode : A_SUBSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#92#72;
+ code : #223#220#2#15#92#72;
flags : [if_willamette,if_sse2]
),
(
opcode : A_UCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#2#15#46#72;
+ code : #223#241#2#15#46#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7963,14 +7963,14 @@
opcode : A_MOVNTSS;
ops : 2;
optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
- code : #219#2#15#43#65;
+ code : #222#219#2#15#43#65;
flags : [if_sse4,if_sd]
),
(
opcode : A_MOVNTSD;
ops : 2;
optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
- code : #220#213#2#15#43#65;
+ code : #223#220#213#2#15#43#65;
flags : [if_sse4]
),
(
@@ -8586,14 +8586,14 @@
opcode : A_ROUNDSS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #241#3#15#58#10#72#22;
+ code : #222#241#3#15#58#10#72#22;
flags : [if_sse41,if_sm2,if_sb,if_ar2]
),
(
opcode : A_ROUNDSD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #241#3#15#58#11#72#22;
+ code : #223#241#3#15#58#11#72#22;
flags : [if_sse41,if_sm2,if_sb,if_ar2]
),
(
@@ -8831,7 +8831,7 @@
opcode : A_VADDSD;
ops : 3;
optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#232#234#242#248#1#88#61#80;
+ code : #223#220#232#234#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge,if_t1s]
),
(
@@ -10293,15 +10293,8 @@
(
opcode : A_VCMPSS;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
- code : #219#242#248#1#194#61#80#23;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCMPSS;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
- code : #219#242#248#1#194#61#80#23;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #222#219#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
@@ -10447,27 +10440,20 @@
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #220#232#234#242#248#1#230#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #220#232#234#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #220#232#234#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2DQ;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
code : #220#232#234#248#1#230#72;
flags : [if_avx512,if_bcst2,if_tfv]
@@ -10482,13 +10468,6 @@
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #220#232#234#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #220#232#233#234#248#1#230#72;
flags : [if_avx512,if_tfv]
@@ -10510,23 +10489,23 @@
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
- code : #232#234#241#242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#90#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge,if_tfv]
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#90#72;
- flags : [if_avx,if_sandybridge]
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2PS;
@@ -10545,13 +10524,6 @@
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2PS;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #232#233#234#241#248#1#90#72;
flags : [if_avx512,if_tfv]
@@ -10615,16 +10587,16 @@
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#248#1#91#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPS2DQ;
@@ -10636,20 +10608,6 @@
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
- code : #232#241#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge,if_tfv]
- ),
- (
- opcode : A_VCVTPS2DQ;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#241#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPS2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
code : #232#241#244#248#1#91#72;
flags : [if_avx512,if_tfv]
@@ -10699,20 +10657,13 @@
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#244#248#1#90#72;
flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPS2PD;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
code : #232#244#248#1#90#72;
flags : [if_avx512,if_bcst4,if_thv]
@@ -10895,23 +10846,23 @@
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
- code : #232#234#241#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#230#72;
- flags : [if_avx,if_sandybridge,if_avx512]
+ flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
@@ -10930,13 +10881,6 @@
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTTPD2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #232#233#234#241#248#1#230#72;
flags : [if_avx512,if_tfv]
@@ -11651,172 +11595,88 @@
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#234#241#242#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#234#241#248#1#41#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#234#241#242#244#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#234#241#248#1#40#72;
flags : [if_avx512,if_tfvm]
),
(
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#40#72;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#41#65;
- flags : [if_avx512]
- ),
- (
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#242#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#242#244#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#248#1#41#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#242#244#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#248#1#40#72;
flags : [if_avx512,if_tfvm]
),
(
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#41#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#40#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VMOVD;
ops : 2;
optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_none,ot_none);
@@ -12253,34 +12113,27 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#234#241#242#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#234#241#248#1#17#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12288,13 +12141,6 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#234#241#242#244#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12302,13 +12148,6 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#17#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#234#241#248#1#16#72;
flags : [if_avx512,if_tfvm]
@@ -12316,34 +12155,27 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#242#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#242#244#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#248#1#17#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12351,13 +12183,6 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#242#244#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12365,13 +12190,6 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#17#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#248#1#16#72;
flags : [if_avx512,if_tfvm]
@@ -14465,32 +14283,18 @@
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#32#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#32#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#32#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#32#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXDQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14507,32 +14311,18 @@
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#37#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#37#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#37#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#37#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXWD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14549,32 +14339,18 @@
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#35#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#35#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#35#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#35#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXWQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -14605,18 +14381,11 @@
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#233#241#249#1#36#72;
flags : [if_avx512,if_tqvm]
),
(
- opcode : A_VPMOVSXWQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#233#241#249#1#36#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXBD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -14647,18 +14416,11 @@
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#233#241#249#1#49#72;
flags : [if_avx512,if_tqvm]
),
(
- opcode : A_VPMOVZXBD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#233#241#249#1#49#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXBQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
@@ -14717,32 +14479,18 @@
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#48#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#48#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#48#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#48#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXDQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14759,32 +14507,18 @@
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#53#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#53#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#53#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#53#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXWD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14801,32 +14535,18 @@
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#51#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#51#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#51#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#51#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXWQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -17587,14 +17307,7 @@
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
- code : #232#234#241#242#243#244#250#1#1#72#22;
- flags : [if_avx2,if_tfv]
- ),
- (
- opcode : A_VPERMPD;
- ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
code : #232#234#241#242#243#244#250#1#1#72#22;
flags : [if_avx2,if_tfv]
),
@@ -17608,43 +17321,43 @@
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
- code : #232#234#241#244#249#1#22#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#1#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
- code : #232#234#241#244#249#1#22#61#80;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#1#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
- code : #232#233#234#241#249#1#22#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
- code : #232#233#234#241#249#1#22#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#1#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#1#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
@@ -17692,43 +17405,43 @@
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
- code : #232#234#241#244#249#1#54#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#0#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
- code : #232#234#241#244#249#1#54#61#80;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#0#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
- code : #232#233#234#241#249#1#54#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
- code : #232#233#234#241#249#1#54#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#0#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#0#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
@@ -18392,8 +18105,8 @@
(
opcode : A_VFMADD132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#153#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18413,8 +18126,8 @@
(
opcode : A_VFMADD132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#153#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18518,8 +18231,8 @@
(
opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#169#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18539,8 +18252,8 @@
(
opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#169#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18651,8 +18364,8 @@
(
opcode : A_VFMADD231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#185#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18665,8 +18378,8 @@
(
opcode : A_VFMADD231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#185#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19071,15 +18784,15 @@
(
opcode : A_VFMSUB132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#155#61#80;
flags : [if_fma,if_t1s]
),
(
opcode : A_VFMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#155#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19197,8 +18910,8 @@
(
opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#171#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19211,8 +18924,8 @@
(
opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#171#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19323,15 +19036,15 @@
(
opcode : A_VFMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#187#61#80;
flags : [if_fma,if_t1s]
),
(
opcode : A_VFMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#187#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19736,8 +19449,8 @@
(
opcode : A_VFNMADD132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#157#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19750,8 +19463,8 @@
(
opcode : A_VFNMADD132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#157#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19869,8 +19582,8 @@
(
opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#173#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19883,8 +19596,8 @@
(
opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#173#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19988,9 +19701,9 @@
(
opcode : A_VFNMADD231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#243#249#1#189#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#241#242#243#249#1#189#61#80;
+ flags : [if_fma,if_t1s]
),
(
opcode : A_VFNMADD231SD;
@@ -20009,8 +19722,8 @@
(
opcode : A_VFNMADD231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#189#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#189#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20114,8 +19827,8 @@
(
opcode : A_VFNMSUB132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#159#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#159#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20135,8 +19848,8 @@
(
opcode : A_VFNMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#159#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#159#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20240,8 +19953,8 @@
(
opcode : A_VFNMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#175#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20254,8 +19967,8 @@
(
opcode : A_VFNMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#175#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20373,8 +20086,8 @@
(
opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#191#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20387,8 +20100,8 @@
(
opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#191#61#80;
flags : [if_fma,if_t1s]
),
(
diff --git a/compiler/i8086/i8086nop.inc b/compiler/i8086/i8086nop.inc
index 9aa9566158..364f3f75b1 100644
--- a/compiler/i8086/i8086nop.inc
+++ b/compiler/i8086/i8086nop.inc
@@ -1,2 +1,2 @@
{ don't edit, this file is generated from x86ins.dat }
-4085;
+4044;
diff --git a/compiler/i8086/i8086tab.inc b/compiler/i8086/i8086tab.inc
index f17b030ca8..bc78a07185 100644
--- a/compiler/i8086/i8086tab.inc
+++ b/compiler/i8086/i8086tab.inc
@@ -6248,7 +6248,7 @@
opcode : A_ADDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#88#72;
+ code : #222#219#2#15#88#72;
flags : [if_katmai,if_sse]
),
(
@@ -6276,7 +6276,7 @@
opcode : A_CMPEQSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#0;
+ code : #222#219#2#15#194#72#1#0;
flags : [if_katmai,if_sse]
),
(
@@ -6290,7 +6290,7 @@
opcode : A_CMPLESS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#2;
+ code : #222#219#2#15#194#72#1#2;
flags : [if_katmai,if_sse]
),
(
@@ -6304,7 +6304,7 @@
opcode : A_CMPLTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#1;
+ code : #222#219#2#15#194#72#1#1;
flags : [if_katmai,if_sse]
),
(
@@ -6318,7 +6318,7 @@
opcode : A_CMPNEQSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#4;
+ code : #222#219#2#15#194#72#1#4;
flags : [if_katmai,if_sse]
),
(
@@ -6332,7 +6332,7 @@
opcode : A_CMPNLESS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#6;
+ code : #222#219#2#15#194#72#1#6;
flags : [if_katmai,if_sse]
),
(
@@ -6346,7 +6346,7 @@
opcode : A_CMPNLTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#5;
+ code : #222#219#2#15#194#72#1#5;
flags : [if_katmai,if_sse]
),
(
@@ -6360,7 +6360,7 @@
opcode : A_CMPORDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#7;
+ code : #222#219#2#15#194#72#1#7;
flags : [if_katmai,if_sse]
),
(
@@ -6374,7 +6374,7 @@
opcode : A_CMPUNORDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#3;
+ code : #222#219#2#15#194#72#1#3;
flags : [if_katmai,if_sse]
),
(
@@ -6388,14 +6388,14 @@
opcode : A_CMPSS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #219#2#15#194#72#18;
+ code : #222#219#2#15#194#72#18;
flags : [if_katmai,if_sse,if_sb,if_ar2]
),
(
opcode : A_COMISS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #2#15#47#72;
+ code : #222#2#15#47#72;
flags : [if_katmai,if_sse]
),
(
@@ -6479,7 +6479,7 @@
opcode : A_DIVSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#94#72;
+ code : #222#219#2#15#94#72;
flags : [if_katmai,if_sse]
),
(
@@ -6500,7 +6500,7 @@
opcode : A_MAXSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#95#72;
+ code : #222#219#2#15#95#72;
flags : [if_katmai,if_sse]
),
(
@@ -6514,7 +6514,7 @@
opcode : A_MINSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#93#72;
+ code : #222#219#2#15#93#72;
flags : [if_katmai,if_sse]
),
(
@@ -6640,7 +6640,7 @@
opcode : A_MULSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#89#72;
+ code : #222#219#2#15#89#72;
flags : [if_katmai,if_sse]
),
(
@@ -6661,7 +6661,7 @@
opcode : A_RCPSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#83#72;
+ code : #222#219#2#15#83#72;
flags : [if_katmai,if_sse]
),
(
@@ -6675,7 +6675,7 @@
opcode : A_RSQRTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#82#72;
+ code : #222#219#2#15#82#72;
flags : [if_katmai,if_sse]
),
(
@@ -6696,7 +6696,7 @@
opcode : A_SQRTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#81#72;
+ code : #222#219#2#15#81#72;
flags : [if_katmai,if_sse]
),
(
@@ -6717,14 +6717,14 @@
opcode : A_SUBSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#92#72;
+ code : #222#219#2#15#92#72;
flags : [if_katmai,if_sse]
),
(
opcode : A_UCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #2#15#46#72;
+ code : #222#2#15#46#72;
flags : [if_katmai,if_sse]
),
(
@@ -7256,7 +7256,7 @@
opcode : A_ADDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#88#72;
+ code : #223#221#220#2#15#88#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7284,7 +7284,7 @@
opcode : A_CMPEQSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#0;
+ code : #223#220#2#15#194#72#1#0;
flags : [if_willamette,if_sse2]
),
(
@@ -7298,7 +7298,7 @@
opcode : A_CMPLESD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#2;
+ code : #223#220#2#15#194#72#1#2;
flags : [if_willamette,if_sse2]
),
(
@@ -7312,7 +7312,7 @@
opcode : A_CMPLTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#1;
+ code : #223#220#2#15#194#72#1#1;
flags : [if_willamette,if_sse2]
),
(
@@ -7326,7 +7326,7 @@
opcode : A_CMPNEQSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#4;
+ code : #223#220#2#15#194#72#1#4;
flags : [if_willamette,if_sse2]
),
(
@@ -7340,7 +7340,7 @@
opcode : A_CMPNLESD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#6;
+ code : #223#220#2#15#194#72#1#6;
flags : [if_willamette,if_sse2]
),
(
@@ -7354,7 +7354,7 @@
opcode : A_CMPNLTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#5;
+ code : #223#220#2#15#194#72#1#5;
flags : [if_willamette,if_sse2]
),
(
@@ -7368,7 +7368,7 @@
opcode : A_CMPORDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#7;
+ code : #223#220#2#15#194#72#1#7;
flags : [if_willamette,if_sse2]
),
(
@@ -7382,7 +7382,7 @@
opcode : A_CMPUNORDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#3;
+ code : #223#220#2#15#194#72#1#3;
flags : [if_willamette,if_sse2]
),
(
@@ -7396,7 +7396,7 @@
opcode : A_COMISD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#2#15#47#72;
+ code : #223#241#2#15#47#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7564,7 +7564,7 @@
opcode : A_DIVSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#94#72;
+ code : #223#220#2#15#94#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7578,7 +7578,7 @@
opcode : A_MAXSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#95#72;
+ code : #223#220#2#15#95#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7592,7 +7592,7 @@
opcode : A_MINSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#93#72;
+ code : #223#220#2#15#93#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7669,7 +7669,7 @@
opcode : A_MULSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#89#72;
+ code : #223#220#2#15#89#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7697,7 +7697,7 @@
opcode : A_SQRTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#81#72;
+ code : #223#220#2#15#81#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7711,14 +7711,14 @@
opcode : A_SUBSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#92#72;
+ code : #223#220#2#15#92#72;
flags : [if_willamette,if_sse2]
),
(
opcode : A_UCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#2#15#46#72;
+ code : #223#241#2#15#46#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7991,14 +7991,14 @@
opcode : A_MOVNTSS;
ops : 2;
optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
- code : #219#2#15#43#65;
+ code : #222#219#2#15#43#65;
flags : [if_sse4,if_sd]
),
(
opcode : A_MOVNTSD;
ops : 2;
optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
- code : #220#213#2#15#43#65;
+ code : #223#220#213#2#15#43#65;
flags : [if_sse4]
),
(
@@ -8614,14 +8614,14 @@
opcode : A_ROUNDSS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #241#3#15#58#10#72#22;
+ code : #222#241#3#15#58#10#72#22;
flags : [if_sse41,if_sm2,if_sb,if_ar2]
),
(
opcode : A_ROUNDSD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #241#3#15#58#11#72#22;
+ code : #223#241#3#15#58#11#72#22;
flags : [if_sse41,if_sm2,if_sb,if_ar2]
),
(
@@ -8859,7 +8859,7 @@
opcode : A_VADDSD;
ops : 3;
optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#232#234#242#248#1#88#61#80;
+ code : #223#220#232#234#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge,if_t1s]
),
(
@@ -10321,15 +10321,8 @@
(
opcode : A_VCMPSS;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
- code : #219#242#248#1#194#61#80#23;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCMPSS;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
- code : #219#242#248#1#194#61#80#23;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #222#219#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
@@ -10475,27 +10468,20 @@
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #220#232#234#242#248#1#230#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #220#232#234#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #220#232#234#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2DQ;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
code : #220#232#234#248#1#230#72;
flags : [if_avx512,if_bcst2,if_tfv]
@@ -10510,13 +10496,6 @@
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #220#232#234#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #220#232#233#234#248#1#230#72;
flags : [if_avx512,if_tfv]
@@ -10538,23 +10517,23 @@
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
- code : #232#234#241#242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#90#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge,if_tfv]
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#90#72;
- flags : [if_avx,if_sandybridge]
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2PS;
@@ -10573,13 +10552,6 @@
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2PS;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #232#233#234#241#248#1#90#72;
flags : [if_avx512,if_tfv]
@@ -10643,16 +10615,16 @@
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#248#1#91#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPS2DQ;
@@ -10664,20 +10636,6 @@
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
- code : #232#241#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge,if_tfv]
- ),
- (
- opcode : A_VCVTPS2DQ;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#241#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPS2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
code : #232#241#244#248#1#91#72;
flags : [if_avx512,if_tfv]
@@ -10727,20 +10685,13 @@
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#244#248#1#90#72;
flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPS2PD;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
code : #232#244#248#1#90#72;
flags : [if_avx512,if_bcst4,if_thv]
@@ -10923,23 +10874,23 @@
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
- code : #232#234#241#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#230#72;
- flags : [if_avx,if_sandybridge,if_avx512]
+ flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
@@ -10958,13 +10909,6 @@
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTTPD2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #232#233#234#241#248#1#230#72;
flags : [if_avx512,if_tfv]
@@ -11679,172 +11623,88 @@
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#234#241#242#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#234#241#248#1#41#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#234#241#242#244#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#234#241#248#1#40#72;
flags : [if_avx512,if_tfvm]
),
(
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#40#72;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#41#65;
- flags : [if_avx512]
- ),
- (
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#242#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#242#244#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#248#1#41#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#242#244#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#248#1#40#72;
flags : [if_avx512,if_tfvm]
),
(
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#41#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#40#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VMOVD;
ops : 2;
optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_none,ot_none);
@@ -12281,34 +12141,27 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#234#241#242#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#234#241#248#1#17#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12316,13 +12169,6 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#234#241#242#244#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12330,13 +12176,6 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#17#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#234#241#248#1#16#72;
flags : [if_avx512,if_tfvm]
@@ -12344,34 +12183,27 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#242#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#242#244#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#248#1#17#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12379,13 +12211,6 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#242#244#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12393,13 +12218,6 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#17#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#248#1#16#72;
flags : [if_avx512,if_tfvm]
@@ -14493,32 +14311,18 @@
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#32#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#32#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#32#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#32#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXDQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14535,32 +14339,18 @@
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#37#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#37#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#37#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#37#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXWD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14577,32 +14367,18 @@
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#35#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#35#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#35#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#35#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXWQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -14633,18 +14409,11 @@
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#233#241#249#1#36#72;
flags : [if_avx512,if_tqvm]
),
(
- opcode : A_VPMOVSXWQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#233#241#249#1#36#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXBD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -14675,18 +14444,11 @@
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#233#241#249#1#49#72;
flags : [if_avx512,if_tqvm]
),
(
- opcode : A_VPMOVZXBD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#233#241#249#1#49#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXBQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
@@ -14745,32 +14507,18 @@
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#48#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#48#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#48#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#48#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXDQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14787,32 +14535,18 @@
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#53#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#53#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#53#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#53#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXWD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14829,32 +14563,18 @@
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#51#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#51#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#51#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#51#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXWQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -17615,14 +17335,7 @@
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
- code : #232#234#241#242#243#244#250#1#1#72#22;
- flags : [if_avx2,if_tfv]
- ),
- (
- opcode : A_VPERMPD;
- ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
code : #232#234#241#242#243#244#250#1#1#72#22;
flags : [if_avx2,if_tfv]
),
@@ -17636,43 +17349,43 @@
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
- code : #232#234#241#244#249#1#22#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#1#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
- code : #232#234#241#244#249#1#22#61#80;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#1#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
- code : #232#233#234#241#249#1#22#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
- code : #232#233#234#241#249#1#22#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#1#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#1#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
@@ -17720,43 +17433,43 @@
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
- code : #232#234#241#244#249#1#54#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#0#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
- code : #232#234#241#244#249#1#54#61#80;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#0#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
- code : #232#233#234#241#249#1#54#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
- code : #232#233#234#241#249#1#54#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#0#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#0#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
@@ -18616,8 +18329,8 @@
(
opcode : A_VFMADD132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#153#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18637,8 +18350,8 @@
(
opcode : A_VFMADD132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#153#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18742,8 +18455,8 @@
(
opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#169#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18763,8 +18476,8 @@
(
opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#169#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18875,8 +18588,8 @@
(
opcode : A_VFMADD231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#185#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18889,8 +18602,8 @@
(
opcode : A_VFMADD231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#185#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19295,15 +19008,15 @@
(
opcode : A_VFMSUB132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#155#61#80;
flags : [if_fma,if_t1s]
),
(
opcode : A_VFMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#155#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19421,8 +19134,8 @@
(
opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#171#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19435,8 +19148,8 @@
(
opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#171#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19547,15 +19260,15 @@
(
opcode : A_VFMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#187#61#80;
flags : [if_fma,if_t1s]
),
(
opcode : A_VFMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#187#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19960,8 +19673,8 @@
(
opcode : A_VFNMADD132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#157#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19974,8 +19687,8 @@
(
opcode : A_VFNMADD132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#157#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20093,8 +19806,8 @@
(
opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#173#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20107,8 +19820,8 @@
(
opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#173#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20212,9 +19925,9 @@
(
opcode : A_VFNMADD231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#243#249#1#189#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#241#242#243#249#1#189#61#80;
+ flags : [if_fma,if_t1s]
),
(
opcode : A_VFNMADD231SD;
@@ -20233,8 +19946,8 @@
(
opcode : A_VFNMADD231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#189#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#189#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20338,8 +20051,8 @@
(
opcode : A_VFNMSUB132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#159#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#159#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20359,8 +20072,8 @@
(
opcode : A_VFNMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#159#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#159#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20464,8 +20177,8 @@
(
opcode : A_VFNMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#175#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20478,8 +20191,8 @@
(
opcode : A_VFNMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#175#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20597,8 +20310,8 @@
(
opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#191#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20611,8 +20324,8 @@
(
opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#191#61#80;
flags : [if_fma,if_t1s]
),
(
diff --git a/compiler/x86/aasmcpu.pas b/compiler/x86/aasmcpu.pas
index 288f5a920c..237bc8332a 100644
--- a/compiler/x86/aasmcpu.pas
+++ b/compiler/x86/aasmcpu.pas
@@ -353,9 +353,9 @@ interface
Ch : set of TInsChange;
end;
- TMemRefSizeInfo = (msiUnkown, msiUnsupported, msiNoSize,
- msiMultiple, msiMultiple8, msiMultiple16, msiMultiple32,
- msiMultiple64, msiMultiple128, msiMultiple256, msiMultiple512,
+ TMemRefSizeInfo = (msiUnknown, msiUnsupported, msiNoSize, msiNoMemRef,
+ msiMultiple, msiMultipleMinSize8, msiMultipleMinSize16, msiMultipleMinSize32,
+ msiMultipleMinSize64, msiMultipleMinSize128, msiMultipleminSize256, msiMultipleMinSize512,
msiMemRegSize, msiMemRegx16y32, msiMemRegx16y32z64, msiMemRegx32y64, msiMemRegx32y64z128, msiMemRegx64y128, msiMemRegx64y128z256,
msiMemRegx64y256, msiMemRegx64y256z512,
msiMem8, msiMem16, msiMem32, msiBMem32, msiMem64, msiBMem64, msiMem128, msiMem256, msiMem512,
@@ -367,7 +367,7 @@ interface
TMemRefSizeInfoBCSTType = (btUnknown, bt1to2, bt1to4, bt1to8, bt1to16);
TEVEXTupleState = (etsUnknown, etsIsTuple, etsNotTuple);
- TConstSizeInfo = (csiUnkown, csiMultiple, csiNoSize, csiMem8, csiMem16, csiMem32, csiMem64);
+ TConstSizeInfo = (csiUnknown, csiMultiple, csiNoSize, csiMem8, csiMem16, csiMem32, csiMem64);
TInsTabMemRefSizeInfoRec = record
MemRefSize : TMemRefSizeInfo;
@@ -381,10 +381,10 @@ interface
const
- MemRefMultiples: set of TMemRefSizeInfo = [msiMultiple, msiMultiple8,
- msiMultiple16, msiMultiple32,
- msiMultiple64, msiMultiple128,
- msiMultiple256, msiMultiple512,
+ MemRefMultiples: set of TMemRefSizeInfo = [msiMultiple, msiMultipleMinSize8,
+ msiMultipleMinSize16, msiMultipleMinSize32,
+ msiMultipleMinSize64, msiMultipleMinSize128,
+ msiMultipleMinSize256, msiMultipleMinSize512,
msiVMemMultiple];
MemRefSizeInfoVMems: Set of TMemRefSizeInfo = [msiXMem32, msiXMem64, msiYMem32, msiYMem64,
@@ -515,6 +515,7 @@ interface
IF_THV,
IF_THVM,
IF_TOVM
+
);
tinsflags=set of tinsflag;
@@ -1620,7 +1621,7 @@ implementation
// special handling (opsize can different from const-size)
// (e.g. "pextrw reg/m16, xmmreg, imm8" =>> opsize (16 bit), const-size (8 bit)
if (InsTabMemRefSizeInfoCache^[opcode].ExistsSSEAVX) and
- (not(InsTabMemRefSizeInfoCache^[opcode].ConstSize in [csiMultiple, csiUnkown])) then
+ (not(InsTabMemRefSizeInfoCache^[opcode].ConstSize in [csiMultiple, csiUnknown])) then
begin
case InsTabMemRefSizeInfoCache^[opcode].ConstSize of
csiNoSize: ot := ot and OT_NON_SIZE or OT_IMMEDIATE;
@@ -3244,7 +3245,7 @@ implementation
&331,&332: ;
&325:
{$ifdef i8086}
- inc(len)
+ inc(len);
{$endif i8086}
;
@@ -3270,6 +3271,9 @@ implementation
omit_rexw:=true
{$endif x86_64}
;
+ &336,
+ &337: {nothing};
+
&100..&227 :
begin
{$ifdef x86_64}
@@ -3505,7 +3509,9 @@ implementation
* \332 - disassemble a rep (0xF3 byte) prefix as repe not rep.
* \333 - 0xF3 prefix for SSE instructions
* \334 - 0xF2 prefix for SSE instructions
- * \335 - Indicates 64-bit operand size with REX.W not necessary
+ * \335 - Indicates 64-bit operand size with REX.W not necessary / 64-bit scalar vector operand size
+ * \336 - Indicates 32-bit scalar vector operand size
+ * \337 - Indicates 64-bit scalar vector operand size
* \350 - EVEX prefix for AVX instructions
* \351 - EVEX Vector length 512
@@ -3690,6 +3696,7 @@ implementation
data,s,opidx : longint;
ea_data : ea;
relsym : TObjSymbol;
+
needed_VEX_Extension: boolean;
needed_VEX: boolean;
needed_EVEX: boolean;
@@ -4410,7 +4417,7 @@ implementation
&323 : {no action needed};
&325:
{$ifdef i8086}
- write0x66prefix(objdata);
+ write0x66prefix(objdata);
{$else i8086}
{no action needed};
{$endif i8086}
@@ -4447,6 +4454,8 @@ implementation
end;
&335:
;
+ &336: ; // indicates 32-bit scalar vector operand {no action needed}
+ &337: ; // indicates 64-bit scalar vector operand {no action needed}
&312,
&327,
&331,&332 :
@@ -4925,8 +4934,12 @@ implementation
RegBCSTXMMSizeMask: int64;
RegBCSTYMMSizeMask: int64;
RegBCSTZMMSizeMask: int64;
+ ExistsMemRef : boolean;
- bitcount: integer;
+ bitcount : integer;
+ ExistsCode336 : boolean;
+ ExistsCode337 : boolean;
+ ExistsSSEAVXReg : boolean;
function bitcnt(aValue: int64): integer;
var
@@ -4955,10 +4968,10 @@ implementation
if i >= 0 then
begin
- InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiUnkown;
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiUnknown;
InsTabMemRefSizeInfoCache^[AsmOp].MemRefSizeBCST := msbUnknown;
InsTabMemRefSizeInfoCache^[AsmOp].BCSTXMMMultiplicator := 0;
- InsTabMemRefSizeInfoCache^[AsmOp].ConstSize := csiUnkown;
+ InsTabMemRefSizeInfoCache^[AsmOp].ConstSize := csiUnknown;
InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX := false;
InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes := [];
@@ -4977,10 +4990,11 @@ implementation
RegBCSTXMMSizeMask := 0;
RegBCSTYMMSizeMask := 0;
RegBCSTZMMSizeMask := 0;
+ ExistsMemRef := false;
while (insentry^.opcode=AsmOp) do
begin
- MRefInfo := msiUnkown;
+ MRefInfo := msiUnknown;
actRegSize := 0;
actRegCount := 0;
@@ -4997,6 +5011,34 @@ implementation
actConstSize := 0;
actConstCount := 0;
+ ExistsCode336 := false; // indicate fixed operand size 32 bit
+ ExistsCode337 := false; // indicate fixed operand size 64 bit
+ ExistsSSEAVXReg := false;
+
+ // parse insentry^.code for &336 and &337
+ // &336 (octal) = 222 (decimal) == fixed operand size 32 bit
+ // &337 (octal) = 223 (decimal) == fixed operand size 64 bit
+ for i := low(insentry^.code) to high(insentry^.code) do
+ begin
+ case insentry^.code[i] of
+ #222: ExistsCode336 := true;
+ #223: ExistsCode337 := true;
+ #0,#1,#2,#3: break;
+ end;
+ end;
+
+ for i := 0 to insentry^.ops -1 do
+ begin
+ if (insentry^.optypes[i] and OT_REGISTER) = OT_REGISTER then
+ case insentry^.optypes[i] and (OT_XMMREG or OT_YMMREG or OT_ZMMREG or OT_KREG or OT_REG_EXTRA_MASK) of
+ OT_XMMREG,
+ OT_YMMREG,
+ OT_ZMMREG: ExistsSSEAVXReg := true;
+ else;
+ end;
+ end;
+
+
for j := 0 to insentry^.ops -1 do
begin
if ((insentry^.optypes[j] and OT_XMEM32) = OT_XMEM32) OR
@@ -5056,7 +5098,14 @@ implementation
begin
inc(actMemCount);
- actMemSize:=actMemSize or (insentry^.optypes[j] and (OT_SIZE_MASK OR OT_VECTORBCST));
+
+ if ExistsSSEAVXReg and ExistsCode336 then
+ actMemSize := actMemSize or OT_BITS32
+ else if ExistsSSEAVXReg and ExistsCode337 then
+ actMemSize := actMemSize or OT_BITS64
+ else
+ actMemSize:=actMemSize or (insentry^.optypes[j] and (OT_SIZE_MASK OR OT_VECTORBCST));
+
if (insentry^.optypes[j] and OT_REGMEM) = OT_REGMEM then
begin
actRegMemTypes := actRegMemTypes or insentry^.optypes[j];
@@ -5081,7 +5130,7 @@ implementation
else SConstInfo := csiMultiple;
end;
- if InsTabMemRefSizeInfoCache^[AsmOp].ConstSize = csiUnkown then
+ if InsTabMemRefSizeInfoCache^[AsmOp].ConstSize = csiUnknown then
begin
InsTabMemRefSizeInfoCache^[AsmOp].ConstSize := SConstInfo;
end
@@ -5140,7 +5189,7 @@ implementation
end;
- if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiUnkown then
+ if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiUnknown then
begin
InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := MRefInfo;
end
@@ -5161,16 +5210,20 @@ implementation
begin
if (actMemCount=2) and ((AsmOp=A_MOVS) or (AsmOp=A_CMPS)) then actMemCount:=1;
+ ExistsMemRef := ExistsMemRef or (actMemCount > 0);
+
case actMemCount of
0: ; // nothing todo
1: begin
- MRefInfo := msiUnkown;
- case actRegMemTypes and (OT_MMXRM or OT_XMMRM or OT_YMMRM or OT_ZMMRM or OT_REG_EXTRA_MASK) of
- OT_MMXRM: actMemSize := actMemSize or OT_BITS64;
- OT_XMMRM: actMemSize := actMemSize or OT_BITS128;
- OT_YMMRM: actMemSize := actMemSize or OT_BITS256;
- OT_ZMMRM: actMemSize := actMemSize or OT_BITS512;
- end;
+ MRefInfo := msiUnknown;
+
+ if not(ExistsCode336 or ExistsCode337) then
+ case actRegMemTypes and (OT_MMXRM or OT_XMMRM or OT_YMMRM or OT_ZMMRM or OT_REG_EXTRA_MASK) of
+ OT_MMXRM: actMemSize := actMemSize or OT_BITS64;
+ OT_XMMRM: actMemSize := actMemSize or OT_BITS128;
+ OT_YMMRM: actMemSize := actMemSize or OT_BITS256;
+ OT_ZMMRM: actMemSize := actMemSize or OT_BITS512;
+ end;
case actMemSize of
0: MRefInfo := msiNoSize;
@@ -5196,7 +5249,7 @@ implementation
end;
end;
- if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiUnkown then
+ if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiUnknown then
begin
InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := MRefInfo;
end
@@ -5209,13 +5262,13 @@ implementation
begin
with InsTabMemRefSizeInfoCache^[AsmOp] do
begin
- if ((MemRefSize = msiMem8) OR (MRefInfo = msiMem8)) then MemRefSize := msiMultiple8
- else if ((MemRefSize = msiMem16) OR (MRefInfo = msiMem16)) then MemRefSize := msiMultiple16
- else if ((MemRefSize = msiMem32) OR (MRefInfo = msiMem32)) then MemRefSize := msiMultiple32
- else if ((MemRefSize = msiMem64) OR (MRefInfo = msiMem64)) then MemRefSize := msiMultiple64
- else if ((MemRefSize = msiMem128) OR (MRefInfo = msiMem128)) then MemRefSize := msiMultiple128
- else if ((MemRefSize = msiMem256) OR (MRefInfo = msiMem256)) then MemRefSize := msiMultiple256
- else if ((MemRefSize = msiMem512) OR (MRefInfo = msiMem512)) then MemRefSize := msiMultiple512
+ if ((MemRefSize in [msiMem8, msiMULTIPLEMinSize8]) OR (MRefInfo = msiMem8)) then MemRefSize := msiMultipleMinSize8
+ else if ((MemRefSize in [ msiMem16, msiMULTIPLEMinSize16]) OR (MRefInfo = msiMem16)) then MemRefSize := msiMultipleMinSize16
+ else if ((MemRefSize in [ msiMem32, msiMULTIPLEMinSize32]) OR (MRefInfo = msiMem32)) then MemRefSize := msiMultipleMinSize32
+ else if ((MemRefSize in [ msiMem64, msiMULTIPLEMinSize64]) OR (MRefInfo = msiMem64)) then MemRefSize := msiMultipleMinSize64
+ else if ((MemRefSize in [msiMem128, msiMULTIPLEMinSize128]) OR (MRefInfo = msiMem128)) then MemRefSize := msiMultipleMinSize128
+ else if ((MemRefSize in [msiMem256, msiMULTIPLEMinSize256]) OR (MRefInfo = msiMem256)) then MemRefSize := msiMultipleMinSize256
+ else if ((MemRefSize in [msiMem512, msiMULTIPLEMinSize512]) OR (MRefInfo = msiMem512)) then MemRefSize := msiMultipleMinSize512
else MemRefSize := msiMultiple;
end;
end;
@@ -5426,6 +5479,12 @@ implementation
InternalError(777205);
end;
+ end
+ else if (InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX) and
+ (InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiUnknown) and
+ (not(ExistsMemRef)) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiNoMemRef;
end;
end;
end;
@@ -5437,8 +5496,8 @@ implementation
// only supported intructiones with SSE- or AVX-operands
if not(InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX) then
begin
- InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiUnkown;
- InsTabMemRefSizeInfoCache^[AsmOp].ConstSize := csiUnkown;
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiUnknown;
+ InsTabMemRefSizeInfoCache^[AsmOp].ConstSize := csiUnknown;
end;
end;
end;
@@ -5451,6 +5510,7 @@ implementation
if not assigned(InsTabMemRefSizeInfoCache) then
BuildInsTabMemRefSizeInfoCache;
+
end;
diff --git a/compiler/x86/rax86.pas b/compiler/x86/rax86.pas
index 19bddb2fba..c3f4799abc 100644
--- a/compiler/x86/rax86.pas
+++ b/compiler/x86/rax86.pas
@@ -524,21 +524,12 @@ begin
end
else
case MemRefInfo(opcode).MemRefSize of
- msiMultiple8,
msiMem8: memrefsize := 8;
- msiMultiple16,
msiMem16: memrefsize := 16;
- msiMultiple32,
msiMem32: memrefsize := 32;
- //msiXMem64,
- //msiYMem64,
- msiMultiple64,
msiMem64: memrefsize := 64;
- msiMultiple128,
msiMem128: memrefsize := 128;
- msiMultiple256,
msiMem256: memrefsize := 256;
- msiMultiple512,
msiMem512: memrefsize := 512;
msiMemRegx16y32:
begin
@@ -706,8 +697,16 @@ begin
msiYMem64,
msiZMem64: ; // ignore; gather/scatter opcodes haven a fixed element-size, not a fixed memory-size
// the vector-register have indices with base of the memory-address in the memory-operand
+ msiMultipleMinSize8,
+ msiMultipleMinSize16,
+ msiMultipleMinSize32,
+ msiMultipleMinSize64,
+ msiMultipleMinSize128,
+ msiMultipleMinSize256,
+ msiMultipleMinSize512: ; // ignore
msiNoSize,
- msiUnkown,
+ msiNoMemRef,
+ msiUnknown,
msiUnsupported,
msiVMemMultiple,
msiVMemRegSize,
@@ -737,7 +736,25 @@ begin
;
end;
- if memopsize = 0 then memopsize := topsize2memsize[tx86operand(operands[i]).opsize];
+ //if memopsize = 0 then memopsize := topsize2memsize[tx86operand(operands[i]).opsize];
+
+ if memopsize = 0 then
+ begin
+ {$ifdef i386}
+ { 64-bit operands are allowed for SSE and AVX instructions, so
+ go by the byte size instead for these families of opcodes }
+ if (MemRefInfo(opcode).ExistsSSEAVX) then
+ begin
+ memopsize := tx86operand(operands[i]).typesize * 8;
+ if tx86operand(operands[i]).typesize = 8 then
+ { Will be S_L otherwise and won't be corrected in time }
+ tx86operand(operands[i]).opsize := S_Q;
+ end
+ else
+ {$endif i386}
+ memopsize := topsize2memsize[tx86operand(operands[i]).opsize];
+ end;
+
if (memopsize > 0) and
(memrefsize > 0) then
@@ -759,30 +776,32 @@ begin
std_op2str[opcode],
ToStr(memoffset));
end
- else if (memopsize < (memrefsize + memoffset * 8)) then
+ else if ((tx86operand(operands[i]).hastype) and (memopsize < memrefsize)) or
+ (memopsize < (memrefsize + memoffset * 8)) then
begin
- if memoffset = 0 then
+ if memopsize < memrefsize then
begin
- Message3(asmr_w_check_mem_operand_size3,
- std_op2str[opcode],
- ToStr(memopsize),
- ToStr(memrefsize)
- );
- end
- else
- begin
- Message4(asmr_w_check_mem_operand_size_offset,
- std_op2str[opcode],
- ToStr(memopsize),
- ToStr(memrefsize),
- ToStr(memoffset)
- );
+ if memoffset = 0 then
+ begin
+ Message3(asmr_w_check_mem_operand_size3,
+ std_op2str[opcode],
+ ToStr(memopsize),
+ ToStr(memrefsize)
+ );
+ end
+ else
+ begin
+ Message4(asmr_w_check_mem_operand_size_offset,
+ std_op2str[opcode],
+ ToStr(memopsize),
+ ToStr(memrefsize),
+ ToStr(memoffset)
+ );
+ end;
end;
end;
end;
end;
-
-
end;
end;
end;
@@ -821,7 +840,7 @@ begin
tx86operand(operands[i]).opsize := S_B;
tx86operand(operands[i]).size := OS_8;
end;
- msiMultiple8:
+ msiMultipleMinSize8:
begin
tx86operand(operands[i]).opsize := S_B;
tx86operand(operands[i]).size := OS_8;
@@ -833,7 +852,7 @@ begin
tx86operand(operands[i]).opsize := S_W;
tx86operand(operands[i]).size := OS_16;
end;
- msiMultiple16:
+ msiMultipleMinSize16:
begin
tx86operand(operands[i]).opsize := S_W;
tx86operand(operands[i]).size := OS_16;
@@ -845,7 +864,7 @@ begin
tx86operand(operands[i]).opsize := S_L;
tx86operand(operands[i]).size := OS_32;
end;
- msiMultiple32:
+ msiMultipleMinSize32:
begin
tx86operand(operands[i]).opsize := S_L;
tx86operand(operands[i]).size := OS_32;
@@ -857,7 +876,7 @@ begin
tx86operand(operands[i]).opsize := S_Q;
tx86operand(operands[i]).size := OS_M64;
end;
- msiMultiple64:
+ msiMultipleMinSize64:
begin
tx86operand(operands[i]).opsize := S_Q;
tx86operand(operands[i]).size := OS_M64;
@@ -869,7 +888,7 @@ begin
tx86operand(operands[i]).opsize := S_XMM;
tx86operand(operands[i]).size := OS_M128;
end;
- msiMultiple128:
+ msiMultipleMinSize128:
begin
tx86operand(operands[i]).opsize := S_XMM;
tx86operand(operands[i]).size := OS_M128;
@@ -882,7 +901,7 @@ begin
tx86operand(operands[i]).size := OS_M256;
opsize := S_YMM;
end;
- msiMultiple256:
+ msiMultipleMinSize256:
begin
tx86operand(operands[i]).opsize := S_YMM;
tx86operand(operands[i]).size := OS_M256;
@@ -896,7 +915,7 @@ begin
tx86operand(operands[i]).size := OS_M512;
opsize := S_ZMM;
end;
- msiMultiple512:
+ msiMultipleMinSize512:
begin
tx86operand(operands[i]).opsize := S_ZMM;
tx86operand(operands[i]).size := OS_M512;
@@ -1182,9 +1201,10 @@ begin
msiZMem64: ; // ignore; gather/scatter opcodes haven a fixed element-size, not a fixed memory-size
// the vector-register have indices with base of the memory-address in the memory-operand
msiNoSize: ; // all memory-sizes are ok
+ msiNoMemRef:; // ignore;
msiVMemMultiple,
msiVMemRegSize: ; // ignore
- msiUnkown,
+ msiUnknown,
msiUnsupported,
msiMultiple: Message(asmr_e_unable_to_determine_reference_size); // TODO individual message
else
@@ -1215,7 +1235,7 @@ begin
internalerror(2019050910);
end;
{$endif}
- csiUnkown, csiMultiple, csiNoSize:
+ csiUnknown, csiMultiple, csiNoSize:
;
end;
else
@@ -1869,14 +1889,13 @@ begin
asize:=OT_BITS32;
OS_64,OS_S64:
begin
- { Only FPU operations know about 64bit values, for all
- integer operations it is seen as 32bit
+ { Only FPU and SSE/AVX operations know about 64bit
+ values, for all integer operations it is seen as 32bit
- this applies only to i386, see tw16622}
+ this applies only to i386, see tw16622}
- if gas_needsuffix[opcode] in [attsufFPU,attsufFPUint] then
- asize:=OT_BITS64
- else if MemRefInfo(opcode).ExistsSSEAVX then asize:=OT_BITS64
+ if (gas_needsuffix[opcode] in [attsufFPU,attsufFPUint]) or (MemRefInfo(opcode).ExistsSSEAVX) then
+ asize:=OT_BITS64
{$ifdef i386}
else
asize:=OT_BITS32
diff --git a/compiler/x86/x86ins.dat b/compiler/x86/x86ins.dat
index 6a48f1f3dd..bd6fd1b887 100644
--- a/compiler/x86/x86ins.dat
+++ b/compiler/x86/x86ins.dat
@@ -2239,7 +2239,7 @@ xmmreg,xmmrm \331\2\x0F\x58\110 KATMAI,SSE
[ADDSS]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \333\2\x0F\x58\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x58\110 KATMAI,SSE
[ANDNPS]
(Ch_Mop2, Ch_Rop1)
@@ -2255,7 +2255,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x00 KATMAI,SSE
[CMPEQSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x00 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x00 KATMAI,SSE
[CMPLEPS]
(Ch_All)
@@ -2263,7 +2263,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x02 KATMAI,SSE
[CMPLESS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x02 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x02 KATMAI,SSE
[CMPLTPS]
(Ch_All)
@@ -2271,7 +2271,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x01 KATMAI,SSE
[CMPLTSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x01 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x01 KATMAI,SSE
[CMPNEQPS]
(Ch_All)
@@ -2279,7 +2279,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x04 KATMAI,SSE
[CMPNEQSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x04 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x04 KATMAI,SSE
[CMPNLEPS]
(Ch_All)
@@ -2287,7 +2287,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x06 KATMAI,SSE
[CMPNLESS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x06 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x06 KATMAI,SSE
[CMPNLTPS]
(Ch_All)
@@ -2295,7 +2295,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x05 KATMAI,SSE
[CMPNLTSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x05 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x05 KATMAI,SSE
[CMPORDPS]
(Ch_All)
@@ -2303,7 +2303,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x07 KATMAI,SSE
[CMPORDSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x07 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x07 KATMAI,SSE
[CMPUNORDPS]
(Ch_All)
@@ -2311,7 +2311,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x03 KATMAI,SSE
[CMPUNORDSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\xC2\110\1\x03 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\xC2\110\1\x03 KATMAI,SSE
;
; CMPPS/CMPSS must come after the specific ops; that way the disassembler will find the
@@ -2324,11 +2324,11 @@ xmmreg,xmmrm,imm \331\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2
[CMPSS]
(Ch_All)
-xmmreg,xmmrm,imm \333\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2
+xmmreg,xmmrm,imm \336\333\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2;SCL32
[COMISS]
(Ch_Rop1, Ch_Rop2, Ch_WFlags)
-xmmreg,xmmrm \2\x0F\x2F\110 KATMAI,SSE
+xmmreg,xmmrm \336\2\x0F\x2F\110 KATMAI,SSE
[CVTPI2PS]
(Ch_Wop2, Ch_Rop1)
@@ -2365,7 +2365,7 @@ xmmreg,xmmrm \331\2\x0F\x5E\110 KATMAI,SSE
[DIVSS]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \333\2\x0F\x5E\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x5E\110 KATMAI,SSE
[LDMXCSR]
(Ch_All)
@@ -2377,7 +2377,7 @@ xmmreg,xmmrm \331\2\x0F\x5F\110 KATMAI,SSE
[MAXSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\x5F\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x5F\110 KATMAI,SSE
[MINPS]
(Ch_All)
@@ -2385,7 +2385,7 @@ xmmreg,xmmrm \331\2\x0F\x5D\110 KATMAI,SSE
[MINSS]
(Ch_All)
-xmmreg,xmmrm \333\2\x0F\x5D\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x5D\110 KATMAI,SSE
[MOVAPS]
(Ch_ROp1, Ch_WOp2)
@@ -2436,7 +2436,7 @@ xmmreg,xmmrm \2\x0F\x59\110 KATMAI,SSE
[MULSS]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \333\2\x0F\x59\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x59\110 KATMAI,SSE
[ORPS]
(Ch_Mop2, Ch_Rop1)
@@ -2448,7 +2448,7 @@ xmmreg,xmmrm \331\2\x0F\x53\110 KATMAI,SSE
[RCPSS]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \333\2\x0F\x53\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x53\110 KATMAI,SSE
[RSQRTPS]
(Ch_Wop2, Ch_Rop1)
@@ -2456,7 +2456,7 @@ xmmreg,xmmrm \331\2\x0F\x52\110 KATMAI,SSE
[RSQRTSS]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \333\2\x0F\x52\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x52\110 KATMAI,SSE
[SHUFPS]
(Ch_Mop3, Ch_Rop2)
@@ -2468,7 +2468,7 @@ xmmreg,xmmrm \331\2\x0F\x51\110 KATMAI,SSE
[SQRTSS]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \333\2\x0F\x51\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x51\110 KATMAI,SSE
[STMXCSR]
(Ch_All)
@@ -2480,11 +2480,11 @@ xmmreg,xmmrm \331\2\x0F\x5C\110 KATMAI,SSE
[SUBSS]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \333\2\x0F\x5C\110 KATMAI,SSE
+xmmreg,xmmrm \336\333\2\x0F\x5C\110 KATMAI,SSE
[UCOMISS]
(Ch_Rop1, Ch_Rop2, Ch_WZeroFlag, Ch_WParityFlag, Ch_WCarryFlag, Ch_W0OverflowFlag, Ch_W0SignFlag, Ch_W0AuxiliaryFlag)
-xmmreg,xmmrm \2\x0F\x2E\110 KATMAI,SSE
+xmmreg,xmmrm \336\2\x0F\x2E\110 KATMAI,SSE
[UNPCKHPS]
(Ch_Mop2, Ch_Rop1)
@@ -2747,7 +2747,7 @@ xmmreg,xmmrm \361\2\x0F\x58\110 WILLAMETTE,SSE2,SM
[ADDSD]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \334\2\x0F\x58\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\335\334\2\x0F\x58\110 WILLAMETTE,SSE2
[ANDNPD]
(Ch_Mop2, Ch_Rop1)
@@ -2764,7 +2764,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2,SM
; note: no SM flag on CMPxxSD, they use 64-bit memory location, not 128-bit
[CMPEQSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2
[CMPLEPD]
(Ch_All)
@@ -2772,7 +2772,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2,SM
[CMPLESD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2
[CMPLTPD]
(Ch_All)
@@ -2780,7 +2780,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2,SM
[CMPLTSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2
[CMPNEQPD]
(Ch_All)
@@ -2788,7 +2788,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2,SM
[CMPNEQSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2
[CMPNLEPD]
(Ch_All)
@@ -2796,7 +2796,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2,SM
[CMPNLESD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2
[CMPNLTPD]
(Ch_All)
@@ -2804,7 +2804,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2,SM
[CMPNLTSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2
[CMPORDPD]
(Ch_All)
@@ -2812,7 +2812,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2,SM
[CMPORDSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2
[CMPUNORDPD]
(Ch_All)
@@ -2820,7 +2820,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2,SM
[CMPUNORDSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2
; CMPPD/CMPSD must come after the specific ops; that way the disassembler will find the
; specific ops first and only disassemble illegal ones as cmppd/cmpsd.
@@ -2830,7 +2830,7 @@ xmmreg,xmmrm,imm \361\2\x0F\xC2\110\26 WILLAMETTE,SSE2,SM2,SB,A
[COMISD]
(Ch_Rop1, Ch_Rop2, Ch_WFlags)
-xmmreg,xmmrm \361\2\x0F\x2F\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\361\2\x0F\x2F\110 WILLAMETTE,SSE2
[CVTDQ2PD]
(Ch_Wop2, Ch_Rop1)
@@ -2911,7 +2911,7 @@ xmmreg,xmmrm \361\2\x0F\x5E\110 WILLAMETTE,SSE2,SM
[DIVSD]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \334\2\x0F\x5E\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\x5E\110 WILLAMETTE,SSE2
[MAXPD]
(Ch_All)
@@ -2919,7 +2919,7 @@ xmmreg,xmmrm \361\2\x0F\x5F\110 WILLAMETTE,SSE2,SM
[MAXSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\x5F\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\x5F\110 WILLAMETTE,SSE2
[MINPD]
(Ch_All)
@@ -2927,7 +2927,7 @@ xmmreg,xmmrm \361\2\x0F\x5D\110 WILLAMETTE,SSE2,SM
[MINSD]
(Ch_All)
-xmmreg,xmmrm \334\2\x0F\x5D\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\x5D\110 WILLAMETTE,SSE2
[MOVAPD]
(Ch_ROp1, Ch_WOp2)
@@ -2959,7 +2959,7 @@ xmmreg,xmmrm \361\2\x0F\x59\110 WILLAMETTE,SSE2,SM
[MULSD]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \334\2\x0F\x59\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\x59\110 WILLAMETTE,SSE2
[ORPD]
(Ch_Mop2, Ch_Rop1)
@@ -2975,7 +2975,7 @@ xmmreg,xmmrm \361\2\x0F\x51\110 WILLAMETTE,SSE2,SM
[SQRTSD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \334\2\x0F\x51\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\x51\110 WILLAMETTE,SSE2
[SUBPD]
@@ -2984,11 +2984,11 @@ xmmreg,xmmrm \361\2\x0F\x5C\110 WILLAMETTE,SSE2,SM
[SUBSD]
(Ch_Mop2, Ch_Rop1)
-xmmreg,xmmrm \334\2\x0F\x5C\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\334\2\x0F\x5C\110 WILLAMETTE,SSE2
[UCOMISD]
(Ch_Rop1, Ch_Rop2, Ch_WZeroFlag, Ch_WParityFlag, Ch_WCarryFlag, Ch_W0OverflowFlag, Ch_W0SignFlag, Ch_W0AuxiliaryFlag)
-xmmreg,xmmrm \361\2\x0F\x2E\110 WILLAMETTE,SSE2
+xmmreg,xmmrm \337\361\2\x0F\x2E\110 WILLAMETTE,SSE2
[UNPCKHPD]
(Ch_All)
@@ -3186,11 +3186,11 @@ mem \326\2\x0F\xC7\201 X86_64
;
[MOVNTSS]
(Ch_All)
-mem,xmmreg \333\2\x0F\x2B\101 SSE4,SD
+mem,xmmreg \336\333\2\x0F\x2B\101 SSE4,SD
[MOVNTSD]
(Ch_All)
-mem,xmmreg \334\325\2\x0F\x2B\101 SSE4 ;,SQ
+mem,xmmreg \337\334\325\2\x0F\x2B\101 SSE4 ;,SQ
[INSERTQ]
(Ch_All)
@@ -3488,11 +3488,11 @@ xmmreg,xmmrm,imm \361\3\x0F\x3A\x09\110\26 SSE41,SM2,SB,AR2
[ROUNDSS]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm,imm \361\3\x0F\x3A\x0A\110\26 SSE41,SM2,SB,AR2
+xmmreg,xmmrm,imm \336\361\3\x0F\x3A\x0A\110\26 SSE41,SM2,SB,AR2
[ROUNDSD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm,imm \361\3\x0F\x3A\x0B\110\26 SSE41,SM2,SB,AR2
+xmmreg,xmmrm,imm \337\361\3\x0F\x3A\x0B\110\26 SSE41,SM2,SB,AR2
;*******************************************************************************
;**********SSE4.2***************************************************************
@@ -3627,7 +3627,7 @@ zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x58\75\120 AV
[VADDSD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x58\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,mem64 \337\334\350\352\362\370\1\x58\75\120 AVX,SANDYBRIDGE,T1S
xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x58\75\120 AVX,SANDYBRIDGE
@@ -4128,8 +4128,7 @@ xmmreg,xmmreg,mem64,imm8 \334\362\370\1\xC2\75\120\27
(Ch_All)
kreg_m,xmmreg,mem32,imm8 \333\350\370\1\xC2\75\120\27 AVX512,T1S
kreg_m,xmmreg,xmmreg_sae,imm8 \333\350\370\1\xC2\75\120\27 AVX512
-xmmreg,xmmreg,xmmreg,imm8 \333\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
-xmmreg,xmmreg,mem64,imm8 \333\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,xmmrm,imm8 \336\333\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
[VCOMISD]
(Ch_Rop1, Ch_Rop2, Ch_WFlags)
@@ -4170,25 +4169,25 @@ zmmreg_mz,zmmreg_er \350\351\370\1\x5B\110
[VCVTPD2DQ,vcvtpd2dqM]
(Ch_Wop2, Ch_Rop1)
-xmmreg_mz,mem128 \334\350\352\362\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
-xmmreg_mz,mem256 \334\350\352\362\364\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
-xmmreg_mz,xmmreg \334\350\352\362\370\1\xE6\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \334\350\352\362\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,ymmrm \334\350\352\362\364\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,bmem64 \334\350\352\370\1\xE6\110 AVX512,BCST2,TFV
xmmreg_mz,bmem64 \334\350\352\364\370\1\xE6\110 AVX512,BCST4,TFV
-xmmreg_mz,ymmreg \334\350\352\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
+
ymmreg_mz,mem512 \334\350\351\352\370\1\xE6\110 AVX512,TFV
ymmreg_mz,bmem64 \334\350\351\352\370\1\xE6\110 AVX512,BCST8,TFV
ymmreg_mz,zmmreg_er \334\350\351\352\370\1\xE6\110 AVX512
+; VCVTPD2PS xmmreg_mz,mem256 must come first - map MemRefSize 256bits correct
+; map all other MemrefSize (without broasdcast MemRef) to xmmreg, xmmrm
[VCVTPD2PS,vcvtpd2psM]
(Ch_Wop2, Ch_Rop1)
-xmmreg_mz,mem128 \350\352\361\362\370\1\x5A\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,mem256 \350\352\361\362\364\370\1\x5A\110 AVX,SANDYBRIDGE,TFV
-xmmreg_mz,xmmreg \350\352\361\362\370\1\x5A\110 AVX,SANDYBRIDGE
+xmmreg_mz,ymmreg \350\352\361\362\364\370\1\x5A\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \350\352\361\362\370\1\x5A\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,bmem64 \350\352\361\370\1\x5A\110 AVX512,BCST2,TFV
xmmreg_mz,bmem64 \350\352\361\364\370\1\x5A\110 AVX512,BCST4,TFV
-xmmreg_mz,ymmreg \350\352\361\362\364\370\1\x5A\110 AVX,SANDYBRIDGE
ymmreg_mz,mem512 \350\351\352\361\370\1\x5A\110 AVX512,TFV
ymmreg_mz,bmem64 \350\351\352\361\370\1\x5A\110 AVX512,BCST8,TFV
ymmreg_mz,zmmreg_er \350\351\352\361\370\1\x5A\110 AVX512
@@ -4205,11 +4204,9 @@ zmmreg_mz,ymmreg_sae \350\351\361\371\1\x13\110
[VCVTPS2DQ]
(Ch_Wop2, Ch_Rop1)
-xmmreg_mz,mem128 \350\361\362\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
-xmmreg_mz,xmmreg \350\361\362\370\1\x5B\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \350\361\362\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmrm \350\361\362\364\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,bmem32 \350\361\370\1\x5B\110 AVX512,TFV
-ymmreg_mz,mem256 \350\361\362\364\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
-ymmreg_mz,ymmreg \350\361\362\364\370\1\x5B\110 AVX,SANDYBRIDGE
ymmreg_mz,bmem32 \350\361\364\370\1\x5B\110 AVX512,TFV
zmmreg_mz,mem512 \350\351\361\370\1\x5B\110 AVX512,TFV
zmmreg_mz,bmem32 \350\351\361\370\1\x5B\110 AVX512,TFV
@@ -4221,8 +4218,7 @@ zmmreg_mz,zmmreg_er \350\351\361\370\1\x5B\110
xmmreg_mz,mem64 \350\362\370\1\x5A\110 AVX,SANDYBRIDGE,THV
xmmreg_mz,xmmreg \350\362\370\1\x5A\110 AVX,SANDYBRIDGE
xmmreg_mz,bmem32 \350\370\1\x5A\110 AVX512,BCST2,THV
-ymmreg_mz,mem128 \350\362\364\370\1\x5A\110 AVX,SANDYBRIDGE,THV
-ymmreg_mz,xmmreg \350\362\364\370\1\x5A\110 AVX,SANDYBRIDGE
+ymmreg_mz,xmmrm \350\362\364\370\1\x5A\110 AVX,SANDYBRIDGE,THV
ymmreg_mz,bmem32 \350\364\370\1\x5A\110 AVX512,BCST4,THV
zmmreg_mz,mem256 \350\351\370\1\x5A\110 AVX512,THV
zmmreg_mz,ymmreg_sae \350\351\370\1\x5A\110 AVX512
@@ -4282,15 +4278,15 @@ reg32,xmmreg_er \333\350\362\370\1\x2D\110
reg64,mem32 \333\350\352\362\363\370\1\x2D\110 AVX,SANDYBRIDGE,T1F32
reg64,xmmreg_er \333\350\352\362\363\370\1\x2D\110 AVX,SANDYBRIDGE
-
+; VCVTTPD2DQ xmmreg_mz,mem256 must come first - map MemRefSize 256bits correct
+; map all other MemrefSize (without broasdcast MemRef) to xmmreg, xmmrm
[VCVTTPD2DQ,vcvttpd2dqM]
(Ch_Wop2, Ch_Rop1)
-xmmreg_mz,mem128 \350\352\361\362\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512,TFV
xmmreg_mz,mem256 \350\352\361\362\364\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512,TFV
-xmmreg_mz,xmmreg \350\352\361\362\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512
+xmmreg_mz,ymmreg \350\352\361\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \350\352\361\362\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512,TFV
xmmreg_mz,bmem64 \350\352\361\370\1\xE6\110 AVX512,BCST2,TFV
xmmreg_mz,bmem64 \350\352\361\364\370\1\xE6\110 AVX512,BCST4,TFV
-xmmreg_mz,ymmreg \350\352\361\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
ymmreg_mz,mem512 \350\351\352\361\370\1\xE6\110 AVX512,TFV
ymmreg_mz,bmem64 \350\351\352\361\370\1\xE6\110 AVX512,BCST8,TFV
ymmreg_mz,zmmreg_sae \350\351\352\361\370\1\xE6\110 AVX512
@@ -4503,34 +4499,22 @@ xmmreg_mz,xmmreg,xmmreg_sae \333\350\362\370\1\x5D\75\120
[VMOVAPD]
(Ch_Wop2, Ch_Rop1)
-mem128_m,xmmreg \350\352\361\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
-mem256_m,ymmreg \350\352\361\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
-mem512_m,zmmreg \350\351\352\361\370\1\x29\101 AVX512,TFVM
-xmmreg_mz,mem128 \350\352\361\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
-xmmreg_mz,xmmreg \350\352\361\362\370\1\x29\101 AVX,SANDYBRIDGE
-xmmreg_mz,xmmreg \350\352\361\362\370\1\x28\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem256 \350\352\361\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
-ymmreg_mz,ymmreg \350\352\361\362\364\370\1\x29\101 AVX,SANDYBRIDGE
-ymmreg_mz,ymmreg \350\352\361\362\364\370\1\x28\110 AVX,SANDYBRIDGE
-zmmreg_mz,mem512 \350\351\352\361\370\1\x28\110 AVX512,TFVM
-zmmreg_mz,zmmreg \350\351\352\361\370\1\x28\110 AVX512
-zmmreg_mz,zmmreg \350\351\352\361\370\1\x29\101 AVX512
+xmmrm_mz,xmmreg \350\352\361\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
+ymmrm_mz,ymmreg \350\352\361\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
+zmmrm_mz,zmmreg \350\351\352\361\370\1\x29\101 AVX512,TFVM
+xmmreg_mz,xmmrm \350\352\361\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm \350\352\361\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
+zmmreg_mz,zmmrm \350\351\352\361\370\1\x28\110 AVX512,TFVM
[VMOVAPS]
(Ch_Wop2, Ch_Rop1)
-mem128_m,xmmreg \350\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
-mem256_m,ymmreg \350\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
-mem512_m,zmmreg \350\351\370\1\x29\101 AVX512,TFVM
-xmmreg_mz,mem128 \350\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
-xmmreg_mz,xmmreg \350\362\370\1\x29\101 AVX,SANDYBRIDGE
-xmmreg_mz,xmmreg \350\362\370\1\x28\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem256 \350\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
-ymmreg_mz,ymmreg \350\362\364\370\1\x28\110 AVX,SANDYBRIDGE
-ymmreg_mz,ymmreg \350\362\364\370\1\x29\101 AVX,SANDYBRIDGE
-zmmreg_mz,mem512 \350\351\370\1\x28\110 AVX512,TFVM
-zmmreg_mz,zmmreg \350\351\370\1\x29\101 AVX512
-zmmreg_mz,zmmreg \350\351\370\1\x28\110 AVX512
+xmmrm_mz,xmmreg \350\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
+ymmrm_mz,ymmreg \350\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
+zmmrm_mz,zmmreg \350\351\370\1\x29\101 AVX512,TFVM
+xmmreg_mz,xmmrm \350\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm \350\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
+zmmreg_mz,zmmrm \350\351\370\1\x28\110 AVX512,TFVM
[VMOVD]
@@ -4678,28 +4662,21 @@ xmmreg_mz,xmmreg,xmmreg \333\350\362\370\1\x10\75\120
[VMOVUPD]
(Ch_Wop2, Ch_Rop1)
-mem128_m,xmmreg \350\352\361\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
-mem256_m,ymmreg \350\352\361\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
-mem512_m,zmmreg \350\351\352\361\370\1\x11\101 AVX512,TFVM
-xmmreg_mz,xmmreg \350\352\361\362\370\1\x11\101 AVX,SANDYBRIDGE
+xmmrm_mz,xmmreg \350\352\361\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
+ymmrm_mz,ymmreg \350\352\361\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
+zmmrm_mz,zmmreg \350\351\352\361\370\1\x11\101 AVX512,TFVM
xmmreg_mz,xmmrm \350\352\361\362\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
-ymmreg_mz,ymmreg \350\352\361\362\364\370\1\x11\101 AVX,SANDYBRIDGE
ymmreg_mz,ymmrm \350\352\361\362\364\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
-zmmreg_mz,zmmreg \350\351\352\361\370\1\x11\101 AVX512
zmmreg_mz,zmmrm \350\351\352\361\370\1\x10\110 AVX512,TFVM
-
[VMOVUPS]
(Ch_Wop2, Ch_Rop1)
-mem128_m,xmmreg \350\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
-mem256_m,ymmreg \350\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
-mem512_m,zmmreg \350\351\370\1\x11\101 AVX512,TFVM
-xmmreg_mz,xmmreg \350\362\370\1\x11\101 AVX,SANDYBRIDGE
+xmmrm_mz,xmmreg \350\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
+ymmrm_mz,ymmreg \350\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
+zmmrm_mz,zmmreg \350\351\370\1\x11\101 AVX512,TFVM
xmmreg_mz,xmmrm \350\362\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
-ymmreg_mz,ymmreg \350\362\364\370\1\x11\101 AVX,SANDYBRIDGE
ymmreg_mz,ymmrm \350\362\364\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
-zmmreg_mz,zmmreg \350\351\370\1\x11\101 AVX512
zmmreg_mz,zmmrm \350\351\370\1\x10\110 AVX512,TFVM
@@ -5294,30 +5271,24 @@ zmmreg_mz,xmmreg \350\351\361\371\1\x22\110
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x20\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x20\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem128 \350\361\362\364\371\1\x20\110 AVX2,THVM
-ymmreg_mz,xmmreg \350\361\362\364\371\1\x20\110 AVX2
-zmmreg_mz,mem256 \350\351\361\371\1\x20\110 AVX512,THVM
-zmmreg_mz,ymmreg \350\351\361\371\1\x20\110 AVX512
+ymmreg_mz,xmmrm \350\361\362\364\371\1\x20\110 AVX2,THVM
+zmmreg_mz,ymmrm \350\351\361\371\1\x20\110 AVX512,THVM
[VPMOVSXDQ]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x25\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x25\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem128 \350\361\362\364\371\1\x25\110 AVX2,THVM
-ymmreg_mz,xmmreg \350\361\362\364\371\1\x25\110 AVX2
-zmmreg_mz,mem256 \350\351\361\371\1\x25\110 AVX512,THVM
-zmmreg_mz,ymmreg \350\351\361\371\1\x25\110 AVX512
+ymmreg_mz,xmmrm \350\361\362\364\371\1\x25\110 AVX2,THVM
+zmmreg_mz,ymmrm \350\351\361\371\1\x25\110 AVX512,THVM
[VPMOVSXWD]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x23\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x23\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem128 \350\361\362\364\371\1\x23\110 AVX2,THVM
-ymmreg_mz,xmmreg \350\361\362\364\371\1\x23\110 AVX2
-zmmreg_mz,mem256 \350\351\361\371\1\x23\110 AVX512,THVM
-zmmreg_mz,ymmreg \350\351\361\371\1\x23\110 AVX512
+ymmreg_mz,xmmrm \350\361\362\364\371\1\x23\110 AVX2,THVM
+zmmreg_mz,ymmrm \350\351\361\371\1\x23\110 AVX512,THVM
[VPMOVSXWQ]
@@ -5326,8 +5297,8 @@ xmmreg_mz,mem32 \350\361\362\371\1\x24\110
xmmreg_mz,xmmreg \350\361\362\371\1\x24\110 AVX,SANDYBRIDGE
ymmreg_mz,mem64 \350\361\362\364\371\1\x24\110 AVX2,TQVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x24\110 AVX2
-zmmreg_mz,mem128 \350\351\361\371\1\x24\110 AVX512,TQVM
-zmmreg_mz,xmmreg \350\351\361\371\1\x24\110 AVX512
+zmmreg_mz,xmmrm \350\351\361\371\1\x24\110 AVX512,TQVM
+
[VPMOVZXBD]
@@ -5336,8 +5307,7 @@ xmmreg_mz,mem32 \350\361\362\371\1\x31\110
xmmreg_mz,xmmreg \350\361\362\371\1\x31\110 AVX,SANDYBRIDGE
ymmreg_mz,mem64 \350\361\362\364\371\1\x31\110 AVX2,TQVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x31\110 AVX2
-zmmreg_mz,mem128 \350\351\361\371\1\x31\110 AVX512,TQVM
-zmmreg_mz,xmmreg \350\351\361\371\1\x31\110 AVX512
+zmmreg_mz,xmmrm \350\351\361\371\1\x31\110 AVX512,TQVM
[VPMOVZXBQ]
@@ -5354,30 +5324,24 @@ zmmreg_mz,xmmreg \350\351\361\371\1\x32\110
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x30\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x30\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem128 \350\361\362\364\371\1\x30\110 AVX2,THVM
-ymmreg_mz,xmmreg \350\361\362\364\371\1\x30\110 AVX2
-zmmreg_mz,mem256 \350\351\361\371\1\x30\110 AVX512,THVM
-zmmreg_mz,ymmreg \350\351\361\371\1\x30\110 AVX512
+ymmreg_mz,xmmrm \350\361\362\364\371\1\x30\110 AVX2,THVM
+zmmreg_mz,ymmrm \350\351\361\371\1\x30\110 AVX512,THVM
[VPMOVZXDQ]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x35\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x35\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem128 \350\361\362\364\371\1\x35\110 AVX2,THVM
-ymmreg_mz,xmmreg \350\361\362\364\371\1\x35\110 AVX2
-zmmreg_mz,mem256 \350\351\361\371\1\x35\110 AVX512,THVM
-zmmreg_mz,ymmreg \350\351\361\371\1\x35\110 AVX512
+ymmreg_mz,xmmrm \350\361\362\364\371\1\x35\110 AVX2,THVM
+zmmreg_mz,ymmrm \350\351\361\371\1\x35\110 AVX512,THVM
[VPMOVZXWD]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x33\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x33\110 AVX,SANDYBRIDGE
-ymmreg_mz,mem128 \350\361\362\364\371\1\x33\110 AVX2,THVM
-ymmreg_mz,xmmreg \350\361\362\364\371\1\x33\110 AVX2
-zmmreg_mz,mem256 \350\351\361\371\1\x33\110 AVX512,THVM
-zmmreg_mz,ymmreg \350\351\361\371\1\x33\110 AVX512
+ymmreg_mz,xmmrm \350\361\362\364\371\1\x33\110 AVX2,THVM
+zmmreg_mz,ymmrm \350\351\361\371\1\x33\110 AVX512,THVM
[VPMOVZXWQ]
@@ -6176,15 +6140,14 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x36\75\120
[VPERMPD]
(Ch_All)
-ymmreg_mz,mem256,imm8 \350\352\361\362\363\364\372\1\x01\110\26 AVX2,TFV
-ymmreg_mz,ymmreg,imm8 \350\352\361\362\363\364\372\1\x01\110\26 AVX2,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\362\363\364\372\1\x01\110\26 AVX2,TFV
ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x01\110\26 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x16\75\120 AVX512,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x16\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x16\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x16\75\120 AVX512,TFV
-zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
-zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
[VPERMPS]
@@ -6197,14 +6160,14 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x16\75\120
[VPERMQ]
(Ch_All)
-ymmreg_mz,ymmrm,imm8 \350\352\361\362\363\364\372\1\x00\110\26 AVX2,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\362\363\364\372\1\x00\110\26 AVX2,TFV
ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x00\110\26 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x36\75\120 AVX512,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x36\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x36\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x36\75\120 AVX512,TFV
-zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
-zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
[VPMASKMOVD]
@@ -6235,7 +6198,7 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x47\75\120
(Ch_All)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x47\75\120 AVX2,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x47\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x47\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x47\75\120 AVX2,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x47\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x47\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x47\75\120 AVX512,TFV
@@ -6265,7 +6228,7 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x45\75\120
(Ch_All)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x45\75\120 AVX2,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x45\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x45\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x45\75\120 AVX2,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x45\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x45\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x45\75\120 AVX512,TFV
@@ -6431,7 +6394,7 @@ xmmreg,xmmreg,xmmreg,xmmrm \361\362\372\363\1\x69\75\130\366 FMA4
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x98\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x98\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x98\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x98\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x98\75\120 AVX512,TFV
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\x98\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x98\75\120 AVX512,TFV
@@ -6449,19 +6412,19 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x98\75\120
[VFMADD132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x99\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\x99\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x99\75\120 FMA
[VFMADD132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x99\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x99\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\x99\75\120 FMA,T1S
[VFMADD213PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xA8\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xA8\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xA8\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xA8\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xA8\75\120 AVX512,TFV
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xA8\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xA8\75\120 AVX512,TFV
@@ -6479,19 +6442,19 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xA8\75\120
[VFMADD213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xA9\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\xA9\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xA9\75\120 FMA
[VFMADD213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xA9\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xA9\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xA9\75\120 FMA,T1S
[VFMADD231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xB8\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xB8\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xB8\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xB8\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xB8\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xB8\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xB8\75\120 AVX512,TFV
@@ -6510,18 +6473,18 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xB8\75\120
[VFMADD231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xB9\75\120 FMA
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xB9\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\xB9\75\120 FMA,T1S
[VFMADD231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xB9\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xB9\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xB9\75\120 FMA,T1S
[VFMADDSUB132PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x96\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x96\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x96\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x96\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x96\75\120 AVX512,TFV
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\x96\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x96\75\120 AVX512,TFV
@@ -6541,7 +6504,7 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x96\75\120
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xA6\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xA6\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xA6\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xA6\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xA6\75\120 AVX512,TFV
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xA6\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xA6\75\120 AVX512,TFV
@@ -6561,7 +6524,7 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xA6\75\120
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xB6\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xB6\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xB6\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xB6\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xB6\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xB6\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xB6\75\120 AVX512,TFV
@@ -6581,7 +6544,7 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xB6\75\120
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x9A\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x9A\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x9A\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x9A\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x9A\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\x9A\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\x9A\75\120 AVX512,TFV
@@ -6600,18 +6563,18 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x9A\75\120
[VFMSUB132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x9B\75\120 FMA
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x9B\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\x9B\75\120 FMA,T1S
[VFMSUB132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9B\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\x9B\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9B\75\120 FMA
[VFMSUB213PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xAA\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xAA\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xAA\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xAA\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xAA\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xAA\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xAA\75\120 AVX512,TFV
@@ -6630,18 +6593,18 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xAA\75\120
[VFMSUB213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xAB\75\120 FMA
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xAB\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\xAB\75\120 FMA,T1S
[VFMSUB213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xAB\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xAB\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xAB\75\120 FMA,T1S
[VFMSUB231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xBA\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xBA\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xBA\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xBA\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xBA\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xBA\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xBA\75\120 AVX512,TFV
@@ -6660,18 +6623,18 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBA\75\120
[VFMSUB231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xBB\75\120 FMA
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xBB\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\xBB\75\120 FMA,T1S
[VFMSUB231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xBB\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xBB\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xBB\75\120 FMA
[VFMSUBADD132PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x97\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x97\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x97\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x97\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x97\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\x97\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\x97\75\120 AVX512,TFV
@@ -6691,7 +6654,7 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x97\75\120
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xA7\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xA7\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xA7\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xA7\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xA7\75\120 AVX512,TFV
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xA7\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xA7\75\120 AVX512,TFV
@@ -6711,7 +6674,7 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xA7\75\120
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xB7\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xB7\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xB7\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xB7\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xB7\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xB7\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xB7\75\120 AVX512,TFV
@@ -6731,7 +6694,7 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xB7\75\120
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x9C\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x9C\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x9C\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x9C\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x9C\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\x9C\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\x9C\75\120 AVX512,TFV
@@ -6749,19 +6712,19 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x9C\75\120
[VFNMADD132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x9D\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\x9D\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x9D\75\120 FMA
[VFNMADD132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9D\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\x9D\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9D\75\120 FMA
[VFNMADD213PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xAC\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xAC\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xAC\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xAC\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xAC\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xAC\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xAC\75\120 AVX512,TFV
@@ -6780,18 +6743,18 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xAC\75\120
[VFNMADD213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xAD\75\120 FMA
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xAD\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\xAD\75\120 FMA,T1S
[VFNMADD213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xAD\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xAD\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xAD\75\120 FMA,T1S
[VFNMADD231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xBC\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xBC\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xBC\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xBC\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xBC\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xBC\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xBC\75\120 AVX512,TFV
@@ -6809,19 +6772,19 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBC\75\120
[VFNMADD231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem64 \361\362\363\371\1\xBD\75\120 FMA
+xmmreg,xmmreg,xmmrm \337\361\362\363\371\1\xBD\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xBD\75\120 FMA
[VFNMADD231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg,xmmreg,xmmreg \361\362\371\1\xBD\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xBD\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xBD\75\120 FMA,T1S
[VFNMSUB132PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x9E\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x9E\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x9E\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\x9E\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x9E\75\120 AVX512,TFV
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\x9E\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x9E\75\120 AVX512,TFV
@@ -6839,19 +6802,19 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x9E\75\120
[VFNMSUB132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x9F\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\x9F\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x9F\75\120 FMA
[VFNMSUB132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9F\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9F\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\x9F\75\120 FMA,T1S
[VFNMSUB213PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xAE\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xAE\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xAE\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xAE\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xAE\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xAE\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xAE\75\120 AVX512,TFV
@@ -6869,19 +6832,19 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xAE\75\120
[VFNMSUB213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xAF\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\xAF\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xAF\75\120 FMA
[VFNMSUB213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xAF\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xAF\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xAF\75\120 FMA
[VFNMSUB231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xBE\75\120 FMA,TFV
xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xBE\75\120 AVX512,TFV
-ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xBE\75\120 FMA,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\363\364\371\1\xBE\75\120 FMA,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xBE\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xBE\75\120 AVX512
zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\xBE\75\120 AVX512,TFV
@@ -6900,12 +6863,12 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBE\75\120
[VFNMSUB231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xBF\75\120 FMA
-xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xBF\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \337\350\352\361\362\363\371\1\xBF\75\120 FMA,T1S
[VFNMSUB231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xBF\75\120 FMA
-xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xBF\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmrm \336\350\361\362\371\1\xBF\75\120 FMA,T1S
;*******************************************************************************
diff --git a/compiler/x86_64/x8664nop.inc b/compiler/x86_64/x8664nop.inc
index 9ae12e45f6..5617f99b9a 100644
--- a/compiler/x86_64/x8664nop.inc
+++ b/compiler/x86_64/x8664nop.inc
@@ -1,2 +1,2 @@
{ don't edit, this file is generated from x86ins.dat }
-4117;
+4076;
diff --git a/compiler/x86_64/x8664tab.inc b/compiler/x86_64/x8664tab.inc
index 9f024689ad..5a065eea1a 100644
--- a/compiler/x86_64/x8664tab.inc
+++ b/compiler/x86_64/x8664tab.inc
@@ -6353,7 +6353,7 @@
opcode : A_ADDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#88#72;
+ code : #222#219#2#15#88#72;
flags : [if_katmai,if_sse]
),
(
@@ -6381,7 +6381,7 @@
opcode : A_CMPEQSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#0;
+ code : #222#219#2#15#194#72#1#0;
flags : [if_katmai,if_sse]
),
(
@@ -6395,7 +6395,7 @@
opcode : A_CMPLESS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#2;
+ code : #222#219#2#15#194#72#1#2;
flags : [if_katmai,if_sse]
),
(
@@ -6409,7 +6409,7 @@
opcode : A_CMPLTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#1;
+ code : #222#219#2#15#194#72#1#1;
flags : [if_katmai,if_sse]
),
(
@@ -6423,7 +6423,7 @@
opcode : A_CMPNEQSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#4;
+ code : #222#219#2#15#194#72#1#4;
flags : [if_katmai,if_sse]
),
(
@@ -6437,7 +6437,7 @@
opcode : A_CMPNLESS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#6;
+ code : #222#219#2#15#194#72#1#6;
flags : [if_katmai,if_sse]
),
(
@@ -6451,7 +6451,7 @@
opcode : A_CMPNLTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#5;
+ code : #222#219#2#15#194#72#1#5;
flags : [if_katmai,if_sse]
),
(
@@ -6465,7 +6465,7 @@
opcode : A_CMPORDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#7;
+ code : #222#219#2#15#194#72#1#7;
flags : [if_katmai,if_sse]
),
(
@@ -6479,7 +6479,7 @@
opcode : A_CMPUNORDSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#194#72#1#3;
+ code : #222#219#2#15#194#72#1#3;
flags : [if_katmai,if_sse]
),
(
@@ -6493,14 +6493,14 @@
opcode : A_CMPSS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #219#2#15#194#72#18;
+ code : #222#219#2#15#194#72#18;
flags : [if_katmai,if_sse,if_sb,if_ar2]
),
(
opcode : A_COMISS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #2#15#47#72;
+ code : #222#2#15#47#72;
flags : [if_katmai,if_sse]
),
(
@@ -6591,7 +6591,7 @@
opcode : A_DIVSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#94#72;
+ code : #222#219#2#15#94#72;
flags : [if_katmai,if_sse]
),
(
@@ -6612,7 +6612,7 @@
opcode : A_MAXSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#95#72;
+ code : #222#219#2#15#95#72;
flags : [if_katmai,if_sse]
),
(
@@ -6626,7 +6626,7 @@
opcode : A_MINSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#93#72;
+ code : #222#219#2#15#93#72;
flags : [if_katmai,if_sse]
),
(
@@ -6752,7 +6752,7 @@
opcode : A_MULSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#89#72;
+ code : #222#219#2#15#89#72;
flags : [if_katmai,if_sse]
),
(
@@ -6773,7 +6773,7 @@
opcode : A_RCPSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#83#72;
+ code : #222#219#2#15#83#72;
flags : [if_katmai,if_sse]
),
(
@@ -6787,7 +6787,7 @@
opcode : A_RSQRTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#82#72;
+ code : #222#219#2#15#82#72;
flags : [if_katmai,if_sse]
),
(
@@ -6808,7 +6808,7 @@
opcode : A_SQRTSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#81#72;
+ code : #222#219#2#15#81#72;
flags : [if_katmai,if_sse]
),
(
@@ -6829,14 +6829,14 @@
opcode : A_SUBSS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#2#15#92#72;
+ code : #222#219#2#15#92#72;
flags : [if_katmai,if_sse]
),
(
opcode : A_UCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #2#15#46#72;
+ code : #222#2#15#46#72;
flags : [if_katmai,if_sse]
),
(
@@ -7368,7 +7368,7 @@
opcode : A_ADDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#88#72;
+ code : #223#221#220#2#15#88#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7396,7 +7396,7 @@
opcode : A_CMPEQSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#0;
+ code : #223#220#2#15#194#72#1#0;
flags : [if_willamette,if_sse2]
),
(
@@ -7410,7 +7410,7 @@
opcode : A_CMPLESD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#2;
+ code : #223#220#2#15#194#72#1#2;
flags : [if_willamette,if_sse2]
),
(
@@ -7424,7 +7424,7 @@
opcode : A_CMPLTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#1;
+ code : #223#220#2#15#194#72#1#1;
flags : [if_willamette,if_sse2]
),
(
@@ -7438,7 +7438,7 @@
opcode : A_CMPNEQSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#4;
+ code : #223#220#2#15#194#72#1#4;
flags : [if_willamette,if_sse2]
),
(
@@ -7452,7 +7452,7 @@
opcode : A_CMPNLESD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#6;
+ code : #223#220#2#15#194#72#1#6;
flags : [if_willamette,if_sse2]
),
(
@@ -7466,7 +7466,7 @@
opcode : A_CMPNLTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#5;
+ code : #223#220#2#15#194#72#1#5;
flags : [if_willamette,if_sse2]
),
(
@@ -7480,7 +7480,7 @@
opcode : A_CMPORDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#7;
+ code : #223#220#2#15#194#72#1#7;
flags : [if_willamette,if_sse2]
),
(
@@ -7494,7 +7494,7 @@
opcode : A_CMPUNORDSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#194#72#1#3;
+ code : #223#220#2#15#194#72#1#3;
flags : [if_willamette,if_sse2]
),
(
@@ -7508,7 +7508,7 @@
opcode : A_COMISD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#2#15#47#72;
+ code : #223#241#2#15#47#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7697,7 +7697,7 @@
opcode : A_DIVSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#94#72;
+ code : #223#220#2#15#94#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7711,7 +7711,7 @@
opcode : A_MAXSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#95#72;
+ code : #223#220#2#15#95#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7725,7 +7725,7 @@
opcode : A_MINSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#93#72;
+ code : #223#220#2#15#93#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7802,7 +7802,7 @@
opcode : A_MULSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#89#72;
+ code : #223#220#2#15#89#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7830,7 +7830,7 @@
opcode : A_SQRTSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#81#72;
+ code : #223#220#2#15#81#72;
flags : [if_willamette,if_sse2]
),
(
@@ -7844,14 +7844,14 @@
opcode : A_SUBSD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#2#15#92#72;
+ code : #223#220#2#15#92#72;
flags : [if_willamette,if_sse2]
),
(
opcode : A_UCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#2#15#46#72;
+ code : #223#241#2#15#46#72;
flags : [if_willamette,if_sse2]
),
(
@@ -8194,14 +8194,14 @@
opcode : A_MOVNTSS;
ops : 2;
optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
- code : #219#2#15#43#65;
+ code : #222#219#2#15#43#65;
flags : [if_sse4,if_sd]
),
(
opcode : A_MOVNTSD;
ops : 2;
optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
- code : #220#213#2#15#43#65;
+ code : #223#220#213#2#15#43#65;
flags : [if_sse4]
),
(
@@ -8845,14 +8845,14 @@
opcode : A_ROUNDSS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #241#3#15#58#10#72#22;
+ code : #222#241#3#15#58#10#72#22;
flags : [if_sse41,if_sm2,if_sb,if_ar2]
),
(
opcode : A_ROUNDSD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
- code : #241#3#15#58#11#72#22;
+ code : #223#241#3#15#58#11#72#22;
flags : [if_sse41,if_sm2,if_sb,if_ar2]
),
(
@@ -9132,7 +9132,7 @@
opcode : A_VADDSD;
ops : 3;
optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#232#234#242#248#1#88#61#80;
+ code : #223#220#232#234#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge,if_t1s]
),
(
@@ -10594,15 +10594,8 @@
(
opcode : A_VCMPSS;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
- code : #219#242#248#1#194#61#80#23;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCMPSS;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
- code : #219#242#248#1#194#61#80#23;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #222#219#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
@@ -10748,27 +10741,20 @@
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #220#232#234#242#248#1#230#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #220#232#234#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #220#232#234#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2DQ;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
code : #220#232#234#248#1#230#72;
flags : [if_avx512,if_bcst2,if_tfv]
@@ -10783,13 +10769,6 @@
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #220#232#234#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #220#232#233#234#248#1#230#72;
flags : [if_avx512,if_tfv]
@@ -10811,23 +10790,23 @@
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
- code : #232#234#241#242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#90#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge,if_tfv]
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#90#72;
- flags : [if_avx,if_sandybridge]
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPD2PS;
@@ -10846,13 +10825,6 @@
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPD2PS;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #232#233#234#241#248#1#90#72;
flags : [if_avx512,if_tfv]
@@ -10916,16 +10888,16 @@
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#248#1#91#72;
flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTPS2DQ;
@@ -10937,20 +10909,6 @@
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
- code : #232#241#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge,if_tfv]
- ),
- (
- opcode : A_VCVTPS2DQ;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#241#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPS2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
code : #232#241#244#248#1#91#72;
flags : [if_avx512,if_tfv]
@@ -11000,20 +10958,13 @@
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#244#248#1#90#72;
flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#244#248#1#90#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTPS2PD;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
code : #232#244#248#1#90#72;
flags : [if_avx512,if_bcst4,if_thv]
@@ -11224,23 +11175,23 @@
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
- code : #232#234#241#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#230#72;
- flags : [if_avx,if_sandybridge,if_avx512]
+ flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
@@ -11259,13 +11210,6 @@
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VCVTTPD2DQ;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
code : #232#233#234#241#248#1#230#72;
flags : [if_avx512,if_tfv]
@@ -11980,172 +11924,88 @@
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#234#241#242#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#234#241#248#1#41#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#234#241#242#244#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#234#241#248#1#40#72;
flags : [if_avx512,if_tfvm]
),
(
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#40#72;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVAPD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#41#65;
- flags : [if_avx512]
- ),
- (
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#242#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#242#244#248#1#41#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#248#1#41#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#242#244#248#1#40#72;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#40#72;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#41#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#248#1#40#72;
flags : [if_avx512,if_tfvm]
),
(
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#41#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVAPS;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#40#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VMOVD;
ops : 2;
optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_none,ot_none);
@@ -12596,34 +12456,27 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#234#241#242#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#234#241#242#244#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#234#241#248#1#17#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#234#241#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#234#241#242#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12631,13 +12484,6 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#234#241#242#244#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#234#241#242#244#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12645,13 +12491,6 @@
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#234#241#248#1#17#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVUPD;
- ops : 2;
optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#234#241#248#1#16#72;
flags : [if_avx512,if_tfvm]
@@ -12659,34 +12498,27 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
code : #232#242#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
code : #232#242#244#248#1#17#65;
flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
code : #232#233#248#1#17#65;
flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#242#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12694,13 +12526,6 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#242#244#248#1#17#65;
- flags : [if_avx,if_sandybridge]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#242#244#248#1#16#72;
flags : [if_avx,if_sandybridge,if_tfvm]
@@ -12708,13 +12533,6 @@
(
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
- code : #232#233#248#1#17#65;
- flags : [if_avx512]
- ),
- (
- opcode : A_VMOVUPS;
- ops : 2;
optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
code : #232#233#248#1#16#72;
flags : [if_avx512,if_tfvm]
@@ -14808,32 +14626,18 @@
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#32#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#32#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#32#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#32#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXDQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14850,32 +14654,18 @@
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#37#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#37#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#37#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#37#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXWD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -14892,32 +14682,18 @@
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#35#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#35#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVSXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#35#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVSXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#35#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVSXWQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -14948,18 +14724,11 @@
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#233#241#249#1#36#72;
flags : [if_avx512,if_tqvm]
),
(
- opcode : A_VPMOVSXWQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#233#241#249#1#36#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXBD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -14990,18 +14759,11 @@
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#233#241#249#1#49#72;
flags : [if_avx512,if_tqvm]
),
(
- opcode : A_VPMOVZXBD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#233#241#249#1#49#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXBQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
@@ -15060,32 +14822,18 @@
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#48#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#48#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#48#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXBW;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#48#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXDQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -15102,32 +14850,18 @@
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#53#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#53#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#53#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXDQ;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#53#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXWD;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
@@ -15144,32 +14878,18 @@
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
code : #232#241#242#244#249#1#51#72;
flags : [if_avx2,if_thvm]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
- code : #232#241#242#244#249#1#51#72;
- flags : [if_avx2]
- ),
- (
- opcode : A_VPMOVZXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ optypes : (ot_zmmreg_mz,ot_ymmrm,ot_none,ot_none);
code : #232#233#241#249#1#51#72;
flags : [if_avx512,if_thvm]
),
(
- opcode : A_VPMOVZXWD;
- ops : 2;
- optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none);
- code : #232#233#241#249#1#51#72;
- flags : [if_avx512]
- ),
- (
opcode : A_VPMOVZXWQ;
ops : 2;
optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
@@ -18035,14 +17755,7 @@
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
- code : #232#234#241#242#243#244#250#1#1#72#22;
- flags : [if_avx2,if_tfv]
- ),
- (
- opcode : A_VPERMPD;
- ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
code : #232#234#241#242#243#244#250#1#1#72#22;
flags : [if_avx2,if_tfv]
),
@@ -18056,43 +17769,43 @@
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
- code : #232#234#241#244#249#1#22#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#1#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
- code : #232#234#241#244#249#1#22#61#80;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#1#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
- code : #232#233#234#241#249#1#22#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
- code : #232#233#234#241#249#1#22#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#1#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#1#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#22#61#80;
flags : [if_avx512,if_tfv]
),
(
@@ -18140,43 +17853,43 @@
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
- code : #232#234#241#244#249#1#54#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#0#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
- code : #232#234#241#244#249#1#54#61#80;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#0#72#22;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
- code : #232#233#234#241#249#1#54#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
- code : #232#233#234#241#249#1#54#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#0#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
- code : #232#233#234#241#250#1#0#72#22;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#54#61#80;
flags : [if_avx512,if_tfv]
),
(
@@ -18840,8 +18553,8 @@
(
opcode : A_VFMADD132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#153#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18861,8 +18574,8 @@
(
opcode : A_VFMADD132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#153#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18966,8 +18679,8 @@
(
opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#169#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -18987,8 +18700,8 @@
(
opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#169#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19099,8 +18812,8 @@
(
opcode : A_VFMADD231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#185#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19113,8 +18826,8 @@
(
opcode : A_VFMADD231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#185#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19519,15 +19232,15 @@
(
opcode : A_VFMSUB132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#155#61#80;
flags : [if_fma,if_t1s]
),
(
opcode : A_VFMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#155#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19645,8 +19358,8 @@
(
opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#171#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19659,8 +19372,8 @@
(
opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#171#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -19771,15 +19484,15 @@
(
opcode : A_VFMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#187#61#80;
flags : [if_fma,if_t1s]
),
(
opcode : A_VFMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#187#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20184,8 +19897,8 @@
(
opcode : A_VFNMADD132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#157#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20198,8 +19911,8 @@
(
opcode : A_VFNMADD132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#157#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20317,8 +20030,8 @@
(
opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#173#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20331,8 +20044,8 @@
(
opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#173#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20436,9 +20149,9 @@
(
opcode : A_VFNMADD231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#243#249#1#189#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#241#242#243#249#1#189#61#80;
+ flags : [if_fma,if_t1s]
),
(
opcode : A_VFNMADD231SD;
@@ -20457,8 +20170,8 @@
(
opcode : A_VFNMADD231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#189#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#189#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20562,8 +20275,8 @@
(
opcode : A_VFNMSUB132SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#159#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#159#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20583,8 +20296,8 @@
(
opcode : A_VFNMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#159#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#159#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20688,8 +20401,8 @@
(
opcode : A_VFNMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#175#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20702,8 +20415,8 @@
(
opcode : A_VFNMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#175#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20821,8 +20534,8 @@
(
opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #232#234#241#242#243#249#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #223#232#234#241#242#243#249#1#191#61#80;
flags : [if_fma,if_t1s]
),
(
@@ -20835,8 +20548,8 @@
(
opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #232#241#242#249#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #222#232#241#242#249#1#191#61#80;
flags : [if_fma,if_t1s]
),
(
diff --git a/tests/utils/avx/asmtestgenerator.pas b/tests/utils/avx/asmtestgenerator.pas
index befbe9e16c..eda474b3f2 100644
--- a/tests/utils/avx/asmtestgenerator.pas
+++ b/tests/utils/avx/asmtestgenerator.pas
@@ -219,7 +219,10 @@ type
IF_TMEM128,
IF_THV,
IF_THVM,
- IF_TOVM
+ IF_TOVM,
+
+ IF_SCL32,
+ IF_SCL64
);
@@ -273,7 +276,7 @@ const
but this requires adjusting the opcode table }
//OT_SIZE_MASK = $3000001F; { all the size attributes }
OT_SIZE_MASK = $E000001F; { all the size attributes }
- OT_NON_SIZE = longint(not OT_SIZE_MASK);
+ OT_NON_SIZE = int64(not int64(OT_SIZE_MASK));
{ Bits 8..11: modifiers }
OT_SIGNED = $00000100; { the operand need to be signed -128-127 }
diff --git a/tests/utils/avx/avxopcodes.pas b/tests/utils/avx/avxopcodes.pas
index 4e51e45ebe..3e489fc1b0 100644
--- a/tests/utils/avx/avxopcodes.pas
+++ b/tests/utils/avx/avxopcodes.pas
@@ -51,6 +51,110 @@ end;
procedure TAVXTestGenerator.Init;
begin
+ // Opcode, i386, x8664, AVX512, Parameter
+ FOpCodeList.Add('ADDSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('ADDSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('ADDSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('ADDSD,1,1,0,XMMREG,MEM64,,,');
+
+ FOpCodeList.Add('CMPEQSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPEQSS,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPLTSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPLTSS,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPNEQSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPNEQSS,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPNLESS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPNLESS,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPNLTSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPNLTSS,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPORDSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPORDSS,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPUNORDSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPUNORDSS,1,1,0,XMMREG,MEM32,,,');
+// FOpCodeList.Add('CMPSS,1,1,0,XMMREG,XMMREG,IMM8,,');
+// FOpCodeList.Add('CMPSS,1,1,0,XMMREG,MEM32,IMM8,,');
+ FOpCodeList.Add('COMISS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('COMISS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('DIVSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('DIVSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('MAXSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('MAXSS,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('MINSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('MINSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('MULSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('MULSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('RCPSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('RCPSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('RSQRTSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('RSQRTSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('SQRTSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('SQRTSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('SUBSS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('SUBSS,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('UCOMISS,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('UCOMISS,1,1,0,XMMREG,MEM32,,,');
+
+
+
+ FOpCodeList.Add('CMPEQSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPEQSD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPLTSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPLTSD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPNEQSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPNEQSD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPNLESD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPNLESD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPNLTSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPNLTSD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPORDSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPORDSD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('CMPUNORDSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('CMPUNORDSD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('COMISD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('COMISD,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('DIVSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('DIVSD,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('MAXSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('MAXSD,1,1,0,XMMREG,MEM32,,,');
+ FOpCodeList.Add('MINSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('MINSD,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('MULSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('MULSD,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('SQRTSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('SQRTSD,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('SUBSD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('SUBSD,1,1,0,XMMREG,MEM32,,,');
+
+ FOpCodeList.Add('UCOMISD,1,1,0,XMMREG,XMMREG,,,');
+ FOpCodeList.Add('UCOMISD,1,1,0,XMMREG,MEM32,,,');
+
+
+
+
+
+
+
+
+
+
+
+
+
+
FOpCodeList.Add('ADCX,1,1,0,REG32,RM32,,,');
FOpCodeList.Add('ADCX,1,1,0,REG64,RM64,,,');
FOpCodeList.Add('ADOX,1,1,0,REG32,RM32,,,');
@@ -307,7 +411,7 @@ begin
FOpCodeList.Add('vcmpss,1,1,1,KREG_M,XMMREG,MEM32,IMM8');
FOpCodeList.Add('vcmpss,1,1,1,KREG_M,XMMREG,XMMREG_SAE,IMM8');
FOpCodeList.Add('vcmpss,1,1,0,XMMREG,XMMREG,XMMREG,IMM8');
- FOpCodeList.Add('vcmpss,1,1,0,XMMREG,XMMREG,MEM64,IMM8');
+ FOpCodeList.Add('vcmpss,1,1,0,XMMREG,XMMREG,MEM32,IMM8');
FOpCodeList.Add('vcomisd,1,1,1,XMMREG,MEM64,,');
FOpCodeList.Add('vcomisd,1,1,1,XMMREG,XMMREG_SAE,,');
FOpCodeList.Add('vcomiss,1,1,1,XMMREG,MEM32,,');
@@ -1599,1438 +1703,1440 @@ begin
FOpCodeList.Add('kxorq,1,1,0,KREG,KREG,KREG,');
FOpCodeList.Add('kxorw,1,1,0,KREG,KREG,KREG,');
-FOpCodeList.Add('valignd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('valignd,1,1,1,xmmreg_mz,xmmreg,4B32,imm8');
-FOpCodeList.Add('valignd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('valignd,1,1,1,ymmreg_mz,ymmreg,8B32,imm8');
-FOpCodeList.Add('valignd,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('valignd,1,1,1,zmmreg_mz,zmmreg,16B32,imm8');
-FOpCodeList.Add('valignq,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('valignq,1,1,1,xmmreg_mz,xmmreg,2B64,imm8');
-FOpCodeList.Add('valignq,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('valignq,1,1,1,ymmreg_mz,ymmreg,4B64,imm8');
-FOpCodeList.Add('valignq,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('valignq,1,1,1,zmmreg_mz,zmmreg,8B64,imm8');
-FOpCodeList.Add('vblendmpd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vblendmpd,1,1,1,xmmreg_mz,xmmreg,2B64,');
-FOpCodeList.Add('vblendmpd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vblendmpd,1,1,1,ymmreg_mz,ymmreg,4B64,');
-FOpCodeList.Add('vblendmpd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vblendmpd,1,1,1,zmmreg_mz,zmmreg,8B64,');
-FOpCodeList.Add('vblendmps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vblendmps,1,1,1,xmmreg_mz,xmmreg,4B32,');
-FOpCodeList.Add('vblendmps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vblendmps,1,1,1,ymmreg_mz,ymmreg,8B32,');
-FOpCodeList.Add('vblendmps,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vblendmps,1,1,1,zmmreg_mz,zmmreg,16B32,');
-FOpCodeList.Add('vbroadcastf32x2,1,1,1,ymmreg_mz,mem64,,');
-FOpCodeList.Add('vbroadcastf32x2,1,1,1,ymmreg_mz,xmmreg,,');
-FOpCodeList.Add('vbroadcastf32x2,1,1,1,zmmreg_mz,mem64,,');
-FOpCodeList.Add('vbroadcastf32x2,1,1,1,zmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vbroadcastf32x4,1,1,1,ymmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcastf32x4,1,1,1,zmmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcastf32x8,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vbroadcastf64x2,1,1,1,ymmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcastf64x2,1,1,1,zmmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcastf64x4,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vbroadcasti32x2,1,1,1,xmmreg_mz,mem64,,');
-FOpCodeList.Add('vbroadcasti32x2,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vbroadcasti32x2,1,1,1,ymmreg_mz,mem64,,');
-FOpCodeList.Add('vbroadcasti32x2,1,1,1,ymmreg_mz,xmmreg,,');
-FOpCodeList.Add('vbroadcasti32x2,1,1,1,zmmreg_mz,mem64,,');
-FOpCodeList.Add('vbroadcasti32x2,1,1,1,zmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vbroadcasti32x4,1,1,1,ymmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcasti32x4,1,1,1,zmmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcasti32x8,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vbroadcasti64x2,1,1,1,ymmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcasti64x2,1,1,1,zmmreg_mz,mem128,,');
-FOpCodeList.Add('vbroadcasti64x4,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vcompresspd,1,1,1,mem128_m,xmmreg,,');
-FOpCodeList.Add('vcompresspd,1,1,1,mem256_m,ymmreg,,');
-FOpCodeList.Add('vcompresspd,1,1,1,mem512_m,zmmreg,,');
-FOpCodeList.Add('vcompressps,1,1,1,mem128_m,xmmreg,,');
-FOpCodeList.Add('vcompressps,1,1,1,mem256_m,ymmreg,,');
-FOpCodeList.Add('vcompressps,1,1,1,mem512_m,zmmreg,,');
-FOpCodeList.Add('vcompressps,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcompressps,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vcompressps,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vcvtpd2qq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtpd2qq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvtpd2qq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvtpd2qq,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vcvtpd2qq,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtpd2qq,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vcvtpd2qq,1,1,1,zmmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,4b64,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,ymmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,ymmreg_mz,8b64,,');
-FOpCodeList.Add('vcvtpd2udq,1,1,1,ymmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtpd2uqq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtpd2uqq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvtpd2uqq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvtpd2uqq,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vcvtpd2uqq,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtpd2uqq,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vcvtpd2uqq,1,1,1,zmmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtps2qq,1,1,1,xmmreg_mz,mem64,,');
-FOpCodeList.Add('vcvtps2qq,1,1,1,xmmreg_mz,2b32,,');
-FOpCodeList.Add('vcvtps2qq,1,1,1,ymmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtps2qq,1,1,1,ymmreg_mz,4b32,,');
-FOpCodeList.Add('vcvtps2qq,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvtps2qq,1,1,1,zmmreg_mz,8b32,,');
-FOpCodeList.Add('vcvtps2qq,1,1,1,zmmreg_mz,ymmreg_er,,');
-FOpCodeList.Add('vcvtps2udq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtps2udq,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vcvtps2udq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvtps2udq,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vcvtps2udq,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtps2udq,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vcvtps2udq,1,1,1,zmmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,xmmreg_mz,mem64,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,xmmreg_mz,2b32,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,ymmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,ymmreg_mz,4b32,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,zmmreg_mz,8b32,,');
-FOpCodeList.Add('vcvtps2uqq,1,1,1,zmmreg_mz,ymmreg_er,,');
-FOpCodeList.Add('vcvtqq2pd,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtqq2pd,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvtqq2pd,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvtqq2pd,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vcvtqq2pd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtqq2pd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vcvtqq2pd,1,1,1,zmmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,4b64,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,ymmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,ymmreg_mz,8b64,,');
-FOpCodeList.Add('vcvtqq2ps,1,1,1,ymmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtsd2usi,1,1,1,reg32,mem64,,');
-FOpCodeList.Add('vcvtsd2usi,1,1,1,reg32,xmmreg_er,,');
-FOpCodeList.Add('vcvtsd2usi,1,1,1,reg64,mem64,,');
-FOpCodeList.Add('vcvtsd2usi,1,1,1,reg64,xmmreg_er,,');
-FOpCodeList.Add('vcvtss2usi,1,1,1,reg32,mem32,,');
-FOpCodeList.Add('vcvtss2usi,1,1,1,reg32,xmmreg_er,,');
-FOpCodeList.Add('vcvtss2usi,1,1,1,reg64,mem32,,');
-FOpCodeList.Add('vcvtss2usi,1,1,1,reg64,xmmreg_er,,');
-FOpCodeList.Add('vcvttpd2qq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvttpd2qq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvttpd2qq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvttpd2qq,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vcvttpd2qq,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvttpd2qq,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vcvttpd2qq,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,4b64,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,ymmreg_mz,mem512,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,ymmreg_mz,8b64,,');
-FOpCodeList.Add('vcvttpd2udq,1,1,1,ymmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vcvttpd2uqq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvttpd2uqq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvttpd2uqq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvttpd2uqq,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vcvttpd2uqq,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvttpd2uqq,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vcvttpd2uqq,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,xmmreg_mz,mem64,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,xmmreg_mz,2b32,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,ymmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,ymmreg_mz,4b32,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,zmmreg_mz,8b32,,');
-FOpCodeList.Add('vcvttps2qq,1,1,1,zmmreg_mz,ymmreg_sae,,');
-FOpCodeList.Add('vcvttps2udq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvttps2udq,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vcvttps2udq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvttps2udq,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vcvttps2udq,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvttps2udq,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vcvttps2udq,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,xmmreg_mz,mem64,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,xmmreg_mz,2b32,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,ymmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,ymmreg_mz,4b32,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,zmmreg_mz,8b32,,');
-FOpCodeList.Add('vcvttps2uqq,1,1,1,zmmreg_mz,ymmreg_sae,,');
-FOpCodeList.Add('vcvttsd2usi,1,1,1,reg32,mem64,,');
-FOpCodeList.Add('vcvttsd2usi,1,1,1,reg32,xmmreg_sae,,');
-FOpCodeList.Add('vcvttsd2usi,1,1,1,reg64,mem64,,');
-FOpCodeList.Add('vcvttsd2usi,1,1,1,reg64,xmmreg_sae,,');
-FOpCodeList.Add('vcvttss2usi,1,1,1,reg32,mem32,,');
-FOpCodeList.Add('vcvttss2usi,1,1,1,reg32,xmmreg_sae,,');
-FOpCodeList.Add('vcvttss2usi,1,1,1,reg64,mem32,,');
-FOpCodeList.Add('vcvttss2usi,1,1,1,reg64,xmmreg_sae,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,xmmreg_mz,mem64,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,xmmreg_mz,2b32,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,ymmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,ymmreg_mz,4b32,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,zmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,zmmreg_mz,8b32,,');
-FOpCodeList.Add('vcvtudq2pd,1,1,1,zmmreg_mz,ymmreg_er,,');
-FOpCodeList.Add('vcvtudq2ps,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtudq2ps,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vcvtudq2ps,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvtudq2ps,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vcvtudq2ps,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtudq2ps,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vcvtudq2ps,1,1,1,zmmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtuqq2pd,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vcvtuqq2pd,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvtuqq2pd,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vcvtuqq2pd,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vcvtuqq2pd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtuqq2pd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vcvtuqq2pd,1,1,1,zmmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,mem256,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,4b64,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,ymmreg_mz,mem512,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,ymmreg_mz,8b64,,');
-FOpCodeList.Add('vcvtuqq2ps,1,1,1,ymmreg_mz,zmmreg_er,,');
-FOpCodeList.Add('vcvtusi2sd,1,1,1,xmmreg,xmmreg_er,rm32,');
-FOpCodeList.Add('vcvtusi2sd,1,1,1,xmmreg,xmmreg_er,rm64,');
-FOpCodeList.Add('vcvtusi2ss,1,1,1,xmmreg,xmmreg_er,rm32,');
-FOpCodeList.Add('vcvtusi2ss,1,1,1,xmmreg,xmmreg_er,rm64,');
-FOpCodeList.Add('vdbpsadbw,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vdbpsadbw,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vdbpsadbw,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vexp2pd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vexp2pd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vexp2pd,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vexp2ps,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vexp2ps,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vexp2ps,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vexpandpd,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vexpandpd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vexpandpd,1,1,1,ymmreg_mz,mem256,,');
-FOpCodeList.Add('vexpandpd,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vexpandpd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vexpandpd,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vexpandps,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vexpandps,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vexpandps,1,1,1,ymmreg_mz,mem256,,');
-FOpCodeList.Add('vexpandps,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vexpandps,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vexpandps,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vextractf32x4,1,1,1,mem128_m,ymmreg,imm8,');
-FOpCodeList.Add('vextractf32x4,1,1,1,mem128_m,zmmreg,imm8,');
-FOpCodeList.Add('vextractf32x4,1,1,1,xmmreg_mz,ymmreg,imm8,');
-FOpCodeList.Add('vextractf32x4,1,1,1,xmmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vextractf32x8,1,1,1,mem256_m,zmmreg,imm8,');
-FOpCodeList.Add('vextractf32x8,1,1,1,ymmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vextractf64x2,1,1,1,mem128_m,ymmreg,imm8,');
-FOpCodeList.Add('vextractf64x2,1,1,1,mem128_m,zmmreg,imm8,');
-FOpCodeList.Add('vextractf64x2,1,1,1,xmmreg_mz,ymmreg,imm8,');
-FOpCodeList.Add('vextractf64x2,1,1,1,xmmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vextractf64x4,1,1,1,mem256_m,zmmreg,imm8,');
-FOpCodeList.Add('vextractf64x4,1,1,1,ymmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vextracti32x4,1,1,1,mem128_m,ymmreg,imm8,');
-FOpCodeList.Add('vextracti32x4,1,1,1,mem128_m,zmmreg,imm8,');
-FOpCodeList.Add('vextracti32x4,1,1,1,xmmreg_mz,ymmreg,imm8,');
-FOpCodeList.Add('vextracti32x4,1,1,1,xmmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vextracti32x8,1,1,1,mem256_m,zmmreg,imm8,');
-FOpCodeList.Add('vextracti32x8,1,1,1,ymmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vextracti64x2,1,1,1,mem128_m,ymmreg,imm8,');
-FOpCodeList.Add('vextracti64x2,1,1,1,mem128_m,zmmreg,imm8,');
-FOpCodeList.Add('vextracti64x2,1,1,1,xmmreg_mz,ymmreg,imm8,');
-FOpCodeList.Add('vextracti64x2,1,1,1,xmmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vextracti64x4,1,1,1,mem256_m,zmmreg,imm8,');
-FOpCodeList.Add('vextracti64x4,1,1,1,ymmreg_mz,zmmreg,imm8,');
-FOpCodeList.Add('vfixupimmpd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vfixupimmpd,1,1,1,xmmreg_mz,xmmreg,2b64,imm8');
-FOpCodeList.Add('vfixupimmpd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vfixupimmpd,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
-FOpCodeList.Add('vfixupimmpd,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
-FOpCodeList.Add('vfixupimmpd,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
-FOpCodeList.Add('vfixupimmpd,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
-FOpCodeList.Add('vfixupimmps,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vfixupimmps,1,1,1,xmmreg_mz,xmmreg,4b32,imm8');
-FOpCodeList.Add('vfixupimmps,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vfixupimmps,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
-FOpCodeList.Add('vfixupimmps,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
-FOpCodeList.Add('vfixupimmps,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
-FOpCodeList.Add('vfixupimmps,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
-FOpCodeList.Add('vfixupimmsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vfixupimmsd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
-FOpCodeList.Add('vfixupimmss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vfixupimmss,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
-FOpCodeList.Add('vfmadd132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmadd132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmadd132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmadd132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmadd132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmadd132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmadd132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmadd132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmadd132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmadd132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmadd132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmadd132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmadd132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmadd132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmadd132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfmadd132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmadd132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmadd132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfmadd213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmadd213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmadd213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmadd213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmadd213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmadd213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmadd213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmadd213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmadd213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmadd213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmadd213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmadd213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmadd213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmadd213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmadd213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmadd213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfmadd213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmadd213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfmadd231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmadd231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmadd231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmadd231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmadd231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmadd231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmadd231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmadd231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmadd231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmadd231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmadd231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmadd231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmadd231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmadd231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmadd231sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfmadd231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmadd231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfmadd231ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmaddsub132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmaddsub132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmaddsub132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmaddsub132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmaddsub132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmaddsub132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmaddsub132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmaddsub132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmaddsub132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmaddsub132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmaddsub132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmaddsub132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmaddsub132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmaddsub132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmaddsub213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmaddsub213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmaddsub213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmaddsub213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmaddsub213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmaddsub213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmaddsub213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmaddsub213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmaddsub213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmaddsub213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmaddsub213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmaddsub213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmaddsub213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmaddsub213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmaddsub231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmaddsub231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmaddsub231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmaddsub231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmaddsub231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmaddsub231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmaddsub231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmaddsub231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmaddsub231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmaddsub231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmaddsub231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmaddsub231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmaddsub231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmaddsub231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsub132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsub132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmsub132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsub132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmsub132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsub132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmsub132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsub132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsub132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmsub132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsub132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmsub132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsub132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmsub132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsub132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmsub132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfmsub132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfmsub132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmsub213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsub213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmsub213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsub213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmsub213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsub213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmsub213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsub213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsub213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmsub213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsub213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmsub213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsub213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmsub213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsub213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmsub213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfmsub213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmsub213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfmsub231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsub231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmsub231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsub231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmsub231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsub231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmsub231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsub231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsub231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmsub231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsub231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmsub231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsub231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmsub231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsub231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmsub231sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfmsub231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfmsub231ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfmsubadd132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsubadd132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmsubadd132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsubadd132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmsubadd132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsubadd132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmsubadd132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsubadd132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsubadd132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmsubadd132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsubadd132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmsubadd132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsubadd132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmsubadd132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsubadd213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsubadd213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmsubadd213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsubadd213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmsubadd213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsubadd213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmsubadd213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsubadd213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsubadd213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmsubadd213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsubadd213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmsubadd213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsubadd213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmsubadd213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsubadd231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsubadd231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfmsubadd231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsubadd231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfmsubadd231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsubadd231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfmsubadd231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfmsubadd231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfmsubadd231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfmsubadd231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfmsubadd231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfmsubadd231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfmsubadd231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfmsubadd231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmadd132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmadd132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfnmadd132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmadd132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfnmadd132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmadd132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfnmadd132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmadd132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmadd132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfnmadd132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmadd132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfnmadd132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmadd132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfnmadd132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmadd132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfnmadd132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmadd132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmadd132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfnmadd213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmadd213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfnmadd213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmadd213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfnmadd213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmadd213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfnmadd213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmadd213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmadd213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfnmadd213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmadd213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfnmadd213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmadd213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfnmadd213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmadd213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfnmadd213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmadd213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmadd213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfnmadd231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmadd231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfnmadd231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmadd231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfnmadd231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmadd231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfnmadd231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmadd231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmadd231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfnmadd231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmadd231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfnmadd231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmadd231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfnmadd231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmadd231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmadd231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfnmsub132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmsub132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfnmsub132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmsub132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfnmsub132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmsub132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfnmsub132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmsub132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmsub132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfnmsub132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmsub132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfnmsub132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmsub132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfnmsub132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmsub132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmsub132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfnmsub132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmsub132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfnmsub213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmsub213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfnmsub213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmsub213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfnmsub213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmsub213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfnmsub213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmsub213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmsub213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfnmsub213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmsub213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfnmsub213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmsub213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfnmsub213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmsub213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfnmsub213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmsub213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfnmsub213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmsub231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmsub231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vfnmsub231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmsub231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vfnmsub231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmsub231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vfnmsub231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmsub231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vfnmsub231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vfnmsub231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vfnmsub231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vfnmsub231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vfnmsub231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vfnmsub231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vfnmsub231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmsub231sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vfnmsub231ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vfnmsub231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,xmmrm,imm8,');
-FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,2b64,imm8,');
-FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,ymmrm,imm8,');
-FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,4b64,imm8,');
-FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,zmmrm,imm8,');
-FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,8b64,imm8,');
-FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,xmmrm,imm8,');
-FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,4b32,imm8,');
-FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,ymmrm,imm8,');
-FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,8b32,imm8,');
-FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,zmmrm,imm8,');
-FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,16b32,imm8,');
-FOpCodeList.Add('vgetexppd,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vgetexppd,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vgetexppd,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vgetexppd,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vgetexppd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vgetexppd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vgetexppd,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vgetexpps,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vgetexpps,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vgetexpps,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vgetexpps,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vgetexpps,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vgetexpps,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vgetexpps,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vgetexpsd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vgetexpsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
-FOpCodeList.Add('vgetexpss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
-FOpCodeList.Add('vgetexpss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vgetmantpd,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vgetmantpd,1,1,1,xmmreg_mz,2b64,imm8,');
-FOpCodeList.Add('vgetmantpd,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vgetmantpd,1,1,1,ymmreg_mz,4b64,imm8,');
-FOpCodeList.Add('vgetmantpd,1,1,1,zmmreg_mz,mem512,imm8,');
-FOpCodeList.Add('vgetmantpd,1,1,1,zmmreg_mz,8b64,imm8,');
-FOpCodeList.Add('vgetmantpd,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
-FOpCodeList.Add('vgetmantps,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vgetmantps,1,1,1,xmmreg_mz,4b32,imm8,');
-FOpCodeList.Add('vgetmantps,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vgetmantps,1,1,1,ymmreg_mz,8b32,imm8,');
-FOpCodeList.Add('vgetmantps,1,1,1,zmmreg_mz,mem512,imm8,');
-FOpCodeList.Add('vgetmantps,1,1,1,zmmreg_mz,16b32,imm8,');
-FOpCodeList.Add('vgetmantps,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
-FOpCodeList.Add('vgetmantsd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
-FOpCodeList.Add('vgetmantsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vgetmantss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vgetmantss,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
-FOpCodeList.Add('vinsertf32x4,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
-FOpCodeList.Add('vinsertf32x4,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
-FOpCodeList.Add('vinsertf32x8,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
-FOpCodeList.Add('vinsertf64x2,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
-FOpCodeList.Add('vinsertf64x2,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
-FOpCodeList.Add('vinsertf64x4,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
-FOpCodeList.Add('vinserti32x4,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
-FOpCodeList.Add('vinserti32x4,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
-FOpCodeList.Add('vinserti32x8,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
-FOpCodeList.Add('vinserti64x2,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
-FOpCodeList.Add('vinserti64x2,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
-FOpCodeList.Add('vinserti64x4,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
-FOpCodeList.Add('vmovdqa32,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,mem128_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,mem256_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqa32,1,1,1,mem512_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,mem128_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,mem256_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqa64,1,1,1,mem512_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,mem128_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,mem256_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu16,1,1,1,mem512_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,mem128_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,mem256_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu32,1,1,1,mem512_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,mem128_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,mem256_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu64,1,1,1,mem512_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,mem128_mz,xmmreg,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,mem256_mz,ymmreg,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vmovdqu8,1,1,1,mem512_mz,zmmreg,,');
-FOpCodeList.Add('vpabsq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vpabsq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vpabsq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vpabsq,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vpabsq,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vpabsq,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vpandd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpandd,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpandd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpandd,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpandd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpandd,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpandnd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpandnd,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpandnd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpandnd,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpandnd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpandnd,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpandnq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpandnq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpandnq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpandnq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpandnq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpandnq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpandq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpandq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpandq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpandq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpandq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpandq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpblendmb,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpblendmb,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpblendmb,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpblendmd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpblendmd,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpblendmd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpblendmd,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpblendmd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpblendmd,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpblendmq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpblendmq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpblendmq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpblendmq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpblendmq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpblendmq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpblendmw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpblendmw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpblendmw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,mem8,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg16,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg8,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,mem8,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg16,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg8,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,mem8,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg16,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg8,,');
-FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,xmmreg_mz,mem32,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,xmmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,ymmreg_mz,mem32,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,ymmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,ymmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,zmmreg_mz,mem32,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,zmmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastd,1,1,1,zmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastmb2q xmmreg,kreg,1,1,1,void,,,');
-FOpCodeList.Add('vpbroadcastmb2q ymmreg,kreg,1,1,1,void,,,');
-FOpCodeList.Add('vpbroadcastmb2q zmmreg,kreg,1,1,1,void,,,');
-FOpCodeList.Add('vpbroadcastmw2d xmmreg,kreg,1,1,1,void,,,');
-FOpCodeList.Add('vpbroadcastmw2d ymmreg,kreg,1,1,1,void,,,');
-FOpCodeList.Add('vpbroadcastmw2d zmmreg,kreg,1,1,1,void,,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,xmmreg_mz,mem64,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,xmmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,ymmreg_mz,mem64,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,ymmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,ymmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,zmmreg_mz,mem64,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,zmmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastq,1,1,1,zmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,mem16,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,reg16,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,mem16,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,reg16,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,mem16,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,reg16,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,reg32,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,reg64,,');
-FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpcmpb,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpb,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpb,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,xmmreg,4b32,imm8');
-FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,ymmreg,8b32,imm8');
-FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,zmmreg,16b32,imm8');
-FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,xmmreg,2b64,imm8');
-FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,ymmreg,4b64,imm8');
-FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,zmmreg,8b64,imm8');
-FOpCodeList.Add('vpcmpub,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpub,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpub,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,xmmreg,4b32,imm8');
-FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,ymmreg,8b32,imm8');
-FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,zmmreg,16b32,imm8');
-FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,xmmreg,2b64,imm8');
-FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,ymmreg,4b64,imm8');
-FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,zmmreg,8b64,imm8');
-FOpCodeList.Add('vpcmpuw,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpuw,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpuw,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcmpw,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpcmpw,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpcmpw,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpcompressd,1,1,1,mem128_m,xmmreg,,');
-FOpCodeList.Add('vpcompressd,1,1,1,mem256_m,ymmreg,,');
-FOpCodeList.Add('vpcompressd,1,1,1,mem512_m,zmmreg,,');
-FOpCodeList.Add('vpcompressd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpcompressd,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpcompressd,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpcompressq,1,1,1,mem128_m,xmmreg,,');
-FOpCodeList.Add('vpcompressq,1,1,1,mem256_m,ymmreg,,');
-FOpCodeList.Add('vpcompressq,1,1,1,mem512_m,zmmreg,,');
-FOpCodeList.Add('vpcompressq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpcompressq,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpcompressq,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpconflictd,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vpconflictd,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vpconflictd,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vpconflictd,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vpconflictd,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vpconflictd,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vpconflictq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vpconflictq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vpconflictq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vpconflictq,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vpconflictq,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vpconflictq,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vpermb,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermb,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermb,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermi2b,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermi2b,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermi2b,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermi2d,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermi2d,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpermi2d,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermi2d,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpermi2d,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermi2d,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpermi2pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermi2pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpermi2pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermi2pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpermi2pd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermi2pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpermi2ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermi2ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpermi2ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermi2ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpermi2ps,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermi2ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpermi2q,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermi2q,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpermi2q,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermi2q,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpermi2q,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermi2q,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpermi2w,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermi2w,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermi2w,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermt2b,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermt2b,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermt2b,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermt2d,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermt2d,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpermt2d,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermt2d,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpermt2d,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermt2d,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpermt2pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermt2pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpermt2pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermt2pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpermt2pd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermt2pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpermt2ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermt2ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpermt2ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermt2ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpermt2ps,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermt2ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpermt2q,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermt2q,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpermt2q,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermt2q,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpermt2q,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermt2q,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpermt2w,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermt2w,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermt2w,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpermw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpermw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpermw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpexpandd,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vpexpandd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpexpandd,1,1,1,ymmreg_mz,mem256,,');
-FOpCodeList.Add('vpexpandd,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpexpandd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vpexpandd,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpexpandq,1,1,1,xmmreg_mz,mem128,,');
-FOpCodeList.Add('vpexpandq,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpexpandq,1,1,1,ymmreg_mz,mem256,,');
-FOpCodeList.Add('vpexpandq,1,1,1,ymmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpexpandq,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vpexpandq,1,1,1,zmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vplzcntd,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vplzcntd,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vplzcntd,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vplzcntd,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vplzcntd,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vplzcntd,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vplzcntq,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vplzcntq,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vplzcntq,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vplzcntq,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vplzcntq,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vplzcntq,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vpmadd52huq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpmadd52huq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpmadd52huq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpmadd52huq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpmadd52huq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpmadd52huq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpmadd52luq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpmadd52luq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpmadd52luq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpmadd52luq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpmadd52luq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpmadd52luq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpmaxsq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpmaxsq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpmaxsq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpmaxsq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpmaxsq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpmaxsq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpmaxuq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpmaxuq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpmaxuq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpmaxuq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpmaxuq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpmaxuq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpminsq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpminsq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpminsq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpminsq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpminsq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpminsq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpminuq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpminuq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpminuq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpminuq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpminuq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpminuq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpmovb2m,1,1,1,kreg,xmmreg,,');
-FOpCodeList.Add('vpmovb2m,1,1,1,kreg,ymmreg,,');
-FOpCodeList.Add('vpmovb2m,1,1,1,kreg,zmmreg,,');
-FOpCodeList.Add('vpmovd2m,1,1,1,kreg,xmmreg,,');
-FOpCodeList.Add('vpmovd2m,1,1,1,kreg,ymmreg,,');
-FOpCodeList.Add('vpmovd2m,1,1,1,kreg,zmmreg,,');
-FOpCodeList.Add('vpmovdb,1,1,1,mem128_m,zmmreg,,');
-FOpCodeList.Add('vpmovdb,1,1,1,mem32_m,xmmreg,,');
-FOpCodeList.Add('vpmovdb,1,1,1,mem64_m,ymmreg,,');
-FOpCodeList.Add('vpmovdb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovdb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovdb,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovdw,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovdw,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovdw,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovdw,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovdw,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovdw,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovm2b,1,1,1,xmmreg,kreg,,');
-FOpCodeList.Add('vpmovm2b,1,1,1,ymmreg,kreg,,');
-FOpCodeList.Add('vpmovm2b,1,1,1,zmmreg,kreg,,');
-FOpCodeList.Add('vpmovm2d,1,1,1,xmmreg,kreg,,');
-FOpCodeList.Add('vpmovm2d,1,1,1,ymmreg,kreg,,');
-FOpCodeList.Add('vpmovm2d,1,1,1,zmmreg,kreg,,');
-FOpCodeList.Add('vpmovm2q,1,1,1,xmmreg,kreg,,');
-FOpCodeList.Add('vpmovm2q,1,1,1,ymmreg,kreg,,');
-FOpCodeList.Add('vpmovm2q,1,1,1,zmmreg,kreg,,');
-FOpCodeList.Add('vpmovm2w,1,1,1,xmmreg,kreg,,');
-FOpCodeList.Add('vpmovm2w,1,1,1,ymmreg,kreg,,');
-FOpCodeList.Add('vpmovm2w,1,1,1,zmmreg,kreg,,');
-FOpCodeList.Add('vpmovq2m,1,1,1,kreg,xmmreg,,');
-FOpCodeList.Add('vpmovq2m,1,1,1,kreg,ymmreg,,');
-FOpCodeList.Add('vpmovq2m,1,1,1,kreg,zmmreg,,');
-FOpCodeList.Add('vpmovqb,1,1,1,mem16_m,xmmreg,,');
-FOpCodeList.Add('vpmovqb,1,1,1,mem32_m,ymmreg,,');
-FOpCodeList.Add('vpmovqb,1,1,1,mem64_m,zmmreg,,');
-FOpCodeList.Add('vpmovqb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovqb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovqb,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovqd,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovqd,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovqd,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovqd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovqd,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovqd,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovqw,1,1,1,mem128_m,zmmreg,,');
-FOpCodeList.Add('vpmovqw,1,1,1,mem32_m,xmmreg,,');
-FOpCodeList.Add('vpmovqw,1,1,1,mem64_m,ymmreg,,');
-FOpCodeList.Add('vpmovqw,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovqw,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovqw,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovsdb,1,1,1,mem128_m,zmmreg,,');
-FOpCodeList.Add('vpmovsdb,1,1,1,mem32_m,xmmreg,,');
-FOpCodeList.Add('vpmovsdb,1,1,1,mem64_m,ymmreg,,');
-FOpCodeList.Add('vpmovsdb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovsdb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovsdb,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovsdw,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovsdw,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovsdw,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovsdw,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovsdw,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovsdw,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovsqb,1,1,1,mem16_m,xmmreg,,');
-FOpCodeList.Add('vpmovsqb,1,1,1,mem32_m,ymmreg,,');
-FOpCodeList.Add('vpmovsqb,1,1,1,mem64_m,zmmreg,,');
-FOpCodeList.Add('vpmovsqb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovsqb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovsqb,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovsqd,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovsqd,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovsqd,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovsqd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovsqd,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovsqd,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovsqw,1,1,1,mem128_m,zmmreg,,');
-FOpCodeList.Add('vpmovsqw,1,1,1,mem32_m,xmmreg,,');
-FOpCodeList.Add('vpmovsqw,1,1,1,mem64_m,ymmreg,,');
-FOpCodeList.Add('vpmovsqw,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovsqw,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovsqw,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovswb,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovswb,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovswb,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovswb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovswb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovswb,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovusdb,1,1,1,mem128_m,zmmreg,,');
-FOpCodeList.Add('vpmovusdb,1,1,1,mem32_m,xmmreg,,');
-FOpCodeList.Add('vpmovusdb,1,1,1,mem64_m,ymmreg,,');
-FOpCodeList.Add('vpmovusdb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovusdb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovusdb,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovusdw,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovusdw,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovusdw,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovusdw,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovusdw,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovusdw,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovusqb,1,1,1,mem16_m,xmmreg,,');
-FOpCodeList.Add('vpmovusqb,1,1,1,mem32_m,ymmreg,,');
-FOpCodeList.Add('vpmovusqb,1,1,1,mem64_m,zmmreg,,');
-FOpCodeList.Add('vpmovusqb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovusqb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovusqb,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovusqd,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovusqd,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovusqd,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovusqd,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovusqd,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovusqd,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovusqw,1,1,1,mem128_m,zmmreg,,');
-FOpCodeList.Add('vpmovusqw,1,1,1,mem32_m,xmmreg,,');
-FOpCodeList.Add('vpmovusqw,1,1,1,mem64_m,ymmreg,,');
-FOpCodeList.Add('vpmovusqw,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovusqw,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovusqw,1,1,1,xmmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovuswb,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovuswb,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovuswb,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovuswb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovuswb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovuswb,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmovw2m,1,1,1,kreg,xmmreg,,');
-FOpCodeList.Add('vpmovw2m,1,1,1,kreg,ymmreg,,');
-FOpCodeList.Add('vpmovw2m,1,1,1,kreg,zmmreg,,');
-FOpCodeList.Add('vpmovwb,1,1,1,mem128_m,ymmreg,,');
-FOpCodeList.Add('vpmovwb,1,1,1,mem256_m,zmmreg,,');
-FOpCodeList.Add('vpmovwb,1,1,1,mem64_m,xmmreg,,');
-FOpCodeList.Add('vpmovwb,1,1,1,xmmreg_mz,xmmreg,,');
-FOpCodeList.Add('vpmovwb,1,1,1,xmmreg_mz,ymmreg,,');
-FOpCodeList.Add('vpmovwb,1,1,1,ymmreg_mz,zmmreg,,');
-FOpCodeList.Add('vpmullq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpmullq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpmullq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpmullq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpmullq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpmullq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpmultishiftqb,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpmultishiftqb,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpmultishiftqb,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpmultishiftqb,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpmultishiftqb,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpmultishiftqb,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpord,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpord,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpord,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpord,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpord,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpord,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vporq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vporq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vporq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vporq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vporq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vporq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vprold,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vprold,1,1,1,xmmreg_mz,4b32,imm8,');
-FOpCodeList.Add('vprold,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vprold,1,1,1,ymmreg_mz,8b32,imm8,');
-FOpCodeList.Add('vprold,1,1,1,zmmreg_mz,zmmrm,imm8,');
-FOpCodeList.Add('vprold,1,1,1,zmmreg_mz,16b32,imm8,');
-FOpCodeList.Add('vprolq,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vprolq,1,1,1,xmmreg_mz,2b64,imm8,');
-FOpCodeList.Add('vprolq,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vprolq,1,1,1,ymmreg_mz,4b64,imm8,');
-FOpCodeList.Add('vprolq,1,1,1,zmmreg_mz,zmmrm,imm8,');
-FOpCodeList.Add('vprolq,1,1,1,zmmreg_mz,8b64,imm8,');
-FOpCodeList.Add('vprolvd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vprolvd,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vprolvd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vprolvd,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vprolvd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vprolvd,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vprolvq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vprolvq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vprolvq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vprolvq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vprolvq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vprolvq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vprord,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vprord,1,1,1,xmmreg_mz,4b32,imm8,');
-FOpCodeList.Add('vprord,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vprord,1,1,1,ymmreg_mz,8b32,imm8,');
-FOpCodeList.Add('vprord,1,1,1,zmmreg_mz,zmmrm,imm8,');
-FOpCodeList.Add('vprord,1,1,1,zmmreg_mz,16b32,imm8,');
-FOpCodeList.Add('vprorq,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vprorq,1,1,1,xmmreg_mz,2b64,imm8,');
-FOpCodeList.Add('vprorq,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vprorq,1,1,1,ymmreg_mz,4b64,imm8,');
-FOpCodeList.Add('vprorq,1,1,1,zmmreg_mz,zmmrm,imm8,');
-FOpCodeList.Add('vprorq,1,1,1,zmmreg_mz,8b64,imm8,');
-FOpCodeList.Add('vprorvd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vprorvd,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vprorvd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vprorvd,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vprorvd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vprorvd,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vprorvq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vprorvq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vprorvq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vprorvq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vprorvq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vprorvq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpscatterdd,1,1,1,xmem32_m,xmmreg,,');
-FOpCodeList.Add('vpscatterdd,1,1,1,ymem32_m,ymmreg,,');
-FOpCodeList.Add('vpscatterdd,1,1,1,zmem32_m,zmmreg,,');
-FOpCodeList.Add('vpscatterdq,1,1,1,xmem64_m,xmmreg,,');
-FOpCodeList.Add('vpscatterdq,1,1,1,xmem64_m,ymmreg,,');
-FOpCodeList.Add('vpscatterdq,1,1,1,ymem64_m,zmmreg,,');
-FOpCodeList.Add('vpscatterqd,1,1,1,xmem32_m,xmmreg,,');
-FOpCodeList.Add('vpscatterqd,1,1,1,ymem32_m,xmmreg,,');
-FOpCodeList.Add('vpscatterqd,1,1,1,zmem32_m,ymmreg,,');
-FOpCodeList.Add('vpscatterqq,1,1,1,xmem64_m,xmmreg,,');
-FOpCodeList.Add('vpscatterqq,1,1,1,ymem64_m,ymmreg,,');
-FOpCodeList.Add('vpscatterqq,1,1,1,zmem64_m,zmmreg,,');
-FOpCodeList.Add('vpsllvw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpsllvw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpsllvw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpsraq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpsraq,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vpsraq,1,1,1,xmmreg_mz,2b64,imm8,');
-FOpCodeList.Add('vpsraq,1,1,1,ymmreg_mz,ymmreg,xmmrm,');
-FOpCodeList.Add('vpsraq,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vpsraq,1,1,1,ymmreg_mz,4b64,imm8,');
-FOpCodeList.Add('vpsraq,1,1,1,zmmreg_mz,zmmreg,xmmrm,');
-FOpCodeList.Add('vpsraq,1,1,1,zmmreg_mz,zmmrm,imm8,');
-FOpCodeList.Add('vpsraq,1,1,1,zmmreg_mz,8b64,imm8,');
-FOpCodeList.Add('vpsravq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpsravq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpsravq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpsravq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpsravq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpsravq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vpsravw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpsravw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpsravw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpsrlvw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpsrlvw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpsrlvw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpternlogd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpternlogd,1,1,1,xmmreg_mz,xmmreg,4b32,imm8');
-FOpCodeList.Add('vpternlogd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpternlogd,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
-FOpCodeList.Add('vpternlogd,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpternlogd,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
-FOpCodeList.Add('vpternlogq,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vpternlogq,1,1,1,xmmreg_mz,xmmreg,2b64,imm8');
-FOpCodeList.Add('vpternlogq,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vpternlogq,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
-FOpCodeList.Add('vpternlogq,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vpternlogq,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
-FOpCodeList.Add('vptestmb,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestmb,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestmb,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vptestmd,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestmd,1,1,1,kreg_m,xmmreg,4b32,');
-FOpCodeList.Add('vptestmd,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestmd,1,1,1,kreg_m,ymmreg,8b32,');
-FOpCodeList.Add('vptestmd,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vptestmd,1,1,1,kreg_m,zmmreg,16b32,');
-FOpCodeList.Add('vptestmq,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestmq,1,1,1,kreg_m,xmmreg,2b64,');
-FOpCodeList.Add('vptestmq,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestmq,1,1,1,kreg_m,ymmreg,4b64,');
-FOpCodeList.Add('vptestmq,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vptestmq,1,1,1,kreg_m,zmmreg,8b64,');
-FOpCodeList.Add('vptestmw,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestmw,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestmw,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vptestnmb,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestnmb,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestnmb,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,xmmreg,4b32,');
-FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,ymmreg,8b32,');
-FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,zmmreg,16b32,');
-FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,xmmreg,2b64,');
-FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,ymmreg,4b64,');
-FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,zmmreg,8b64,');
-FOpCodeList.Add('vptestnmw,1,1,1,kreg_m,xmmreg,xmmrm,');
-FOpCodeList.Add('vptestnmw,1,1,1,kreg_m,ymmreg,ymmrm,');
-FOpCodeList.Add('vptestnmw,1,1,1,kreg_m,zmmreg,zmmrm,');
-FOpCodeList.Add('vpxord,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpxord,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vpxord,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpxord,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vpxord,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpxord,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vpxorq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vpxorq,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vpxorq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vpxorq,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vpxorq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
-FOpCodeList.Add('vpxorq,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vrangepd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vrangepd,1,1,1,xmmreg_mz,xmmreg,2b64,imm8');
-FOpCodeList.Add('vrangepd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vrangepd,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
-FOpCodeList.Add('vrangepd,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
-FOpCodeList.Add('vrangepd,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
-FOpCodeList.Add('vrangepd,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
-FOpCodeList.Add('vrangeps,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
-FOpCodeList.Add('vrangeps,1,1,1,xmmreg_mz,xmmreg,4b32,imm8');
-FOpCodeList.Add('vrangeps,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vrangeps,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
-FOpCodeList.Add('vrangeps,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
-FOpCodeList.Add('vrangeps,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
-FOpCodeList.Add('vrangeps,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
-FOpCodeList.Add('vrangesd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vrangesd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
-FOpCodeList.Add('vrangess,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vrangess,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
-FOpCodeList.Add('vrcp14pd,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vrcp14pd,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vrcp14pd,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vrcp14pd,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vrcp14pd,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vrcp14pd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vrcp14ps,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vrcp14ps,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vrcp14ps,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vrcp14ps,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vrcp14ps,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vrcp14ps,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vrcp14sd,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
-FOpCodeList.Add('vrcp14sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vrcp14ss,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
-FOpCodeList.Add('vrcp14ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vrcp28pd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vrcp28pd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vrcp28pd,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vrcp28ps,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vrcp28ps,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vrcp28ps,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vrcp28sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
-FOpCodeList.Add('vrcp28sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vrcp28ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
-FOpCodeList.Add('vrcp28ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vreducepd,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vreducepd,1,1,1,xmmreg_mz,2b64,imm8,');
-FOpCodeList.Add('vreducepd,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vreducepd,1,1,1,ymmreg_mz,4b64,imm8,');
-FOpCodeList.Add('vreducepd,1,1,1,zmmreg_mz,mem512,imm8,');
-FOpCodeList.Add('vreducepd,1,1,1,zmmreg_mz,8b64,imm8,');
-FOpCodeList.Add('vreducepd,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
-FOpCodeList.Add('vreduceps,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vreduceps,1,1,1,xmmreg_mz,4b32,imm8,');
-FOpCodeList.Add('vreduceps,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vreduceps,1,1,1,ymmreg_mz,8b32,imm8,');
-FOpCodeList.Add('vreduceps,1,1,1,zmmreg_mz,mem512,imm8,');
-FOpCodeList.Add('vreduceps,1,1,1,zmmreg_mz,16b32,imm8,');
-FOpCodeList.Add('vreduceps,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
-FOpCodeList.Add('vreducesd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
-FOpCodeList.Add('vreducesd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vreducess,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
-FOpCodeList.Add('vreducess,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vrndscalepd,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vrndscalepd,1,1,1,xmmreg_mz,2b64,imm8,');
-FOpCodeList.Add('vrndscalepd,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vrndscalepd,1,1,1,ymmreg_mz,4b64,imm8,');
-FOpCodeList.Add('vrndscalepd,1,1,1,zmmreg_mz,mem512,imm8,');
-FOpCodeList.Add('vrndscalepd,1,1,1,zmmreg_mz,8b64,imm8,');
-FOpCodeList.Add('vrndscalepd,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
-FOpCodeList.Add('vrndscaleps,1,1,1,xmmreg_mz,xmmrm,imm8,');
-FOpCodeList.Add('vrndscaleps,1,1,1,xmmreg_mz,4b32,imm8,');
-FOpCodeList.Add('vrndscaleps,1,1,1,ymmreg_mz,ymmrm,imm8,');
-FOpCodeList.Add('vrndscaleps,1,1,1,ymmreg_mz,8b32,imm8,');
-FOpCodeList.Add('vrndscaleps,1,1,1,zmmreg_mz,mem512,imm8,');
-FOpCodeList.Add('vrndscaleps,1,1,1,zmmreg_mz,16b32,imm8,');
-FOpCodeList.Add('vrndscaleps,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
-FOpCodeList.Add('vrndscalesd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vrndscalesd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
-FOpCodeList.Add('vrndscaless,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
-FOpCodeList.Add('vrndscaless,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
-FOpCodeList.Add('vrsqrt14pd,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vrsqrt14pd,1,1,1,xmmreg_mz,2b64,,');
-FOpCodeList.Add('vrsqrt14pd,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vrsqrt14pd,1,1,1,ymmreg_mz,4b64,,');
-FOpCodeList.Add('vrsqrt14pd,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vrsqrt14pd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vrsqrt14ps,1,1,1,xmmreg_mz,xmmrm,,');
-FOpCodeList.Add('vrsqrt14ps,1,1,1,xmmreg_mz,4b32,,');
-FOpCodeList.Add('vrsqrt14ps,1,1,1,ymmreg_mz,ymmrm,,');
-FOpCodeList.Add('vrsqrt14ps,1,1,1,ymmreg_mz,8b32,,');
-FOpCodeList.Add('vrsqrt14ps,1,1,1,zmmreg_mz,zmmrm,,');
-FOpCodeList.Add('vrsqrt14ps,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vrsqrt14sd,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
-FOpCodeList.Add('vrsqrt14sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vrsqrt14ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vrsqrt14ss,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
-FOpCodeList.Add('vrsqrt28pd,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vrsqrt28pd,1,1,1,zmmreg_mz,8b64,,');
-FOpCodeList.Add('vrsqrt28pd,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vrsqrt28ps,1,1,1,zmmreg_mz,mem512,,');
-FOpCodeList.Add('vrsqrt28ps,1,1,1,zmmreg_mz,16b32,,');
-FOpCodeList.Add('vrsqrt28ps,1,1,1,zmmreg_mz,zmmreg_sae,,');
-FOpCodeList.Add('vrsqrt28sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
-FOpCodeList.Add('vrsqrt28sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vrsqrt28ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
-FOpCodeList.Add('vrsqrt28ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vscalefpd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vscalefpd,1,1,1,xmmreg_mz,xmmreg,2b64,');
-FOpCodeList.Add('vscalefpd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vscalefpd,1,1,1,ymmreg_mz,ymmreg,4b64,');
-FOpCodeList.Add('vscalefpd,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vscalefpd,1,1,1,zmmreg_mz,zmmreg,8b64,');
-FOpCodeList.Add('vscalefpd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vscalefps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
-FOpCodeList.Add('vscalefps,1,1,1,xmmreg_mz,xmmreg,4b32,');
-FOpCodeList.Add('vscalefps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
-FOpCodeList.Add('vscalefps,1,1,1,ymmreg_mz,ymmreg,8b32,');
-FOpCodeList.Add('vscalefps,1,1,1,zmmreg_mz,zmmreg,mem512,');
-FOpCodeList.Add('vscalefps,1,1,1,zmmreg_mz,zmmreg,16b32,');
-FOpCodeList.Add('vscalefps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
-FOpCodeList.Add('vscalefsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vscalefsd,1,1,1,xmmreg_mz,xmmreg,mem64,');
-FOpCodeList.Add('vscalefss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
-FOpCodeList.Add('vscalefss,1,1,1,xmmreg_mz,xmmreg,mem32,');
-FOpCodeList.Add('vscatterdpd,1,1,1,xmem64_m,xmmreg,,');
-FOpCodeList.Add('vscatterdpd,1,1,1,xmem64_m,ymmreg,,');
-FOpCodeList.Add('vscatterdpd,1,1,1,ymem64_m,zmmreg,,');
-FOpCodeList.Add('vscatterdps,1,1,1,xmem32_m,xmmreg,,');
-FOpCodeList.Add('vscatterdps,1,1,1,ymem32_m,ymmreg,,');
-FOpCodeList.Add('vscatterdps,1,1,1,zmem32_m,zmmreg,,');
-FOpCodeList.Add('vscatterqpd,1,1,1,xmem64_m,xmmreg,,');
-FOpCodeList.Add('vscatterqpd,1,1,1,ymem64_m,ymmreg,,');
-FOpCodeList.Add('vscatterqpd,1,1,1,zmem64_m,zmmreg,,');
-FOpCodeList.Add('vscatterqps,1,1,1,xmem32_m,xmmreg,,');
-FOpCodeList.Add('vscatterqps,1,1,1,ymem32_m,xmmreg,,');
-FOpCodeList.Add('vscatterqps,1,1,1,zmem32_m,ymmreg,,');
-FOpCodeList.Add('vshuff32x4,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vshuff32x4,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
-FOpCodeList.Add('vshuff32x4,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vshuff32x4,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
-FOpCodeList.Add('vshuff64x2,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vshuff64x2,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
-FOpCodeList.Add('vshuff64x2,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vshuff64x2,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
-FOpCodeList.Add('vshufi32x4,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vshufi32x4,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
-FOpCodeList.Add('vshufi32x4,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vshufi32x4,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
-FOpCodeList.Add('vshufi64x2,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
-FOpCodeList.Add('vshufi64x2,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
-FOpCodeList.Add('vshufi64x2,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
-FOpCodeList.Add('vshufi64x2,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
-
+ FOpCodeList.Add('valignd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('valignd,1,1,1,xmmreg_mz,xmmreg,4B32,imm8');
+ FOpCodeList.Add('valignd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('valignd,1,1,1,ymmreg_mz,ymmreg,8B32,imm8');
+ FOpCodeList.Add('valignd,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('valignd,1,1,1,zmmreg_mz,zmmreg,16B32,imm8');
+ FOpCodeList.Add('valignq,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('valignq,1,1,1,xmmreg_mz,xmmreg,2B64,imm8');
+ FOpCodeList.Add('valignq,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('valignq,1,1,1,ymmreg_mz,ymmreg,4B64,imm8');
+ FOpCodeList.Add('valignq,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('valignq,1,1,1,zmmreg_mz,zmmreg,8B64,imm8');
+ FOpCodeList.Add('vblendmpd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vblendmpd,1,1,1,xmmreg_mz,xmmreg,2B64,');
+ FOpCodeList.Add('vblendmpd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vblendmpd,1,1,1,ymmreg_mz,ymmreg,4B64,');
+ FOpCodeList.Add('vblendmpd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vblendmpd,1,1,1,zmmreg_mz,zmmreg,8B64,');
+ FOpCodeList.Add('vblendmps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vblendmps,1,1,1,xmmreg_mz,xmmreg,4B32,');
+ FOpCodeList.Add('vblendmps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vblendmps,1,1,1,ymmreg_mz,ymmreg,8B32,');
+ FOpCodeList.Add('vblendmps,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vblendmps,1,1,1,zmmreg_mz,zmmreg,16B32,');
+ FOpCodeList.Add('vbroadcastf32x2,1,1,1,ymmreg_mz,mem64,,');
+ FOpCodeList.Add('vbroadcastf32x2,1,1,1,ymmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vbroadcastf32x2,1,1,1,zmmreg_mz,mem64,,');
+ FOpCodeList.Add('vbroadcastf32x2,1,1,1,zmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vbroadcastf32x4,1,1,1,ymmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcastf32x4,1,1,1,zmmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcastf32x8,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vbroadcastf64x2,1,1,1,ymmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcastf64x2,1,1,1,zmmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcastf64x4,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vbroadcasti32x2,1,1,1,xmmreg_mz,mem64,,');
+ FOpCodeList.Add('vbroadcasti32x2,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vbroadcasti32x2,1,1,1,ymmreg_mz,mem64,,');
+ FOpCodeList.Add('vbroadcasti32x2,1,1,1,ymmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vbroadcasti32x2,1,1,1,zmmreg_mz,mem64,,');
+ FOpCodeList.Add('vbroadcasti32x2,1,1,1,zmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vbroadcasti32x4,1,1,1,ymmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcasti32x4,1,1,1,zmmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcasti32x8,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vbroadcasti64x2,1,1,1,ymmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcasti64x2,1,1,1,zmmreg_mz,mem128,,');
+ FOpCodeList.Add('vbroadcasti64x4,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcompresspd,1,1,1,mem128_m,xmmreg,,');
+ FOpCodeList.Add('vcompresspd,1,1,1,mem256_m,ymmreg,,');
+ FOpCodeList.Add('vcompresspd,1,1,1,mem512_m,zmmreg,,');
+ FOpCodeList.Add('vcompressps,1,1,1,mem128_m,xmmreg,,');
+ FOpCodeList.Add('vcompressps,1,1,1,mem256_m,ymmreg,,');
+ FOpCodeList.Add('vcompressps,1,1,1,mem512_m,zmmreg,,');
+ FOpCodeList.Add('vcompressps,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcompressps,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vcompressps,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vcvtpd2qq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtpd2qq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvtpd2qq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvtpd2qq,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvtpd2qq,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtpd2qq,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvtpd2qq,1,1,1,zmmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,ymmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,ymmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvtpd2udq,1,1,1,ymmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtpd2uqq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtpd2uqq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvtpd2uqq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvtpd2uqq,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvtpd2uqq,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtpd2uqq,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvtpd2uqq,1,1,1,zmmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtps2qq,1,1,1,xmmreg_mz,mem64,,');
+ FOpCodeList.Add('vcvtps2qq,1,1,1,xmmreg_mz,2b32,,');
+ FOpCodeList.Add('vcvtps2qq,1,1,1,ymmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtps2qq,1,1,1,ymmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvtps2qq,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvtps2qq,1,1,1,zmmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvtps2qq,1,1,1,zmmreg_mz,ymmreg_er,,');
+ FOpCodeList.Add('vcvtps2udq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtps2udq,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvtps2udq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvtps2udq,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvtps2udq,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtps2udq,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vcvtps2udq,1,1,1,zmmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,xmmreg_mz,mem64,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,xmmreg_mz,2b32,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,ymmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,ymmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,zmmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvtps2uqq,1,1,1,zmmreg_mz,ymmreg_er,,');
+ FOpCodeList.Add('vcvtqq2pd,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtqq2pd,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvtqq2pd,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvtqq2pd,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvtqq2pd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtqq2pd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvtqq2pd,1,1,1,zmmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,ymmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,ymmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvtqq2ps,1,1,1,ymmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtsd2usi,1,1,1,reg32,mem64,,');
+ FOpCodeList.Add('vcvtsd2usi,1,1,1,reg32,xmmreg_er,,');
+ FOpCodeList.Add('vcvtsd2usi,1,1,1,reg64,mem64,,');
+ FOpCodeList.Add('vcvtsd2usi,1,1,1,reg64,xmmreg_er,,');
+ FOpCodeList.Add('vcvtss2usi,1,1,1,reg32,mem32,,');
+ FOpCodeList.Add('vcvtss2usi,1,1,1,reg32,xmmreg_er,,');
+ FOpCodeList.Add('vcvtss2usi,1,1,1,reg64,mem32,,');
+ FOpCodeList.Add('vcvtss2usi,1,1,1,reg64,xmmreg_er,,');
+ FOpCodeList.Add('vcvttpd2qq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvttpd2qq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvttpd2qq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvttpd2qq,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvttpd2qq,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvttpd2qq,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvttpd2qq,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,ymmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,ymmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvttpd2udq,1,1,1,ymmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vcvttpd2uqq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvttpd2uqq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvttpd2uqq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvttpd2uqq,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvttpd2uqq,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvttpd2uqq,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvttpd2uqq,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,xmmreg_mz,mem64,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,xmmreg_mz,2b32,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,ymmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,ymmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,zmmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvttps2qq,1,1,1,zmmreg_mz,ymmreg_sae,,');
+ FOpCodeList.Add('vcvttps2udq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvttps2udq,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvttps2udq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvttps2udq,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvttps2udq,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvttps2udq,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vcvttps2udq,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,xmmreg_mz,mem64,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,xmmreg_mz,2b32,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,ymmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,ymmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,zmmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvttps2uqq,1,1,1,zmmreg_mz,ymmreg_sae,,');
+ FOpCodeList.Add('vcvttsd2usi,1,1,1,reg32,mem64,,');
+ FOpCodeList.Add('vcvttsd2usi,1,1,1,reg32,xmmreg_sae,,');
+ FOpCodeList.Add('vcvttsd2usi,1,1,1,reg64,mem64,,');
+ FOpCodeList.Add('vcvttsd2usi,1,1,1,reg64,xmmreg_sae,,');
+ FOpCodeList.Add('vcvttss2usi,1,1,1,reg32,mem32,,');
+ FOpCodeList.Add('vcvttss2usi,1,1,1,reg32,xmmreg_sae,,');
+ FOpCodeList.Add('vcvttss2usi,1,1,1,reg64,mem32,,');
+ FOpCodeList.Add('vcvttss2usi,1,1,1,reg64,xmmreg_sae,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,xmmreg_mz,mem64,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,xmmreg_mz,2b32,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,ymmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,ymmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,zmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,zmmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvtudq2pd,1,1,1,zmmreg_mz,ymmreg_er,,');
+ FOpCodeList.Add('vcvtudq2ps,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtudq2ps,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vcvtudq2ps,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvtudq2ps,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vcvtudq2ps,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtudq2ps,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vcvtudq2ps,1,1,1,zmmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtuqq2pd,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vcvtuqq2pd,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvtuqq2pd,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vcvtuqq2pd,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvtuqq2pd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtuqq2pd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvtuqq2pd,1,1,1,zmmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,mem256,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,4b64,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,ymmreg_mz,mem512,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,ymmreg_mz,8b64,,');
+ FOpCodeList.Add('vcvtuqq2ps,1,1,1,ymmreg_mz,zmmreg_er,,');
+ FOpCodeList.Add('vcvtusi2sd,1,1,1,xmmreg,xmmreg_er,rm32,');
+ FOpCodeList.Add('vcvtusi2sd,1,1,1,xmmreg,xmmreg_er,rm64,');
+ FOpCodeList.Add('vcvtusi2ss,1,1,1,xmmreg,xmmreg_er,rm32,');
+ FOpCodeList.Add('vcvtusi2ss,1,1,1,xmmreg,xmmreg_er,rm64,');
+ FOpCodeList.Add('vdbpsadbw,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vdbpsadbw,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vdbpsadbw,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vexp2pd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vexp2pd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vexp2pd,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vexp2ps,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vexp2ps,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vexp2ps,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vexpandpd,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vexpandpd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vexpandpd,1,1,1,ymmreg_mz,mem256,,');
+ FOpCodeList.Add('vexpandpd,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vexpandpd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vexpandpd,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vexpandps,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vexpandps,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vexpandps,1,1,1,ymmreg_mz,mem256,,');
+ FOpCodeList.Add('vexpandps,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vexpandps,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vexpandps,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vextractf32x4,1,1,1,mem128_m,ymmreg,imm8,');
+ FOpCodeList.Add('vextractf32x4,1,1,1,mem128_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextractf32x4,1,1,1,xmmreg_mz,ymmreg,imm8,');
+ FOpCodeList.Add('vextractf32x4,1,1,1,xmmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vextractf32x8,1,1,1,mem256_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextractf32x8,1,1,1,ymmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vextractf64x2,1,1,1,mem128_m,ymmreg,imm8,');
+ FOpCodeList.Add('vextractf64x2,1,1,1,mem128_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextractf64x2,1,1,1,xmmreg_mz,ymmreg,imm8,');
+ FOpCodeList.Add('vextractf64x2,1,1,1,xmmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vextractf64x4,1,1,1,mem256_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextractf64x4,1,1,1,ymmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti32x4,1,1,1,mem128_m,ymmreg,imm8,');
+ FOpCodeList.Add('vextracti32x4,1,1,1,mem128_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti32x4,1,1,1,xmmreg_mz,ymmreg,imm8,');
+ FOpCodeList.Add('vextracti32x4,1,1,1,xmmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti32x8,1,1,1,mem256_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti32x8,1,1,1,ymmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti64x2,1,1,1,mem128_m,ymmreg,imm8,');
+ FOpCodeList.Add('vextracti64x2,1,1,1,mem128_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti64x2,1,1,1,xmmreg_mz,ymmreg,imm8,');
+ FOpCodeList.Add('vextracti64x2,1,1,1,xmmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti64x4,1,1,1,mem256_m,zmmreg,imm8,');
+ FOpCodeList.Add('vextracti64x4,1,1,1,ymmreg_mz,zmmreg,imm8,');
+ FOpCodeList.Add('vfixupimmpd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vfixupimmpd,1,1,1,xmmreg_mz,xmmreg,2b64,imm8');
+ FOpCodeList.Add('vfixupimmpd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vfixupimmpd,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
+ FOpCodeList.Add('vfixupimmpd,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
+ FOpCodeList.Add('vfixupimmpd,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
+ FOpCodeList.Add('vfixupimmpd,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
+ FOpCodeList.Add('vfixupimmps,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vfixupimmps,1,1,1,xmmreg_mz,xmmreg,4b32,imm8');
+ FOpCodeList.Add('vfixupimmps,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vfixupimmps,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
+ FOpCodeList.Add('vfixupimmps,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
+ FOpCodeList.Add('vfixupimmps,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
+ FOpCodeList.Add('vfixupimmps,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
+ FOpCodeList.Add('vfixupimmsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vfixupimmsd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
+ FOpCodeList.Add('vfixupimmss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vfixupimmss,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
+ FOpCodeList.Add('vfmadd132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmadd132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmadd132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmadd132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmadd132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmadd132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmadd132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmadd132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmadd132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmadd132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmadd132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmadd132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmadd132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmadd132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmadd132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfmadd132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmadd132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmadd132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfmadd213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmadd213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmadd213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmadd213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmadd213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmadd213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmadd213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmadd213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmadd213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmadd213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmadd213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmadd213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmadd213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmadd213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmadd213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmadd213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfmadd213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmadd213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfmadd231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmadd231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmadd231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmadd231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmadd231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmadd231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmadd231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmadd231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmadd231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmadd231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmadd231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmadd231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmadd231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmadd231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmadd231sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfmadd231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmadd231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfmadd231ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsub132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsub132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmsub132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsub132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmsub132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsub132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmsub132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsub132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsub132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmsub132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsub132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmsub132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsub132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmsub132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsub132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmsub132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfmsub132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfmsub132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmsub213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsub213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmsub213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsub213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmsub213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsub213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmsub213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsub213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsub213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmsub213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsub213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmsub213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsub213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmsub213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsub213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmsub213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfmsub213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmsub213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfmsub231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsub231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmsub231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsub231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmsub231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsub231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmsub231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsub231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsub231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmsub231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsub231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmsub231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsub231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmsub231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsub231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmsub231sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfmsub231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfmsub231ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmadd132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfnmadd132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmadd132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmadd132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmadd213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfnmadd213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmadd213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmadd213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmadd231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmadd231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmsub132sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmsub132sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfnmsub132ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmsub132ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmsub213sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfnmsub213sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmsub213ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfnmsub213ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vfnmsub231sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmsub231sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vfnmsub231ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vfnmsub231ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,xmmrm,imm8,');
+ FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,2b64,imm8,');
+ FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,ymmrm,imm8,');
+ FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,4b64,imm8,');
+ FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,zmmrm,imm8,');
+ FOpCodeList.Add('vfpclasspd,1,1,1,kreg_m,8b64,imm8,');
+ FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,xmmrm,imm8,');
+ FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,4b32,imm8,');
+ FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,ymmrm,imm8,');
+ FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,8b32,imm8,');
+ FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,zmmrm,imm8,');
+ FOpCodeList.Add('vfpclassps,1,1,1,kreg_m,16b32,imm8,');
+ FOpCodeList.Add('vgetexppd,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vgetexppd,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vgetexppd,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vgetexppd,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vgetexppd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vgetexppd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vgetexppd,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vgetexpps,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vgetexpps,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vgetexpps,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vgetexpps,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vgetexpps,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vgetexpps,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vgetexpps,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vgetexpsd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vgetexpsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
+ FOpCodeList.Add('vgetexpss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
+ FOpCodeList.Add('vgetexpss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vgetmantpd,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vgetmantpd,1,1,1,xmmreg_mz,2b64,imm8,');
+ FOpCodeList.Add('vgetmantpd,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vgetmantpd,1,1,1,ymmreg_mz,4b64,imm8,');
+ FOpCodeList.Add('vgetmantpd,1,1,1,zmmreg_mz,mem512,imm8,');
+ FOpCodeList.Add('vgetmantpd,1,1,1,zmmreg_mz,8b64,imm8,');
+ FOpCodeList.Add('vgetmantpd,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
+ FOpCodeList.Add('vgetmantps,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vgetmantps,1,1,1,xmmreg_mz,4b32,imm8,');
+ FOpCodeList.Add('vgetmantps,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vgetmantps,1,1,1,ymmreg_mz,8b32,imm8,');
+ FOpCodeList.Add('vgetmantps,1,1,1,zmmreg_mz,mem512,imm8,');
+ FOpCodeList.Add('vgetmantps,1,1,1,zmmreg_mz,16b32,imm8,');
+ FOpCodeList.Add('vgetmantps,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
+ FOpCodeList.Add('vgetmantsd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
+ FOpCodeList.Add('vgetmantsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vgetmantss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vgetmantss,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
+ FOpCodeList.Add('vinsertf32x4,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinsertf32x4,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinsertf32x8,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
+ FOpCodeList.Add('vinsertf64x2,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinsertf64x2,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinsertf64x4,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
+ FOpCodeList.Add('vinserti32x4,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinserti32x4,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinserti32x8,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
+ FOpCodeList.Add('vinserti64x2,1,1,1,ymmreg_mz,ymmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinserti64x2,1,1,1,zmmreg_mz,zmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vinserti64x4,1,1,1,zmmreg_mz,zmmreg,ymmrm,imm8');
+ FOpCodeList.Add('vmovdqa32,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,mem128_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,mem256_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqa32,1,1,1,mem512_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,mem128_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,mem256_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqa64,1,1,1,mem512_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,mem128_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,mem256_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu16,1,1,1,mem512_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,mem128_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,mem256_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu32,1,1,1,mem512_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,mem128_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,mem256_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu64,1,1,1,mem512_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,mem128_mz,xmmreg,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,mem256_mz,ymmreg,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vmovdqu8,1,1,1,mem512_mz,zmmreg,,');
+ FOpCodeList.Add('vpabsq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vpabsq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vpabsq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vpabsq,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vpabsq,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vpabsq,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vpandd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpandd,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpandd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpandd,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpandd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpandd,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpandnd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpandnd,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpandnd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpandnd,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpandnd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpandnd,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpandnq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpandnq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpandnq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpandnq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpandnq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpandnq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpandq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpandq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpandq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpandq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpandq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpandq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpblendmb,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpblendmb,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpblendmb,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpblendmd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpblendmd,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpblendmd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpblendmd,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpblendmd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpblendmd,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpblendmq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpblendmq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpblendmq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpblendmq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpblendmq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpblendmq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpblendmw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpblendmw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpblendmw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,mem8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg16,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,reg8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,mem8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg16,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,reg8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ymmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,mem8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg16,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,reg8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,zmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,xmmreg_mz,mem32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,xmmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,ymmreg_mz,mem32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,ymmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,ymmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,zmmreg_mz,mem32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,zmmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,zmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastmb2q xmmreg,kreg,1,1,1,void,,,');
+ FOpCodeList.Add('vpbroadcastmb2q ymmreg,kreg,1,1,1,void,,,');
+ FOpCodeList.Add('vpbroadcastmb2q zmmreg,kreg,1,1,1,void,,,');
+ FOpCodeList.Add('vpbroadcastmw2d xmmreg,kreg,1,1,1,void,,,');
+ FOpCodeList.Add('vpbroadcastmw2d ymmreg,kreg,1,1,1,void,,,');
+ FOpCodeList.Add('vpbroadcastmw2d zmmreg,kreg,1,1,1,void,,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,xmmreg_mz,mem64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,xmmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,ymmreg_mz,mem64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,ymmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,ymmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,zmmreg_mz,mem64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,zmmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,zmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,mem16,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,reg16,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,mem16,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,reg16,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,ymmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,mem16,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,reg16,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,reg32,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,reg64,,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,zmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpcmpb,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpb,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpb,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,xmmreg,4b32,imm8');
+ FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,ymmreg,8b32,imm8');
+ FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcmpd,1,1,1,kreg_m,zmmreg,16b32,imm8');
+ FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,xmmreg,2b64,imm8');
+ FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,ymmreg,4b64,imm8');
+ FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcmpq,1,1,1,kreg_m,zmmreg,8b64,imm8');
+ FOpCodeList.Add('vpcmpub,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpub,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpub,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,xmmreg,4b32,imm8');
+ FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,ymmreg,8b32,imm8');
+ FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcmpud,1,1,1,kreg_m,zmmreg,16b32,imm8');
+ FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,xmmreg,2b64,imm8');
+ FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,ymmreg,4b64,imm8');
+ FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcmpuq,1,1,1,kreg_m,zmmreg,8b64,imm8');
+ FOpCodeList.Add('vpcmpuw,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpuw,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpuw,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcmpw,1,1,1,kreg_m,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpcmpw,1,1,1,kreg_m,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpcmpw,1,1,1,kreg_m,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpcompressd,1,1,1,mem128_m,xmmreg,,');
+ FOpCodeList.Add('vpcompressd,1,1,1,mem256_m,ymmreg,,');
+ FOpCodeList.Add('vpcompressd,1,1,1,mem512_m,zmmreg,,');
+ FOpCodeList.Add('vpcompressd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpcompressd,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpcompressd,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpcompressq,1,1,1,mem128_m,xmmreg,,');
+ FOpCodeList.Add('vpcompressq,1,1,1,mem256_m,ymmreg,,');
+ FOpCodeList.Add('vpcompressq,1,1,1,mem512_m,zmmreg,,');
+ FOpCodeList.Add('vpcompressq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpcompressq,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpcompressq,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpconflictd,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vpconflictd,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vpconflictd,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vpconflictd,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vpconflictd,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vpconflictd,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vpconflictq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vpconflictq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vpconflictq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vpconflictq,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vpconflictq,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vpconflictq,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vpermb,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermb,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermb,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermi2b,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermi2b,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermi2b,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermi2d,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermi2d,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpermi2d,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermi2d,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpermi2d,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermi2d,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpermi2pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermi2pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpermi2pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermi2pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpermi2pd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermi2pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpermi2ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermi2ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpermi2ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermi2ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpermi2ps,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermi2ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpermi2q,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermi2q,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpermi2q,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermi2q,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpermi2q,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermi2q,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpermi2w,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermi2w,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermi2w,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermt2b,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermt2b,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermt2b,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermt2d,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermt2d,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpermt2d,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermt2d,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpermt2d,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermt2d,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpermt2pd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermt2pd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpermt2pd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermt2pd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpermt2pd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermt2pd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpermt2ps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermt2ps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpermt2ps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermt2ps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpermt2ps,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermt2ps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpermt2q,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermt2q,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpermt2q,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermt2q,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpermt2q,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermt2q,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpermt2w,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermt2w,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermt2w,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpermw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpermw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpermw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpexpandd,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vpexpandd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpexpandd,1,1,1,ymmreg_mz,mem256,,');
+ FOpCodeList.Add('vpexpandd,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpexpandd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vpexpandd,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpexpandq,1,1,1,xmmreg_mz,mem128,,');
+ FOpCodeList.Add('vpexpandq,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpexpandq,1,1,1,ymmreg_mz,mem256,,');
+ FOpCodeList.Add('vpexpandq,1,1,1,ymmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpexpandq,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vpexpandq,1,1,1,zmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vplzcntd,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vplzcntd,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vplzcntd,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vplzcntd,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vplzcntd,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vplzcntd,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vplzcntq,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vplzcntq,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vplzcntq,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vplzcntq,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vplzcntq,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vplzcntq,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vpmadd52huq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpmadd52huq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpmadd52huq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpmadd52huq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpmadd52huq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpmadd52huq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpmadd52luq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpmadd52luq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpmadd52luq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpmadd52luq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpmadd52luq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpmadd52luq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpmaxsq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpmaxsq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpmaxsq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpmaxsq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpmaxsq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpmaxsq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpmaxuq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpmaxuq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpmaxuq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpmaxuq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpmaxuq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpmaxuq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpminsq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpminsq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpminsq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpminsq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpminsq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpminsq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpminuq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpminuq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpminuq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpminuq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpminuq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpminuq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpmovb2m,1,1,1,kreg,xmmreg,,');
+ FOpCodeList.Add('vpmovb2m,1,1,1,kreg,ymmreg,,');
+ FOpCodeList.Add('vpmovb2m,1,1,1,kreg,zmmreg,,');
+ FOpCodeList.Add('vpmovd2m,1,1,1,kreg,xmmreg,,');
+ FOpCodeList.Add('vpmovd2m,1,1,1,kreg,ymmreg,,');
+ FOpCodeList.Add('vpmovd2m,1,1,1,kreg,zmmreg,,');
+ FOpCodeList.Add('vpmovdb,1,1,1,mem128_m,zmmreg,,');
+ FOpCodeList.Add('vpmovdb,1,1,1,mem32_m,xmmreg,,');
+ FOpCodeList.Add('vpmovdb,1,1,1,mem64_m,ymmreg,,');
+ FOpCodeList.Add('vpmovdb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovdb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovdb,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovdw,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovdw,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovdw,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovdw,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovdw,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovdw,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovm2b,1,1,1,xmmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2b,1,1,1,ymmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2b,1,1,1,zmmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2d,1,1,1,xmmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2d,1,1,1,ymmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2d,1,1,1,zmmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2q,1,1,1,xmmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2q,1,1,1,ymmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2q,1,1,1,zmmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2w,1,1,1,xmmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2w,1,1,1,ymmreg,kreg,,');
+ FOpCodeList.Add('vpmovm2w,1,1,1,zmmreg,kreg,,');
+ FOpCodeList.Add('vpmovq2m,1,1,1,kreg,xmmreg,,');
+ FOpCodeList.Add('vpmovq2m,1,1,1,kreg,ymmreg,,');
+ FOpCodeList.Add('vpmovq2m,1,1,1,kreg,zmmreg,,');
+ FOpCodeList.Add('vpmovqb,1,1,1,mem16_m,xmmreg,,');
+ FOpCodeList.Add('vpmovqb,1,1,1,mem32_m,ymmreg,,');
+ FOpCodeList.Add('vpmovqb,1,1,1,mem64_m,zmmreg,,');
+ FOpCodeList.Add('vpmovqb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovqb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovqb,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovqd,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovqd,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovqd,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovqd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovqd,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovqd,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovqw,1,1,1,mem128_m,zmmreg,,');
+ FOpCodeList.Add('vpmovqw,1,1,1,mem32_m,xmmreg,,');
+ FOpCodeList.Add('vpmovqw,1,1,1,mem64_m,ymmreg,,');
+ FOpCodeList.Add('vpmovqw,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovqw,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovqw,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovsdb,1,1,1,mem128_m,zmmreg,,');
+ FOpCodeList.Add('vpmovsdb,1,1,1,mem32_m,xmmreg,,');
+ FOpCodeList.Add('vpmovsdb,1,1,1,mem64_m,ymmreg,,');
+ FOpCodeList.Add('vpmovsdb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovsdb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovsdb,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovsdw,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovsdw,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovsdw,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovsdw,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovsdw,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovsdw,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovsqb,1,1,1,mem16_m,xmmreg,,');
+ FOpCodeList.Add('vpmovsqb,1,1,1,mem32_m,ymmreg,,');
+ FOpCodeList.Add('vpmovsqb,1,1,1,mem64_m,zmmreg,,');
+ FOpCodeList.Add('vpmovsqb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovsqb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovsqb,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovsqd,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovsqd,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovsqd,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovsqd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovsqd,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovsqd,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovsqw,1,1,1,mem128_m,zmmreg,,');
+ FOpCodeList.Add('vpmovsqw,1,1,1,mem32_m,xmmreg,,');
+ FOpCodeList.Add('vpmovsqw,1,1,1,mem64_m,ymmreg,,');
+ FOpCodeList.Add('vpmovsqw,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovsqw,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovsqw,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovswb,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovswb,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovswb,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovswb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovswb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovswb,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovusdb,1,1,1,mem128_m,zmmreg,,');
+ FOpCodeList.Add('vpmovusdb,1,1,1,mem32_m,xmmreg,,');
+ FOpCodeList.Add('vpmovusdb,1,1,1,mem64_m,ymmreg,,');
+ FOpCodeList.Add('vpmovusdb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovusdb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovusdb,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovusdw,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovusdw,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovusdw,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovusdw,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovusdw,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovusdw,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovusqb,1,1,1,mem16_m,xmmreg,,');
+ FOpCodeList.Add('vpmovusqb,1,1,1,mem32_m,ymmreg,,');
+ FOpCodeList.Add('vpmovusqb,1,1,1,mem64_m,zmmreg,,');
+ FOpCodeList.Add('vpmovusqb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovusqb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovusqb,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovusqd,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovusqd,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovusqd,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovusqd,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovusqd,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovusqd,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovusqw,1,1,1,mem128_m,zmmreg,,');
+ FOpCodeList.Add('vpmovusqw,1,1,1,mem32_m,xmmreg,,');
+ FOpCodeList.Add('vpmovusqw,1,1,1,mem64_m,ymmreg,,');
+ FOpCodeList.Add('vpmovusqw,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovusqw,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovusqw,1,1,1,xmmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovuswb,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovuswb,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovuswb,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovuswb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovuswb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovuswb,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmovw2m,1,1,1,kreg,xmmreg,,');
+ FOpCodeList.Add('vpmovw2m,1,1,1,kreg,ymmreg,,');
+ FOpCodeList.Add('vpmovw2m,1,1,1,kreg,zmmreg,,');
+ FOpCodeList.Add('vpmovwb,1,1,1,mem128_m,ymmreg,,');
+ FOpCodeList.Add('vpmovwb,1,1,1,mem256_m,zmmreg,,');
+ FOpCodeList.Add('vpmovwb,1,1,1,mem64_m,xmmreg,,');
+ FOpCodeList.Add('vpmovwb,1,1,1,xmmreg_mz,xmmreg,,');
+ FOpCodeList.Add('vpmovwb,1,1,1,xmmreg_mz,ymmreg,,');
+ FOpCodeList.Add('vpmovwb,1,1,1,ymmreg_mz,zmmreg,,');
+ FOpCodeList.Add('vpmullq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpmullq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpmullq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpmullq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpmullq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpmullq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpmultishiftqb,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpmultishiftqb,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpmultishiftqb,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpmultishiftqb,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpmultishiftqb,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpmultishiftqb,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpord,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpord,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpord,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpord,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpord,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpord,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vporq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vporq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vporq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vporq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vporq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vporq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vprold,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vprold,1,1,1,xmmreg_mz,4b32,imm8,');
+ FOpCodeList.Add('vprold,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vprold,1,1,1,ymmreg_mz,8b32,imm8,');
+ FOpCodeList.Add('vprold,1,1,1,zmmreg_mz,zmmrm,imm8,');
+ FOpCodeList.Add('vprold,1,1,1,zmmreg_mz,16b32,imm8,');
+ FOpCodeList.Add('vprolq,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vprolq,1,1,1,xmmreg_mz,2b64,imm8,');
+ FOpCodeList.Add('vprolq,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vprolq,1,1,1,ymmreg_mz,4b64,imm8,');
+ FOpCodeList.Add('vprolq,1,1,1,zmmreg_mz,zmmrm,imm8,');
+ FOpCodeList.Add('vprolq,1,1,1,zmmreg_mz,8b64,imm8,');
+ FOpCodeList.Add('vprolvd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vprolvd,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vprolvd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vprolvd,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vprolvd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vprolvd,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vprolvq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vprolvq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vprolvq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vprolvq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vprolvq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vprolvq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vprord,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vprord,1,1,1,xmmreg_mz,4b32,imm8,');
+ FOpCodeList.Add('vprord,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vprord,1,1,1,ymmreg_mz,8b32,imm8,');
+ FOpCodeList.Add('vprord,1,1,1,zmmreg_mz,zmmrm,imm8,');
+ FOpCodeList.Add('vprord,1,1,1,zmmreg_mz,16b32,imm8,');
+ FOpCodeList.Add('vprorq,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vprorq,1,1,1,xmmreg_mz,2b64,imm8,');
+ FOpCodeList.Add('vprorq,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vprorq,1,1,1,ymmreg_mz,4b64,imm8,');
+ FOpCodeList.Add('vprorq,1,1,1,zmmreg_mz,zmmrm,imm8,');
+ FOpCodeList.Add('vprorq,1,1,1,zmmreg_mz,8b64,imm8,');
+ FOpCodeList.Add('vprorvd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vprorvd,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vprorvd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vprorvd,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vprorvd,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vprorvd,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vprorvq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vprorvq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vprorvq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vprorvq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vprorvq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vprorvq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpscatterdd,1,1,1,xmem32_m,xmmreg,,');
+ FOpCodeList.Add('vpscatterdd,1,1,1,ymem32_m,ymmreg,,');
+ FOpCodeList.Add('vpscatterdd,1,1,1,zmem32_m,zmmreg,,');
+ FOpCodeList.Add('vpscatterdq,1,1,1,xmem64_m,xmmreg,,');
+ FOpCodeList.Add('vpscatterdq,1,1,1,xmem64_m,ymmreg,,');
+ FOpCodeList.Add('vpscatterdq,1,1,1,ymem64_m,zmmreg,,');
+ FOpCodeList.Add('vpscatterqd,1,1,1,xmem32_m,xmmreg,,');
+ FOpCodeList.Add('vpscatterqd,1,1,1,ymem32_m,xmmreg,,');
+ FOpCodeList.Add('vpscatterqd,1,1,1,zmem32_m,ymmreg,,');
+ FOpCodeList.Add('vpscatterqq,1,1,1,xmem64_m,xmmreg,,');
+ FOpCodeList.Add('vpscatterqq,1,1,1,ymem64_m,ymmreg,,');
+ FOpCodeList.Add('vpscatterqq,1,1,1,zmem64_m,zmmreg,,');
+ FOpCodeList.Add('vpsllvw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpsllvw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpsllvw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpsraq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpsraq,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vpsraq,1,1,1,xmmreg_mz,2b64,imm8,');
+ FOpCodeList.Add('vpsraq,1,1,1,ymmreg_mz,ymmreg,xmmrm,');
+ FOpCodeList.Add('vpsraq,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vpsraq,1,1,1,ymmreg_mz,4b64,imm8,');
+ FOpCodeList.Add('vpsraq,1,1,1,zmmreg_mz,zmmreg,xmmrm,');
+ FOpCodeList.Add('vpsraq,1,1,1,zmmreg_mz,zmmrm,imm8,');
+ FOpCodeList.Add('vpsraq,1,1,1,zmmreg_mz,8b64,imm8,');
+ FOpCodeList.Add('vpsravq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpsravq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpsravq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpsravq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpsravq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpsravq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vpsravw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpsravw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpsravw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpsrlvw,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpsrlvw,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpsrlvw,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpternlogd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpternlogd,1,1,1,xmmreg_mz,xmmreg,4b32,imm8');
+ FOpCodeList.Add('vpternlogd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpternlogd,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
+ FOpCodeList.Add('vpternlogd,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpternlogd,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
+ FOpCodeList.Add('vpternlogq,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vpternlogq,1,1,1,xmmreg_mz,xmmreg,2b64,imm8');
+ FOpCodeList.Add('vpternlogq,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vpternlogq,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
+ FOpCodeList.Add('vpternlogq,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vpternlogq,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
+ FOpCodeList.Add('vptestmb,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestmb,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestmb,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vptestmd,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestmd,1,1,1,kreg_m,xmmreg,4b32,');
+ FOpCodeList.Add('vptestmd,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestmd,1,1,1,kreg_m,ymmreg,8b32,');
+ FOpCodeList.Add('vptestmd,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vptestmd,1,1,1,kreg_m,zmmreg,16b32,');
+ FOpCodeList.Add('vptestmq,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestmq,1,1,1,kreg_m,xmmreg,2b64,');
+ FOpCodeList.Add('vptestmq,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestmq,1,1,1,kreg_m,ymmreg,4b64,');
+ FOpCodeList.Add('vptestmq,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vptestmq,1,1,1,kreg_m,zmmreg,8b64,');
+ FOpCodeList.Add('vptestmw,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestmw,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestmw,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vptestnmb,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestnmb,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestnmb,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,xmmreg,4b32,');
+ FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,ymmreg,8b32,');
+ FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vptestnmd,1,1,1,kreg_m,zmmreg,16b32,');
+ FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,xmmreg,2b64,');
+ FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,ymmreg,4b64,');
+ FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vptestnmq,1,1,1,kreg_m,zmmreg,8b64,');
+ FOpCodeList.Add('vptestnmw,1,1,1,kreg_m,xmmreg,xmmrm,');
+ FOpCodeList.Add('vptestnmw,1,1,1,kreg_m,ymmreg,ymmrm,');
+ FOpCodeList.Add('vptestnmw,1,1,1,kreg_m,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpxord,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpxord,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vpxord,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpxord,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vpxord,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpxord,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vpxorq,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vpxorq,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vpxorq,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vpxorq,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vpxorq,1,1,1,zmmreg_mz,zmmreg,zmmrm,');
+ FOpCodeList.Add('vpxorq,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vrangepd,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vrangepd,1,1,1,xmmreg_mz,xmmreg,2b64,imm8');
+ FOpCodeList.Add('vrangepd,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vrangepd,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
+ FOpCodeList.Add('vrangepd,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
+ FOpCodeList.Add('vrangepd,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
+ FOpCodeList.Add('vrangepd,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
+ FOpCodeList.Add('vrangeps,1,1,1,xmmreg_mz,xmmreg,xmmrm,imm8');
+ FOpCodeList.Add('vrangeps,1,1,1,xmmreg_mz,xmmreg,4b32,imm8');
+ FOpCodeList.Add('vrangeps,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vrangeps,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
+ FOpCodeList.Add('vrangeps,1,1,1,zmmreg_mz,zmmreg,mem512,imm8');
+ FOpCodeList.Add('vrangeps,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
+ FOpCodeList.Add('vrangeps,1,1,1,zmmreg_mz,zmmreg,zmmreg_sae,imm8');
+ FOpCodeList.Add('vrangesd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vrangesd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
+ FOpCodeList.Add('vrangess,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vrangess,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
+ FOpCodeList.Add('vrcp14pd,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vrcp14pd,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vrcp14pd,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vrcp14pd,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vrcp14pd,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vrcp14pd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vrcp14ps,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vrcp14ps,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vrcp14ps,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vrcp14ps,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vrcp14ps,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vrcp14ps,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vrcp14sd,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
+ FOpCodeList.Add('vrcp14sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vrcp14ss,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
+ FOpCodeList.Add('vrcp14ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vrcp28pd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vrcp28pd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vrcp28pd,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vrcp28ps,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vrcp28ps,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vrcp28ps,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vrcp28sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
+ FOpCodeList.Add('vrcp28sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vrcp28ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
+ FOpCodeList.Add('vrcp28ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vreducepd,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vreducepd,1,1,1,xmmreg_mz,2b64,imm8,');
+ FOpCodeList.Add('vreducepd,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vreducepd,1,1,1,ymmreg_mz,4b64,imm8,');
+ FOpCodeList.Add('vreducepd,1,1,1,zmmreg_mz,mem512,imm8,');
+ FOpCodeList.Add('vreducepd,1,1,1,zmmreg_mz,8b64,imm8,');
+ FOpCodeList.Add('vreducepd,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
+ FOpCodeList.Add('vreduceps,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vreduceps,1,1,1,xmmreg_mz,4b32,imm8,');
+ FOpCodeList.Add('vreduceps,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vreduceps,1,1,1,ymmreg_mz,8b32,imm8,');
+ FOpCodeList.Add('vreduceps,1,1,1,zmmreg_mz,mem512,imm8,');
+ FOpCodeList.Add('vreduceps,1,1,1,zmmreg_mz,16b32,imm8,');
+ FOpCodeList.Add('vreduceps,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
+ FOpCodeList.Add('vreducesd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
+ FOpCodeList.Add('vreducesd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vreducess,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
+ FOpCodeList.Add('vreducess,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vrndscalepd,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vrndscalepd,1,1,1,xmmreg_mz,2b64,imm8,');
+ FOpCodeList.Add('vrndscalepd,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vrndscalepd,1,1,1,ymmreg_mz,4b64,imm8,');
+ FOpCodeList.Add('vrndscalepd,1,1,1,zmmreg_mz,mem512,imm8,');
+ FOpCodeList.Add('vrndscalepd,1,1,1,zmmreg_mz,8b64,imm8,');
+ FOpCodeList.Add('vrndscalepd,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
+ FOpCodeList.Add('vrndscaleps,1,1,1,xmmreg_mz,xmmrm,imm8,');
+ FOpCodeList.Add('vrndscaleps,1,1,1,xmmreg_mz,4b32,imm8,');
+ FOpCodeList.Add('vrndscaleps,1,1,1,ymmreg_mz,ymmrm,imm8,');
+ FOpCodeList.Add('vrndscaleps,1,1,1,ymmreg_mz,8b32,imm8,');
+ FOpCodeList.Add('vrndscaleps,1,1,1,zmmreg_mz,mem512,imm8,');
+ FOpCodeList.Add('vrndscaleps,1,1,1,zmmreg_mz,16b32,imm8,');
+ FOpCodeList.Add('vrndscaleps,1,1,1,zmmreg_mz,zmmreg_sae,imm8,');
+ FOpCodeList.Add('vrndscalesd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vrndscalesd,1,1,1,xmmreg_mz,xmmreg,mem64,imm8');
+ FOpCodeList.Add('vrndscaless,1,1,1,xmmreg_mz,xmmreg,mem32,imm8');
+ FOpCodeList.Add('vrndscaless,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,imm8');
+ FOpCodeList.Add('vrsqrt14pd,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vrsqrt14pd,1,1,1,xmmreg_mz,2b64,,');
+ FOpCodeList.Add('vrsqrt14pd,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vrsqrt14pd,1,1,1,ymmreg_mz,4b64,,');
+ FOpCodeList.Add('vrsqrt14pd,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vrsqrt14pd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vrsqrt14ps,1,1,1,xmmreg_mz,xmmrm,,');
+ FOpCodeList.Add('vrsqrt14ps,1,1,1,xmmreg_mz,4b32,,');
+ FOpCodeList.Add('vrsqrt14ps,1,1,1,ymmreg_mz,ymmrm,,');
+ FOpCodeList.Add('vrsqrt14ps,1,1,1,ymmreg_mz,8b32,,');
+ FOpCodeList.Add('vrsqrt14ps,1,1,1,zmmreg_mz,zmmrm,,');
+ FOpCodeList.Add('vrsqrt14ps,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vrsqrt14sd,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
+ FOpCodeList.Add('vrsqrt14sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vrsqrt14ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vrsqrt14ss,1,1,1,xmmreg_mz,xmmreg,xmmreg,');
+ FOpCodeList.Add('vrsqrt28pd,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vrsqrt28pd,1,1,1,zmmreg_mz,8b64,,');
+ FOpCodeList.Add('vrsqrt28pd,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vrsqrt28ps,1,1,1,zmmreg_mz,mem512,,');
+ FOpCodeList.Add('vrsqrt28ps,1,1,1,zmmreg_mz,16b32,,');
+ FOpCodeList.Add('vrsqrt28ps,1,1,1,zmmreg_mz,zmmreg_sae,,');
+ FOpCodeList.Add('vrsqrt28sd,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
+ FOpCodeList.Add('vrsqrt28sd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vrsqrt28ss,1,1,1,xmmreg_mz,xmmreg,xmmreg_sae,');
+ FOpCodeList.Add('vrsqrt28ss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vscalefpd,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vscalefpd,1,1,1,xmmreg_mz,xmmreg,2b64,');
+ FOpCodeList.Add('vscalefpd,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vscalefpd,1,1,1,ymmreg_mz,ymmreg,4b64,');
+ FOpCodeList.Add('vscalefpd,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vscalefpd,1,1,1,zmmreg_mz,zmmreg,8b64,');
+ FOpCodeList.Add('vscalefpd,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vscalefps,1,1,1,xmmreg_mz,xmmreg,xmmrm,');
+ FOpCodeList.Add('vscalefps,1,1,1,xmmreg_mz,xmmreg,4b32,');
+ FOpCodeList.Add('vscalefps,1,1,1,ymmreg_mz,ymmreg,ymmrm,');
+ FOpCodeList.Add('vscalefps,1,1,1,ymmreg_mz,ymmreg,8b32,');
+ FOpCodeList.Add('vscalefps,1,1,1,zmmreg_mz,zmmreg,mem512,');
+ FOpCodeList.Add('vscalefps,1,1,1,zmmreg_mz,zmmreg,16b32,');
+ FOpCodeList.Add('vscalefps,1,1,1,zmmreg_mz,zmmreg,zmmreg_er,');
+ FOpCodeList.Add('vscalefsd,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vscalefsd,1,1,1,xmmreg_mz,xmmreg,mem64,');
+ FOpCodeList.Add('vscalefss,1,1,1,xmmreg_mz,xmmreg,xmmreg_er,');
+ FOpCodeList.Add('vscalefss,1,1,1,xmmreg_mz,xmmreg,mem32,');
+ FOpCodeList.Add('vscatterdpd,1,1,1,xmem64_m,xmmreg,,');
+ FOpCodeList.Add('vscatterdpd,1,1,1,xmem64_m,ymmreg,,');
+ FOpCodeList.Add('vscatterdpd,1,1,1,ymem64_m,zmmreg,,');
+ FOpCodeList.Add('vscatterdps,1,1,1,xmem32_m,xmmreg,,');
+ FOpCodeList.Add('vscatterdps,1,1,1,ymem32_m,ymmreg,,');
+ FOpCodeList.Add('vscatterdps,1,1,1,zmem32_m,zmmreg,,');
+ FOpCodeList.Add('vscatterqpd,1,1,1,xmem64_m,xmmreg,,');
+ FOpCodeList.Add('vscatterqpd,1,1,1,ymem64_m,ymmreg,,');
+ FOpCodeList.Add('vscatterqpd,1,1,1,zmem64_m,zmmreg,,');
+ FOpCodeList.Add('vscatterqps,1,1,1,xmem32_m,xmmreg,,');
+ FOpCodeList.Add('vscatterqps,1,1,1,ymem32_m,xmmreg,,');
+ FOpCodeList.Add('vscatterqps,1,1,1,zmem32_m,ymmreg,,');
+ FOpCodeList.Add('vshuff32x4,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vshuff32x4,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
+ FOpCodeList.Add('vshuff32x4,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vshuff32x4,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
+ FOpCodeList.Add('vshuff64x2,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vshuff64x2,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
+ FOpCodeList.Add('vshuff64x2,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vshuff64x2,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
+ FOpCodeList.Add('vshufi32x4,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vshufi32x4,1,1,1,ymmreg_mz,ymmreg,8b32,imm8');
+ FOpCodeList.Add('vshufi32x4,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vshufi32x4,1,1,1,zmmreg_mz,zmmreg,16b32,imm8');
+ FOpCodeList.Add('vshufi64x2,1,1,1,ymmreg_mz,ymmreg,ymmrm,imm8');
+ FOpCodeList.Add('vshufi64x2,1,1,1,ymmreg_mz,ymmreg,4b64,imm8');
+ FOpCodeList.Add('vshufi64x2,1,1,1,zmmreg_mz,zmmreg,zmmrm,imm8');
+ FOpCodeList.Add('vshufi64x2,1,1,1,zmmreg_mz,zmmreg,8b64,imm8');
+
+ FOpCodeList.Add('movntss,1,1,1,MEM32,XMMREG,');
+ FOpCodeList.Add('movntsd,1,1,1,MEM64,XMMREG,');
end;
function TAVXTestGenerator.InternalMakeTestFiles(aX64, aAVX512, aSAE: boolean; aDestPath, aFileExt: String;
diff --git a/tests/webtbs/tw32219.pp b/tests/webtbs/tw32219.pp
new file mode 100644
index 0000000000..26e52c1896
--- /dev/null
+++ b/tests/webtbs/tw32219.pp
@@ -0,0 +1,13 @@
+{ %cpu=x86_64 }
+{ %norun }
+program project1;
+
+{$mode objfpc}{$H+}
+{$ASMMODE intel}
+
+begin
+ asm
+ vaddsd xmm0, xmm0, qword ptr [rax]
+ vaddsd xmm0, xmm0, qword ptr [rax + 8]
+ end;
+end.