Browse Source

bugfixes x86ins.dat avx512-opcodes vpexpand..., vptest..., vrcp...

git-svn-id: branches/tg74/avx512@39754 -
tg74 7 years ago
parent
commit
865563fc82
4 changed files with 188 additions and 465 deletions
  1. 48 48
      compiler/i386/i386tab.inc
  2. 48 48
      compiler/i8086/i8086tab.inc
  3. 44 321
      compiler/x86/x86ins.dat
  4. 48 48
      compiler/x86_64/x8664tab.inc

+ 48 - 48
compiler/i386/i386tab.inc

@@ -24644,84 +24644,84 @@
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
-    code    : #232#241#249#1#137#65;
+    code    : #232#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
-    code    : #232#241#249#1#137#65;
+    code    : #232#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
-    code    : #232#241#244#249#1#137#65;
+    code    : #232#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
-    code    : #232#241#244#249#1#137#65;
+    code    : #232#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
-    code    : #232#233#241#249#1#137#65;
+    code    : #232#233#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
-    code    : #232#233#241#249#1#137#65;
+    code    : #232#233#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
-    code    : #232#234#241#249#1#137#65;
+    code    : #232#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
-    code    : #232#234#241#249#1#137#65;
+    code    : #232#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
-    code    : #232#234#241#244#249#1#137#65;
+    code    : #232#234#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
-    code    : #232#234#241#244#249#1#137#65;
+    code    : #232#234#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
-    code    : #232#233#234#241#249#1#137#65;
+    code    : #232#233#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
-    code    : #232#233#234#241#249#1#137#65;
+    code    : #232#233#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
@@ -26849,84 +26849,84 @@
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #232#241#249#1#39#72;
+    code    : #232#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
-    code    : #232#241#249#1#39#72;
+    code    : #232#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #232#241#244#249#1#39#72;
+    code    : #232#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
-    code    : #232#241#244#249#1#39#72;
+    code    : #232#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #232#233#241#249#1#39#72;
+    code    : #232#233#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
-    code    : #232#233#241#249#1#39#72;
+    code    : #232#233#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #232#234#241#249#1#39#72;
+    code    : #232#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
-    code    : #232#234#241#249#1#39#72;
+    code    : #232#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #232#234#241#244#249#1#39#72;
+    code    : #232#234#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
-    code    : #232#234#241#244#249#1#39#72;
+    code    : #232#234#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #232#233#234#241#249#1#39#72;
+    code    : #232#233#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
-    code    : #232#233#234#241#249#1#39#72;
+    code    : #232#233#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -26975,84 +26975,84 @@
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #219#232#249#1#39#72;
+    code    : #219#232#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
-    code    : #219#232#249#1#39#72;
+    code    : #219#232#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #219#232#244#249#1#39#72;
+    code    : #219#232#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
-    code    : #219#232#244#249#1#39#72;
+    code    : #219#232#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #219#232#233#249#1#39#72;
+    code    : #219#232#233#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
-    code    : #219#232#233#249#1#39#72;
+    code    : #219#232#233#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #219#232#234#249#1#39#72;
+    code    : #219#232#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
-    code    : #219#232#234#249#1#39#72;
+    code    : #219#232#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #219#232#234#244#249#1#39#72;
+    code    : #219#232#234#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
-    code    : #219#232#234#244#249#1#39#72;
+    code    : #219#232#234#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #219#232#233#234#249#1#39#72;
+    code    : #219#232#233#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
-    code    : #219#232#233#234#249#1#39#72;
+    code    : #219#232#233#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27373,29 +27373,29 @@
   (
     opcode  : A_VRCP14SD;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
-    code    : #232#234#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+    code    : #232#234#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SD;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
-    code    : #232#234#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+    code    : #232#234#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SS;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
-    code    : #232#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+    code    : #232#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SS;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
-    code    : #232#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+    code    : #232#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27444,28 +27444,28 @@
     opcode  : A_VRCP28SD;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
-    code    : #232#234#241#249#1#203#72;
+    code    : #232#234#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SD;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
-    code    : #232#234#241#249#1#203#72;
+    code    : #232#234#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SS;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
-    code    : #232#241#249#1#203#72;
+    code    : #232#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SS;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
-    code    : #232#241#249#1#203#72;
+    code    : #232#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (

+ 48 - 48
compiler/i8086/i8086tab.inc

@@ -24868,84 +24868,84 @@
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
-    code    : #232#241#249#1#137#65;
+    code    : #232#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
-    code    : #232#241#249#1#137#65;
+    code    : #232#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
-    code    : #232#241#244#249#1#137#65;
+    code    : #232#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
-    code    : #232#241#244#249#1#137#65;
+    code    : #232#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
-    code    : #232#233#241#249#1#137#65;
+    code    : #232#233#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
-    code    : #232#233#241#249#1#137#65;
+    code    : #232#233#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
-    code    : #232#234#241#249#1#137#65;
+    code    : #232#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
-    code    : #232#234#241#249#1#137#65;
+    code    : #232#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
-    code    : #232#234#241#244#249#1#137#65;
+    code    : #232#234#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
-    code    : #232#234#241#244#249#1#137#65;
+    code    : #232#234#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
-    code    : #232#233#234#241#249#1#137#65;
+    code    : #232#233#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
-    code    : #232#233#234#241#249#1#137#65;
+    code    : #232#233#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
@@ -27073,84 +27073,84 @@
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #232#241#249#1#39#72;
+    code    : #232#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
-    code    : #232#241#249#1#39#72;
+    code    : #232#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #232#241#244#249#1#39#72;
+    code    : #232#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
-    code    : #232#241#244#249#1#39#72;
+    code    : #232#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #232#233#241#249#1#39#72;
+    code    : #232#233#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
-    code    : #232#233#241#249#1#39#72;
+    code    : #232#233#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #232#234#241#249#1#39#72;
+    code    : #232#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
-    code    : #232#234#241#249#1#39#72;
+    code    : #232#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #232#234#241#244#249#1#39#72;
+    code    : #232#234#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
-    code    : #232#234#241#244#249#1#39#72;
+    code    : #232#234#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #232#233#234#241#249#1#39#72;
+    code    : #232#233#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
-    code    : #232#233#234#241#249#1#39#72;
+    code    : #232#233#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27199,84 +27199,84 @@
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #219#232#249#1#39#72;
+    code    : #219#232#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
-    code    : #219#232#249#1#39#72;
+    code    : #219#232#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #219#232#244#249#1#39#72;
+    code    : #219#232#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
-    code    : #219#232#244#249#1#39#72;
+    code    : #219#232#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #219#232#233#249#1#39#72;
+    code    : #219#232#233#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
-    code    : #219#232#233#249#1#39#72;
+    code    : #219#232#233#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #219#232#234#249#1#39#72;
+    code    : #219#232#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
-    code    : #219#232#234#249#1#39#72;
+    code    : #219#232#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #219#232#234#244#249#1#39#72;
+    code    : #219#232#234#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
-    code    : #219#232#234#244#249#1#39#72;
+    code    : #219#232#234#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #219#232#233#234#249#1#39#72;
+    code    : #219#232#233#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
-    code    : #219#232#233#234#249#1#39#72;
+    code    : #219#232#233#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27597,29 +27597,29 @@
   (
     opcode  : A_VRCP14SD;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
-    code    : #232#234#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+    code    : #232#234#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SD;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
-    code    : #232#234#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+    code    : #232#234#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SS;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
-    code    : #232#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+    code    : #232#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SS;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
-    code    : #232#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+    code    : #232#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27668,28 +27668,28 @@
     opcode  : A_VRCP28SD;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
-    code    : #232#234#241#249#1#203#72;
+    code    : #232#234#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SD;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
-    code    : #232#234#241#249#1#203#72;
+    code    : #232#234#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SS;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
-    code    : #232#241#249#1#203#72;
+    code    : #232#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SS;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
-    code    : #232#241#249#1#203#72;
+    code    : #232#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (

+ 44 - 321
compiler/x86/x86ins.dat

@@ -6352,288 +6352,11 @@ rm16,imm                              \2\x0F\x19\200\25                   NEC,SW
 ;*******************************************************************************
 ;********** FMA ****************************************************************
 ;*******************************************************************************
-;[VFMADD132PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x98\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\x98\75\120    FMA
-;
-;[VFMADD213PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xA8\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xA8\75\120    FMA
-;
-;[VFMADD231PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xB8\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xB8\75\120    FMA
-;
 [VFMADDPD]
 (Ch_Mop3, Ch_Rop2, Ch_Rop1)
 xmmreg,xmmreg,xmmrm,xmmreg           \361\362\372\1\x69\75\120\367        FMA4
 xmmreg,xmmreg,xmmreg,xmmrm           \361\362\372\363\1\x69\75\130\366    FMA4
 
-;[VFMADD132PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x98\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\x98\75\120        FMA
-;
-;[VFMADD213PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xA8\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xA8\75\120        FMA
-;
-;[VFMADD231PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xB8\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xB8\75\120        FMA
-;
-;[VFMADD132SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x99\75\120        FMA
-;
-;[VFMADD213SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xa9\75\120        FMA
-;
-;[VFMADD231SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xb9\75\120        FMA
-;
-;[VFMADD132SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x99\75\120            FMA
-;
-;[VFMADD213SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xA9\75\120            FMA
-;
-;[VFMADD231SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xb9\75\120            FMA
-;
-;[VFMADDSUB132PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x96\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\x96\75\120    FMA
-;
-;[VFMADDSUB213PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xA6\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xA6\75\120    FMA
-;
-;[VFMADDSUB231PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xB6\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xB6\75\120    FMA
-;
-;[VFMADDSUB132PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x96\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\x96\75\120        FMA
-;
-;[VFMADDSUB213PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xA6\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xA6\75\120        FMA
-;
-;[VFMADDSUB231PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xB6\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xB6\75\120        FMA
-;
-;[VFMSUBADD132PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x97\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\x97\75\120    FMA
-;
-;[VFMSUBADD213PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xA7\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xA7\75\120    FMA
-;
-;[VFMSUBADD231PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xB7\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xB7\75\120    FMA
-;
-;[VFMSUBADD132PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x97\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\x97\75\120        FMA
-;
-;[VFMSUBADD213PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xA7\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xA7\75\120        FMA
-;
-;[VFMSUBADD231PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xB7\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xB7\75\120        FMA
-;
-;[VFMSUB132PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x9A\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\x9A\75\120    FMA
-;
-;[VFMSUB213PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xAA\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xAA\75\120    FMA
-;
-;[VFMSUB231PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xBA\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xBA\75\120    FMA
-;
-;[VFMSUB132PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x9A\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\x9A\75\120        FMA
-;
-;[VFMSUB213PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xAA\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xAA\75\120        FMA
-;
-;[VFMSUB231PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xBA\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xBA\75\120        FMA
-;
-;[VFMSUB132SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x9B\75\120        FMA
-;
-;[VFMSUB213SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xAB\75\120        FMA
-;
-;[VFMSUB231SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xBB\75\120        FMA
-;
-;[VFMSUB132SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x9B\75\120            FMA
-;
-;[VFMSUB213SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xAB\75\120            FMA
-;
-;[VFMSUB231SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xBB\75\120            FMA
-;
-;[VFNMADD132PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x9C\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\x9C\75\120    FMA
-;
-;[VFNMADD213PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xAC\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xAC\75\120    FMA
-;
-;[VFNMADD231PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xBC\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xBC\75\120    FMA
-;
-;[VFNMADD132PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x9C\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\x9C\75\120        FMA
-;
-;[VFNMADD213PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xAC\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xAC\75\120        FMA
-;
-;[VFNMADD231PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xBC\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xBC\75\120        FMA
-;
-;[VFNMADD132SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x9D\75\120        FMA
-;
-;[VFNMADD213SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xAD\75\120        FMA
-;
-;[VFNMADD231SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xBD\75\120        FMA
-;
-;[VFNMADD132SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x9D\75\120            FMA
-;
-;[VFNMADD213SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xAD\75\120            FMA
-;
-;[VFNMADD231SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xBD\75\120            FMA
-;
-;[VFNMSUB132PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x9E\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\x9E\75\120    FMA
-;
-;[VFNMSUB213PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xAE\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xAE\75\120    FMA
-;
-;[VFNMSUB231PD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xBE\75\120        FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\363\1\xBE\75\120    FMA
-;
-;[VFNMSUB132PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x9E\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\x9E\75\120        FMA
-;
-;[VFNMSUB213PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xAE\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xAE\75\120        FMA
-;
-;[VFNMSUB231PS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xBE\75\120            FMA
-;ymmreg,ymmreg,ymmrm                  \361\362\364\371\1\xBE\75\120        FMA
-;
-;[VFNMSUB132SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\x9F\75\120        FMA
-;
-;[VFNMSUB213SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xAF\75\120        FMA
-;
-;[VFNMSUB231SD]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\363\1\xBF\75\120        FMA
-;
-;[VFNMSUB132SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\x9F\75\120            FMA
-;
-;[VFNMSUB213SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xAF\75\120            FMA
-;
-;[VFNMSUB231SS]
-;(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-;xmmreg,xmmreg,xmmrm                  \361\362\371\1\xBF\75\120            FMA
-
-
 [VFMADD132PD]
 (Ch_All)
 xmmreg_mz,xmmreg,xmmrm                    \350\352\361\362\363\371\1\x98\75\120     FMA
@@ -8309,21 +8032,21 @@ zmmreg_mz,zmmreg,zmmrm                    \350\351\352\361\371\1\x8D\75\120
 
 [VPEXPANDD]
 (Ch_All)
-xmmreg_mz,mem128                          \350\361\371\1\x89\101                    AVX512
-xmmreg_mz,xmmreg                          \350\361\371\1\x89\101                    AVX512
-ymmreg_mz,mem256                          \350\361\364\371\1\x89\101                AVX512
-ymmreg_mz,ymmreg                          \350\361\364\371\1\x89\101                AVX512
-zmmreg_mz,mem512                          \350\351\361\371\1\x89\101                AVX512
-zmmreg_mz,zmmreg                          \350\351\361\371\1\x89\101                AVX512
+xmmreg_mz,mem128                          \350\361\371\1\x89\110                    AVX512
+xmmreg_mz,xmmreg                          \350\361\371\1\x89\110                    AVX512
+ymmreg_mz,mem256                          \350\361\364\371\1\x89\110                AVX512
+ymmreg_mz,ymmreg                          \350\361\364\371\1\x89\110                AVX512
+zmmreg_mz,mem512                          \350\351\361\371\1\x89\110                AVX512
+zmmreg_mz,zmmreg                          \350\351\361\371\1\x89\110                AVX512
 
 [VPEXPANDQ]
 (Ch_All)
-xmmreg_mz,mem128                          \350\352\361\371\1\x89\101                AVX512
-xmmreg_mz,xmmreg                          \350\352\361\371\1\x89\101                AVX512
-ymmreg_mz,mem256                          \350\352\361\364\371\1\x89\101            AVX512
-ymmreg_mz,ymmreg                          \350\352\361\364\371\1\x89\101            AVX512
-zmmreg_mz,mem512                          \350\351\352\361\371\1\x89\101            AVX512
-zmmreg_mz,zmmreg                          \350\351\352\361\371\1\x89\101            AVX512
+xmmreg_mz,mem128                          \350\352\361\371\1\x89\110                AVX512
+xmmreg_mz,xmmreg                          \350\352\361\371\1\x89\110                AVX512
+ymmreg_mz,mem256                          \350\352\361\364\371\1\x89\110            AVX512
+ymmreg_mz,ymmreg                          \350\352\361\364\371\1\x89\110            AVX512
+zmmreg_mz,mem512                          \350\351\352\361\371\1\x89\110            AVX512
+zmmreg_mz,zmmreg                          \350\351\352\361\371\1\x89\110            AVX512
 
 [VPLZCNTD]
 (Ch_All)
@@ -8804,21 +8527,21 @@ kreg_m,zmmreg,zmmrm                       \350\351\361\371\1\x26\75\120
 
 [VPTESTMD]
 (Ch_All)
-kreg_m,xmmreg,xmmrm                       \350\361\371\1\x27\110                    AVX512
-kreg_m,xmmreg,bmem32                      \350\361\371\1\x27\110                    AVX512
-kreg_m,ymmreg,ymmrm                       \350\361\364\371\1\x27\110                AVX512
-kreg_m,ymmreg,bmem32                      \350\361\364\371\1\x27\110                AVX512
-kreg_m,zmmreg,zmmrm                       \350\351\361\371\1\x27\110                AVX512
-kreg_m,zmmreg,bmem32                      \350\351\361\371\1\x27\110                AVX512
+kreg_m,xmmreg,xmmrm                       \350\361\371\1\x27\75\120                 AVX512
+kreg_m,xmmreg,bmem32                      \350\361\371\1\x27\75\120                 AVX512
+kreg_m,ymmreg,ymmrm                       \350\361\364\371\1\x27\75\120             AVX512
+kreg_m,ymmreg,bmem32                      \350\361\364\371\1\x27\75\120             AVX512
+kreg_m,zmmreg,zmmrm                       \350\351\361\371\1\x27\75\120             AVX512
+kreg_m,zmmreg,bmem32                      \350\351\361\371\1\x27\75\120             AVX512
 
 [VPTESTMQ]
 (Ch_All)
-kreg_m,xmmreg,xmmrm                       \350\352\361\371\1\x27\110                AVX512
-kreg_m,xmmreg,bmem64                      \350\352\361\371\1\x27\110                AVX512
-kreg_m,ymmreg,ymmrm                       \350\352\361\364\371\1\x27\110            AVX512
-kreg_m,ymmreg,bmem64                      \350\352\361\364\371\1\x27\110            AVX512
-kreg_m,zmmreg,zmmrm                       \350\351\352\361\371\1\x27\110            AVX512
-kreg_m,zmmreg,bmem64                      \350\351\352\361\371\1\x27\110            AVX512
+kreg_m,xmmreg,xmmrm                       \350\352\361\371\1\x27\75\120             AVX512
+kreg_m,xmmreg,bmem64                      \350\352\361\371\1\x27\75\120             AVX512
+kreg_m,ymmreg,ymmrm                       \350\352\361\364\371\1\x27\75\120         AVX512
+kreg_m,ymmreg,bmem64                      \350\352\361\364\371\1\x27\75\120         AVX512
+kreg_m,zmmreg,zmmrm                       \350\351\352\361\371\1\x27\75\120         AVX512
+kreg_m,zmmreg,bmem64                      \350\351\352\361\371\1\x27\75\120         AVX512
 
 [VPTESTMW]
 (Ch_All)
@@ -8834,21 +8557,21 @@ kreg_m,zmmreg,zmmrm                       \333\350\351\371\1\x26\75\120
 
 [VPTESTNMD]
 (Ch_All)
-kreg_m,xmmreg,xmmrm                       \333\350\371\1\x27\110                    AVX512
-kreg_m,xmmreg,bmem32                      \333\350\371\1\x27\110                    AVX512
-kreg_m,ymmreg,ymmrm                       \333\350\364\371\1\x27\110                AVX512
-kreg_m,ymmreg,bmem32                      \333\350\364\371\1\x27\110                AVX512
-kreg_m,zmmreg,zmmrm                       \333\350\351\371\1\x27\110                AVX512
-kreg_m,zmmreg,bmem32                      \333\350\351\371\1\x27\110                AVX512
+kreg_m,xmmreg,xmmrm                       \333\350\371\1\x27\75\120                 AVX512
+kreg_m,xmmreg,bmem32                      \333\350\371\1\x27\75\120                 AVX512
+kreg_m,ymmreg,ymmrm                       \333\350\364\371\1\x27\75\120             AVX512
+kreg_m,ymmreg,bmem32                      \333\350\364\371\1\x27\75\120             AVX512
+kreg_m,zmmreg,zmmrm                       \333\350\351\371\1\x27\75\120             AVX512
+kreg_m,zmmreg,bmem32                      \333\350\351\371\1\x27\75\120             AVX512
 
 [VPTESTNMQ]
 (Ch_All)
-kreg_m,xmmreg,xmmrm                       \333\350\352\371\1\x27\110                AVX512
-kreg_m,xmmreg,bmem64                      \333\350\352\371\1\x27\110                AVX512
-kreg_m,ymmreg,ymmrm                       \333\350\352\364\371\1\x27\110            AVX512
-kreg_m,ymmreg,bmem64                      \333\350\352\364\371\1\x27\110            AVX512
-kreg_m,zmmreg,zmmrm                       \333\350\351\352\371\1\x27\110            AVX512
-kreg_m,zmmreg,bmem64                      \333\350\351\352\371\1\x27\110            AVX512
+kreg_m,xmmreg,xmmrm                       \333\350\352\371\1\x27\75\120             AVX512
+kreg_m,xmmreg,bmem64                      \333\350\352\371\1\x27\75\120             AVX512
+kreg_m,ymmreg,ymmrm                       \333\350\352\364\371\1\x27\75\120         AVX512
+kreg_m,ymmreg,bmem64                      \333\350\352\364\371\1\x27\75\120         AVX512
+kreg_m,zmmreg,zmmrm                       \333\350\351\352\371\1\x27\75\120         AVX512
+kreg_m,zmmreg,bmem64                      \333\350\351\352\371\1\x27\75\120         AVX512
 
 [VPTESTNMW]
 (Ch_All)
@@ -8924,13 +8647,13 @@ zmmreg_mz,bmem32                          \350\351\361\371\1\x4C\110
 
 [VRCP14SD]
 (Ch_All)
-xmmreg_mz,xmmreg,xmmreg                   \350\352\361\371\1\x4D\110                AVX512
-xmmreg_mz,xmmreg,mem64                    \350\352\361\371\1\x4D\110                AVX512
+xmmreg_mz,xmmreg,mem64                    \350\352\361\371\1\x4D\75\120             AVX512
+xmmreg_mz,xmmreg,xmmreg                   \350\352\361\371\1\x4D\75\120             AVX512
 
 [VRCP14SS]
 (Ch_All)
-xmmreg_mz,xmmreg,xmmreg                  \350\361\371\1\x4D\110                    AVX512
-xmmreg_mz,xmmreg,mem32                  \350\361\371\1\x4D\110                    AVX512
+xmmreg_mz,xmmreg,mem32                    \350\361\371\1\x4D\75\120                 AVX512
+xmmreg_mz,xmmreg,xmmreg                   \350\361\371\1\x4D\75\120                 AVX512
 
 [VRCP28PD]
 (Ch_All)
@@ -8946,13 +8669,13 @@ zmmreg_mz,zmmreg_sae                      \350\351\361\371\1\xCA\110
 
 [VRCP28SD]
 (Ch_All)
-xmmreg_mz,xmmreg,mem64                    \350\352\361\371\1\xCB\110                AVX512
-xmmreg_mz,xmmreg,xmmreg_sae               \350\352\361\371\1\xCB\110                AVX512
+xmmreg_mz,xmmreg,mem64		          \350\352\361\371\1\xCB\75\120             AVX512
+xmmreg_mz,xmmreg,xmmreg_sae               \350\352\361\371\1\xCB\75\120             AVX512
 
 [VRCP28SS]
 (Ch_All)
-xmmreg_mz,xmmreg,mem32                    \350\361\371\1\xCB\110                    AVX512
-xmmreg_mz,xmmreg,xmmreg_sae               \350\361\371\1\xCB\110                    AVX512
+xmmreg_mz,xmmreg,mem32		          \350\361\371\1\xCB\75\120                 AVX512
+xmmreg_mz,xmmreg,xmmreg_sae               \350\361\371\1\xCB\75\120                 AVX512
 
 [VREDUCEPD]
 (Ch_All)

+ 48 - 48
compiler/x86_64/x8664tab.inc

@@ -25015,84 +25015,84 @@
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
-    code    : #232#241#249#1#137#65;
+    code    : #232#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
-    code    : #232#241#249#1#137#65;
+    code    : #232#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
-    code    : #232#241#244#249#1#137#65;
+    code    : #232#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
-    code    : #232#241#244#249#1#137#65;
+    code    : #232#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
-    code    : #232#233#241#249#1#137#65;
+    code    : #232#233#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDD;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
-    code    : #232#233#241#249#1#137#65;
+    code    : #232#233#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
-    code    : #232#234#241#249#1#137#65;
+    code    : #232#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
-    code    : #232#234#241#249#1#137#65;
+    code    : #232#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
-    code    : #232#234#241#244#249#1#137#65;
+    code    : #232#234#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
-    code    : #232#234#241#244#249#1#137#65;
+    code    : #232#234#241#244#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
-    code    : #232#233#234#241#249#1#137#65;
+    code    : #232#233#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPEXPANDQ;
     ops     : 2;
     optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
-    code    : #232#233#234#241#249#1#137#65;
+    code    : #232#233#234#241#249#1#137#72;
     flags   : [if_avx512]
   ),
   (
@@ -27220,84 +27220,84 @@
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #232#241#249#1#39#72;
+    code    : #232#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
-    code    : #232#241#249#1#39#72;
+    code    : #232#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #232#241#244#249#1#39#72;
+    code    : #232#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
-    code    : #232#241#244#249#1#39#72;
+    code    : #232#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #232#233#241#249#1#39#72;
+    code    : #232#233#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
-    code    : #232#233#241#249#1#39#72;
+    code    : #232#233#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #232#234#241#249#1#39#72;
+    code    : #232#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
-    code    : #232#234#241#249#1#39#72;
+    code    : #232#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #232#234#241#244#249#1#39#72;
+    code    : #232#234#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
-    code    : #232#234#241#244#249#1#39#72;
+    code    : #232#234#241#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #232#233#234#241#249#1#39#72;
+    code    : #232#233#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
-    code    : #232#233#234#241#249#1#39#72;
+    code    : #232#233#234#241#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27346,84 +27346,84 @@
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #219#232#249#1#39#72;
+    code    : #219#232#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
-    code    : #219#232#249#1#39#72;
+    code    : #219#232#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #219#232#244#249#1#39#72;
+    code    : #219#232#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
-    code    : #219#232#244#249#1#39#72;
+    code    : #219#232#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #219#232#233#249#1#39#72;
+    code    : #219#232#233#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMD;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
-    code    : #219#232#233#249#1#39#72;
+    code    : #219#232#233#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
-    code    : #219#232#234#249#1#39#72;
+    code    : #219#232#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
-    code    : #219#232#234#249#1#39#72;
+    code    : #219#232#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
-    code    : #219#232#234#244#249#1#39#72;
+    code    : #219#232#234#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
-    code    : #219#232#234#244#249#1#39#72;
+    code    : #219#232#234#244#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
-    code    : #219#232#233#234#249#1#39#72;
+    code    : #219#232#233#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VPTESTNMQ;
     ops     : 3;
     optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
-    code    : #219#232#233#234#249#1#39#72;
+    code    : #219#232#233#234#249#1#39#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27744,29 +27744,29 @@
   (
     opcode  : A_VRCP14SD;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
-    code    : #232#234#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+    code    : #232#234#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SD;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
-    code    : #232#234#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+    code    : #232#234#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SS;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
-    code    : #232#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+    code    : #232#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP14SS;
     ops     : 3;
-    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
-    code    : #232#241#249#1#77#72;
+    optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+    code    : #232#241#249#1#77#61#80;
     flags   : [if_avx512]
   ),
   (
@@ -27815,28 +27815,28 @@
     opcode  : A_VRCP28SD;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
-    code    : #232#234#241#249#1#203#72;
+    code    : #232#234#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SD;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
-    code    : #232#234#241#249#1#203#72;
+    code    : #232#234#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SS;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
-    code    : #232#241#249#1#203#72;
+    code    : #232#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (
     opcode  : A_VRCP28SS;
     ops     : 3;
     optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
-    code    : #232#241#249#1#203#72;
+    code    : #232#241#249#1#203#61#80;
     flags   : [if_avx512]
   ),
   (