summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-08-11 17:29:30 +0000
committerflorian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-08-11 17:29:30 +0000
commit57ad7e4e6bd530817ffdcf3fa55444a50c57d808 (patch)
tree6a62d1487d87ee5afd92c16ddaa854525815a43e
parent9451899dcb3776129fc2ebd6c6413af2c5339d7b (diff)
downloadfpc-57ad7e4e6bd530817ffdcf3fa55444a50c57d808.tar.gz
-- Zusammenführen der Unterschiede zwischen Projektarchiv-URLs in ».«:
U compiler/i8086/r8086int.inc U compiler/i8086/r8086nor.inc U compiler/i8086/r8086rni.inc U compiler/i8086/r8086std.inc U compiler/i386/i386prop.inc U compiler/i386/i386att.inc U compiler/i386/i386atts.inc U compiler/i386/i386int.inc U compiler/i8086/i8086int.inc U compiler/i8086/i8086op.inc U compiler/i8086/r8086dwrf.inc U compiler/i8086/r8086ari.inc U compiler/i8086/r8086con.inc U compiler/i8086/r8086nasm.inc U compiler/i8086/r8086num.inc U compiler/i8086/r8086stab.inc U compiler/i386/i386nop.inc U compiler/i386/i386op.inc U compiler/i386/i386tab.inc U compiler/i386/r386ot.inc U compiler/i386/r386ari.inc U compiler/i386/r386att.inc U compiler/i386/r386con.inc U compiler/i386/r386dwrf.inc U compiler/i386/r386int.inc U compiler/i386/r386iri.inc U compiler/i386/r386nasm.inc U compiler/i386/r386nor.inc U compiler/i386/r386nri.inc U compiler/i386/r386num.inc U compiler/i386/r386rni.inc U compiler/i386/r386sri.inc U compiler/i386/r386stab.inc U compiler/i386/r386std.inc U compiler/i8086/i8086prop.inc U compiler/i8086/i8086att.inc U compiler/i8086/i8086atts.inc U compiler/i8086/i8086nop.inc U compiler/i8086/i8086tab.inc U compiler/i8086/r8086ot.inc U compiler/i8086/r8086att.inc U compiler/i8086/r8086iri.inc U compiler/i8086/r8086nri.inc U compiler/i8086/r8086sri.inc U compiler/x86/agx86int.pas U compiler/x86/rax86int.pas U compiler/x86/aasmcpu.pas U compiler/x86/rax86.pas U compiler/x86/x86ins.dat U compiler/x86/agx86att.pas U compiler/x86/cpubase.pas U packages/rtl-objpas/src/inc/rtti.pp U packages/rtl-objpas/tests/tests.rtti.pas U rtl U compiler/x86_64/x8664att.inc U compiler/x86_64/x8664tab.inc U compiler/x86_64/r8664con.inc U compiler/x86_64/r8664nasm.inc U compiler/x86_64/r8664sri.inc U compiler/aasmtai.pas U compiler/scanner.pas U tests/utils/avx/readme.txt U compiler/x86_64/x8664ats.inc U compiler/x86_64/x8664op.inc U compiler/x86_64/r8664att.inc U compiler/x86_64/r8664iri.inc U compiler/x86_64/r8664rni.inc U compiler/pp.lpi U compiler/msgtxt.inc U compiler/ppcx64.lpi U compiler/x86_64/x8664pro.inc U compiler/x86_64/x8664nop.inc U compiler/x86_64/r8664ari.inc U compiler/x86_64/r8664int.inc U compiler/x86_64/r8664num.inc U compiler/x86_64/r8664std.inc U compiler/msgidx.inc U compiler/utils/mkx86ins.pp U compiler/x86/x86reg.dat D compiler/x86/cx86innr.inc U compiler/x86_64/x8664int.inc U compiler/x86_64/r8664ot.inc U compiler/x86_64/r8664dwrf.inc U compiler/x86_64/r8664nor.inc U compiler/x86_64/r8664stab.inc U compiler/msg/errore.msg U compiler/utils/mkx86reg.pp U tests/utils/avx/asmtestgenerator.pas U tests/utils/avx/options.pas U tests/utils/avx/avxtestgenerator.pp U tests/test/units/character/tissurrogatepair2.pp U tests/test/units/character/tissurrogatepair.pp U tests/utils/avx/avxopcodes.pas U . -- Aufzeichnung der Informationen für Zusammenführung zwischen Projektarchiv-URLs in ».«: U . U packages/rtl-objpas/src/inc/rtti.pp U packages/rtl-objpas/tests/tests.rtti.pas U rtl git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@42654 3ad0048d-3df7-0310-abae-a5850022a9f2
-rw-r--r--compiler/aasmtai.pas3
-rw-r--r--compiler/i386/i386att.inc348
-rw-r--r--compiler/i386/i386atts.inc282
-rw-r--r--compiler/i386/i386int.inc348
-rw-r--r--compiler/i386/i386nop.inc2
-rw-r--r--compiler/i386/i386op.inc348
-rw-r--r--compiler/i386/i386prop.inc282
-rw-r--r--compiler/i386/i386tab.inc16554
-rw-r--r--compiler/i386/r386ari.inc16
-rw-r--r--compiler/i386/r386att.inc18
-rw-r--r--compiler/i386/r386con.inc16
-rw-r--r--compiler/i386/r386dwrf.inc18
-rw-r--r--compiler/i386/r386int.inc18
-rw-r--r--compiler/i386/r386iri.inc18
-rw-r--r--compiler/i386/r386nasm.inc18
-rw-r--r--compiler/i386/r386nor.inc2
-rw-r--r--compiler/i386/r386nri.inc18
-rw-r--r--compiler/i386/r386num.inc18
-rw-r--r--compiler/i386/r386ot.inc18
-rw-r--r--compiler/i386/r386rni.inc18
-rw-r--r--compiler/i386/r386sri.inc18
-rw-r--r--compiler/i386/r386stab.inc18
-rw-r--r--compiler/i386/r386std.inc18
-rw-r--r--compiler/i8086/i8086att.inc348
-rw-r--r--compiler/i8086/i8086atts.inc282
-rw-r--r--compiler/i8086/i8086int.inc348
-rw-r--r--compiler/i8086/i8086nop.inc2
-rw-r--r--compiler/i8086/i8086op.inc348
-rw-r--r--compiler/i8086/i8086prop.inc282
-rw-r--r--compiler/i8086/i8086tab.inc16554
-rw-r--r--compiler/i8086/r8086ari.inc16
-rw-r--r--compiler/i8086/r8086att.inc18
-rw-r--r--compiler/i8086/r8086con.inc16
-rw-r--r--compiler/i8086/r8086dwrf.inc16
-rw-r--r--compiler/i8086/r8086int.inc18
-rw-r--r--compiler/i8086/r8086iri.inc18
-rw-r--r--compiler/i8086/r8086nasm.inc18
-rw-r--r--compiler/i8086/r8086nor.inc2
-rw-r--r--compiler/i8086/r8086nri.inc18
-rw-r--r--compiler/i8086/r8086num.inc18
-rw-r--r--compiler/i8086/r8086ot.inc18
-rw-r--r--compiler/i8086/r8086rni.inc18
-rw-r--r--compiler/i8086/r8086sri.inc18
-rw-r--r--compiler/i8086/r8086stab.inc18
-rw-r--r--compiler/i8086/r8086std.inc18
-rw-r--r--compiler/msg/errore.msg1
-rw-r--r--compiler/msgidx.inc5
-rw-r--r--compiler/msgtxt.inc721
-rw-r--r--compiler/scanner.pas20
-rw-r--r--compiler/utils/mkx86ins.pp4
-rw-r--r--compiler/utils/mkx86reg.pp6
-rw-r--r--compiler/x86/aasmcpu.pas1497
-rw-r--r--compiler/x86/agx86att.pas35
-rw-r--r--compiler/x86/agx86int.pas1
-rw-r--r--compiler/x86/cpubase.pas19
-rw-r--r--compiler/x86/rax86.pas899
-rw-r--r--compiler/x86/rax86int.pas414
-rw-r--r--compiler/x86/x86ins.dat4302
-rw-r--r--compiler/x86/x86reg.dat81
-rw-r--r--compiler/x86_64/r8664ari.inc100
-rw-r--r--compiler/x86_64/r8664att.inc74
-rw-r--r--compiler/x86_64/r8664con.inc72
-rw-r--r--compiler/x86_64/r8664dwrf.inc74
-rw-r--r--compiler/x86_64/r8664int.inc74
-rw-r--r--compiler/x86_64/r8664iri.inc102
-rw-r--r--compiler/x86_64/r8664nasm.inc74
-rw-r--r--compiler/x86_64/r8664nor.inc2
-rw-r--r--compiler/x86_64/r8664num.inc74
-rw-r--r--compiler/x86_64/r8664ot.inc74
-rw-r--r--compiler/x86_64/r8664rni.inc74
-rw-r--r--compiler/x86_64/r8664sri.inc102
-rw-r--r--compiler/x86_64/r8664stab.inc74
-rw-r--r--compiler/x86_64/r8664std.inc74
-rw-r--r--compiler/x86_64/x8664ats.inc282
-rw-r--r--compiler/x86_64/x8664att.inc348
-rw-r--r--compiler/x86_64/x8664int.inc348
-rw-r--r--compiler/x86_64/x8664nop.inc2
-rw-r--r--compiler/x86_64/x8664op.inc348
-rw-r--r--compiler/x86_64/x8664pro.inc282
-rw-r--r--compiler/x86_64/x8664tab.inc16596
-rw-r--r--tests/test/units/character/tissurrogatepair.pp16
-rw-r--r--tests/test/units/character/tissurrogatepair2.pp18
-rw-r--r--tests/utils/avx/asmtestgenerator.pas1555
-rw-r--r--tests/utils/avx/avxopcodes.pas4459
-rw-r--r--tests/utils/avx/avxtestgenerator.pp12
-rw-r--r--tests/utils/avx/options.pas6
-rw-r--r--tests/utils/avx/readme.txt24
87 files changed, 62662 insertions, 7512 deletions
diff --git a/compiler/aasmtai.pas b/compiler/aasmtai.pas
index 1fc18b0037..f1d377e134 100644
--- a/compiler/aasmtai.pas
+++ b/compiler/aasmtai.pas
@@ -446,6 +446,9 @@ interface
{ please keep the size of this record <=12 bytes and keep it properly aligned }
toper = record
ot : longint;
+ {$ifdef x86}
+ vopext: smallint;
+ {$ENDIF}
case typ : toptype of
top_none : ();
top_reg : (reg:tregister);
diff --git a/compiler/i386/i386att.inc b/compiler/i386/i386att.inc
index 857d483b10..a9ff9b1baf 100644
--- a/compiler/i386/i386att.inc
+++ b/compiler/i386/i386att.inc
@@ -783,8 +783,10 @@
'vcvtdq2ps',
'vcvtpd2dq',
'vcvtpd2ps',
+'vcvtph2ps',
'vcvtps2dq',
'vcvtps2pd',
+'vcvtps2ph',
'vcvtsd2si',
'vcvtsd2ss',
'vcvtsi2sd',
@@ -1053,66 +1055,66 @@
'vpgatherdq',
'vpgatherqd',
'vpgatherqq',
-'vfmadd132pd',
-'vfmadd213pd',
-'vfmadd231pd',
'vfmaddpd',
+'vfmadd132pd',
'vfmadd132ps',
-'vfmadd213ps',
-'vfmadd231ps',
'vfmadd132sd',
-'vfmadd213sd',
-'vfmadd231sd',
'vfmadd132ss',
+'vfmadd213pd',
+'vfmadd213ps',
+'vfmadd213sd',
'vfmadd213ss',
+'vfmadd231pd',
+'vfmadd231ps',
+'vfmadd231sd',
'vfmadd231ss',
'vfmaddsub132pd',
-'vfmaddsub213pd',
-'vfmaddsub231pd',
'vfmaddsub132ps',
+'vfmaddsub213pd',
'vfmaddsub213ps',
+'vfmaddsub231pd',
'vfmaddsub231ps',
-'vfmsubadd132pd',
-'vfmsubadd213pd',
-'vfmsubadd231pd',
-'vfmsubadd132ps',
-'vfmsubadd213ps',
-'vfmsubadd231ps',
'vfmsub132pd',
-'vfmsub213pd',
-'vfmsub231pd',
'vfmsub132ps',
-'vfmsub213ps',
-'vfmsub231ps',
'vfmsub132sd',
-'vfmsub213sd',
-'vfmsub231sd',
'vfmsub132ss',
+'vfmsub213pd',
+'vfmsub213ps',
+'vfmsub213sd',
'vfmsub213ss',
+'vfmsub231pd',
+'vfmsub231ps',
+'vfmsub231sd',
'vfmsub231ss',
+'vfmsubadd132pd',
+'vfmsubadd132ps',
+'vfmsubadd213pd',
+'vfmsubadd213ps',
+'vfmsubadd231pd',
+'vfmsubadd231ps',
'vfnmadd132pd',
-'vfnmadd213pd',
-'vfnmadd231pd',
'vfnmadd132ps',
-'vfnmadd213ps',
-'vfnmadd231ps',
'vfnmadd132sd',
-'vfnmadd213sd',
-'vfnmadd231sd',
'vfnmadd132ss',
+'vfnmadd213pd',
+'vfnmadd213ps',
+'vfnmadd213sd',
'vfnmadd213ss',
+'vfnmadd231pd',
+'vfnmadd231ps',
+'vfnmadd231sd',
'vfnmadd231ss',
'vfnmsub132pd',
-'vfnmsub213pd',
-'vfnmsub231pd',
'vfnmsub132ps',
-'vfnmsub213ps',
-'vfnmsub231ps',
'vfnmsub132sd',
-'vfnmsub213sd',
-'vfnmsub231sd',
'vfnmsub132ss',
+'vfnmsub213pd',
+'vfnmsub213ps',
+'vfnmsub213sd',
'vfnmsub213ss',
+'vfnmsub231pd',
+'vfnmsub231ps',
+'vfnmsub231sd',
'vfnmsub231ss',
'xacquire',
'xrelease',
@@ -1123,5 +1125,283 @@
'rdrand',
'rdseed',
'xgetbv',
-'prefetchwt1'
+'prefetchwt1',
+'kaddb',
+'kaddd',
+'kaddq',
+'kaddw',
+'kandb',
+'kandd',
+'kandnb',
+'kandnd',
+'kandnq',
+'kandnw',
+'kandq',
+'kandw',
+'kmovb',
+'kmovd',
+'kmovq',
+'kmovw',
+'knotb',
+'knotd',
+'knotq',
+'knotw',
+'korb',
+'kord',
+'korq',
+'kortestb',
+'kortestd',
+'kortestq',
+'kortestw',
+'korw',
+'kshiftlb',
+'kshiftld',
+'kshiftlq',
+'kshiftlw',
+'kshiftrb',
+'kshiftrd',
+'kshiftrq',
+'kshiftrw',
+'ktestb',
+'ktestd',
+'ktestq',
+'ktestw',
+'kunpckbw',
+'kunpckdq',
+'kunpckwd',
+'kxnorb',
+'kxnord',
+'kxnorq',
+'kxnorw',
+'kxorb',
+'kxord',
+'kxorq',
+'kxorw',
+'valignd',
+'valignq',
+'vblendmpd',
+'vblendmps',
+'vbroadcastf32x2',
+'vbroadcastf32x4',
+'vbroadcastf32x8',
+'vbroadcastf64x2',
+'vbroadcastf64x4',
+'vbroadcasti32x2',
+'vbroadcasti32x4',
+'vbroadcasti32x8',
+'vbroadcasti64x2',
+'vbroadcasti64x4',
+'vcompresspd',
+'vcompressps',
+'vcvtpd2qq',
+'vcvtpd2udq',
+'vcvtpd2uqq',
+'vcvtps2qq',
+'vcvtps2udq',
+'vcvtps2uqq',
+'vcvtqq2pd',
+'vcvtqq2ps',
+'vcvtsd2usi',
+'vcvtss2usi',
+'vcvttpd2qq',
+'vcvttpd2udq',
+'vcvttpd2uqq',
+'vcvttps2qq',
+'vcvttps2udq',
+'vcvttps2uqq',
+'vcvttsd2usi',
+'vcvttss2usi',
+'vcvtudq2pd',
+'vcvtudq2ps',
+'vcvtuqq2pd',
+'vcvtuqq2ps',
+'vcvtusi2sd',
+'vcvtusi2ss',
+'vdbpsadbw',
+'vexp2pd',
+'vexp2ps',
+'vexpandpd',
+'vexpandps',
+'vextractf32x4',
+'vextractf32x8',
+'vextractf64x2',
+'vextractf64x4',
+'vextracti32x4',
+'vextracti32x8',
+'vextracti64x2',
+'vextracti64x4',
+'vfixupimmpd',
+'vfixupimmps',
+'vfixupimmsd',
+'vfixupimmss',
+'vfpclasspd',
+'vfpclassps',
+'vfpclasssd',
+'vfpclassss',
+'vgetexppd',
+'vgetexpps',
+'vgetexpsd',
+'vgetexpss',
+'vgetmantpd',
+'vgetmantps',
+'vgetmantsd',
+'vgetmantss',
+'vinsertf32x4',
+'vinsertf32x8',
+'vinsertf64x2',
+'vinsertf64x4',
+'vinserti32x4',
+'vinserti32x8',
+'vinserti64x2',
+'vinserti64x4',
+'vmovdqa32',
+'vmovdqa64',
+'vmovdqu16',
+'vmovdqu32',
+'vmovdqu64',
+'vmovdqu8',
+'vpabsq',
+'vpandd',
+'vpandnd',
+'vpandnq',
+'vpandq',
+'vpblendmb',
+'vpblendmd',
+'vpblendmq',
+'vpblendmw',
+'vpcmpb',
+'vpcmpd',
+'vpcmpq',
+'vpcmpub',
+'vpcmpud',
+'vpcmpuq',
+'vpcmpuw',
+'vpcmpw',
+'vpcompressd',
+'vpcompressq',
+'vpconflictd',
+'vpconflictq',
+'vpermb',
+'vpermi2b',
+'vpermi2d',
+'vpermi2pd',
+'vpermi2ps',
+'vpermi2q',
+'vpermi2w',
+'vpermt2b',
+'vpermt2d',
+'vpermt2pd',
+'vpermt2ps',
+'vpermt2q',
+'vpermt2w',
+'vpermw',
+'vpexpandd',
+'vpexpandq',
+'vplzcntd',
+'vplzcntq',
+'vpmadd52huq',
+'vpmadd52luq',
+'vpmaxsq',
+'vpmaxuq',
+'vpminsq',
+'vpminuq',
+'vpmovb2m',
+'vpmovd2m',
+'vpmovdb',
+'vpmovdw',
+'vpmovm2b',
+'vpmovm2d',
+'vpmovm2q',
+'vpmovm2w',
+'vpmovq2m',
+'vpmovqb',
+'vpmovqd',
+'vpmovqw',
+'vpmovsdb',
+'vpmovsdw',
+'vpmovsqb',
+'vpmovsqd',
+'vpmovsqw',
+'vpmovswb',
+'vpmovusdb',
+'vpmovusdw',
+'vpmovusqb',
+'vpmovusqd',
+'vpmovusqw',
+'vpmovuswb',
+'vpmovw2m',
+'vpmovwb',
+'vpmullq',
+'vpmultishiftqb',
+'vpord',
+'vporq',
+'vprold',
+'vprolq',
+'vprolvd',
+'vprolvq',
+'vprord',
+'vprorq',
+'vprorvd',
+'vprorvq',
+'vpscatterdd',
+'vpscatterdq',
+'vpscatterqd',
+'vpscatterqq',
+'vpsllvw',
+'vpsraq',
+'vpsravq',
+'vpsravw',
+'vpsrlvw',
+'vpternlogd',
+'vpternlogq',
+'vptestmb',
+'vptestmd',
+'vptestmq',
+'vptestmw',
+'vptestnmb',
+'vptestnmd',
+'vptestnmq',
+'vptestnmw',
+'vpxord',
+'vpxorq',
+'vrangepd',
+'vrangeps',
+'vrangesd',
+'vrangess',
+'vrcp14pd',
+'vrcp14ps',
+'vrcp14sd',
+'vrcp14ss',
+'vrcp28pd',
+'vrcp28ps',
+'vrcp28sd',
+'vrcp28ss',
+'vreducepd',
+'vreduceps',
+'vreducesd',
+'vreducess',
+'vrndscalepd',
+'vrndscaleps',
+'vrndscalesd',
+'vrndscaless',
+'vrsqrt14pd',
+'vrsqrt14ps',
+'vrsqrt14sd',
+'vrsqrt14ss',
+'vrsqrt28pd',
+'vrsqrt28ps',
+'vrsqrt28sd',
+'vrsqrt28ss',
+'vscalefpd',
+'vscalefps',
+'vscalefsd',
+'vscalefss',
+'vscatterdpd',
+'vscatterdps',
+'vscatterqpd',
+'vscatterqps',
+'vshuff32x4',
+'vshuff64x2',
+'vshufi32x4',
+'vshufi64x2'
);
diff --git a/compiler/i386/i386atts.inc b/compiler/i386/i386atts.inc
index 8b16a8fb89..4864a11240 100644
--- a/compiler/i386/i386atts.inc
+++ b/compiler/i386/i386atts.inc
@@ -787,6 +787,8 @@ attsufNONE,
attsufNONE,
attsufNONE,
attsufNONE,
+attsufNONE,
+attsufNONE,
attsufINT,
attsufINT,
attsufNONE,
@@ -1123,5 +1125,283 @@ attsufNONE,
attsufNONE,
attsufNONE,
attsufNONE,
-attsufINT
+attsufINT,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE
);
diff --git a/compiler/i386/i386int.inc b/compiler/i386/i386int.inc
index 0d5c3b02a8..397b6f4fc0 100644
--- a/compiler/i386/i386int.inc
+++ b/compiler/i386/i386int.inc
@@ -783,8 +783,10 @@
'vcvtdq2ps',
'vcvtpd2dq',
'vcvtpd2ps',
+'vcvtph2ps',
'vcvtps2dq',
'vcvtps2pd',
+'vcvtps2ph',
'vcvtsd2si',
'vcvtsd2ss',
'vcvtsi2sd',
@@ -1053,66 +1055,66 @@
'vpgatherdq',
'vpgatherqd',
'vpgatherqq',
-'vfmadd132pd',
-'vfmadd213pd',
-'vfmadd231pd',
'vfmaddpd',
+'vfmadd132pd',
'vfmadd132ps',
-'vfmadd213ps',
-'vfmadd231ps',
'vfmadd132sd',
-'vfmadd213sd',
-'vfmadd231sd',
'vfmadd132ss',
+'vfmadd213pd',
+'vfmadd213ps',
+'vfmadd213sd',
'vfmadd213ss',
+'vfmadd231pd',
+'vfmadd231ps',
+'vfmadd231sd',
'vfmadd231ss',
'vfmaddsub132pd',
-'vfmaddsub213pd',
-'vfmaddsub231pd',
'vfmaddsub132ps',
+'vfmaddsub213pd',
'vfmaddsub213ps',
+'vfmaddsub231pd',
'vfmaddsub231ps',
-'vfmsubadd132pd',
-'vfmsubadd213pd',
-'vfmsubadd231pd',
-'vfmsubadd132ps',
-'vfmsubadd213ps',
-'vfmsubadd231ps',
'vfmsub132pd',
-'vfmsub213pd',
-'vfmsub231pd',
'vfmsub132ps',
-'vfmsub213ps',
-'vfmsub231ps',
'vfmsub132sd',
-'vfmsub213sd',
-'vfmsub231sd',
'vfmsub132ss',
+'vfmsub213pd',
+'vfmsub213ps',
+'vfmsub213sd',
'vfmsub213ss',
+'vfmsub231pd',
+'vfmsub231ps',
+'vfmsub231sd',
'vfmsub231ss',
+'vfmsubadd132pd',
+'vfmsubadd132ps',
+'vfmsubadd213pd',
+'vfmsubadd213ps',
+'vfmsubadd231pd',
+'vfmsubadd231ps',
'vfnmadd132pd',
-'vfnmadd213pd',
-'vfnmadd231pd',
'vfnmadd132ps',
-'vfnmadd213ps',
-'vfnmadd231ps',
'vfnmadd132sd',
-'vfnmadd213sd',
-'vfnmadd231sd',
'vfnmadd132ss',
+'vfnmadd213pd',
+'vfnmadd213ps',
+'vfnmadd213sd',
'vfnmadd213ss',
+'vfnmadd231pd',
+'vfnmadd231ps',
+'vfnmadd231sd',
'vfnmadd231ss',
'vfnmsub132pd',
-'vfnmsub213pd',
-'vfnmsub231pd',
'vfnmsub132ps',
-'vfnmsub213ps',
-'vfnmsub231ps',
'vfnmsub132sd',
-'vfnmsub213sd',
-'vfnmsub231sd',
'vfnmsub132ss',
+'vfnmsub213pd',
+'vfnmsub213ps',
+'vfnmsub213sd',
'vfnmsub213ss',
+'vfnmsub231pd',
+'vfnmsub231ps',
+'vfnmsub231sd',
'vfnmsub231ss',
'xacquire',
'xrelease',
@@ -1123,5 +1125,283 @@
'rdrand',
'rdseed',
'xgetbv',
-'prefetchwt1'
+'prefetchwt1',
+'kaddb',
+'kaddd',
+'kaddq',
+'kaddw',
+'kandb',
+'kandd',
+'kandnb',
+'kandnd',
+'kandnq',
+'kandnw',
+'kandq',
+'kandw',
+'kmovb',
+'kmovd',
+'kmovq',
+'kmovw',
+'knotb',
+'knotd',
+'knotq',
+'knotw',
+'korb',
+'kord',
+'korq',
+'kortestb',
+'kortestd',
+'kortestq',
+'kortestw',
+'korw',
+'kshiftlb',
+'kshiftld',
+'kshiftlq',
+'kshiftlw',
+'kshiftrb',
+'kshiftrd',
+'kshiftrq',
+'kshiftrw',
+'ktestb',
+'ktestd',
+'ktestq',
+'ktestw',
+'kunpckbw',
+'kunpckdq',
+'kunpckwd',
+'kxnorb',
+'kxnord',
+'kxnorq',
+'kxnorw',
+'kxorb',
+'kxord',
+'kxorq',
+'kxorw',
+'valignd',
+'valignq',
+'vblendmpd',
+'vblendmps',
+'vbroadcastf32x2',
+'vbroadcastf32x4',
+'vbroadcastf32x8',
+'vbroadcastf64x2',
+'vbroadcastf64x4',
+'vbroadcasti32x2',
+'vbroadcasti32x4',
+'vbroadcasti32x8',
+'vbroadcasti64x2',
+'vbroadcasti64x4',
+'vcompresspd',
+'vcompressps',
+'vcvtpd2qq',
+'vcvtpd2udq',
+'vcvtpd2uqq',
+'vcvtps2qq',
+'vcvtps2udq',
+'vcvtps2uqq',
+'vcvtqq2pd',
+'vcvtqq2ps',
+'vcvtsd2usi',
+'vcvtss2usi',
+'vcvttpd2qq',
+'vcvttpd2udq',
+'vcvttpd2uqq',
+'vcvttps2qq',
+'vcvttps2udq',
+'vcvttps2uqq',
+'vcvttsd2usi',
+'vcvttss2usi',
+'vcvtudq2pd',
+'vcvtudq2ps',
+'vcvtuqq2pd',
+'vcvtuqq2ps',
+'vcvtusi2sd',
+'vcvtusi2ss',
+'vdbpsadbw',
+'vexp2pd',
+'vexp2ps',
+'vexpandpd',
+'vexpandps',
+'vextractf32x4',
+'vextractf32x8',
+'vextractf64x2',
+'vextractf64x4',
+'vextracti32x4',
+'vextracti32x8',
+'vextracti64x2',
+'vextracti64x4',
+'vfixupimmpd',
+'vfixupimmps',
+'vfixupimmsd',
+'vfixupimmss',
+'vfpclasspd',
+'vfpclassps',
+'vfpclasssd',
+'vfpclassss',
+'vgetexppd',
+'vgetexpps',
+'vgetexpsd',
+'vgetexpss',
+'vgetmantpd',
+'vgetmantps',
+'vgetmantsd',
+'vgetmantss',
+'vinsertf32x4',
+'vinsertf32x8',
+'vinsertf64x2',
+'vinsertf64x4',
+'vinserti32x4',
+'vinserti32x8',
+'vinserti64x2',
+'vinserti64x4',
+'vmovdqa32',
+'vmovdqa64',
+'vmovdqu16',
+'vmovdqu32',
+'vmovdqu64',
+'vmovdqu8',
+'vpabsq',
+'vpandd',
+'vpandnd',
+'vpandnq',
+'vpandq',
+'vpblendmb',
+'vpblendmd',
+'vpblendmq',
+'vpblendmw',
+'vpcmpb',
+'vpcmpd',
+'vpcmpq',
+'vpcmpub',
+'vpcmpud',
+'vpcmpuq',
+'vpcmpuw',
+'vpcmpw',
+'vpcompressd',
+'vpcompressq',
+'vpconflictd',
+'vpconflictq',
+'vpermb',
+'vpermi2b',
+'vpermi2d',
+'vpermi2pd',
+'vpermi2ps',
+'vpermi2q',
+'vpermi2w',
+'vpermt2b',
+'vpermt2d',
+'vpermt2pd',
+'vpermt2ps',
+'vpermt2q',
+'vpermt2w',
+'vpermw',
+'vpexpandd',
+'vpexpandq',
+'vplzcntd',
+'vplzcntq',
+'vpmadd52huq',
+'vpmadd52luq',
+'vpmaxsq',
+'vpmaxuq',
+'vpminsq',
+'vpminuq',
+'vpmovb2m',
+'vpmovd2m',
+'vpmovdb',
+'vpmovdw',
+'vpmovm2b',
+'vpmovm2d',
+'vpmovm2q',
+'vpmovm2w',
+'vpmovq2m',
+'vpmovqb',
+'vpmovqd',
+'vpmovqw',
+'vpmovsdb',
+'vpmovsdw',
+'vpmovsqb',
+'vpmovsqd',
+'vpmovsqw',
+'vpmovswb',
+'vpmovusdb',
+'vpmovusdw',
+'vpmovusqb',
+'vpmovusqd',
+'vpmovusqw',
+'vpmovuswb',
+'vpmovw2m',
+'vpmovwb',
+'vpmullq',
+'vpmultishiftqb',
+'vpord',
+'vporq',
+'vprold',
+'vprolq',
+'vprolvd',
+'vprolvq',
+'vprord',
+'vprorq',
+'vprorvd',
+'vprorvq',
+'vpscatterdd',
+'vpscatterdq',
+'vpscatterqd',
+'vpscatterqq',
+'vpsllvw',
+'vpsraq',
+'vpsravq',
+'vpsravw',
+'vpsrlvw',
+'vpternlogd',
+'vpternlogq',
+'vptestmb',
+'vptestmd',
+'vptestmq',
+'vptestmw',
+'vptestnmb',
+'vptestnmd',
+'vptestnmq',
+'vptestnmw',
+'vpxord',
+'vpxorq',
+'vrangepd',
+'vrangeps',
+'vrangesd',
+'vrangess',
+'vrcp14pd',
+'vrcp14ps',
+'vrcp14sd',
+'vrcp14ss',
+'vrcp28pd',
+'vrcp28ps',
+'vrcp28sd',
+'vrcp28ss',
+'vreducepd',
+'vreduceps',
+'vreducesd',
+'vreducess',
+'vrndscalepd',
+'vrndscaleps',
+'vrndscalesd',
+'vrndscaless',
+'vrsqrt14pd',
+'vrsqrt14ps',
+'vrsqrt14sd',
+'vrsqrt14ss',
+'vrsqrt28pd',
+'vrsqrt28ps',
+'vrsqrt28sd',
+'vrsqrt28ss',
+'vscalefpd',
+'vscalefps',
+'vscalefsd',
+'vscalefss',
+'vscatterdpd',
+'vscatterdps',
+'vscatterqpd',
+'vscatterqps',
+'vshuff32x4',
+'vshuff64x2',
+'vshufi32x4',
+'vshufi64x2'
);
diff --git a/compiler/i386/i386nop.inc b/compiler/i386/i386nop.inc
index c0a0208994..f8ff92e9d2 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 }
-2129;
+4053;
diff --git a/compiler/i386/i386op.inc b/compiler/i386/i386op.inc
index 5c5e4f19bd..a0dd87ca72 100644
--- a/compiler/i386/i386op.inc
+++ b/compiler/i386/i386op.inc
@@ -783,8 +783,10 @@ A_VCVTDQ2PD,
A_VCVTDQ2PS,
A_VCVTPD2DQ,
A_VCVTPD2PS,
+A_VCVTPH2PS,
A_VCVTPS2DQ,
A_VCVTPS2PD,
+A_VCVTPS2PH,
A_VCVTSD2SI,
A_VCVTSD2SS,
A_VCVTSI2SD,
@@ -1053,66 +1055,66 @@ A_VPGATHERDD,
A_VPGATHERDQ,
A_VPGATHERQD,
A_VPGATHERQQ,
-A_VFMADD132PD,
-A_VFMADD213PD,
-A_VFMADD231PD,
A_VFMADDPD,
+A_VFMADD132PD,
A_VFMADD132PS,
-A_VFMADD213PS,
-A_VFMADD231PS,
A_VFMADD132SD,
-A_VFMADD213SD,
-A_VFMADD231SD,
A_VFMADD132SS,
+A_VFMADD213PD,
+A_VFMADD213PS,
+A_VFMADD213SD,
A_VFMADD213SS,
+A_VFMADD231PD,
+A_VFMADD231PS,
+A_VFMADD231SD,
A_VFMADD231SS,
A_VFMADDSUB132PD,
-A_VFMADDSUB213PD,
-A_VFMADDSUB231PD,
A_VFMADDSUB132PS,
+A_VFMADDSUB213PD,
A_VFMADDSUB213PS,
+A_VFMADDSUB231PD,
A_VFMADDSUB231PS,
-A_VFMSUBADD132PD,
-A_VFMSUBADD213PD,
-A_VFMSUBADD231PD,
-A_VFMSUBADD132PS,
-A_VFMSUBADD213PS,
-A_VFMSUBADD231PS,
A_VFMSUB132PD,
-A_VFMSUB213PD,
-A_VFMSUB231PD,
A_VFMSUB132PS,
-A_VFMSUB213PS,
-A_VFMSUB231PS,
A_VFMSUB132SD,
-A_VFMSUB213SD,
-A_VFMSUB231SD,
A_VFMSUB132SS,
+A_VFMSUB213PD,
+A_VFMSUB213PS,
+A_VFMSUB213SD,
A_VFMSUB213SS,
+A_VFMSUB231PD,
+A_VFMSUB231PS,
+A_VFMSUB231SD,
A_VFMSUB231SS,
+A_VFMSUBADD132PD,
+A_VFMSUBADD132PS,
+A_VFMSUBADD213PD,
+A_VFMSUBADD213PS,
+A_VFMSUBADD231PD,
+A_VFMSUBADD231PS,
A_VFNMADD132PD,
-A_VFNMADD213PD,
-A_VFNMADD231PD,
A_VFNMADD132PS,
-A_VFNMADD213PS,
-A_VFNMADD231PS,
A_VFNMADD132SD,
-A_VFNMADD213SD,
-A_VFNMADD231SD,
A_VFNMADD132SS,
+A_VFNMADD213PD,
+A_VFNMADD213PS,
+A_VFNMADD213SD,
A_VFNMADD213SS,
+A_VFNMADD231PD,
+A_VFNMADD231PS,
+A_VFNMADD231SD,
A_VFNMADD231SS,
A_VFNMSUB132PD,
-A_VFNMSUB213PD,
-A_VFNMSUB231PD,
A_VFNMSUB132PS,
-A_VFNMSUB213PS,
-A_VFNMSUB231PS,
A_VFNMSUB132SD,
-A_VFNMSUB213SD,
-A_VFNMSUB231SD,
A_VFNMSUB132SS,
+A_VFNMSUB213PD,
+A_VFNMSUB213PS,
+A_VFNMSUB213SD,
A_VFNMSUB213SS,
+A_VFNMSUB231PD,
+A_VFNMSUB231PS,
+A_VFNMSUB231SD,
A_VFNMSUB231SS,
A_XACQUIRE,
A_XRELEASE,
@@ -1123,5 +1125,283 @@ A_XTEST,
A_RDRAND,
A_RDSEED,
A_XGETBV,
-A_PREFETCHWT1
+A_PREFETCHWT1,
+A_KADDB,
+A_KADDD,
+A_KADDQ,
+A_KADDW,
+A_KANDB,
+A_KANDD,
+A_KANDNB,
+A_KANDND,
+A_KANDNQ,
+A_KANDNW,
+A_KANDQ,
+A_KANDW,
+A_KMOVB,
+A_KMOVD,
+A_KMOVQ,
+A_KMOVW,
+A_KNOTB,
+A_KNOTD,
+A_KNOTQ,
+A_KNOTW,
+A_KORB,
+A_KORD,
+A_KORQ,
+A_KORTESTB,
+A_KORTESTD,
+A_KORTESTQ,
+A_KORTESTW,
+A_KORW,
+A_KSHIFTLB,
+A_KSHIFTLD,
+A_KSHIFTLQ,
+A_KSHIFTLW,
+A_KSHIFTRB,
+A_KSHIFTRD,
+A_KSHIFTRQ,
+A_KSHIFTRW,
+A_KTESTB,
+A_KTESTD,
+A_KTESTQ,
+A_KTESTW,
+A_KUNPCKBW,
+A_KUNPCKDQ,
+A_KUNPCKWD,
+A_KXNORB,
+A_KXNORD,
+A_KXNORQ,
+A_KXNORW,
+A_KXORB,
+A_KXORD,
+A_KXORQ,
+A_KXORW,
+A_VALIGND,
+A_VALIGNQ,
+A_VBLENDMPD,
+A_VBLENDMPS,
+A_VBROADCASTF32X2,
+A_VBROADCASTF32X4,
+A_VBROADCASTF32X8,
+A_VBROADCASTF64X2,
+A_VBROADCASTF64X4,
+A_VBROADCASTI32X2,
+A_VBROADCASTI32X4,
+A_VBROADCASTI32X8,
+A_VBROADCASTI64X2,
+A_VBROADCASTI64X4,
+A_VCOMPRESSPD,
+A_VCOMPRESSPS,
+A_VCVTPD2QQ,
+A_VCVTPD2UDQ,
+A_VCVTPD2UQQ,
+A_VCVTPS2QQ,
+A_VCVTPS2UDQ,
+A_VCVTPS2UQQ,
+A_VCVTQQ2PD,
+A_VCVTQQ2PS,
+A_VCVTSD2USI,
+A_VCVTSS2USI,
+A_VCVTTPD2QQ,
+A_VCVTTPD2UDQ,
+A_VCVTTPD2UQQ,
+A_VCVTTPS2QQ,
+A_VCVTTPS2UDQ,
+A_VCVTTPS2UQQ,
+A_VCVTTSD2USI,
+A_VCVTTSS2USI,
+A_VCVTUDQ2PD,
+A_VCVTUDQ2PS,
+A_VCVTUQQ2PD,
+A_VCVTUQQ2PS,
+A_VCVTUSI2SD,
+A_VCVTUSI2SS,
+A_VDBPSADBW,
+A_VEXP2PD,
+A_VEXP2PS,
+A_VEXPANDPD,
+A_VEXPANDPS,
+A_VEXTRACTF32X4,
+A_VEXTRACTF32X8,
+A_VEXTRACTF64X2,
+A_VEXTRACTF64X4,
+A_VEXTRACTI32X4,
+A_VEXTRACTI32X8,
+A_VEXTRACTI64X2,
+A_VEXTRACTI64X4,
+A_VFIXUPIMMPD,
+A_VFIXUPIMMPS,
+A_VFIXUPIMMSD,
+A_VFIXUPIMMSS,
+A_VFPCLASSPD,
+A_VFPCLASSPS,
+A_VFPCLASSSD,
+A_VFPCLASSSS,
+A_VGETEXPPD,
+A_VGETEXPPS,
+A_VGETEXPSD,
+A_VGETEXPSS,
+A_VGETMANTPD,
+A_VGETMANTPS,
+A_VGETMANTSD,
+A_VGETMANTSS,
+A_VINSERTF32X4,
+A_VINSERTF32X8,
+A_VINSERTF64X2,
+A_VINSERTF64X4,
+A_VINSERTI32X4,
+A_VINSERTI32X8,
+A_VINSERTI64X2,
+A_VINSERTI64X4,
+A_VMOVDQA32,
+A_VMOVDQA64,
+A_VMOVDQU16,
+A_VMOVDQU32,
+A_VMOVDQU64,
+A_VMOVDQU8,
+A_VPABSQ,
+A_VPANDD,
+A_VPANDND,
+A_VPANDNQ,
+A_VPANDQ,
+A_VPBLENDMB,
+A_VPBLENDMD,
+A_VPBLENDMQ,
+A_VPBLENDMW,
+A_VPCMPB,
+A_VPCMPD,
+A_VPCMPQ,
+A_VPCMPUB,
+A_VPCMPUD,
+A_VPCMPUQ,
+A_VPCMPUW,
+A_VPCMPW,
+A_VPCOMPRESSD,
+A_VPCOMPRESSQ,
+A_VPCONFLICTD,
+A_VPCONFLICTQ,
+A_VPERMB,
+A_VPERMI2B,
+A_VPERMI2D,
+A_VPERMI2PD,
+A_VPERMI2PS,
+A_VPERMI2Q,
+A_VPERMI2W,
+A_VPERMT2B,
+A_VPERMT2D,
+A_VPERMT2PD,
+A_VPERMT2PS,
+A_VPERMT2Q,
+A_VPERMT2W,
+A_VPERMW,
+A_VPEXPANDD,
+A_VPEXPANDQ,
+A_VPLZCNTD,
+A_VPLZCNTQ,
+A_VPMADD52HUQ,
+A_VPMADD52LUQ,
+A_VPMAXSQ,
+A_VPMAXUQ,
+A_VPMINSQ,
+A_VPMINUQ,
+A_VPMOVB2M,
+A_VPMOVD2M,
+A_VPMOVDB,
+A_VPMOVDW,
+A_VPMOVM2B,
+A_VPMOVM2D,
+A_VPMOVM2Q,
+A_VPMOVM2W,
+A_VPMOVQ2M,
+A_VPMOVQB,
+A_VPMOVQD,
+A_VPMOVQW,
+A_VPMOVSDB,
+A_VPMOVSDW,
+A_VPMOVSQB,
+A_VPMOVSQD,
+A_VPMOVSQW,
+A_VPMOVSWB,
+A_VPMOVUSDB,
+A_VPMOVUSDW,
+A_VPMOVUSQB,
+A_VPMOVUSQD,
+A_VPMOVUSQW,
+A_VPMOVUSWB,
+A_VPMOVW2M,
+A_VPMOVWB,
+A_VPMULLQ,
+A_VPMULTISHIFTQB,
+A_VPORD,
+A_VPORQ,
+A_VPROLD,
+A_VPROLQ,
+A_VPROLVD,
+A_VPROLVQ,
+A_VPRORD,
+A_VPRORQ,
+A_VPRORVD,
+A_VPRORVQ,
+A_VPSCATTERDD,
+A_VPSCATTERDQ,
+A_VPSCATTERQD,
+A_VPSCATTERQQ,
+A_VPSLLVW,
+A_VPSRAQ,
+A_VPSRAVQ,
+A_VPSRAVW,
+A_VPSRLVW,
+A_VPTERNLOGD,
+A_VPTERNLOGQ,
+A_VPTESTMB,
+A_VPTESTMD,
+A_VPTESTMQ,
+A_VPTESTMW,
+A_VPTESTNMB,
+A_VPTESTNMD,
+A_VPTESTNMQ,
+A_VPTESTNMW,
+A_VPXORD,
+A_VPXORQ,
+A_VRANGEPD,
+A_VRANGEPS,
+A_VRANGESD,
+A_VRANGESS,
+A_VRCP14PD,
+A_VRCP14PS,
+A_VRCP14SD,
+A_VRCP14SS,
+A_VRCP28PD,
+A_VRCP28PS,
+A_VRCP28SD,
+A_VRCP28SS,
+A_VREDUCEPD,
+A_VREDUCEPS,
+A_VREDUCESD,
+A_VREDUCESS,
+A_VRNDSCALEPD,
+A_VRNDSCALEPS,
+A_VRNDSCALESD,
+A_VRNDSCALESS,
+A_VRSQRT14PD,
+A_VRSQRT14PS,
+A_VRSQRT14SD,
+A_VRSQRT14SS,
+A_VRSQRT28PD,
+A_VRSQRT28PS,
+A_VRSQRT28SD,
+A_VRSQRT28SS,
+A_VSCALEFPD,
+A_VSCALEFPS,
+A_VSCALEFSD,
+A_VSCALEFSS,
+A_VSCATTERDPD,
+A_VSCATTERDPS,
+A_VSCATTERQPD,
+A_VSCATTERQPS,
+A_VSHUFF32X4,
+A_VSHUFF64X2,
+A_VSHUFI32X4,
+A_VSHUFI64X2
);
diff --git a/compiler/i386/i386prop.inc b/compiler/i386/i386prop.inc
index c91097744f..054c3f0b01 100644
--- a/compiler/i386/i386prop.inc
+++ b/compiler/i386/i386prop.inc
@@ -787,6 +787,8 @@
(Ch: [Ch_Wop2, Ch_Rop1]),
(Ch: [Ch_Wop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
@@ -876,7 +878,7 @@
(Ch: [Ch_All]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
-(Ch: [Ch_All]),
+(Ch: [Ch_All, Ch_None]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
@@ -1123,5 +1125,283 @@
(Ch: [Ch_Wop1, Ch_WFlags]),
(Ch: [Ch_Wop1, Ch_WFlags]),
(Ch: [Ch_WEAX, Ch_WEDX, Ch_RECX]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
(Ch: [Ch_All])
);
diff --git a/compiler/i386/i386tab.inc b/compiler/i386/i386tab.inc
index 0d499b0344..3d03de38f7 100644
--- a/compiler/i386/i386tab.inc
+++ b/compiler/i386/i386tab.inc
@@ -8732,57 +8732,127 @@
(
opcode : A_VADDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VADDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VADDPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VADDPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VADDSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VADDSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#88#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VADDSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VADDSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#88#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge]
),
(
@@ -8817,29 +8887,29 @@
opcode : A_VAESDEC;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#222#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#222#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESDECLAST;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#223#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#223#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESENC;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#220#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#220#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESENCLAST;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#221#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#221#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESIMC;
@@ -8858,58 +8928,170 @@
(
opcode : A_VANDNPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDNPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDNPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDNPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VBLENDPD;
@@ -8977,46 +9159,74 @@
(
opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#25#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#25#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#25#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#25#72;
flags : [if_avx2]
),
(
- opcode : A_VBROADCASTSS;
+ opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#24#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#25#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#25#72;
+ flags : [if_avx512]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#24#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#24#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#24#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#24#72;
flags : [if_avx2]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#24#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#24#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#24#72;
flags : [if_avx2]
),
(
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#233#241#249#1#24#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#24#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCMPEQPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
@@ -9915,6 +10125,55 @@
(
opcode : A_VCMPPD;
ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
code : #241#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
@@ -9929,6 +10188,55 @@
(
opcode : A_VCMPPS;
ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
code : #242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
@@ -9943,28 +10251,56 @@
(
opcode : A_VCMPSD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ optypes : (ot_kreg_m,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #220#232#234#248#1#194#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCMPSD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #220#232#234#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPSD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
code : #220#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCMPSD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
code : #220#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);
+ optypes : (ot_kreg_m,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #219#232#248#1#194#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCMPSS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #219#232#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ 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_xmmreg,ot_immediate or ot_bits8);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
code : #219#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
@@ -9972,371 +10308,882 @@
opcode : A_VCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#248#1#47#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#47#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCOMISD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#47#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#234#241#242#248#1#47#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #242#248#1#47#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#47#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCOMISS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#47#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#242#248#1#47#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #219#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #219#232#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#248#1#230#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #219#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#230#72;
+ flags : [if_avx512,if_bcst2,if_thv]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits128,ot_none,ot_none);
- code : #219#242#244#248#1#230#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #219#232#242#244#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge]
),
(
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
opcode : A_VCVTDQ2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTDQ2PS;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_ymmrm,ot_none,ot_none);
- code : #220#242#244#248#1#230#72;
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#234#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#242#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);
+ 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_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#90#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#90#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#90#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#90#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#90#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#19#72;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#19#72;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#242#244#249#1#19#72;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#19#72;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#19#72;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#19#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#91#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,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]
),
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#91#72;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #242#248#1#90#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#242#248#1#90#72;
+ flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#242#248#1#90#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#244#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#90#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#29#65#22;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#29#65#22;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#29#65#22;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#29#65#22;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#29#65#22;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#29#65#22;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTSD2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#242#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#45#72;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#242#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#243#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#234#242#243#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#243#248#1#45#72;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#234#242#243#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSD2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#90#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#90#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCVTSD2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#90#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#90#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSI2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
- code : #220#242#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
+ code : #220#232#242#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_sd]
),
(
+ opcode : A_VCVTSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #220#232#242#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_sd,if_t1s]
+ ),
+ (
opcode : A_VCVTSI2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
- code : #219#242#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
+ code : #219#232#242#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_sd]
),
(
- opcode : A_VCVTSS2SD;
+ opcode : A_VCVTSI2SS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#90#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_sd,if_t1s]
),
(
opcode : A_VCVTSS2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#90#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#90#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VCVTSS2SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#90#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#45#72;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#242#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#243#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#243#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #219#242#243#248#1#45#72;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#234#242#243#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#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_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#230#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#242#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#44#72;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#242#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#243#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#234#242#243#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#243#248#1#44#72;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#234#242#243#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#44#72;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#242#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#243#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#243#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #219#242#243#248#1#44#72;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#234#242#243#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VDIVPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VDIVPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VDIVPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VDIVPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VDIVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VDIVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#94#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#94#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VDIVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VDIVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#94#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#94#61#80;
flags : [if_avx,if_sandybridge]
),
(
@@ -10370,11 +11217,25 @@
(
opcode : A_VEXTRACTPS;
ops : 3;
- optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#23#65#22;
+ optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#23#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VEXTRACTPS;
+ ops : 3;
+ optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#23#65#22;
flags : [if_avx,if_sandybridge]
),
(
+ opcode : A_VEXTRACTPS;
+ ops : 3;
+ optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#23#65#22;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VHADDPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
@@ -10441,14 +11302,14 @@
opcode : A_VINSERTPS;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
- code : #241#242#250#1#33#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#33#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VINSERTPS;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
- code : #241#242#250#1#33#61#80#23;
+ code : #232#241#242#250#1#33#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
@@ -10538,205 +11399,464 @@
(
opcode : A_VMAXPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMAXPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VMAXPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMAXPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#95#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #220#232#234#242#248#1#95#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMAXSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMAXSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#95#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#95#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMINPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMINPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMINPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMINPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#93#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #220#232#234#242#248#1#93#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMINSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMINSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#93#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#93#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#40#72;
+ optypes : (ot_mem128_m,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);
+ 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);
+ 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);
+ 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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#41#65;
+ 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,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#40#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#41#65;
+ 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);
+ 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_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#41#65;
+ optypes : (ot_mem256_m,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);
+ 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);
+ 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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#40#72;
+ 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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#41#65;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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_VMOVD;
+ opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
- code : #241#242#248#1#110#72;
+ 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);
+ 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);
- code : #241#242#248#1#126#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#126#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VMOVD;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#248#1#110#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #220#242#244#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#242#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tmddup]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#18#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#242#248#1#18#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#234#242#244#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tmddup]
+ ),
+ (
+ opcode : A_VMOVDDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#234#248#1#18#72;
+ flags : [if_avx512,if_tmddup]
),
(
opcode : A_VMOVDQA;
@@ -10798,71 +11918,71 @@
opcode : A_VMOVHLPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #242#248#1#18#61#80;
+ code : #232#242#248#1#18#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVHPD;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#23#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#23#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVHPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#248#1#22#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#22#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVHPS;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #242#248#1#22#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
+ code : #232#242#248#1#23#65;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVHPS;
- ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#23#65;
- flags : [if_avx,if_sandybridge]
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#242#248#1#22#61#80;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVLHPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #242#248#1#22#61#80;
+ code : #232#242#248#1#22#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVLPD;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#19#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#19#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVLPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#248#1#18#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#18#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVLPS;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#19#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#19#65;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVLPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #242#248#1#18#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#18#61#80;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVMSKPD;
@@ -10924,227 +12044,339 @@
opcode : A_VMOVNTDQ;
ops : 2;
optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#231#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#231#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTDQ;
ops : 2;
optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#231#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#244#248#1#231#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTDQ;
+ ops : 2;
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#248#1#231#65;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVNTDQA;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_none,ot_none);
- code : #241#242#249#1#42#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#42#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTDQA;
ops : 2;
optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_none,ot_none);
- code : #241#242#244#249#1#42#72;
- flags : [if_avx2]
+ code : #232#241#242#244#249#1#42#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTDQA;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#42#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTPD;
+ ops : 2;
+ optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPD;
ops : 2;
optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#244#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPD;
ops : 2;
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#248#1#43#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTPS;
+ ops : 2;
optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPS;
ops : 2;
- optypes : (ot_memory or ot_bits128,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
+ code : #232#242#244#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPS;
ops : 2;
- optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#248#1#43#65;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#219#248#1#126#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#214#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #242#219#248#1#126#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#248#1#126#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#241#248#1#214#65;
+ code : #219#232#234#242#248#1#126#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#241#248#1#214#65;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#214#65;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSD;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#16#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#242#248#1#17#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#17#61#66;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #220#232#234#242#248#1#17#61#66;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSD;
- ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#17#65;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #220#232#234#242#248#1#16#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSHDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#22#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#22#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVSHDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#22#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#22#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVSHDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#22#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVSLDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVSLDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVSLDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#18#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVSS;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#16#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#248#1#17#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSS;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#17#61#66;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #219#232#242#248#1#17#61#66;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSS;
- ops : 2;
- optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#17#65;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #219#232#242#248#1#16#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem256_m,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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#16#72;
+ optypes : (ot_mem512_m,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#17#65;
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem256_m,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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#16#72;
+ optypes : (ot_mem512_m,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#17#65;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
opcode : A_VMPSADBW;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
@@ -11161,303 +12393,653 @@
(
opcode : A_VMULPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMULPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMULPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMULPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMULSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMULSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#89#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#89#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMULSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMULSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#89#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#89#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VORPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VORPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VORPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPABSB;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#28#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#28#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPABSB;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#28#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#28#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#28#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPABSD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#30#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#30#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPABSD;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#30#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#30#72;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPABSW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#29#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#29#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPABSW;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#29#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#29#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#29#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPACKSSDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#107#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#107#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPACKSSDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#107#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#107#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPACKSSWB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#99#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#99#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPACKSSWB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#99#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#99#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPACKSSWB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#99#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPACKUSDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#43#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#43#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPACKUSDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#43#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#43#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPACKUSWB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#103#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#103#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPACKUSWB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#103#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#103#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPACKUSWB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#103#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#252#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#252#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#252#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#252#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#252#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#254#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#254#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPADDD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#254#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#254#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPADDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#212#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#212#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPADDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#212#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#212#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPADDSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#236#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#236#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#236#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#236#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#236#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#237#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#237#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#237#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#237#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#237#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDUSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#220#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#220#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDUSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#220#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#220#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDUSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#220#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDUSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#221#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#221#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDUSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#221#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#221#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDUSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#221#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#253#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#253#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#253#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#253#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#253#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPALIGNR;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#250#1#15#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#242#250#1#15#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPALIGNR;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #241#242#244#250#1#15#61#80#23;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#242#244#250#1#15#61#80#23;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPALIGNR;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#15#61#80#23;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPAND;
@@ -11490,30 +13072,44 @@
(
opcode : A_VPAVGB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#224#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#224#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPAVGB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#224#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#224#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPAVGB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#224#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPAVGW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#227#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#227#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPAVGW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#227#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#227#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPAVGW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#227#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPBLENDVB;
@@ -11547,8 +13143,43 @@
opcode : A_VPCLMULQDQ;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#250#1#68#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#68#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPCLMULQDQ;
+ ops : 4;
+ optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#68#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCLMULQDQ;
+ ops : 4;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#68#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPCMPEQB;
@@ -11567,6 +13198,48 @@
(
opcode : A_VPCMPEQD;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#118#61#80;
flags : [if_avx,if_sandybridge]
@@ -11581,6 +13254,48 @@
(
opcode : A_VPCMPEQQ;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#249#1#41#61#80;
flags : [if_avx,if_sandybridge]
@@ -11595,6 +13310,27 @@
(
opcode : A_VPCMPEQW;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#117#61#80;
flags : [if_avx,if_sandybridge]
@@ -11623,6 +13359,27 @@
(
opcode : A_VPCMPGTB;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#100#61#80;
flags : [if_avx,if_sandybridge]
@@ -11637,6 +13394,48 @@
(
opcode : A_VPCMPGTD;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#102#61#80;
flags : [if_avx,if_sandybridge]
@@ -11651,6 +13450,48 @@
(
opcode : A_VPCMPGTQ;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#249#1#55#61#80;
flags : [if_avx,if_sandybridge]
@@ -11665,6 +13506,27 @@
(
opcode : A_VPCMPGTW;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#101#61#80;
flags : [if_avx,if_sandybridge]
@@ -11700,127 +13562,267 @@
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#13#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#249#1#13#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#5#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#250#1#5#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#250#1#5#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#13#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#249#1#13#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#250#1#5#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#12#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#12#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#4#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#250#1#4#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#4#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#12#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#12#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#4#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPEXTRB;
+ ops : 3;
+ optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#20#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRB;
+ ops : 3;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#20#65#22;
+ flags : [if_avx512]
),
(
opcode : A_VPEXTRB;
ops : 3;
optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
+ code : #232#241#242#250#1#20#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRB;
ops : 3;
optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
+ code : #232#241#242#250#1#20#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRB;
ops : 3;
- optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_reg8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#20#65#22;
+ flags : [if_avx512]
),
(
opcode : A_VPEXTRD;
ops : 3;
optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#22#65#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#22#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPEXTRQ;
ops : 3;
optypes : (ot_rm_gpr or ot_bits64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#250#1#22#65#22;
+ code : #232#234#241#242#243#250#1#22#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRW;
+ ops : 3;
+ optypes : (ot_memory or ot_bits16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#21#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRW;
+ ops : 3;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#197#72#22;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#197#72#22;
+ optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_memory or ot_bits16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
@@ -11918,239 +13920,421 @@
opcode : A_VPINSRB;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
- code : #241#242#250#1#32#61#80#23;
+ code : #232#241#242#250#1#32#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPINSRB;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits8,ot_immediate or ot_bits8);
- code : #241#242#250#1#32#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#32#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRD;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_immediate or ot_bits8);
- code : #241#242#250#1#34#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#34#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRQ;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits64,ot_immediate or ot_bits8);
- code : #241#242#243#250#1#34#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#243#250#1#34#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRW;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
- code : #241#242#248#1#196#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits16,ot_immediate or ot_bits8);
+ code : #232#241#242#248#1#196#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRW;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits16,ot_immediate or ot_bits8);
- code : #241#242#248#1#196#61#80#23;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
+ code : #232#241#242#248#1#196#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMADDUBSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#4#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#4#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMADDUBSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#4#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#4#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMADDUBSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#4#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMADDWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#245#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#245#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMADDWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#245#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#245#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMADDWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#245#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#60#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#60#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#60#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#60#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#60#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#61#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#61#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMAXSD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#61#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#61#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMAXSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#238#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#238#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#238#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#238#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#238#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXUB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#222#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#222#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXUB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#222#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#222#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXUB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#222#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXUD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#63#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#63#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMAXUD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#63#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#63#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMAXUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#62#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#62#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#62#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#62#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#62#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#56#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#56#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#56#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#56#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#56#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#57#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#57#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMINSD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#57#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#57#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMINSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#234#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#234#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#234#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#234#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#234#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINUB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#218#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#218#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINUB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#218#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#218#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINUB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#218#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINUD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#59#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#59#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMINUD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#59#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#59#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMINUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#58#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#58#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#58#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#58#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#58#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMOVMSKB;
@@ -12183,394 +14367,716 @@
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#33#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#33#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#33#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#33#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#33#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#33#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#33#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#33#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#33#72;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#33#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#34#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#34#72;
+ flags : [if_avx,if_sandybridge,if_tovm]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#34#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#34#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#34#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#34#72;
+ flags : [if_avx2,if_tovm]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#34#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#34#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#34#72;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#34#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#32#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#32#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#32#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#32#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#32#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#37#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#37#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#37#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#37#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#37#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#35#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#35#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#35#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#35#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#35#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#36#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#36#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#36#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#36#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#36#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#36#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#36#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#36#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#49#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#49#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#49#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#49#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#49#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#49#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#49#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#49#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,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,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#50#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#50#72;
+ flags : [if_avx,if_sandybridge,if_tovm]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#50#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#50#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#50#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#50#72;
+ flags : [if_avx2,if_tovm]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#50#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#50#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#50#72;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVZXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#50#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#48#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#48#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#48#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#48#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#48#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#53#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#53#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#53#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#53#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#53#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#51#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#51#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#51#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#51#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#51#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#52#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#52#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#52#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#52#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#52#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#52#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#52#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#52#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#52#72;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVZXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#52#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMULDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#40#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#249#1#40#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#40#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#249#1#40#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMULHRSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#11#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#11#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHRSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#11#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#11#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHRSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#11#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULHUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#228#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#228#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#228#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#228#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#228#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULHW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#229#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#229#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#229#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#229#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#229#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#64#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#64#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#64#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#64#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMULLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#213#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#213#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#213#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#213#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#213#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULUDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#244#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#244#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULUDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#244#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#244#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPOR;
@@ -12590,71 +15096,127 @@
opcode : A_VPSADBW;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#246#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#246#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSADBW;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#246#61#80;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#246#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSADBW;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#246#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#0#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#0#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#0#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#0#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#0#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSHUFD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSHUFHW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #219#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFHW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #219#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFHW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#233#248#1#112#72#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #220#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #220#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#233#248#1#112#72#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSIGNB;
@@ -12701,366 +15263,730 @@
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#242#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#242#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#242#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#142#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#242#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#242#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#143#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#115#60#143#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLDQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#143#22;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#115#60#143#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#243#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#243#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#248#1#115#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#243#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#244#248#1#243#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#248#1#115#60#142#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#243#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#241#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#241#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#241#61#80;
+ flags : [if_avx2,if_tmem128]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#241#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#142#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#241#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#142#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#140#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#140#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#226#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#140#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#226#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#226#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#140#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#226#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#140#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#140#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#225#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#225#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#140#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#140#22;
+ flags : [if_avx2,if_tfvm]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#225#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#225#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#225#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#140#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#210#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#210#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#210#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#210#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#138#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#210#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#139#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#115#60#139#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLDQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#139#22;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#115#60#139#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#211#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#211#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#248#1#115#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#211#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#248#1#115#60#138#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#244#248#1#211#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#211#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#209#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#209#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#138#22;
+ flags : [if_avx2,if_tfvm]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#209#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#209#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#209#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#138#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#248#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#248#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#248#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#248#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#248#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#250#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#250#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSUBD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#250#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#250#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSUBQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#251#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#251#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSUBQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#251#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#251#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSUBSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#232#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#232#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#232#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#232#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#232#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#233#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#233#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#233#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#233#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#233#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBUSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#216#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#216#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBUSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#216#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#216#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBUSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#216#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBUSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#217#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#217#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBUSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#217#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#217#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBUSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#217#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#249#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#249#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#249#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#249#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#249#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPTEST;
@@ -13079,114 +16005,254 @@
(
opcode : A_VPUNPCKHBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#104#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#104#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKHBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#104#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#104#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKHBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#104#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKHDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#106#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#106#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKHDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#106#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#106#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKHQDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#109#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#109#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKHQDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#109#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#109#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKHWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#105#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#105#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKHWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#105#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#105#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKHWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#105#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKLBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#96#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#96#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKLBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#96#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#96#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKLBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#96#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKLDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#98#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#98#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKLDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#98#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#98#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKLQDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#108#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#108#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKLQDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#108#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#108#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKLWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#97#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#97#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKLWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#97#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#97#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKLWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#97#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPXOR;
@@ -13317,86 +16383,212 @@
(
opcode : A_VSHUFPD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#242#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSHUFPD;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #241#242#244#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#242#244#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSHUFPS;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #242#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#242#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSHUFPS;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #242#244#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#242#244#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#244#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSQRTPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#242#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSQRTPD;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512]
),
(
opcode : A_VSQRTPS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSQRTPS;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#242#244#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512]
),
(
opcode : A_VSQRTSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#81#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#81#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSQRTSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#81#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#81#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSQRTSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#81#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#81#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSQRTSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#81#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#81#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSTMXCSR;
@@ -13408,58 +16600,128 @@
(
opcode : A_VSUBPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSUBPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSUBPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSUBPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VSUBSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSUBSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSUBSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#92#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#92#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSUBSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VTESTPD;
@@ -13493,113 +16755,281 @@
opcode : A_VUCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#248#1#46#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#46#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VUCOMISD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#46#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#234#241#242#248#1#46#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VUCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #242#248#1#46#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#46#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VUCOMISS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#46#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#242#248#1#46#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VUNPCKHPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKHPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKHPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKHPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKLPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKLPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKLPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKLPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VXORPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VXORPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VXORPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VXORPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VZEROALL;
@@ -13765,116 +17195,361 @@
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#120#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#241#242#249#1#120#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#120#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#120#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits8,ot_none,ot_none);
- code : #241#242#249#1#120#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#241#242#244#249#1#120#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits8,ot_none,ot_none);
- code : #241#242#244#249#1#120#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#120#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#233#241#249#1#120#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#88#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#88#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#88#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#88#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#88#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#88#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#88#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#88#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#233#241#249#1#88#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#88#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#89#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#249#1#89#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#89#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#249#1#89#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#89#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#234#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#89#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#89#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#89#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#89#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#121#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#121#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#121#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#121#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#244#249#1#121#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#121#72;
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#244#249#1#121#72;
+ flags : [if_avx2,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#121#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#233#241#249#1#121#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPERM2I128;
ops : 4;
optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
@@ -13884,30 +17559,177 @@
(
opcode : A_VPERMD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#54#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#54#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#244#250#1#1#72#22;
- flags : [if_avx2]
+ 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);
+ 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_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#1#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#22#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#22#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#244#250#1#0#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#243#244#250#1#0#72#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#0#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMASKMOVD;
@@ -13968,88 +17790,249 @@
(
opcode : A_VPSLLVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSLLVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLVQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#243#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSLLVQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#243#244#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#70#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#70#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRAVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#70#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#70#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRLVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLVQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#243#244#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRLVQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#243#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VGATHERDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
+ optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
code : #241#242#243#249#1#146#62#72;
flags : [if_avx2]
),
(
opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#234#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_xmem64,ot_ymmreg,ot_none);
+ optypes : (ot_ymmreg,ot_xmem32,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#146#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#234#241#244#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#233#234#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERDPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14058,12 +18041,33 @@
),
(
opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPS;
ops : 3;
optypes : (ot_ymmreg,ot_ymem32,ot_ymmreg,ot_none);
code : #241#242#244#249#1#146#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERQPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14072,12 +18076,33 @@
),
(
opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPD;
ops : 3;
optypes : (ot_ymmreg,ot_ymem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#147#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERQPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14092,6 +18117,27 @@
flags : [if_avx2]
),
(
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERDD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14100,12 +18146,33 @@
),
(
opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDD;
ops : 3;
optypes : (ot_ymmreg,ot_ymem32,ot_ymmreg,ot_none);
code : #241#242#244#249#1#144#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14114,12 +18181,33 @@
),
(
opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDQ;
ops : 3;
optypes : (ot_ymmreg,ot_xmem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#144#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERQD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14134,6 +18222,27 @@
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERQQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14142,696 +18251,2145 @@
),
(
opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#145#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFMADDPD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_xmmreg);
+ code : #241#242#250#1#105#61#80#247;
+ flags : [if_fma4]
+ ),
+ (
+ opcode : A_VFMADDPD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_xmmrm);
+ code : #241#242#250#243#1#105#61#88#246;
+ flags : [if_fma4]
+ ),
+ (
opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD213PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD213PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDPD;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_xmmreg);
- code : #241#242#250#1#105#61#80#247;
- flags : [if_fma4]
+ opcode : A_VFMADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMADDPD;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_xmmrm);
- code : #241#242#250#243#1#105#61#88#246;
- flags : [if_fma4]
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADD132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADD132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#152#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#153#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMADD213PS;
+ opcode : A_VFMADD132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#168#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#153#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD231PS;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PS;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD132SD;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#153#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#169#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#169#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFMADD231SD;
+ opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#169#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMADD132SS;
+ opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#169#61#80;
flags : [if_fma]
),
(
opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#169#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#185#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMADD231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#185#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB213PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADDSUB213PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFMADDSUB132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PS;
+ opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD132PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD132PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD213PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD213PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUBADD132PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD132PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD213PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD213PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUBADD231PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#154#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#155#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMSUB132PD;
+ opcode : A_VFMSUB132SD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#154#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB132SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#155#61#80;
flags : [if_fma]
),
(
opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB231PD;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUB231PD;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB132PS;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#154#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUB132PS;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#154#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB231PS;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUB231PS;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB132SD;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#155#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#171#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMSUB231SD;
+ opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#187#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#171#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFMSUB132SS;
+ opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#171#61#80;
flags : [if_fma]
),
(
opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#171#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#187#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#187#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB231SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#187#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD213PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD213PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD231PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFNMADD231PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFNMADD132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMADD132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#156#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#157#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMADD213PS;
+ opcode : A_VFNMADD132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#172#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#157#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD132SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#157#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD231PS;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD231PS;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD132SD;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#157#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#173#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMADD231SD;
+ opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#189#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#173#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFNMADD132SS;
+ opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#173#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#173#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VFNMADD231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#189#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMADD231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
code : #241#242#249#1#189#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB213PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#174#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMSUB213PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#174#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB231PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB231PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFNMSUB132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMSUB132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#158#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#159#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB213PS;
+ opcode : A_VFNMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#174#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#159#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#174#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#175#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB231PS;
+ opcode : A_VFNMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#190#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#175#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#175#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMSUB132SD;
+ opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#159#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB213SD;
+ opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#175#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#191#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB132SS;
+ opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#159#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#191#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFNMSUB213SS;
+ opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#191#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#191#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#191#61#80;
+ flags : [if_fma,if_t1s]
),
(
opcode : A_XACQUIRE;
@@ -14902,5 +20460,7915 @@
optypes : (ot_memory,ot_none,ot_none,ot_none);
code : #2#15#13#130;
flags : [if_prefetchwt1]
+ ),
+ (
+ opcode : A_KADDB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDND;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #241#242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #241#242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_memory or ot_bits8,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #241#242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #220#242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_memory or ot_bits32,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #220#242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg64,ot_none,ot_none);
+ code : #220#242#243#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_memory or ot_bits64,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_reg64,ot_kreg,ot_none,ot_none);
+ code : #220#242#243#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_memory or ot_bits16,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#50#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#51#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#51#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#50#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#48#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#49#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#49#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#48#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKBW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKWD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#25#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#244#249#1#25#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#25#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#25#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF32X4;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#244#249#1#26#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTF32X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#26#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTF32X8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#27#72;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VBROADCASTF64X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#244#249#1#26#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF64X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#234#241#249#1#26#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF64X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#234#241#249#1#27#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#244#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X4;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#244#249#1#90#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#90#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#91#72;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VBROADCASTI64X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#244#249#1#90#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI64X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#234#241#249#1#90#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI64X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#234#241#249#1#91#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#123#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512,if_bcst16,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#248#1#121#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#248#1#121#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#248#1#121#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#234#248#1#121#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#120#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#248#1#120#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#248#1#120#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#248#1#120#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#234#248#1#120#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#244#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits64,ot_none);
+ code : #220#232#234#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
+ code : #220#232#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits64,ot_none);
+ code : #219#232#234#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
+ code : #219#232#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#244#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#241#244#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#25#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#25#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X8;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#27#65#22;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VEXTRACTF32X8;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#27#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#25#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#25#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X4;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#27#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF64X4;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#27#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#57#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#57#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X8;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#59#65#22;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VEXTRACTI32X8;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#59#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#57#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#57#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X4;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#59#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI64X4;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#59#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#85#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFIXUPIMMSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#85#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#85#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFIXUPIMMSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#85#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst16,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSSD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#103#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSSD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_memory or ot_bits64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#103#72#22;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFPCLASSSS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#103#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSSS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_memory or ot_bits32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#103#72#22;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#67#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#234#241#249#1#67#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#67#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#67#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#39#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETMANTSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#39#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#39#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETMANTSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#39#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VINSERTF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#24#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#24#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTF32X8;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#26#61#80#23;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VINSERTF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#24#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#24#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTF64X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#26#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#56#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#56#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X8;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#58#61#80#23;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VINSERTI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#56#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#56#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTI64X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#58#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#234#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#234#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #220#232#233#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #220#232#233#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#249#1#137#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#137#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#244#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#244#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_zmem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#244#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #219#232#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #219#232#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #219#232#233#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #219#232#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#234#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #219#232#234#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #219#232#233#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#234#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#234#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#234#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#81#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRANGESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#81#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#81#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRANGESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#81#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP14SD;
+ ops : 3;
+ 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_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#77#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#241#249#1#77#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512]
+ ),
+ (
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#203#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#87#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VREDUCESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#87#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#87#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VREDUCESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#87#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#11#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRNDSCALESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#11#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#10#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRNDSCALESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#10#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#234#241#249#1#79#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#79#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#241#249#1#79#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#79#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#205#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#234#241#249#1#205#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#205#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#205#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#45#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCALEFSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#249#1#45#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#45#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCALEFSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#249#1#45#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_zmem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
)
);
diff --git a/compiler/i386/r386ari.inc b/compiler/i386/r386ari.inc
index 72d54535fa..33afcdb0c2 100644
--- a/compiler/i386/r386ari.inc
+++ b/compiler/i386/r386ari.inc
@@ -43,6 +43,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
88,
89,
36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97,
0
diff --git a/compiler/i386/r386att.inc b/compiler/i386/r386att.inc
index bceb36301f..926f64cd91 100644
--- a/compiler/i386/r386att.inc
+++ b/compiler/i386/r386att.inc
@@ -88,4 +88,20 @@
'%ymm4',
'%ymm5',
'%ymm6',
-'%ymm7'
+'%ymm7',
+'%zmm0',
+'%zmm1',
+'%zmm2',
+'%zmm3',
+'%zmm4',
+'%zmm5',
+'%zmm6',
+'%zmm7',
+'%k0',
+'%k1',
+'%k2',
+'%k3',
+'%k4',
+'%k5',
+'%k6',
+'%k7'
diff --git a/compiler/i386/r386con.inc b/compiler/i386/r386con.inc
index e20b199a27..b56b7dce1b 100644
--- a/compiler/i386/r386con.inc
+++ b/compiler/i386/r386con.inc
@@ -89,3 +89,19 @@ NR_YMM4 = tregister($040D0004);
NR_YMM5 = tregister($040D0005);
NR_YMM6 = tregister($040D0006);
NR_YMM7 = tregister($040D0007);
+NR_ZMM0 = tregister($040E0000);
+NR_ZMM1 = tregister($040E0001);
+NR_ZMM2 = tregister($040E0002);
+NR_ZMM3 = tregister($040E0003);
+NR_ZMM4 = tregister($040E0004);
+NR_ZMM5 = tregister($040E0005);
+NR_ZMM6 = tregister($040E0006);
+NR_ZMM7 = tregister($040E0007);
+NR_K0 = tregister($06000000);
+NR_K1 = tregister($06000001);
+NR_K2 = tregister($06000002);
+NR_K3 = tregister($06000003);
+NR_K4 = tregister($06000004);
+NR_K5 = tregister($06000005);
+NR_K6 = tregister($06000006);
+NR_K7 = tregister($06000007);
diff --git a/compiler/i386/r386dwrf.inc b/compiler/i386/r386dwrf.inc
index 1eb67c19fe..f2000d17c2 100644
--- a/compiler/i386/r386dwrf.inc
+++ b/compiler/i386/r386dwrf.inc
@@ -88,4 +88,20 @@
25,
26,
27,
-28
+28,
+21,
+22,
+23,
+24,
+25,
+26,
+27,
+28,
+118,
+119,
+120,
+121,
+122,
+123,
+124,
+125
diff --git a/compiler/i386/r386int.inc b/compiler/i386/r386int.inc
index 384ae00310..c87182aeb3 100644
--- a/compiler/i386/r386int.inc
+++ b/compiler/i386/r386int.inc
@@ -88,4 +88,20 @@
'ymm4',
'ymm5',
'ymm6',
-'ymm7'
+'ymm7',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/i386/r386iri.inc b/compiler/i386/r386iri.inc
index 2390d1bb14..ca5489c32b 100644
--- a/compiler/i386/r386iri.inc
+++ b/compiler/i386/r386iri.inc
@@ -44,6 +44,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
87,
88,
89,
-36
+36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97
diff --git a/compiler/i386/r386nasm.inc b/compiler/i386/r386nasm.inc
index 3e96da53e6..5c2de67a65 100644
--- a/compiler/i386/r386nasm.inc
+++ b/compiler/i386/r386nasm.inc
@@ -88,4 +88,20 @@
'ymm4',
'ymm5',
'ymm6',
-'ymm7'
+'ymm7',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/i386/r386nor.inc b/compiler/i386/r386nor.inc
index aa0fcb051c..f73584d2be 100644
--- a/compiler/i386/r386nor.inc
+++ b/compiler/i386/r386nor.inc
@@ -1,2 +1,2 @@
{ don't edit, this file is generated from x86reg.dat }
-90
+106
diff --git a/compiler/i386/r386nri.inc b/compiler/i386/r386nri.inc
index 2390d1bb14..ca5489c32b 100644
--- a/compiler/i386/r386nri.inc
+++ b/compiler/i386/r386nri.inc
@@ -44,6 +44,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
87,
88,
89,
-36
+36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97
diff --git a/compiler/i386/r386num.inc b/compiler/i386/r386num.inc
index 2f0ce1bcb9..7a4f20dc66 100644
--- a/compiler/i386/r386num.inc
+++ b/compiler/i386/r386num.inc
@@ -88,4 +88,20 @@ tregister($040D0003),
tregister($040D0004),
tregister($040D0005),
tregister($040D0006),
-tregister($040D0007)
+tregister($040D0007),
+tregister($040E0000),
+tregister($040E0001),
+tregister($040E0002),
+tregister($040E0003),
+tregister($040E0004),
+tregister($040E0005),
+tregister($040E0006),
+tregister($040E0007),
+tregister($06000000),
+tregister($06000001),
+tregister($06000002),
+tregister($06000003),
+tregister($06000004),
+tregister($06000005),
+tregister($06000006),
+tregister($06000007)
diff --git a/compiler/i386/r386ot.inc b/compiler/i386/r386ot.inc
index 95ffb8b8b9..be34ab5aa3 100644
--- a/compiler/i386/r386ot.inc
+++ b/compiler/i386/r386ot.inc
@@ -88,4 +88,20 @@ OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
-OT_YMMREG
+OT_YMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG
diff --git a/compiler/i386/r386rni.inc b/compiler/i386/r386rni.inc
index b800d564e9..94b86319f5 100644
--- a/compiler/i386/r386rni.inc
+++ b/compiler/i386/r386rni.inc
@@ -57,6 +57,14 @@
87,
88,
89,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97,
25,
26,
27,
@@ -88,4 +96,12 @@
37,
38,
39,
-40
+40,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105
diff --git a/compiler/i386/r386sri.inc b/compiler/i386/r386sri.inc
index 2390d1bb14..ca5489c32b 100644
--- a/compiler/i386/r386sri.inc
+++ b/compiler/i386/r386sri.inc
@@ -44,6 +44,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
87,
88,
89,
-36
+36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97
diff --git a/compiler/i386/r386stab.inc b/compiler/i386/r386stab.inc
index e876c29894..0f4abdd30d 100644
--- a/compiler/i386/r386stab.inc
+++ b/compiler/i386/r386stab.inc
@@ -88,4 +88,20 @@
25,
26,
27,
-28
+28,
+21,
+22,
+23,
+24,
+25,
+26,
+27,
+28,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1
diff --git a/compiler/i386/r386std.inc b/compiler/i386/r386std.inc
index 384ae00310..c87182aeb3 100644
--- a/compiler/i386/r386std.inc
+++ b/compiler/i386/r386std.inc
@@ -88,4 +88,20 @@
'ymm4',
'ymm5',
'ymm6',
-'ymm7'
+'ymm7',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/i8086/i8086att.inc b/compiler/i8086/i8086att.inc
index e4a558db7e..5be0bc64dc 100644
--- a/compiler/i8086/i8086att.inc
+++ b/compiler/i8086/i8086att.inc
@@ -783,8 +783,10 @@
'vcvtdq2ps',
'vcvtpd2dq',
'vcvtpd2ps',
+'vcvtph2ps',
'vcvtps2dq',
'vcvtps2pd',
+'vcvtps2ph',
'vcvtsd2si',
'vcvtsd2ss',
'vcvtsi2sd',
@@ -1067,66 +1069,66 @@
'set1',
'sub4s',
'test1',
-'vfmadd132pd',
-'vfmadd213pd',
-'vfmadd231pd',
'vfmaddpd',
+'vfmadd132pd',
'vfmadd132ps',
-'vfmadd213ps',
-'vfmadd231ps',
'vfmadd132sd',
-'vfmadd213sd',
-'vfmadd231sd',
'vfmadd132ss',
+'vfmadd213pd',
+'vfmadd213ps',
+'vfmadd213sd',
'vfmadd213ss',
+'vfmadd231pd',
+'vfmadd231ps',
+'vfmadd231sd',
'vfmadd231ss',
'vfmaddsub132pd',
-'vfmaddsub213pd',
-'vfmaddsub231pd',
'vfmaddsub132ps',
+'vfmaddsub213pd',
'vfmaddsub213ps',
+'vfmaddsub231pd',
'vfmaddsub231ps',
-'vfmsubadd132pd',
-'vfmsubadd213pd',
-'vfmsubadd231pd',
-'vfmsubadd132ps',
-'vfmsubadd213ps',
-'vfmsubadd231ps',
'vfmsub132pd',
-'vfmsub213pd',
-'vfmsub231pd',
'vfmsub132ps',
-'vfmsub213ps',
-'vfmsub231ps',
'vfmsub132sd',
-'vfmsub213sd',
-'vfmsub231sd',
'vfmsub132ss',
+'vfmsub213pd',
+'vfmsub213ps',
+'vfmsub213sd',
'vfmsub213ss',
+'vfmsub231pd',
+'vfmsub231ps',
+'vfmsub231sd',
'vfmsub231ss',
+'vfmsubadd132pd',
+'vfmsubadd132ps',
+'vfmsubadd213pd',
+'vfmsubadd213ps',
+'vfmsubadd231pd',
+'vfmsubadd231ps',
'vfnmadd132pd',
-'vfnmadd213pd',
-'vfnmadd231pd',
'vfnmadd132ps',
-'vfnmadd213ps',
-'vfnmadd231ps',
'vfnmadd132sd',
-'vfnmadd213sd',
-'vfnmadd231sd',
'vfnmadd132ss',
+'vfnmadd213pd',
+'vfnmadd213ps',
+'vfnmadd213sd',
'vfnmadd213ss',
+'vfnmadd231pd',
+'vfnmadd231ps',
+'vfnmadd231sd',
'vfnmadd231ss',
'vfnmsub132pd',
-'vfnmsub213pd',
-'vfnmsub231pd',
'vfnmsub132ps',
-'vfnmsub213ps',
-'vfnmsub231ps',
'vfnmsub132sd',
-'vfnmsub213sd',
-'vfnmsub231sd',
'vfnmsub132ss',
+'vfnmsub213pd',
+'vfnmsub213ps',
+'vfnmsub213sd',
'vfnmsub213ss',
+'vfnmsub231pd',
+'vfnmsub231ps',
+'vfnmsub231sd',
'vfnmsub231ss',
'xacquire',
'xrelease',
@@ -1137,5 +1139,283 @@
'rdrand',
'rdseed',
'xgetbv',
-'prefetchwt1'
+'prefetchwt1',
+'kaddb',
+'kaddd',
+'kaddq',
+'kaddw',
+'kandb',
+'kandd',
+'kandnb',
+'kandnd',
+'kandnq',
+'kandnw',
+'kandq',
+'kandw',
+'kmovb',
+'kmovd',
+'kmovq',
+'kmovw',
+'knotb',
+'knotd',
+'knotq',
+'knotw',
+'korb',
+'kord',
+'korq',
+'kortestb',
+'kortestd',
+'kortestq',
+'kortestw',
+'korw',
+'kshiftlb',
+'kshiftld',
+'kshiftlq',
+'kshiftlw',
+'kshiftrb',
+'kshiftrd',
+'kshiftrq',
+'kshiftrw',
+'ktestb',
+'ktestd',
+'ktestq',
+'ktestw',
+'kunpckbw',
+'kunpckdq',
+'kunpckwd',
+'kxnorb',
+'kxnord',
+'kxnorq',
+'kxnorw',
+'kxorb',
+'kxord',
+'kxorq',
+'kxorw',
+'valignd',
+'valignq',
+'vblendmpd',
+'vblendmps',
+'vbroadcastf32x2',
+'vbroadcastf32x4',
+'vbroadcastf32x8',
+'vbroadcastf64x2',
+'vbroadcastf64x4',
+'vbroadcasti32x2',
+'vbroadcasti32x4',
+'vbroadcasti32x8',
+'vbroadcasti64x2',
+'vbroadcasti64x4',
+'vcompresspd',
+'vcompressps',
+'vcvtpd2qq',
+'vcvtpd2udq',
+'vcvtpd2uqq',
+'vcvtps2qq',
+'vcvtps2udq',
+'vcvtps2uqq',
+'vcvtqq2pd',
+'vcvtqq2ps',
+'vcvtsd2usi',
+'vcvtss2usi',
+'vcvttpd2qq',
+'vcvttpd2udq',
+'vcvttpd2uqq',
+'vcvttps2qq',
+'vcvttps2udq',
+'vcvttps2uqq',
+'vcvttsd2usi',
+'vcvttss2usi',
+'vcvtudq2pd',
+'vcvtudq2ps',
+'vcvtuqq2pd',
+'vcvtuqq2ps',
+'vcvtusi2sd',
+'vcvtusi2ss',
+'vdbpsadbw',
+'vexp2pd',
+'vexp2ps',
+'vexpandpd',
+'vexpandps',
+'vextractf32x4',
+'vextractf32x8',
+'vextractf64x2',
+'vextractf64x4',
+'vextracti32x4',
+'vextracti32x8',
+'vextracti64x2',
+'vextracti64x4',
+'vfixupimmpd',
+'vfixupimmps',
+'vfixupimmsd',
+'vfixupimmss',
+'vfpclasspd',
+'vfpclassps',
+'vfpclasssd',
+'vfpclassss',
+'vgetexppd',
+'vgetexpps',
+'vgetexpsd',
+'vgetexpss',
+'vgetmantpd',
+'vgetmantps',
+'vgetmantsd',
+'vgetmantss',
+'vinsertf32x4',
+'vinsertf32x8',
+'vinsertf64x2',
+'vinsertf64x4',
+'vinserti32x4',
+'vinserti32x8',
+'vinserti64x2',
+'vinserti64x4',
+'vmovdqa32',
+'vmovdqa64',
+'vmovdqu16',
+'vmovdqu32',
+'vmovdqu64',
+'vmovdqu8',
+'vpabsq',
+'vpandd',
+'vpandnd',
+'vpandnq',
+'vpandq',
+'vpblendmb',
+'vpblendmd',
+'vpblendmq',
+'vpblendmw',
+'vpcmpb',
+'vpcmpd',
+'vpcmpq',
+'vpcmpub',
+'vpcmpud',
+'vpcmpuq',
+'vpcmpuw',
+'vpcmpw',
+'vpcompressd',
+'vpcompressq',
+'vpconflictd',
+'vpconflictq',
+'vpermb',
+'vpermi2b',
+'vpermi2d',
+'vpermi2pd',
+'vpermi2ps',
+'vpermi2q',
+'vpermi2w',
+'vpermt2b',
+'vpermt2d',
+'vpermt2pd',
+'vpermt2ps',
+'vpermt2q',
+'vpermt2w',
+'vpermw',
+'vpexpandd',
+'vpexpandq',
+'vplzcntd',
+'vplzcntq',
+'vpmadd52huq',
+'vpmadd52luq',
+'vpmaxsq',
+'vpmaxuq',
+'vpminsq',
+'vpminuq',
+'vpmovb2m',
+'vpmovd2m',
+'vpmovdb',
+'vpmovdw',
+'vpmovm2b',
+'vpmovm2d',
+'vpmovm2q',
+'vpmovm2w',
+'vpmovq2m',
+'vpmovqb',
+'vpmovqd',
+'vpmovqw',
+'vpmovsdb',
+'vpmovsdw',
+'vpmovsqb',
+'vpmovsqd',
+'vpmovsqw',
+'vpmovswb',
+'vpmovusdb',
+'vpmovusdw',
+'vpmovusqb',
+'vpmovusqd',
+'vpmovusqw',
+'vpmovuswb',
+'vpmovw2m',
+'vpmovwb',
+'vpmullq',
+'vpmultishiftqb',
+'vpord',
+'vporq',
+'vprold',
+'vprolq',
+'vprolvd',
+'vprolvq',
+'vprord',
+'vprorq',
+'vprorvd',
+'vprorvq',
+'vpscatterdd',
+'vpscatterdq',
+'vpscatterqd',
+'vpscatterqq',
+'vpsllvw',
+'vpsraq',
+'vpsravq',
+'vpsravw',
+'vpsrlvw',
+'vpternlogd',
+'vpternlogq',
+'vptestmb',
+'vptestmd',
+'vptestmq',
+'vptestmw',
+'vptestnmb',
+'vptestnmd',
+'vptestnmq',
+'vptestnmw',
+'vpxord',
+'vpxorq',
+'vrangepd',
+'vrangeps',
+'vrangesd',
+'vrangess',
+'vrcp14pd',
+'vrcp14ps',
+'vrcp14sd',
+'vrcp14ss',
+'vrcp28pd',
+'vrcp28ps',
+'vrcp28sd',
+'vrcp28ss',
+'vreducepd',
+'vreduceps',
+'vreducesd',
+'vreducess',
+'vrndscalepd',
+'vrndscaleps',
+'vrndscalesd',
+'vrndscaless',
+'vrsqrt14pd',
+'vrsqrt14ps',
+'vrsqrt14sd',
+'vrsqrt14ss',
+'vrsqrt28pd',
+'vrsqrt28ps',
+'vrsqrt28sd',
+'vrsqrt28ss',
+'vscalefpd',
+'vscalefps',
+'vscalefsd',
+'vscalefss',
+'vscatterdpd',
+'vscatterdps',
+'vscatterqpd',
+'vscatterqps',
+'vshuff32x4',
+'vshuff64x2',
+'vshufi32x4',
+'vshufi64x2'
);
diff --git a/compiler/i8086/i8086atts.inc b/compiler/i8086/i8086atts.inc
index a385a22bfa..c9e9452c45 100644
--- a/compiler/i8086/i8086atts.inc
+++ b/compiler/i8086/i8086atts.inc
@@ -787,6 +787,8 @@ attsufNONE,
attsufNONE,
attsufNONE,
attsufNONE,
+attsufNONE,
+attsufNONE,
attsufINT,
attsufINT,
attsufNONE,
@@ -1137,5 +1139,283 @@ attsufNONE,
attsufNONE,
attsufNONE,
attsufNONE,
-attsufINT
+attsufINT,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE
);
diff --git a/compiler/i8086/i8086int.inc b/compiler/i8086/i8086int.inc
index 5c88388a9c..91bc0d0e01 100644
--- a/compiler/i8086/i8086int.inc
+++ b/compiler/i8086/i8086int.inc
@@ -783,8 +783,10 @@
'vcvtdq2ps',
'vcvtpd2dq',
'vcvtpd2ps',
+'vcvtph2ps',
'vcvtps2dq',
'vcvtps2pd',
+'vcvtps2ph',
'vcvtsd2si',
'vcvtsd2ss',
'vcvtsi2sd',
@@ -1067,66 +1069,66 @@
'set1',
'sub4s',
'test1',
-'vfmadd132pd',
-'vfmadd213pd',
-'vfmadd231pd',
'vfmaddpd',
+'vfmadd132pd',
'vfmadd132ps',
-'vfmadd213ps',
-'vfmadd231ps',
'vfmadd132sd',
-'vfmadd213sd',
-'vfmadd231sd',
'vfmadd132ss',
+'vfmadd213pd',
+'vfmadd213ps',
+'vfmadd213sd',
'vfmadd213ss',
+'vfmadd231pd',
+'vfmadd231ps',
+'vfmadd231sd',
'vfmadd231ss',
'vfmaddsub132pd',
-'vfmaddsub213pd',
-'vfmaddsub231pd',
'vfmaddsub132ps',
+'vfmaddsub213pd',
'vfmaddsub213ps',
+'vfmaddsub231pd',
'vfmaddsub231ps',
-'vfmsubadd132pd',
-'vfmsubadd213pd',
-'vfmsubadd231pd',
-'vfmsubadd132ps',
-'vfmsubadd213ps',
-'vfmsubadd231ps',
'vfmsub132pd',
-'vfmsub213pd',
-'vfmsub231pd',
'vfmsub132ps',
-'vfmsub213ps',
-'vfmsub231ps',
'vfmsub132sd',
-'vfmsub213sd',
-'vfmsub231sd',
'vfmsub132ss',
+'vfmsub213pd',
+'vfmsub213ps',
+'vfmsub213sd',
'vfmsub213ss',
+'vfmsub231pd',
+'vfmsub231ps',
+'vfmsub231sd',
'vfmsub231ss',
+'vfmsubadd132pd',
+'vfmsubadd132ps',
+'vfmsubadd213pd',
+'vfmsubadd213ps',
+'vfmsubadd231pd',
+'vfmsubadd231ps',
'vfnmadd132pd',
-'vfnmadd213pd',
-'vfnmadd231pd',
'vfnmadd132ps',
-'vfnmadd213ps',
-'vfnmadd231ps',
'vfnmadd132sd',
-'vfnmadd213sd',
-'vfnmadd231sd',
'vfnmadd132ss',
+'vfnmadd213pd',
+'vfnmadd213ps',
+'vfnmadd213sd',
'vfnmadd213ss',
+'vfnmadd231pd',
+'vfnmadd231ps',
+'vfnmadd231sd',
'vfnmadd231ss',
'vfnmsub132pd',
-'vfnmsub213pd',
-'vfnmsub231pd',
'vfnmsub132ps',
-'vfnmsub213ps',
-'vfnmsub231ps',
'vfnmsub132sd',
-'vfnmsub213sd',
-'vfnmsub231sd',
'vfnmsub132ss',
+'vfnmsub213pd',
+'vfnmsub213ps',
+'vfnmsub213sd',
'vfnmsub213ss',
+'vfnmsub231pd',
+'vfnmsub231ps',
+'vfnmsub231sd',
'vfnmsub231ss',
'xacquire',
'xrelease',
@@ -1137,5 +1139,283 @@
'rdrand',
'rdseed',
'xgetbv',
-'prefetchwt1'
+'prefetchwt1',
+'kaddb',
+'kaddd',
+'kaddq',
+'kaddw',
+'kandb',
+'kandd',
+'kandnb',
+'kandnd',
+'kandnq',
+'kandnw',
+'kandq',
+'kandw',
+'kmovb',
+'kmovd',
+'kmovq',
+'kmovw',
+'knotb',
+'knotd',
+'knotq',
+'knotw',
+'korb',
+'kord',
+'korq',
+'kortestb',
+'kortestd',
+'kortestq',
+'kortestw',
+'korw',
+'kshiftlb',
+'kshiftld',
+'kshiftlq',
+'kshiftlw',
+'kshiftrb',
+'kshiftrd',
+'kshiftrq',
+'kshiftrw',
+'ktestb',
+'ktestd',
+'ktestq',
+'ktestw',
+'kunpckbw',
+'kunpckdq',
+'kunpckwd',
+'kxnorb',
+'kxnord',
+'kxnorq',
+'kxnorw',
+'kxorb',
+'kxord',
+'kxorq',
+'kxorw',
+'valignd',
+'valignq',
+'vblendmpd',
+'vblendmps',
+'vbroadcastf32x2',
+'vbroadcastf32x4',
+'vbroadcastf32x8',
+'vbroadcastf64x2',
+'vbroadcastf64x4',
+'vbroadcasti32x2',
+'vbroadcasti32x4',
+'vbroadcasti32x8',
+'vbroadcasti64x2',
+'vbroadcasti64x4',
+'vcompresspd',
+'vcompressps',
+'vcvtpd2qq',
+'vcvtpd2udq',
+'vcvtpd2uqq',
+'vcvtps2qq',
+'vcvtps2udq',
+'vcvtps2uqq',
+'vcvtqq2pd',
+'vcvtqq2ps',
+'vcvtsd2usi',
+'vcvtss2usi',
+'vcvttpd2qq',
+'vcvttpd2udq',
+'vcvttpd2uqq',
+'vcvttps2qq',
+'vcvttps2udq',
+'vcvttps2uqq',
+'vcvttsd2usi',
+'vcvttss2usi',
+'vcvtudq2pd',
+'vcvtudq2ps',
+'vcvtuqq2pd',
+'vcvtuqq2ps',
+'vcvtusi2sd',
+'vcvtusi2ss',
+'vdbpsadbw',
+'vexp2pd',
+'vexp2ps',
+'vexpandpd',
+'vexpandps',
+'vextractf32x4',
+'vextractf32x8',
+'vextractf64x2',
+'vextractf64x4',
+'vextracti32x4',
+'vextracti32x8',
+'vextracti64x2',
+'vextracti64x4',
+'vfixupimmpd',
+'vfixupimmps',
+'vfixupimmsd',
+'vfixupimmss',
+'vfpclasspd',
+'vfpclassps',
+'vfpclasssd',
+'vfpclassss',
+'vgetexppd',
+'vgetexpps',
+'vgetexpsd',
+'vgetexpss',
+'vgetmantpd',
+'vgetmantps',
+'vgetmantsd',
+'vgetmantss',
+'vinsertf32x4',
+'vinsertf32x8',
+'vinsertf64x2',
+'vinsertf64x4',
+'vinserti32x4',
+'vinserti32x8',
+'vinserti64x2',
+'vinserti64x4',
+'vmovdqa32',
+'vmovdqa64',
+'vmovdqu16',
+'vmovdqu32',
+'vmovdqu64',
+'vmovdqu8',
+'vpabsq',
+'vpandd',
+'vpandnd',
+'vpandnq',
+'vpandq',
+'vpblendmb',
+'vpblendmd',
+'vpblendmq',
+'vpblendmw',
+'vpcmpb',
+'vpcmpd',
+'vpcmpq',
+'vpcmpub',
+'vpcmpud',
+'vpcmpuq',
+'vpcmpuw',
+'vpcmpw',
+'vpcompressd',
+'vpcompressq',
+'vpconflictd',
+'vpconflictq',
+'vpermb',
+'vpermi2b',
+'vpermi2d',
+'vpermi2pd',
+'vpermi2ps',
+'vpermi2q',
+'vpermi2w',
+'vpermt2b',
+'vpermt2d',
+'vpermt2pd',
+'vpermt2ps',
+'vpermt2q',
+'vpermt2w',
+'vpermw',
+'vpexpandd',
+'vpexpandq',
+'vplzcntd',
+'vplzcntq',
+'vpmadd52huq',
+'vpmadd52luq',
+'vpmaxsq',
+'vpmaxuq',
+'vpminsq',
+'vpminuq',
+'vpmovb2m',
+'vpmovd2m',
+'vpmovdb',
+'vpmovdw',
+'vpmovm2b',
+'vpmovm2d',
+'vpmovm2q',
+'vpmovm2w',
+'vpmovq2m',
+'vpmovqb',
+'vpmovqd',
+'vpmovqw',
+'vpmovsdb',
+'vpmovsdw',
+'vpmovsqb',
+'vpmovsqd',
+'vpmovsqw',
+'vpmovswb',
+'vpmovusdb',
+'vpmovusdw',
+'vpmovusqb',
+'vpmovusqd',
+'vpmovusqw',
+'vpmovuswb',
+'vpmovw2m',
+'vpmovwb',
+'vpmullq',
+'vpmultishiftqb',
+'vpord',
+'vporq',
+'vprold',
+'vprolq',
+'vprolvd',
+'vprolvq',
+'vprord',
+'vprorq',
+'vprorvd',
+'vprorvq',
+'vpscatterdd',
+'vpscatterdq',
+'vpscatterqd',
+'vpscatterqq',
+'vpsllvw',
+'vpsraq',
+'vpsravq',
+'vpsravw',
+'vpsrlvw',
+'vpternlogd',
+'vpternlogq',
+'vptestmb',
+'vptestmd',
+'vptestmq',
+'vptestmw',
+'vptestnmb',
+'vptestnmd',
+'vptestnmq',
+'vptestnmw',
+'vpxord',
+'vpxorq',
+'vrangepd',
+'vrangeps',
+'vrangesd',
+'vrangess',
+'vrcp14pd',
+'vrcp14ps',
+'vrcp14sd',
+'vrcp14ss',
+'vrcp28pd',
+'vrcp28ps',
+'vrcp28sd',
+'vrcp28ss',
+'vreducepd',
+'vreduceps',
+'vreducesd',
+'vreducess',
+'vrndscalepd',
+'vrndscaleps',
+'vrndscalesd',
+'vrndscaless',
+'vrsqrt14pd',
+'vrsqrt14ps',
+'vrsqrt14sd',
+'vrsqrt14ss',
+'vrsqrt28pd',
+'vrsqrt28ps',
+'vrsqrt28sd',
+'vrsqrt28ss',
+'vscalefpd',
+'vscalefps',
+'vscalefsd',
+'vscalefss',
+'vscatterdpd',
+'vscatterdps',
+'vscatterqpd',
+'vscatterqps',
+'vshuff32x4',
+'vshuff64x2',
+'vshufi32x4',
+'vshufi64x2'
);
diff --git a/compiler/i8086/i8086nop.inc b/compiler/i8086/i8086nop.inc
index f28d4148bf..9aa9566158 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 }
-2161;
+4085;
diff --git a/compiler/i8086/i8086op.inc b/compiler/i8086/i8086op.inc
index ffb3e99899..2b7c19d66f 100644
--- a/compiler/i8086/i8086op.inc
+++ b/compiler/i8086/i8086op.inc
@@ -783,8 +783,10 @@ A_VCVTDQ2PD,
A_VCVTDQ2PS,
A_VCVTPD2DQ,
A_VCVTPD2PS,
+A_VCVTPH2PS,
A_VCVTPS2DQ,
A_VCVTPS2PD,
+A_VCVTPS2PH,
A_VCVTSD2SI,
A_VCVTSD2SS,
A_VCVTSI2SD,
@@ -1067,66 +1069,66 @@ A_ROR4,
A_SET1,
A_SUB4S,
A_TEST1,
-A_VFMADD132PD,
-A_VFMADD213PD,
-A_VFMADD231PD,
A_VFMADDPD,
+A_VFMADD132PD,
A_VFMADD132PS,
-A_VFMADD213PS,
-A_VFMADD231PS,
A_VFMADD132SD,
-A_VFMADD213SD,
-A_VFMADD231SD,
A_VFMADD132SS,
+A_VFMADD213PD,
+A_VFMADD213PS,
+A_VFMADD213SD,
A_VFMADD213SS,
+A_VFMADD231PD,
+A_VFMADD231PS,
+A_VFMADD231SD,
A_VFMADD231SS,
A_VFMADDSUB132PD,
-A_VFMADDSUB213PD,
-A_VFMADDSUB231PD,
A_VFMADDSUB132PS,
+A_VFMADDSUB213PD,
A_VFMADDSUB213PS,
+A_VFMADDSUB231PD,
A_VFMADDSUB231PS,
-A_VFMSUBADD132PD,
-A_VFMSUBADD213PD,
-A_VFMSUBADD231PD,
-A_VFMSUBADD132PS,
-A_VFMSUBADD213PS,
-A_VFMSUBADD231PS,
A_VFMSUB132PD,
-A_VFMSUB213PD,
-A_VFMSUB231PD,
A_VFMSUB132PS,
-A_VFMSUB213PS,
-A_VFMSUB231PS,
A_VFMSUB132SD,
-A_VFMSUB213SD,
-A_VFMSUB231SD,
A_VFMSUB132SS,
+A_VFMSUB213PD,
+A_VFMSUB213PS,
+A_VFMSUB213SD,
A_VFMSUB213SS,
+A_VFMSUB231PD,
+A_VFMSUB231PS,
+A_VFMSUB231SD,
A_VFMSUB231SS,
+A_VFMSUBADD132PD,
+A_VFMSUBADD132PS,
+A_VFMSUBADD213PD,
+A_VFMSUBADD213PS,
+A_VFMSUBADD231PD,
+A_VFMSUBADD231PS,
A_VFNMADD132PD,
-A_VFNMADD213PD,
-A_VFNMADD231PD,
A_VFNMADD132PS,
-A_VFNMADD213PS,
-A_VFNMADD231PS,
A_VFNMADD132SD,
-A_VFNMADD213SD,
-A_VFNMADD231SD,
A_VFNMADD132SS,
+A_VFNMADD213PD,
+A_VFNMADD213PS,
+A_VFNMADD213SD,
A_VFNMADD213SS,
+A_VFNMADD231PD,
+A_VFNMADD231PS,
+A_VFNMADD231SD,
A_VFNMADD231SS,
A_VFNMSUB132PD,
-A_VFNMSUB213PD,
-A_VFNMSUB231PD,
A_VFNMSUB132PS,
-A_VFNMSUB213PS,
-A_VFNMSUB231PS,
A_VFNMSUB132SD,
-A_VFNMSUB213SD,
-A_VFNMSUB231SD,
A_VFNMSUB132SS,
+A_VFNMSUB213PD,
+A_VFNMSUB213PS,
+A_VFNMSUB213SD,
A_VFNMSUB213SS,
+A_VFNMSUB231PD,
+A_VFNMSUB231PS,
+A_VFNMSUB231SD,
A_VFNMSUB231SS,
A_XACQUIRE,
A_XRELEASE,
@@ -1137,5 +1139,283 @@ A_XTEST,
A_RDRAND,
A_RDSEED,
A_XGETBV,
-A_PREFETCHWT1
+A_PREFETCHWT1,
+A_KADDB,
+A_KADDD,
+A_KADDQ,
+A_KADDW,
+A_KANDB,
+A_KANDD,
+A_KANDNB,
+A_KANDND,
+A_KANDNQ,
+A_KANDNW,
+A_KANDQ,
+A_KANDW,
+A_KMOVB,
+A_KMOVD,
+A_KMOVQ,
+A_KMOVW,
+A_KNOTB,
+A_KNOTD,
+A_KNOTQ,
+A_KNOTW,
+A_KORB,
+A_KORD,
+A_KORQ,
+A_KORTESTB,
+A_KORTESTD,
+A_KORTESTQ,
+A_KORTESTW,
+A_KORW,
+A_KSHIFTLB,
+A_KSHIFTLD,
+A_KSHIFTLQ,
+A_KSHIFTLW,
+A_KSHIFTRB,
+A_KSHIFTRD,
+A_KSHIFTRQ,
+A_KSHIFTRW,
+A_KTESTB,
+A_KTESTD,
+A_KTESTQ,
+A_KTESTW,
+A_KUNPCKBW,
+A_KUNPCKDQ,
+A_KUNPCKWD,
+A_KXNORB,
+A_KXNORD,
+A_KXNORQ,
+A_KXNORW,
+A_KXORB,
+A_KXORD,
+A_KXORQ,
+A_KXORW,
+A_VALIGND,
+A_VALIGNQ,
+A_VBLENDMPD,
+A_VBLENDMPS,
+A_VBROADCASTF32X2,
+A_VBROADCASTF32X4,
+A_VBROADCASTF32X8,
+A_VBROADCASTF64X2,
+A_VBROADCASTF64X4,
+A_VBROADCASTI32X2,
+A_VBROADCASTI32X4,
+A_VBROADCASTI32X8,
+A_VBROADCASTI64X2,
+A_VBROADCASTI64X4,
+A_VCOMPRESSPD,
+A_VCOMPRESSPS,
+A_VCVTPD2QQ,
+A_VCVTPD2UDQ,
+A_VCVTPD2UQQ,
+A_VCVTPS2QQ,
+A_VCVTPS2UDQ,
+A_VCVTPS2UQQ,
+A_VCVTQQ2PD,
+A_VCVTQQ2PS,
+A_VCVTSD2USI,
+A_VCVTSS2USI,
+A_VCVTTPD2QQ,
+A_VCVTTPD2UDQ,
+A_VCVTTPD2UQQ,
+A_VCVTTPS2QQ,
+A_VCVTTPS2UDQ,
+A_VCVTTPS2UQQ,
+A_VCVTTSD2USI,
+A_VCVTTSS2USI,
+A_VCVTUDQ2PD,
+A_VCVTUDQ2PS,
+A_VCVTUQQ2PD,
+A_VCVTUQQ2PS,
+A_VCVTUSI2SD,
+A_VCVTUSI2SS,
+A_VDBPSADBW,
+A_VEXP2PD,
+A_VEXP2PS,
+A_VEXPANDPD,
+A_VEXPANDPS,
+A_VEXTRACTF32X4,
+A_VEXTRACTF32X8,
+A_VEXTRACTF64X2,
+A_VEXTRACTF64X4,
+A_VEXTRACTI32X4,
+A_VEXTRACTI32X8,
+A_VEXTRACTI64X2,
+A_VEXTRACTI64X4,
+A_VFIXUPIMMPD,
+A_VFIXUPIMMPS,
+A_VFIXUPIMMSD,
+A_VFIXUPIMMSS,
+A_VFPCLASSPD,
+A_VFPCLASSPS,
+A_VFPCLASSSD,
+A_VFPCLASSSS,
+A_VGETEXPPD,
+A_VGETEXPPS,
+A_VGETEXPSD,
+A_VGETEXPSS,
+A_VGETMANTPD,
+A_VGETMANTPS,
+A_VGETMANTSD,
+A_VGETMANTSS,
+A_VINSERTF32X4,
+A_VINSERTF32X8,
+A_VINSERTF64X2,
+A_VINSERTF64X4,
+A_VINSERTI32X4,
+A_VINSERTI32X8,
+A_VINSERTI64X2,
+A_VINSERTI64X4,
+A_VMOVDQA32,
+A_VMOVDQA64,
+A_VMOVDQU16,
+A_VMOVDQU32,
+A_VMOVDQU64,
+A_VMOVDQU8,
+A_VPABSQ,
+A_VPANDD,
+A_VPANDND,
+A_VPANDNQ,
+A_VPANDQ,
+A_VPBLENDMB,
+A_VPBLENDMD,
+A_VPBLENDMQ,
+A_VPBLENDMW,
+A_VPCMPB,
+A_VPCMPD,
+A_VPCMPQ,
+A_VPCMPUB,
+A_VPCMPUD,
+A_VPCMPUQ,
+A_VPCMPUW,
+A_VPCMPW,
+A_VPCOMPRESSD,
+A_VPCOMPRESSQ,
+A_VPCONFLICTD,
+A_VPCONFLICTQ,
+A_VPERMB,
+A_VPERMI2B,
+A_VPERMI2D,
+A_VPERMI2PD,
+A_VPERMI2PS,
+A_VPERMI2Q,
+A_VPERMI2W,
+A_VPERMT2B,
+A_VPERMT2D,
+A_VPERMT2PD,
+A_VPERMT2PS,
+A_VPERMT2Q,
+A_VPERMT2W,
+A_VPERMW,
+A_VPEXPANDD,
+A_VPEXPANDQ,
+A_VPLZCNTD,
+A_VPLZCNTQ,
+A_VPMADD52HUQ,
+A_VPMADD52LUQ,
+A_VPMAXSQ,
+A_VPMAXUQ,
+A_VPMINSQ,
+A_VPMINUQ,
+A_VPMOVB2M,
+A_VPMOVD2M,
+A_VPMOVDB,
+A_VPMOVDW,
+A_VPMOVM2B,
+A_VPMOVM2D,
+A_VPMOVM2Q,
+A_VPMOVM2W,
+A_VPMOVQ2M,
+A_VPMOVQB,
+A_VPMOVQD,
+A_VPMOVQW,
+A_VPMOVSDB,
+A_VPMOVSDW,
+A_VPMOVSQB,
+A_VPMOVSQD,
+A_VPMOVSQW,
+A_VPMOVSWB,
+A_VPMOVUSDB,
+A_VPMOVUSDW,
+A_VPMOVUSQB,
+A_VPMOVUSQD,
+A_VPMOVUSQW,
+A_VPMOVUSWB,
+A_VPMOVW2M,
+A_VPMOVWB,
+A_VPMULLQ,
+A_VPMULTISHIFTQB,
+A_VPORD,
+A_VPORQ,
+A_VPROLD,
+A_VPROLQ,
+A_VPROLVD,
+A_VPROLVQ,
+A_VPRORD,
+A_VPRORQ,
+A_VPRORVD,
+A_VPRORVQ,
+A_VPSCATTERDD,
+A_VPSCATTERDQ,
+A_VPSCATTERQD,
+A_VPSCATTERQQ,
+A_VPSLLVW,
+A_VPSRAQ,
+A_VPSRAVQ,
+A_VPSRAVW,
+A_VPSRLVW,
+A_VPTERNLOGD,
+A_VPTERNLOGQ,
+A_VPTESTMB,
+A_VPTESTMD,
+A_VPTESTMQ,
+A_VPTESTMW,
+A_VPTESTNMB,
+A_VPTESTNMD,
+A_VPTESTNMQ,
+A_VPTESTNMW,
+A_VPXORD,
+A_VPXORQ,
+A_VRANGEPD,
+A_VRANGEPS,
+A_VRANGESD,
+A_VRANGESS,
+A_VRCP14PD,
+A_VRCP14PS,
+A_VRCP14SD,
+A_VRCP14SS,
+A_VRCP28PD,
+A_VRCP28PS,
+A_VRCP28SD,
+A_VRCP28SS,
+A_VREDUCEPD,
+A_VREDUCEPS,
+A_VREDUCESD,
+A_VREDUCESS,
+A_VRNDSCALEPD,
+A_VRNDSCALEPS,
+A_VRNDSCALESD,
+A_VRNDSCALESS,
+A_VRSQRT14PD,
+A_VRSQRT14PS,
+A_VRSQRT14SD,
+A_VRSQRT14SS,
+A_VRSQRT28PD,
+A_VRSQRT28PS,
+A_VRSQRT28SD,
+A_VRSQRT28SS,
+A_VSCALEFPD,
+A_VSCALEFPS,
+A_VSCALEFSD,
+A_VSCALEFSS,
+A_VSCATTERDPD,
+A_VSCATTERDPS,
+A_VSCATTERQPD,
+A_VSCATTERQPS,
+A_VSHUFF32X4,
+A_VSHUFF64X2,
+A_VSHUFI32X4,
+A_VSHUFI64X2
);
diff --git a/compiler/i8086/i8086prop.inc b/compiler/i8086/i8086prop.inc
index e813e0155e..073d140269 100644
--- a/compiler/i8086/i8086prop.inc
+++ b/compiler/i8086/i8086prop.inc
@@ -787,6 +787,8 @@
(Ch: [Ch_Wop2, Ch_Rop1]),
(Ch: [Ch_Wop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
@@ -876,7 +878,7 @@
(Ch: [Ch_All]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
-(Ch: [Ch_All]),
+(Ch: [Ch_All, Ch_None]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
@@ -1137,5 +1139,283 @@
(Ch: [Ch_Wop1, Ch_WFlags]),
(Ch: [Ch_Wop1, Ch_WFlags]),
(Ch: [Ch_WEAX, Ch_WEDX, Ch_RECX]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
(Ch: [Ch_All])
);
diff --git a/compiler/i8086/i8086tab.inc b/compiler/i8086/i8086tab.inc
index 17cee9e248..f17b030ca8 100644
--- a/compiler/i8086/i8086tab.inc
+++ b/compiler/i8086/i8086tab.inc
@@ -8760,57 +8760,127 @@
(
opcode : A_VADDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VADDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VADDPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VADDPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VADDSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VADDSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#88#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VADDSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VADDSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#88#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge]
),
(
@@ -8845,29 +8915,29 @@
opcode : A_VAESDEC;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#222#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#222#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESDECLAST;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#223#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#223#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESENC;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#220#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#220#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESENCLAST;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#221#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#221#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESIMC;
@@ -8886,58 +8956,170 @@
(
opcode : A_VANDNPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDNPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDNPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDNPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VBLENDPD;
@@ -9005,46 +9187,74 @@
(
opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#25#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#25#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#25#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#25#72;
flags : [if_avx2]
),
(
- opcode : A_VBROADCASTSS;
+ opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#24#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#25#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#25#72;
+ flags : [if_avx512]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#24#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#24#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#24#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#24#72;
flags : [if_avx2]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#24#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#24#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#24#72;
flags : [if_avx2]
),
(
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#233#241#249#1#24#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#24#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCMPEQPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
@@ -9943,6 +10153,55 @@
(
opcode : A_VCMPPD;
ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
code : #241#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
@@ -9957,6 +10216,55 @@
(
opcode : A_VCMPPS;
ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
code : #242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
@@ -9971,28 +10279,56 @@
(
opcode : A_VCMPSD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ optypes : (ot_kreg_m,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #220#232#234#248#1#194#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCMPSD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #220#232#234#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPSD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
code : #220#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCMPSD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
code : #220#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);
+ optypes : (ot_kreg_m,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #219#232#248#1#194#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCMPSS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #219#232#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ 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_xmmreg,ot_immediate or ot_bits8);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
code : #219#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
@@ -10000,371 +10336,882 @@
opcode : A_VCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#248#1#47#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#47#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCOMISD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#47#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#234#241#242#248#1#47#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #242#248#1#47#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#47#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCOMISS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#47#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#242#248#1#47#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #219#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #219#232#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#248#1#230#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #219#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#230#72;
+ flags : [if_avx512,if_bcst2,if_thv]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits128,ot_none,ot_none);
- code : #219#242#244#248#1#230#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #219#232#242#244#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge]
),
(
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
opcode : A_VCVTDQ2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTDQ2PS;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_ymmrm,ot_none,ot_none);
- code : #220#242#244#248#1#230#72;
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#234#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#242#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);
+ 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_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#90#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#90#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#90#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#90#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#90#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#19#72;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#19#72;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#242#244#249#1#19#72;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#19#72;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#19#72;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#19#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#91#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,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]
),
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#91#72;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #242#248#1#90#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#242#248#1#90#72;
+ flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#242#248#1#90#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#244#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#90#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#29#65#22;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#29#65#22;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#29#65#22;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#29#65#22;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#29#65#22;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#29#65#22;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTSD2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#242#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#45#72;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#242#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#243#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#234#242#243#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#243#248#1#45#72;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#234#242#243#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSD2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#90#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#90#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCVTSD2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#90#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#90#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSI2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
- code : #220#242#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
+ code : #220#232#242#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_sd]
),
(
+ opcode : A_VCVTSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #220#232#242#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_sd,if_t1s]
+ ),
+ (
opcode : A_VCVTSI2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
- code : #219#242#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
+ code : #219#232#242#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_sd]
),
(
- opcode : A_VCVTSS2SD;
+ opcode : A_VCVTSI2SS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#90#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_sd,if_t1s]
),
(
opcode : A_VCVTSS2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#90#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#90#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VCVTSS2SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#90#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#45#72;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#242#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#243#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#243#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #219#242#243#248#1#45#72;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#234#242#243#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_avx512,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#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_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#230#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#242#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#44#72;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#242#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#243#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#234#242#243#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#243#248#1#44#72;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#234#242#243#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#44#72;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#242#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#243#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#243#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #219#242#243#248#1#44#72;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#234#242#243#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VDIVPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VDIVPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VDIVPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VDIVPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VDIVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VDIVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#94#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#94#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VDIVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VDIVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#94#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#94#61#80;
flags : [if_avx,if_sandybridge]
),
(
@@ -10398,11 +11245,25 @@
(
opcode : A_VEXTRACTPS;
ops : 3;
- optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#23#65#22;
+ optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#23#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VEXTRACTPS;
+ ops : 3;
+ optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#23#65#22;
flags : [if_avx,if_sandybridge]
),
(
+ opcode : A_VEXTRACTPS;
+ ops : 3;
+ optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#23#65#22;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VHADDPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
@@ -10469,14 +11330,14 @@
opcode : A_VINSERTPS;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
- code : #241#242#250#1#33#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#33#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VINSERTPS;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
- code : #241#242#250#1#33#61#80#23;
+ code : #232#241#242#250#1#33#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
@@ -10566,205 +11427,464 @@
(
opcode : A_VMAXPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMAXPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VMAXPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMAXPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#95#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #220#232#234#242#248#1#95#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMAXSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMAXSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#95#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#95#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMINPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMINPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMINPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMINPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#93#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #220#232#234#242#248#1#93#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMINSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMINSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#93#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#93#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#40#72;
+ optypes : (ot_mem128_m,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);
+ 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);
+ 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);
+ 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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#41#65;
+ 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,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#40#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#41#65;
+ 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);
+ 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_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#41#65;
+ optypes : (ot_mem256_m,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);
+ 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);
+ 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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#40#72;
+ 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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#41#65;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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_VMOVD;
+ opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
- code : #241#242#248#1#110#72;
+ 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);
+ 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);
- code : #241#242#248#1#126#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#126#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VMOVD;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#248#1#110#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #220#242#244#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#242#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tmddup]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#18#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#242#248#1#18#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#234#242#244#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tmddup]
+ ),
+ (
+ opcode : A_VMOVDDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#234#248#1#18#72;
+ flags : [if_avx512,if_tmddup]
),
(
opcode : A_VMOVDQA;
@@ -10826,71 +11946,71 @@
opcode : A_VMOVHLPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #242#248#1#18#61#80;
+ code : #232#242#248#1#18#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVHPD;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#23#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#23#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVHPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#248#1#22#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#22#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVHPS;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #242#248#1#22#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
+ code : #232#242#248#1#23#65;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVHPS;
- ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#23#65;
- flags : [if_avx,if_sandybridge]
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#242#248#1#22#61#80;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVLHPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #242#248#1#22#61#80;
+ code : #232#242#248#1#22#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVLPD;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#19#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#19#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVLPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#248#1#18#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#18#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVLPS;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#19#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#19#65;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVLPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #242#248#1#18#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#18#61#80;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVMSKPD;
@@ -10952,227 +12072,339 @@
opcode : A_VMOVNTDQ;
ops : 2;
optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#231#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#231#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTDQ;
ops : 2;
optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#231#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#244#248#1#231#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTDQ;
+ ops : 2;
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#248#1#231#65;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVNTDQA;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_none,ot_none);
- code : #241#242#249#1#42#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#42#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTDQA;
ops : 2;
optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_none,ot_none);
- code : #241#242#244#249#1#42#72;
- flags : [if_avx2]
+ code : #232#241#242#244#249#1#42#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTDQA;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#42#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTPD;
+ ops : 2;
+ optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPD;
ops : 2;
optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#244#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPD;
ops : 2;
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#248#1#43#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTPS;
+ ops : 2;
optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPS;
ops : 2;
- optypes : (ot_memory or ot_bits128,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
+ code : #232#242#244#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPS;
ops : 2;
- optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#248#1#43#65;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#219#248#1#126#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#214#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #242#219#248#1#126#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#248#1#126#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#241#248#1#214#65;
+ code : #219#232#234#242#248#1#126#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#241#248#1#214#65;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#214#65;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSD;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#16#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#242#248#1#17#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#17#61#66;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #220#232#234#242#248#1#17#61#66;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSD;
- ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#17#65;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #220#232#234#242#248#1#16#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSHDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#22#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#22#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVSHDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#22#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#22#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVSHDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#22#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVSLDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVSLDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVSLDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#18#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVSS;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#16#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#248#1#17#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSS;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#17#61#66;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #219#232#242#248#1#17#61#66;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSS;
- ops : 2;
- optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#17#65;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #219#232#242#248#1#16#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem256_m,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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#16#72;
+ optypes : (ot_mem512_m,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#17#65;
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem256_m,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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#16#72;
+ optypes : (ot_mem512_m,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#17#65;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
opcode : A_VMPSADBW;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
@@ -11189,303 +12421,653 @@
(
opcode : A_VMULPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMULPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMULPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMULPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMULSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMULSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#89#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#89#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMULSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMULSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#89#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#89#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VORPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VORPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VORPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPABSB;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#28#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#28#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPABSB;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#28#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#28#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#28#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPABSD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#30#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#30#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPABSD;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#30#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#30#72;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPABSW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#29#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#29#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPABSW;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#29#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#29#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#29#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPACKSSDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#107#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#107#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPACKSSDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#107#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#107#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPACKSSWB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#99#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#99#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPACKSSWB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#99#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#99#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPACKSSWB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#99#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPACKUSDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#43#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#43#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPACKUSDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#43#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#43#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPACKUSWB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#103#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#103#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPACKUSWB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#103#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#103#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPACKUSWB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#103#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#252#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#252#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#252#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#252#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#252#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#254#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#254#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPADDD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#254#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#254#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPADDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#212#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#212#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPADDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#212#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#212#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPADDSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#236#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#236#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#236#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#236#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#236#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#237#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#237#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#237#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#237#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#237#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDUSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#220#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#220#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDUSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#220#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#220#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDUSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#220#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDUSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#221#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#221#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDUSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#221#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#221#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDUSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#221#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#253#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#253#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#253#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#253#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#253#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPALIGNR;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#250#1#15#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#242#250#1#15#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPALIGNR;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #241#242#244#250#1#15#61#80#23;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#242#244#250#1#15#61#80#23;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPALIGNR;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#15#61#80#23;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPAND;
@@ -11518,30 +13100,44 @@
(
opcode : A_VPAVGB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#224#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#224#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPAVGB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#224#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#224#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPAVGB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#224#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPAVGW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#227#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#227#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPAVGW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#227#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#227#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPAVGW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#227#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPBLENDVB;
@@ -11575,8 +13171,43 @@
opcode : A_VPCLMULQDQ;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#250#1#68#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#68#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPCLMULQDQ;
+ ops : 4;
+ optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#68#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCLMULQDQ;
+ ops : 4;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#68#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPCMPEQB;
@@ -11595,6 +13226,48 @@
(
opcode : A_VPCMPEQD;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#118#61#80;
flags : [if_avx,if_sandybridge]
@@ -11609,6 +13282,48 @@
(
opcode : A_VPCMPEQQ;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#249#1#41#61#80;
flags : [if_avx,if_sandybridge]
@@ -11623,6 +13338,27 @@
(
opcode : A_VPCMPEQW;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#117#61#80;
flags : [if_avx,if_sandybridge]
@@ -11651,6 +13387,27 @@
(
opcode : A_VPCMPGTB;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#100#61#80;
flags : [if_avx,if_sandybridge]
@@ -11665,6 +13422,48 @@
(
opcode : A_VPCMPGTD;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#102#61#80;
flags : [if_avx,if_sandybridge]
@@ -11679,6 +13478,48 @@
(
opcode : A_VPCMPGTQ;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#249#1#55#61#80;
flags : [if_avx,if_sandybridge]
@@ -11693,6 +13534,27 @@
(
opcode : A_VPCMPGTW;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#101#61#80;
flags : [if_avx,if_sandybridge]
@@ -11728,127 +13590,267 @@
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#13#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#249#1#13#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#5#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#250#1#5#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#250#1#5#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#13#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#249#1#13#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#250#1#5#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#12#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#12#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#4#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#250#1#4#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#4#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#12#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#12#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#4#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPEXTRB;
+ ops : 3;
+ optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#20#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRB;
+ ops : 3;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#20#65#22;
+ flags : [if_avx512]
),
(
opcode : A_VPEXTRB;
ops : 3;
optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
+ code : #232#241#242#250#1#20#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRB;
ops : 3;
optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
+ code : #232#241#242#250#1#20#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRB;
ops : 3;
- optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_reg8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#20#65#22;
+ flags : [if_avx512]
),
(
opcode : A_VPEXTRD;
ops : 3;
optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#22#65#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#22#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPEXTRQ;
ops : 3;
optypes : (ot_rm_gpr or ot_bits64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#250#1#22#65#22;
+ code : #232#234#241#242#243#250#1#22#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRW;
+ ops : 3;
+ optypes : (ot_memory or ot_bits16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#21#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRW;
+ ops : 3;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#197#72#22;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#197#72#22;
+ optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_memory or ot_bits16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
@@ -11946,239 +13948,421 @@
opcode : A_VPINSRB;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
- code : #241#242#250#1#32#61#80#23;
+ code : #232#241#242#250#1#32#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPINSRB;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits8,ot_immediate or ot_bits8);
- code : #241#242#250#1#32#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#32#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRD;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_immediate or ot_bits8);
- code : #241#242#250#1#34#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#34#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRQ;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits64,ot_immediate or ot_bits8);
- code : #241#242#243#250#1#34#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#243#250#1#34#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRW;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
- code : #241#242#248#1#196#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits16,ot_immediate or ot_bits8);
+ code : #232#241#242#248#1#196#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRW;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits16,ot_immediate or ot_bits8);
- code : #241#242#248#1#196#61#80#23;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
+ code : #232#241#242#248#1#196#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMADDUBSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#4#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#4#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMADDUBSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#4#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#4#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMADDUBSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#4#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMADDWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#245#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#245#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMADDWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#245#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#245#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMADDWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#245#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#60#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#60#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#60#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#60#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#60#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#61#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#61#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMAXSD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#61#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#61#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMAXSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#238#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#238#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#238#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#238#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#238#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXUB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#222#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#222#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXUB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#222#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#222#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXUB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#222#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXUD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#63#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#63#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMAXUD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#63#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#63#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMAXUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#62#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#62#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#62#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#62#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#62#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#56#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#56#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#56#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#56#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#56#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#57#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#57#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMINSD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#57#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#57#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMINSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#234#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#234#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#234#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#234#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#234#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINUB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#218#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#218#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINUB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#218#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#218#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINUB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#218#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINUD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#59#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#59#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMINUD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#59#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#59#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMINUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#58#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#58#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#58#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#58#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#58#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMOVMSKB;
@@ -12211,394 +14395,716 @@
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#33#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#33#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#33#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#33#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#33#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#33#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#33#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#33#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#33#72;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#33#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#34#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#34#72;
+ flags : [if_avx,if_sandybridge,if_tovm]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#34#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#34#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#34#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#34#72;
+ flags : [if_avx2,if_tovm]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#34#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#34#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#34#72;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#34#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#32#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#32#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#32#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#32#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#32#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#37#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#37#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#37#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#37#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#37#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#35#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#35#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#35#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#35#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#35#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#36#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#36#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#36#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#36#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#36#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#36#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#36#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#36#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#49#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#49#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#49#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#49#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#49#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#49#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#49#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#49#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,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,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#50#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#50#72;
+ flags : [if_avx,if_sandybridge,if_tovm]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#50#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#50#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#50#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#50#72;
+ flags : [if_avx2,if_tovm]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#50#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#50#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#50#72;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVZXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#50#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#48#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#48#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#48#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#48#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#48#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#53#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#53#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#53#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#53#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#53#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#51#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#51#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#51#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#51#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#51#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#52#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#52#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#52#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#52#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#52#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#52#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#52#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#52#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#52#72;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVZXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#52#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMULDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#40#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#249#1#40#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#40#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#249#1#40#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMULHRSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#11#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#11#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHRSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#11#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#11#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHRSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#11#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULHUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#228#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#228#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#228#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#228#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#228#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULHW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#229#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#229#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#229#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#229#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#229#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#64#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#64#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#64#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#64#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMULLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#213#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#213#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#213#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#213#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#213#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULUDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#244#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#244#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULUDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#244#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#244#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPOR;
@@ -12618,71 +15124,127 @@
opcode : A_VPSADBW;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#246#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#246#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSADBW;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#246#61#80;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#246#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSADBW;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#246#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#0#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#0#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#0#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#0#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#0#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSHUFD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSHUFHW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #219#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFHW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #219#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFHW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#233#248#1#112#72#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #220#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #220#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#233#248#1#112#72#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSIGNB;
@@ -12729,366 +15291,730 @@
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#242#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#242#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#242#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#142#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#242#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#242#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#143#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#115#60#143#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLDQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#143#22;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#115#60#143#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#243#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#243#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#248#1#115#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#243#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#244#248#1#243#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#248#1#115#60#142#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#243#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#241#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#241#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#241#61#80;
+ flags : [if_avx2,if_tmem128]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#241#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#142#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#241#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#142#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#140#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#140#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#226#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#140#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#226#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#226#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#140#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#226#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#140#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#140#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#225#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#225#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#140#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#140#22;
+ flags : [if_avx2,if_tfvm]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#225#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#225#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#225#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#140#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#210#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#210#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#210#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#210#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#138#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#210#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#139#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#115#60#139#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLDQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#139#22;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#115#60#139#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#211#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#211#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#248#1#115#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#211#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#248#1#115#60#138#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#244#248#1#211#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#211#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#209#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#209#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#138#22;
+ flags : [if_avx2,if_tfvm]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#209#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#209#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#209#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#138#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#248#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#248#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#248#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#248#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#248#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#250#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#250#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSUBD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#250#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#250#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSUBQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#251#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#251#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSUBQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#251#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#251#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSUBSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#232#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#232#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#232#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#232#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#232#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#233#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#233#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#233#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#233#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#233#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBUSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#216#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#216#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBUSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#216#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#216#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBUSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#216#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBUSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#217#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#217#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBUSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#217#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#217#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBUSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#217#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#249#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#249#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#249#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#249#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#249#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPTEST;
@@ -13107,114 +16033,254 @@
(
opcode : A_VPUNPCKHBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#104#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#104#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKHBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#104#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#104#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKHBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#104#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKHDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#106#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#106#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKHDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#106#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#106#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKHQDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#109#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#109#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKHQDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#109#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#109#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKHWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#105#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#105#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKHWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#105#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#105#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKHWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#105#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKLBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#96#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#96#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKLBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#96#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#96#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKLBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#96#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKLDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#98#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#98#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKLDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#98#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#98#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKLQDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#108#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#108#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKLQDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#108#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#108#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKLWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#97#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#97#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKLWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#97#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#97#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKLWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#97#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPXOR;
@@ -13345,86 +16411,212 @@
(
opcode : A_VSHUFPD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#242#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSHUFPD;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #241#242#244#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#242#244#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSHUFPS;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #242#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#242#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSHUFPS;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #242#244#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#242#244#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#244#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSQRTPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#242#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSQRTPD;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512]
),
(
opcode : A_VSQRTPS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSQRTPS;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#242#244#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512]
),
(
opcode : A_VSQRTSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#81#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#81#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSQRTSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#81#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#81#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSQRTSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#81#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#81#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSQRTSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#81#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#81#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSTMXCSR;
@@ -13436,58 +16628,128 @@
(
opcode : A_VSUBPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSUBPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSUBPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSUBPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VSUBSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSUBSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSUBSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#92#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#92#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSUBSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VTESTPD;
@@ -13521,113 +16783,281 @@
opcode : A_VUCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#248#1#46#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#46#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VUCOMISD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#46#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#234#241#242#248#1#46#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VUCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #242#248#1#46#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#46#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VUCOMISS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#46#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#242#248#1#46#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VUNPCKHPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKHPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKHPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKHPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKLPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKLPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKLPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKLPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VXORPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VXORPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VXORPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VXORPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VZEROALL;
@@ -13793,116 +17223,361 @@
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#120#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#241#242#249#1#120#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#120#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#120#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits8,ot_none,ot_none);
- code : #241#242#249#1#120#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#241#242#244#249#1#120#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits8,ot_none,ot_none);
- code : #241#242#244#249#1#120#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#120#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#233#241#249#1#120#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#88#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#88#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#88#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#88#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#88#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#88#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#88#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#88#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#233#241#249#1#88#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#88#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#89#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#249#1#89#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#89#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#249#1#89#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#89#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#234#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#89#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#89#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#89#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#89#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#121#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#121#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#121#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#121#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#244#249#1#121#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#121#72;
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#244#249#1#121#72;
+ flags : [if_avx2,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#121#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#233#241#249#1#121#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPERM2I128;
ops : 4;
optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
@@ -13912,30 +17587,177 @@
(
opcode : A_VPERMD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#54#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#54#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#244#250#1#1#72#22;
- flags : [if_avx2]
+ 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);
+ 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_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#1#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#22#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#22#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#244#250#1#0#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#243#244#250#1#0#72#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#0#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMASKMOVD;
@@ -13996,88 +17818,249 @@
(
opcode : A_VPSLLVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSLLVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLVQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#243#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSLLVQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#243#244#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#70#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#70#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRAVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#70#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#70#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRLVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLVQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#243#244#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRLVQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#243#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VGATHERDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
+ optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
code : #241#242#243#249#1#146#62#72;
flags : [if_avx2]
),
(
opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#234#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_xmem64,ot_ymmreg,ot_none);
+ optypes : (ot_ymmreg,ot_xmem32,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#146#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#234#241#244#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#233#234#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERDPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14086,12 +18069,33 @@
),
(
opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPS;
ops : 3;
optypes : (ot_ymmreg,ot_ymem32,ot_ymmreg,ot_none);
code : #241#242#244#249#1#146#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERQPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14100,12 +18104,33 @@
),
(
opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPD;
ops : 3;
optypes : (ot_ymmreg,ot_ymem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#147#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERQPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14120,6 +18145,27 @@
flags : [if_avx2]
),
(
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERDD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14128,12 +18174,33 @@
),
(
opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDD;
ops : 3;
optypes : (ot_ymmreg,ot_ymem32,ot_ymmreg,ot_none);
code : #241#242#244#249#1#144#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14142,12 +18209,33 @@
),
(
opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDQ;
ops : 3;
optypes : (ot_ymmreg,ot_xmem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#144#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERQD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14162,6 +18250,27 @@
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERQQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14170,12 +18279,33 @@
),
(
opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#145#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_ADD4S;
ops : 0;
optypes : (ot_none,ot_none,ot_none,ot_none);
@@ -14372,690 +18502,2118 @@
flags : [if_nec,if_sw,if_imm4,if_16bitonly]
),
(
+ opcode : A_VFMADDPD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_xmmreg);
+ code : #241#242#250#1#105#61#80#247;
+ flags : [if_fma4]
+ ),
+ (
+ opcode : A_VFMADDPD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_xmmrm);
+ code : #241#242#250#243#1#105#61#88#246;
+ flags : [if_fma4]
+ ),
+ (
opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD213PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD213PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDPD;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_xmmreg);
- code : #241#242#250#1#105#61#80#247;
- flags : [if_fma4]
+ opcode : A_VFMADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMADDPD;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_xmmrm);
- code : #241#242#250#243#1#105#61#88#246;
- flags : [if_fma4]
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADD132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADD132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#152#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#153#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMADD213PS;
+ opcode : A_VFMADD132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#168#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#153#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD231PS;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PS;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD132SD;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#153#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#169#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#169#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFMADD231SD;
+ opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#169#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMADD132SS;
+ opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#169#61#80;
flags : [if_fma]
),
(
opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#169#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#185#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMADD231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#185#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB213PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADDSUB213PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFMADDSUB132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PS;
+ opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD132PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD132PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD213PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD213PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUBADD132PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD132PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD213PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD213PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUBADD231PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#154#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#155#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMSUB132PD;
+ opcode : A_VFMSUB132SD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#154#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB132SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#155#61#80;
flags : [if_fma]
),
(
opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB231PD;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUB231PD;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB132PS;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#154#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUB132PS;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#154#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB231PS;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUB231PS;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB132SD;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#155#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#171#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMSUB231SD;
+ opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#187#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#171#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFMSUB132SS;
+ opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#171#61#80;
flags : [if_fma]
),
(
opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#171#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#187#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#187#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB231SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#187#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD213PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD213PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD231PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFNMADD231PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFNMADD132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMADD132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#156#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#157#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMADD213PS;
+ opcode : A_VFNMADD132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#172#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#157#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD132SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#157#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD231PS;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD231PS;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD132SD;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#157#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#173#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMADD231SD;
+ opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#189#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#173#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFNMADD132SS;
+ opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#173#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#173#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VFNMADD231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#189#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMADD231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
code : #241#242#249#1#189#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB213PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#174#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMSUB213PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#174#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB231PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB231PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFNMSUB132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMSUB132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#158#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#159#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB213PS;
+ opcode : A_VFNMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#174#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#159#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#174#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#175#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB231PS;
+ opcode : A_VFNMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#190#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#175#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#175#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMSUB132SD;
+ opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#159#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB213SD;
+ opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#175#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#191#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB132SS;
+ opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#159#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#191#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFNMSUB213SS;
+ opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#191#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#191#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#191#61#80;
+ flags : [if_fma,if_t1s]
),
(
opcode : A_XACQUIRE;
@@ -15126,5 +20684,7915 @@
optypes : (ot_memory,ot_none,ot_none,ot_none);
code : #2#15#13#130;
flags : [if_prefetchwt1]
+ ),
+ (
+ opcode : A_KADDB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDND;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #241#242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #241#242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_memory or ot_bits8,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #241#242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #220#242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_memory or ot_bits32,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #220#242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg64,ot_none,ot_none);
+ code : #220#242#243#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_memory or ot_bits64,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_reg64,ot_kreg,ot_none,ot_none);
+ code : #220#242#243#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_memory or ot_bits16,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#50#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#51#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#51#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#50#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#48#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#49#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#49#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#48#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKBW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKWD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#25#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#244#249#1#25#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#25#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#25#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF32X4;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#244#249#1#26#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTF32X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#26#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTF32X8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#27#72;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VBROADCASTF64X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#244#249#1#26#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF64X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#234#241#249#1#26#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF64X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#234#241#249#1#27#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#244#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X4;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#244#249#1#90#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#90#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#91#72;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VBROADCASTI64X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#244#249#1#90#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI64X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#234#241#249#1#90#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI64X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#234#241#249#1#91#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#123#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512,if_bcst16,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#248#1#121#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#248#1#121#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#248#1#121#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#234#248#1#121#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#120#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#248#1#120#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#248#1#120#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#248#1#120#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#234#248#1#120#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#244#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits64,ot_none);
+ code : #220#232#234#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
+ code : #220#232#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits64,ot_none);
+ code : #219#232#234#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
+ code : #219#232#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#244#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#241#244#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#25#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#25#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X8;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#27#65#22;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VEXTRACTF32X8;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#27#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#25#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#25#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X4;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#27#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF64X4;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#27#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#57#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#57#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X8;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#59#65#22;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VEXTRACTI32X8;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#59#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#57#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#57#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X4;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#59#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI64X4;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#59#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#85#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFIXUPIMMSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#85#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#85#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFIXUPIMMSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#85#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst16,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSSD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#103#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSSD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_memory or ot_bits64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#103#72#22;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFPCLASSSS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#103#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSSS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_memory or ot_bits32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#103#72#22;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#67#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#234#241#249#1#67#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#67#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#67#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#39#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETMANTSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#39#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#39#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETMANTSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#39#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VINSERTF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#24#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#24#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTF32X8;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#26#61#80#23;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VINSERTF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#24#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#24#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTF64X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#26#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#56#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#56#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X8;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#58#61#80#23;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VINSERTI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#56#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#56#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTI64X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#58#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#234#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#234#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #220#232#233#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #220#232#233#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#249#1#137#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#137#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#244#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#244#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_zmem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#244#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #219#232#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #219#232#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #219#232#233#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #219#232#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#234#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #219#232#234#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #219#232#233#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#234#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#234#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#234#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#81#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRANGESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#81#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#81#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRANGESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#81#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP14SD;
+ ops : 3;
+ 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_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#77#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#241#249#1#77#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512]
+ ),
+ (
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#203#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#87#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VREDUCESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#87#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#87#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VREDUCESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#87#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#11#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRNDSCALESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#11#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#10#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRNDSCALESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#10#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#234#241#249#1#79#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#79#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#241#249#1#79#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#79#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#205#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#234#241#249#1#205#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#205#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#205#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#45#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCALEFSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#249#1#45#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#45#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCALEFSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#249#1#45#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_zmem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
)
);
diff --git a/compiler/i8086/r8086ari.inc b/compiler/i8086/r8086ari.inc
index 72d54535fa..33afcdb0c2 100644
--- a/compiler/i8086/r8086ari.inc
+++ b/compiler/i8086/r8086ari.inc
@@ -43,6 +43,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
88,
89,
36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97,
0
diff --git a/compiler/i8086/r8086att.inc b/compiler/i8086/r8086att.inc
index bceb36301f..926f64cd91 100644
--- a/compiler/i8086/r8086att.inc
+++ b/compiler/i8086/r8086att.inc
@@ -88,4 +88,20 @@
'%ymm4',
'%ymm5',
'%ymm6',
-'%ymm7'
+'%ymm7',
+'%zmm0',
+'%zmm1',
+'%zmm2',
+'%zmm3',
+'%zmm4',
+'%zmm5',
+'%zmm6',
+'%zmm7',
+'%k0',
+'%k1',
+'%k2',
+'%k3',
+'%k4',
+'%k5',
+'%k6',
+'%k7'
diff --git a/compiler/i8086/r8086con.inc b/compiler/i8086/r8086con.inc
index e20b199a27..b56b7dce1b 100644
--- a/compiler/i8086/r8086con.inc
+++ b/compiler/i8086/r8086con.inc
@@ -89,3 +89,19 @@ NR_YMM4 = tregister($040D0004);
NR_YMM5 = tregister($040D0005);
NR_YMM6 = tregister($040D0006);
NR_YMM7 = tregister($040D0007);
+NR_ZMM0 = tregister($040E0000);
+NR_ZMM1 = tregister($040E0001);
+NR_ZMM2 = tregister($040E0002);
+NR_ZMM3 = tregister($040E0003);
+NR_ZMM4 = tregister($040E0004);
+NR_ZMM5 = tregister($040E0005);
+NR_ZMM6 = tregister($040E0006);
+NR_ZMM7 = tregister($040E0007);
+NR_K0 = tregister($06000000);
+NR_K1 = tregister($06000001);
+NR_K2 = tregister($06000002);
+NR_K3 = tregister($06000003);
+NR_K4 = tregister($06000004);
+NR_K5 = tregister($06000005);
+NR_K6 = tregister($06000006);
+NR_K7 = tregister($06000007);
diff --git a/compiler/i8086/r8086dwrf.inc b/compiler/i8086/r8086dwrf.inc
index 95d7c93afd..63bf3ea79d 100644
--- a/compiler/i8086/r8086dwrf.inc
+++ b/compiler/i8086/r8086dwrf.inc
@@ -88,4 +88,20 @@
-1,
-1,
-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
-1
diff --git a/compiler/i8086/r8086int.inc b/compiler/i8086/r8086int.inc
index 384ae00310..c87182aeb3 100644
--- a/compiler/i8086/r8086int.inc
+++ b/compiler/i8086/r8086int.inc
@@ -88,4 +88,20 @@
'ymm4',
'ymm5',
'ymm6',
-'ymm7'
+'ymm7',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/i8086/r8086iri.inc b/compiler/i8086/r8086iri.inc
index 2390d1bb14..ca5489c32b 100644
--- a/compiler/i8086/r8086iri.inc
+++ b/compiler/i8086/r8086iri.inc
@@ -44,6 +44,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
87,
88,
89,
-36
+36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97
diff --git a/compiler/i8086/r8086nasm.inc b/compiler/i8086/r8086nasm.inc
index 3e96da53e6..5c2de67a65 100644
--- a/compiler/i8086/r8086nasm.inc
+++ b/compiler/i8086/r8086nasm.inc
@@ -88,4 +88,20 @@
'ymm4',
'ymm5',
'ymm6',
-'ymm7'
+'ymm7',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/i8086/r8086nor.inc b/compiler/i8086/r8086nor.inc
index aa0fcb051c..f73584d2be 100644
--- a/compiler/i8086/r8086nor.inc
+++ b/compiler/i8086/r8086nor.inc
@@ -1,2 +1,2 @@
{ don't edit, this file is generated from x86reg.dat }
-90
+106
diff --git a/compiler/i8086/r8086nri.inc b/compiler/i8086/r8086nri.inc
index 2390d1bb14..ca5489c32b 100644
--- a/compiler/i8086/r8086nri.inc
+++ b/compiler/i8086/r8086nri.inc
@@ -44,6 +44,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
87,
88,
89,
-36
+36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97
diff --git a/compiler/i8086/r8086num.inc b/compiler/i8086/r8086num.inc
index 2f0ce1bcb9..7a4f20dc66 100644
--- a/compiler/i8086/r8086num.inc
+++ b/compiler/i8086/r8086num.inc
@@ -88,4 +88,20 @@ tregister($040D0003),
tregister($040D0004),
tregister($040D0005),
tregister($040D0006),
-tregister($040D0007)
+tregister($040D0007),
+tregister($040E0000),
+tregister($040E0001),
+tregister($040E0002),
+tregister($040E0003),
+tregister($040E0004),
+tregister($040E0005),
+tregister($040E0006),
+tregister($040E0007),
+tregister($06000000),
+tregister($06000001),
+tregister($06000002),
+tregister($06000003),
+tregister($06000004),
+tregister($06000005),
+tregister($06000006),
+tregister($06000007)
diff --git a/compiler/i8086/r8086ot.inc b/compiler/i8086/r8086ot.inc
index 95ffb8b8b9..be34ab5aa3 100644
--- a/compiler/i8086/r8086ot.inc
+++ b/compiler/i8086/r8086ot.inc
@@ -88,4 +88,20 @@ OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
-OT_YMMREG
+OT_YMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG
diff --git a/compiler/i8086/r8086rni.inc b/compiler/i8086/r8086rni.inc
index b800d564e9..94b86319f5 100644
--- a/compiler/i8086/r8086rni.inc
+++ b/compiler/i8086/r8086rni.inc
@@ -57,6 +57,14 @@
87,
88,
89,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97,
25,
26,
27,
@@ -88,4 +96,12 @@
37,
38,
39,
-40
+40,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105
diff --git a/compiler/i8086/r8086sri.inc b/compiler/i8086/r8086sri.inc
index 2390d1bb14..ca5489c32b 100644
--- a/compiler/i8086/r8086sri.inc
+++ b/compiler/i8086/r8086sri.inc
@@ -44,6 +44,14 @@
29,
30,
39,
+98,
+99,
+100,
+101,
+102,
+103,
+104,
+105,
66,
67,
68,
@@ -88,4 +96,12 @@
87,
88,
89,
-36
+36,
+90,
+91,
+92,
+93,
+94,
+95,
+96,
+97
diff --git a/compiler/i8086/r8086stab.inc b/compiler/i8086/r8086stab.inc
index e876c29894..0f4abdd30d 100644
--- a/compiler/i8086/r8086stab.inc
+++ b/compiler/i8086/r8086stab.inc
@@ -88,4 +88,20 @@
25,
26,
27,
-28
+28,
+21,
+22,
+23,
+24,
+25,
+26,
+27,
+28,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1,
+-1
diff --git a/compiler/i8086/r8086std.inc b/compiler/i8086/r8086std.inc
index 384ae00310..c87182aeb3 100644
--- a/compiler/i8086/r8086std.inc
+++ b/compiler/i8086/r8086std.inc
@@ -88,4 +88,20 @@
'ymm4',
'ymm5',
'ymm6',
-'ymm7'
+'ymm7',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/msg/errore.msg b/compiler/msg/errore.msg
index 00eefc2382..42ab8860ed 100644
--- a/compiler/msg/errore.msg
+++ b/compiler/msg/errore.msg
@@ -2872,6 +2872,7 @@ asmr_e_local_label_cannot_be_declared_public=07138_E_Local label $1 cannot be de
asmr_e_multiple_segment_overrides=07139_E_Cannot use multiple segment overrides
asmr_w_multiple_segment_overrides=07140_W_Multiple segment overrides (only the last one will take effect)
asmr_w_segment_override_ignored_in_64bit_mode=07141_W_Segment base $1 will be generated, but is ignored by the CPU in 64-bit mode
+asmr_e_mismatch_broadcasting_elements=07142_E_Mismatch broadcasting elements (expected: {$1} found: {$2})
#
# Assembler/binary writers
#
diff --git a/compiler/msgidx.inc b/compiler/msgidx.inc
index b703ce0ecc..dce6a958ef 100644
--- a/compiler/msgidx.inc
+++ b/compiler/msgidx.inc
@@ -838,6 +838,7 @@ const
asmr_e_multiple_segment_overrides=07139;
asmr_w_multiple_segment_overrides=07140;
asmr_w_segment_override_ignored_in_64bit_mode=07141;
+ asmr_e_mismatch_broadcasting_elements=07142;
asmw_f_too_many_asm_files=08000;
asmw_f_assembler_output_not_supported=08001;
asmw_f_comp_not_supported=08002;
@@ -1112,9 +1113,9 @@ const
option_info=11024;
option_help_pages=11025;
- MsgTxtSize = 83509;
+ MsgTxtSize = 83577;
MsgIdxMax : array[1..20] of longint=(
- 28,106,352,126,99,61,142,34,221,68,
+ 28,106,352,126,99,61,143,34,221,68,
62,20,30,1,1,1,1,1,1,1
);
diff --git a/compiler/msgtxt.inc b/compiler/msgtxt.inc
index 2e5f71890d..1a838cefee 100644
--- a/compiler/msgtxt.inc
+++ b/compiler/msgtxt.inc
@@ -1,8 +1,8 @@
const msgtxt_codepage=20127;
{$ifdef Delphi}
-const msgtxt : array[0..000347] of string[240]=(
+const msgtxt : array[0..000348] of string[240]=(
{$else Delphi}
-const msgtxt : array[0..000347,1..240] of char=(
+const msgtxt : array[0..000348,1..240] of char=(
{$endif Delphi}
'01000_T_Compiler: $1'#000+
'01001_D_Compiler OS: $1'#000+
@@ -1033,339 +1033,339 @@ const msgtxt : array[0..000347,1..240] of char=(
'ct)'#000+
'07141_W_Segment base $1 will be generated, but is ignored by the CPU i'+
'n 64-bit mode'#000+
- '08000_F_Too many assembler files'#000+
+ '07142_E_Mismatch broadcasting elements (expected: {$1} found: {$2})'#000+
+ '08000_F_Too many assemb','ler files'#000+
'08001_F_Selected assembler output not supported'#000+
- '08002_F_Co','mp not supported'#000+
+ '08002_F_Comp not supported'#000+
'08003_F_Direct not support for binary writers'#000+
'08004_E_Allocating of data is only allowed in bss section'#000+
'08005_F_No binary writer selected'#000+
- '08006_E_Asm: Opcode $1 not in table'#000+
- '08007_E_Asm: $1 invalid combination of opcode and',' operands'#000+
+ '08006_E_Asm: Opco','de $1 not in table'#000+
+ '08007_E_Asm: $1 invalid combination of opcode and operands'#000+
'08008_E_Asm: 16 Bit references not supported'#000+
'08009_E_Asm: Invalid effective address'#000+
'08010_E_Asm: Immediate or reference expected'#000+
- '08011_E_Asm: $1 value exceeds bounds $2'#000+
+ '08011_E_Asm: $1 value exceeds bou','nds $2'#000+
'08012_E_Asm: Short jump is out of range $1'#000+
- '08013_E_Asm: Undef','ined label $1'#000+
+ '08013_E_Asm: Undefined label $1'#000+
'08014_E_Asm: Comp type not supported for this target'#000+
'08015_E_Asm: Extended type not supported for this target'#000+
'08016_E_Asm: Duplicate label $1'#000+
- '08017_E_Asm: Redefined label $1'#000+
+ '08017_E_Asm: Red','efined label $1'#000+
'08018_E_Asm: First defined here'#000+
- '08019_E_Asm: Invalid',' register $1'#000+
+ '08019_E_Asm: Invalid register $1'#000+
'08020_E_Asm: 16 or 32 Bit references not supported'#000+
'08021_E_Asm: 64 Bit operands not supported'#000+
- '08022_E_Asm: AH,BH,CH or DH cannot be used in an instruction requiring'+
- ' REX prefix'#000+
+ '08022_E_Asm: AH,BH,CH or DH cannot be used in an instruction requ','iri'+
+ 'ng REX prefix'#000+
'08023_E_Missing .seh_endprologue directive'#000+
- '08024_E_','Function prologue exceeds 255 bytes'#000+
+ '08024_E_Function prologue exceeds 255 bytes'#000+
'08025_E_.seh_handlerdata directive without preceding .seh_handler'#000+
'08026_F_Relocation count for section $1 exceeds 65535'#000+
- '08027_N_Change of bind type of symbol $1 from $2 to $3 after use'#000+
- '08028_H_Change of b','ind type of symbol $1 from $2 to $3 after use'#000+
+ '08027_N_Change o','f bind type of symbol $1 from $2 to $3 after use'#000+
+ '08028_H_Change of bind type of symbol $1 from $2 to $3 after use'#000+
'08029_E_Asm: 32 Bit references not supported'#000+
'08030_F_Code segment too large'#000+
'08031_F_Data segment too large'#000+
- '08032_E_Instruction not supported by the selected instruction set'#000+
- '08033_E_Asm: conditio','nal branch destination is out of range'#000+
+ '08032_E_Instruction',' not supported by the selected instruction set'#000+
+ '08033_E_Asm: conditional branch destination is out of range'#000+
'09000_W_Source operating system redefined'#000+
'09001_I_Assembling (pipe) $1'#000+
'09002_E_Can'#039't create assembler file: $1'#000+
- '09003_E_Can'#039't create object file: $1 (error code: $2)'#000+
- '09004_E_Can'#039't create archive file: $','1'#000+
+ '09003_E_Can'#039't create o','bject file: $1 (error code: $2)'#000+
+ '09004_E_Can'#039't create archive file: $1'#000+
'09005_E_Assembler $1 not found, switching to external assembling'#000+
'09006_T_Using assembler: $1'#000+
'09007_E_Error while assembling exitcode $1'#000+
- '09008_E_Can'#039't call the assembler, error $1 switching to external a'+
- 'ssembling'#000+
+ '09008_E_Can'#039't call the assembler, ','error $1 switching to external'+
+ ' assembling'#000+
'09009_I_Assembling $1'#000+
- '0901','0_I_Assembling with smartlinking $1'#000+
+ '09010_I_Assembling with smartlinking $1'#000+
'09011_W_Object $1 not found, Linking may fail !'#000+
'09012_W_Library $1 not found, Linking may fail !'#000+
'09013_E_Error while linking'#000+
- '09014_E_Can'#039't call the linker, switching to external linking'#000+
- '09015_I_Linking $1',#000+
+ '09014_E_Can',#039't call the linker, switching to external linking'#000+
+ '09015_I_Linking $1'#000+
'09016_E_Util $1 not found, switching to external linking'#000+
'09017_T_Using util $1'#000+
'09018_E_Creation of Executables not supported'#000+
- '09019_E_Creation of Dynamic/Shared Libraries not supported'#000+
+ '09019_E_Creation of Dynamic/Shared Libraries n','ot supported'#000+
'09035_E_Creation of Static Libraries not supported'#000+
- '0902','0_I_Closing script $1'#000+
+ '09020_I_Closing script $1'#000+
'09021_E_Resource compiler "$1" not found, switching to external mode'#000+
'09022_I_Compiling resource $1'#000+
- '09023_T_Unit $1 cannot be statically linked, switching to smart linkin'+
- 'g'#000+
- '09024_T_Unit $1 cannot be smart linked, switchi','ng to static linking'#000+
+ '09023_T_Unit $1 cannot be statically linked, switch','ing to smart link'+
+ 'ing'#000+
+ '09024_T_Unit $1 cannot be smart linked, switching to static linking'#000+
'09025_T_Unit $1 cannot be shared linked, switching to static linking'#000+
'09026_E_Unit $1 cannot be smart or static linked'#000+
- '09027_E_Unit $1 cannot be shared or static linked'#000+
- '09028_D_Calling resource compiler "$1" with "$2" as',' command line'#000+
+ '09027_E_Unit $1 cannot be shared ','or static linked'#000+
+ '09028_D_Calling resource compiler "$1" with "$2" as command line'#000+
'09029_E_Error while compiling resources'#000+
'09030_E_Can'#039't call the resource compiler "$1", switching to extern'+
'al mode'#000+
'09031_E_Can'#039't open resource file "$1"'#000+
- '09032_E_Can'#039't write resource file "$1"'#000+
- '09033_N_File "$1" not found for bac','kquoted cat command'#000+
+ '09032_','E_Can'#039't write resource file "$1"'#000+
+ '09033_N_File "$1" not found for backquoted cat command'#000+
'09034_W_"$1" not found, this will probably cause a linking failure'#000+
'09128_F_Can'#039't post process executable $1'#000+
'09129_F_Can'#039't open executable $1'#000+
- '09130_X_Size of Code: $1 bytes'#000+
+ '09130_X_Siz','e of Code: $1 bytes'#000+
'09131_X_Size of initialized data: $1 bytes'#000+
- '09132','_X_Size of uninitialized data: $1 bytes'#000+
+ '09132_X_Size of uninitialized data: $1 bytes'#000+
'09133_X_Stack space reserved: $1 bytes'#000+
'09134_X_Stack space committed: $1 bytes'#000+
- '09200_F_Executable image size is too big for $1 target.'#000+
- '09201_W_Object file "$1" contains 32-bit absolute relocation to s','ymb'+
- 'ol "$2".'#000+
+ '09200_F_Executable image size is too big for $1 targe','t.'#000+
+ '09201_W_Object file "$1" contains 32-bit absolute relocation to symbol'+
+ ' "$2".'#000+
'09202_E_Program segment too large (exceeds 64k by $1 bytes)'#000+
'09203_E_Code segment "$1" too large (exceeds 64k by $2 bytes)'#000+
- '09204_E_Data segment "$1" too large (exceeds 64k by $2 bytes)'#000+
- '09205_E_Segment "$1" too large (exceeds 64k ','by $2 bytes)'#000+
+ '09204_E_Data segment "$1" too large (e','xceeds 64k by $2 bytes)'#000+
+ '09205_E_Segment "$1" too large (exceeds 64k by $2 bytes)'#000+
'09206_E_Group "$1" too large (exceeds 64k by $2 bytes)'#000+
'09207_E_Cannot create a .COM file, because the program contains segmen'+
't relocations'#000+
- '09208_W_Program "$1" uses experimental CheckPointer option'#000+
- '09209_E_Multiple defined symb','ol "$1"'#000+
+ '09208_W_Program "$1"',' uses experimental CheckPointer option'#000+
+ '09209_E_Multiple defined symbol "$1"'#000+
'09210_E_COMDAT selection mode $1 not supported (section: "$1")'#000+
'09211_E_Associative section expected for COMDAT section "$1"'#000+
- '09212_E_COMDAT section selection mode doesn'#039't match for section "$'+
- '1" and symbol "$2"'#000+
- '09213_E_Associative COM','DAT section for section "$1" not found'#000+
+ '09212_E_COMDAT section selection mode do','esn'#039't match for section '+
+ '"$1" and symbol "$2"'#000+
+ '09213_E_Associative COMDAT section for section "$1" not found'#000+
'09214_D_Discarding duplicate symbol "$1" due to COMDAT selection mode'#000+
- '09215_D_Discarding duplicate symbol "$1" with same size due to COMDAT '+
- 'selection mode'#000+
- '09216_D_Discarding duplicate symbol "$1" with ','same content due to CO'+
- 'MDAT selection mode'#000+
+ '09215_D_Discarding duplicate symbol "$1" with same size due to ','COMDA'+
+ 'T selection mode'#000+
+ '09216_D_Discarding duplicate symbol "$1" with same content due to COMD'+
+ 'AT selection mode'#000+
'09217_D_Replacing duplicate symbol "$1" with smaller size due to COMDA'+
'T selection mode'#000+
- '09218_E_Size of duplicate COMDAT symbol "$1" differs'#000+
+ '09218_E_Size of duplicate COMDAT symbol "$1','" differs'#000+
'09219_E_Content of duplicate COMDAT symbol "$1" differs'#000+
- '09','220_E_COMDAT selection mode for symbol "$1" differs'#000+
+ '09220_E_COMDAT selection mode for symbol "$1" differs'#000+
'10000_T_Unitsearch: $1'#000+
'10001_T_PPU Loading $1'#000+
'10002_U_PPU Name: $1'#000+
'10003_U_PPU Flags: $1'#000+
'10004_U_PPU Crc: $1'#000+
- '10005_U_PPU Time: $1'#000+
+ '10005_U_PPU',' Time: $1'#000+
'10006_U_PPU File too short'#000+
- '10007_U_PPU Invalid Header (no ','PPU at the begin)'#000+
+ '10007_U_PPU Invalid Header (no PPU at the begin)'#000+
'10008_U_PPU Invalid Version $1'#000+
'10009_U_PPU is compiled for another processor'#000+
'10010_U_PPU is compiled for another target'#000+
'10011_U_PPU Source: $1'#000+
- '10012_U_Writing $1'#000+
+ '10012_U_Wri','ting $1'#000+
'10013_F_Can'#039't Write PPU-File'#000+
- '10014_F_Error reading PPU-File'#000,
+ '10014_F_Error reading PPU-File'#000+
'10015_F_Unexpected end of PPU-File'#000+
'10016_F_Invalid PPU-File entry: $1'#000+
'10017_F_PPU Dbx count problem'#000+
'10018_E_Illegal unit name: $1 (expecting $2)'#000+
'10019_F_Too much units'#000+
- '10020_F_Circular unit reference between $1 and $2'#000+
- '10021_F_Can'#039't compile ','unit $1, no sources available'#000+
+ '1002','0_F_Circular unit reference between $1 and $2'#000+
+ '10021_F_Can'#039't compile unit $1, no sources available'#000+
'10022_F_Can'#039't find unit $1 used by $2'#000+
'10023_W_Unit $1 was not found but $2 exists'#000+
'10024_F_Unit $1 searched but $2 found'#000+
- '10025_W_Compiling the system unit requires the -Us switch'#000+
- '10026_F_There were $1 errors com','piling module, stopping'#000+
+ '10025_W_Compiling the ','system unit requires the -Us switch'#000+
+ '10026_F_There were $1 errors compiling module, stopping'#000+
'10027_U_Load from $1 ($2) unit $3'#000+
'10028_U_Recompiling $1, checksum changed for $2'#000+
'10029_U_Recompiling $1, source found only'#000+
- '10030_U_Recompiling unit, static lib is older than ppufile'#000+
- '10031_U_Recompiling unit, shared ','lib is older than ppufile'#000+
+ '10030_U_Recompiling unit',', static lib is older than ppufile'#000+
+ '10031_U_Recompiling unit, shared lib is older than ppufile'#000+
'10032_U_Recompiling unit, obj and asm are older than ppufile'#000+
'10033_U_Recompiling unit, obj is older than asm'#000+
'10034_U_Parsing interface of $1'#000+
- '10035_U_Parsing implementation of $1'#000+
+ '10035','_U_Parsing implementation of $1'#000+
'10036_U_Second load for unit $1'#000+
- '1003','7_U_PPU Check file $1 time $2'#000+
+ '10037_U_PPU Check file $1 time $2'#000+
'10040_W_Can'#039't recompile unit $1, but found modified include files'#000+
'10041_U_File $1 is newer than the one used for creating PPU file $2'#000+
- '10042_U_Trying to use a unit which was compiled with a different FPU m'+
- 'ode'#000+
- '10','043_U_Loading interface units from $1'#000+
+ '10042_U_','Trying to use a unit which was compiled with a different FPU'+
+ ' mode'#000+
+ '10043_U_Loading interface units from $1'#000+
'10044_U_Loading implementation units from $1'#000+
'10045_U_Interface CRC changed for unit $1'#000+
- '10046_U_Implementation CRC changed for unit $1'#000+
+ '10046_U_Implementation CRC changed for unit $1'#000,
'10047_U_Finished compiling unit $1'#000+
- '10048_U_Adding dependency: $1 dep','ends on $2'#000+
+ '10048_U_Adding dependency: $1 depends on $2'#000+
'10049_U_No reload, is caller: $1'#000+
'10050_U_No reload, already in second compile: $1'#000+
'10051_U_Flag for reload: $1'#000+
'10052_U_Forced reloading'#000+
- '10053_U_Previous state of $1: $2'#000+
+ '10053_U_Previous state of ','$1: $2'#000+
'10054_U_Already compiling $1, setting second compile'#000+
- '10055_U_','Loading unit $1'#000+
+ '10055_U_Loading unit $1'#000+
'10056_U_Finished loading unit $1'#000+
'10057_U_Registering new unit $1'#000+
'10058_U_Re-resolving unit $1'#000+
- '10059_U_Skipping re-resolving unit $1, still loading used units'#000+
+ '10059_U_Skipping re-resolving unit $1, still loading used unit','s'#000+
'10060_U_Unloading resource unit $1 (not needed)'#000+
- '10061_E_Unit $1 wa','s compiled using a different whole program optimiz'+
- 'ation feedback input ($2, $3); recompile it without wpo or use the sam'+
- 'e wpo feedback input file for this compilation invocation'#000+
- '10062_U_Indirect interface (objects/classes) CRC changed for u','nit $1'+
- #000+
+ '10061_E_Unit $1 was compiled using a different whole program optimizat'+
+ 'ion feedback input ($2, $3); recompile it without wpo or use the same '+
+ 'wpo feedback input file for this compilation invoc','ation'#000+
+ '10062_U_Indirect interface (objects/classes) CRC changed for unit $1'#000+
'10063_U_PPU is compiled for another i8086 memory model'#000+
'10064_U_Loading unit $1 from package $2'#000+
- '10065_F_Internal type "$1" was not found. Check if you use the correct'+
+ '10065_F_Internal type "$1" was not found. Check if you use the correct',
' run time library.'#000+
- '10066_F_Internal type "$1" does not look as expec','ted. Check if you u'+
- 'se the correct run time library.'#000+
+ '10066_F_Internal type "$1" does not look as expected. Check if you use'+
+ ' the correct run time library.'#000+
'10067_U_Skipping unit, PPU and compiler have to be both compiled with '+
'or without LLVM support'#000+
- '11000_O_$1 [options] <inputfile> [options]'#000+
- '11001_W_Only one source file supported, changing so','urce file to comp'+
- 'ile from "$1" into "$2"'#000+
+ '11000_O_$1 [options] <inpu','tfile> [options]'#000+
+ '11001_W_Only one source file supported, changing source file to compil'+
+ 'e from "$1" into "$2"'#000+
'11002_W_DEF file can be created only for OS/2'#000+
'11003_E_Nested response files are not supported'#000+
- '11004_F_No source file name in command line'#000+
+ '11004_F_No source file name in comman','d line'#000+
'11005_N_No option inside $1 config file'#000+
- '11006_E_Illegal param','eter: $1'#000+
+ '11006_E_Illegal parameter: $1'#000+
'11007_H_-? writes help pages'#000+
'11008_F_Too many config files nested'#000+
'11009_F_Unable to open file $1'#000+
'11010_D_Reading further options from $1'#000+
- '11011_W_Target is already set to: $1'#000+
- '11012_W_Shared libs not supported on DOS platform, revert','ing to stat'+
- 'ic'#000+
+ '11011_W_Target is already ','set to: $1'#000+
+ '11012_W_Shared libs not supported on DOS platform, reverting to static'+
+ #000+
'11013_F_In options file $1 at line $2 too many #IF(N)DEFs encountered'#000+
'11014_F_In options file $1 at line $2 unexpected #ENDIFs encountered'#000+
- '11015_F_Open conditional at the end of the options file'#000+
- '11016_W_Debug information gener','ation is not supported by this execut'+
- 'able'#000+
+ '11015_F_Open condit','ional at the end of the options file'#000+
+ '11016_W_Debug information generation is not supported by this executab'+
+ 'le'#000+
'11017_H_Try recompiling with -dGDB'#000+
'11018_W_You are using the obsolete switch $1'#000+
- '11019_W_You are using the obsolete switch $1, please use $2'#000+
- '11020_N_Switching assembler to default source writing asse','mbler'#000+
+ '11019_W_You are using the obsolete switch $1, plea','se use $2'#000+
+ '11020_N_Switching assembler to default source writing assembler'#000+
'11021_W_Assembler output selected "$1" is not compatible with "$2"'#000+
'11022_W_"$1" assembler use forced'#000+
'11026_T_Reading options from file $1'#000+
- '11027_T_Reading options from environment $1'#000+
+ '11027_T_Reading options from',' environment $1'#000+
'11028_D_Handling option "$1"'#000+
- '11029_O_*** press enter',' ***'#000+
+ '11029_O_*** press enter ***'#000+
'11030_H_Start of reading config file $1'#000+
'11031_H_End of reading config file $1'#000+
'11032_D_Interpreting option "$1"'#000+
'11036_D_Interpreting firstpass option "$1"'#000+
- '11033_D_Interpreting file option "$1"'#000+
+ '11033_D_Inter','preting file option "$1"'#000+
'11034_D_Reading config file "$1"'#000+
- '11035_D_Fo','und source file name "$1"'#000+
+ '11035_D_Found source file name "$1"'#000+
'11039_E_Unknown codepage "$1"'#000+
'11040_F_Config file $1 is a directory'#000+
'11041_W_Assembler output selected "$1" cannot generate debug info, deb'+
- 'ugging disabled'#000+
- '11042_W_Use of ppc386.cfg is deprecated, please use fpc.cfg ','instead'#000+
+ 'ugging d','isabled'#000+
+ '11042_W_Use of ppc386.cfg is deprecated, please use fpc.cfg instead'#000+
'11043_F_In options file $1 at line $2 #ELSE directive without #IF(N)DE'+
'F found'#000+
'11044_F_Option "$1" is not, or not yet, supported on the current targe'+
't platform'#000+
- '11045_F_The feature "$1" is not, or not yet, supported on the selected'+
- ' ta','rget platform'#000+
+ '11045','_F_The feature "$1" is not, or not yet, supported on the select'+
+ 'ed target platform'#000+
'11046_N_DWARF debug information cannot be used with smart linking on t'+
'his target, switching to static linking'#000+
- '11047_W_Option "$1" is ignored for the current target platform.'#000+
- '11048_W_Disabling external debug information because',' it is unsupport'+
- 'ed for the selected target/debug format combination.'#000+
+ '11047_W_Option "$1" is ignored for the current t','arget platform.'#000+
+ '11048_W_Disabling external debug information because it is unsupported'+
+ ' for the selected target/debug format combination.'#000+
'11049_N_DWARF debug information cannot be used with smart linking with'+
- ' external assembler, disabling static library creation.'#000+
- '11050_E_Invalid value for MACOSX_DEPLOYMENT_T','ARGET environment varia'+
- 'ble: $1'#000+
+ ' external assembler, disabling st','atic library creation.'#000+
+ '11050_E_Invalid value for MACOSX_DEPLOYMENT_TARGET environment variabl'+
+ 'e: $1'#000+
'11051_E_Invalid value for IPHONEOS_DEPLOYMENT_TARGET environment varia'+
'ble: $1'#000+
- '11052_E_You must use a FPU type of VFPV2, VFPV3 or VFPV3_D16 when usin'+
- 'g the EABIHF ABI target'#000+
- '11053_W_The selected debug format is ','not supported on the current ta'+
- 'rget, not changing the current setting'#000+
+ '11052_E_You must use a FPU type of VFPV2, VFPV3 or VFPV3_D16 wh','en us'+
+ 'ing the EABIHF ABI target'#000+
+ '11053_W_The selected debug format is not supported on the current targ'+
+ 'et, not changing the current setting'#000+
'11054_E_Argument to "$1" is missing'#000+
'11055_E_Malformed parameter: $1'#000+
- '11056_W_Smart linking requires external linker'#000+
- '11057_E_Creating .COM files is not supported in the cur','rent memory m'+
- 'odel. Only the tiny memory model supports making .COM files.'#000+
+ '11056_W_Smart linking requires ext','ernal linker'#000+
+ '11057_E_Creating .COM files is not supported in the current memory mod'+
+ 'el. Only the tiny memory model supports making .COM files.'#000+
'11058_W_Experimental CheckPointer option not enabled because it is inc'+
- 'omptatible with -Ur option.'#000+
- '11059_E_Unsupported target architecture -P$1, invoke the "fpc" compi','l'+
- 'er driver instead.'#000+
+ 'omptatible with -Ur option.'#000,
+ '11059_E_Unsupported target architecture -P$1, invoke the "fpc" compile'+
+ 'r driver instead.'#000+
'11060_E_Feature switches are only supported while compiling the system'+
' unit.'#000+
'11061_N_The selected debug format is not supported by the internal lin'+
- 'ker, switching to external linking'#000+
- '12000_F_Cannot open whole program opti','mization feedback file "$1"'#000+
+ 'ker, ','switching to external linking'#000+
+ '12000_F_Cannot open whole program optimization feedback file "$1"'#000+
'12001_D_Processing whole program optimization information in wpo feedb'+
'ack file "$1"'#000+
- '12002_D_Finished processing the whole program optimization information'+
- ' in wpo feedback file "$1"'#000+
- '12003_E_Expected section header',', but got "$2" at line $1 of wpo feed'+
- 'back file'#000+
+ '12002_D_Finished processing the whole program optimization i','nformati'+
+ 'on in wpo feedback file "$1"'#000+
+ '12003_E_Expected section header, but got "$2" at line $1 of wpo feedba'+
+ 'ck file'#000+
'12004_W_No handler registered for whole program optimization section "'+
'$2" at line $1 of wpo feedback file, ignoring'#000+
- '12005_D_Found whole program optimization section "$1" with information'+
- ' about ','"$2"'#000+
+ '12005_D_F','ound whole program optimization section "$1" with informati'+
+ 'on about "$2"'#000+
'12006_F_The selected whole program optimizations require a previously '+
'generated feedback file (use -Fw to specify)'#000+
- '12007_E_No collected information necessary to perform "$1" whole progr'+
- 'am optimization found'#000+
- '12008_F_Specify a whole prog','ram optimization feedback file to store '+
- 'the generated info in (using -FW)'#000+
+ '12007_E_No collected information necessary to perfor','m "$1" whole pro'+
+ 'gram optimization found'#000+
+ '12008_F_Specify a whole program optimization feedback file to store th'+
+ 'e generated info in (using -FW)'#000+
'12009_E_Not generating any whole program optimization information, yet'+
- ' a feedback file was specified (using -FW)'#000+
- '12010_E_Not performing any whole program optimization','s, yet an input'+
- ' feedback file was specified (using -Fw)'#000+
+ ' a feedback file was specifi','ed (using -FW)'#000+
+ '12010_E_Not performing any whole program optimizations, yet an input f'+
+ 'eedback file was specified (using -Fw)'#000+
'12011_D_Skipping whole program optimization section "$1", because not '+
'needed by the requested optimizations'#000+
- '12012_W_Overriding previously read information for "$1" from feedback '+
- 'input ','file using information in section "$2"'#000+
+ '12012_W_','Overriding previously read information for "$1" from feedbac'+
+ 'k input file using information in section "$2"'#000+
'12013_E_Cannot extract symbol liveness information from program when s'+
'tripping symbols, use -Xs-'#000+
- '12014_E_Cannot extract symbol liveness information from program when w'+
- 'hen not linking'#000+
- '12015_F_Cannot fin','d "$1" or "$2" to extract symbol liveness informat'+
- 'ion from linked program'#000+
+ '12014_E_Cannot extract symbol livene','ss information from program when'+
+ ' when not linking'#000+
+ '12015_F_Cannot find "$1" or "$2" to extract symbol liveness informatio'+
+ 'n from linked program'#000+
'12016_E_Error during reading symbol liveness information produced by "'+
'$1"'#000+
- '12017_F_Error executing "$1" (exitcode: $2) to extract symbol informat'+
- 'ion from linked progra','m'#000+
+ '12017_F_Error executing ','"$1" (exitcode: $2) to extract symbol inform'+
+ 'ation from linked program'#000+
'12018_E_Collection of symbol liveness information can only help when u'+
'sing smart linking, use -CX -XX'#000+
- '12019_E_Cannot create specified whole program optimisation feedback fi'+
- 'le "$1"'#000+
+ '12019_E_Cannot create specified whole program optimisation feedback ','f'+
+ 'ile "$1"'#000+
'13001_F_Can'#039't find package $1'#000+
- '13002_U_PCP file for package',' $1 found'#000+
+ '13002_U_PCP file for package $1 found'#000+
'13003_E_Duplicate package $1'#000+
'13004_E_Unit $1 can not be part of a package'#000+
'13005_N_Unit $1 is implicitely imported into package $2'#000+
- '13006_F_Failed to create PCP file $2 for package $1'#000+
+ '13006_F_Failed to create PCP fil','e $2 for package $1'#000+
'13007_F_Failed to read PCP file for package $1'#000+
- '1','3008_T_PCP loading $1'#000+
+ '13008_T_PCP loading $1'#000+
'13009_U_PCP Name: $1'#000+
'13010_U_PCP Flags: $1'#000+
'13011_U_PCP Crc: $1'#000+
'13012_U_PCP Time: $1'#000+
'13013_U_PCP File too short'#000+
- '13014_U_PCP Invalid Header (no PCP at the begin)'#000+
+ '13014_U_PCP Invalid Header (no PCP at t','he begin)'#000+
'13015_U_PCP Invalid Version $1'#000+
- '13016_U_PCP is compiled for',' another processor'#000+
+ '13016_U_PCP is compiled for another processor'#000+
'13017_U_PCP is compiled for another target'#000+
'13018_U_Writing $1'#000+
'13019_F_Can'#039't Write PCP-File'#000+
'13020_F_Error reading PCP-File'#000+
- '13021_F_Unexpected end of PCP-File'#000+
+ '13021_F_Unexpected end of PCP-F','ile'#000+
'13022_F_Invalid PCP-File entry: $1'#000+
- '13023_U_Trying to use a unit ','which was compiled with a different FPU'+
- ' mode'#000+
+ '13023_U_Trying to use a unit which was compiled with a different FPU m'+
+ 'ode'#000+
'13024_T_Packagesearch: $1'#000+
'13025_U_Required package $1'#000+
'13026_U_Contained unit $1'#000+
- '13027_E_Unit $1 is already contained in package $2'#000+
- '13028_W_Unit $1 is imported from indirectly required package $2'#000,
+ '13027_E_Unit $1 is already contained in package',' $2'#000+
+ '13028_W_Unit $1 is imported from indirectly required package $2'#000+
'13029_U_PPL filename $1'#000+
'11023_Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPC'+
'CPU'#010+
'Copyright (c) 1993-2019 by Florian Klaempfl and others'#000+
- '11024_Free Pascal Compiler version $FPCVERSION'#010+
+ '11024_Free Pascal C','ompiler version $FPCVERSION'#010+
#010+
'Compiler date : $FPCDATE'#010+
- 'Compiler ','CPU target: $FPCCPU'#010+
+ 'Compiler CPU target: $FPCCPU'#010+
#010+
'Supported targets (targets marked with '#039'{*}'#039' are under develop'+
'ment):'#010+
@@ -1374,10 +1374,10 @@ const msgtxt : array[0..000347,1..240] of char=(
'Supported CPU instruction sets:'#010+
' $INSTRUCTIONSETS'#010+
#010+
- 'Supported FPU instruction sets:'#010+
+ 'Supported FPU in','struction sets:'#010+
' $FPUINSTRUCTIONSETS'#010+
#010+
- 'Supported inline assembler mo','des:'#010+
+ 'Supported inline assembler modes:'#010+
' $ASMMODES'#010+
#010+
'Recognized compiler and RTL features:'#010+
@@ -1389,353 +1389,351 @@ const msgtxt : array[0..000347,1..240] of char=(
'Supported Optimizations:'#010+
' $OPTIMIZATIONS'#010+
#010+
- 'Supported Whole Program Optimizations:'#010+
+ 'Supported Whole Pro','gram Optimizations:'#010+
' All'#010+
' $WPOPTIMIZATIONS'#010+
#010+
- 'Supported Microcontrol','ler types:$\n $CONTROLLERTYPES$\n'#010+
+ 'Supported Microcontroller types:$\n $CONTROLLERTYPES$\n'#010+
'This program comes under the GNU General Public Licence'#010+
'For more information read COPYING.v2'#010+
#010+
'Please report bugs in our bug tracker on:'#010+
- ' http://bugs.freepascal.org'#010+
- #010+
- 'More information may be ','found on our WWW pages (including directions'+
+ ' ',' http://bugs.freepascal.org'#010+
#010+
+ 'More information may be found on our WWW pages (including directions'#010+
'for mailing lists useful for asking questions or discussing potential'#010+
'new features, etc.):'#010+
- ' http://www.freepascal.org'#000+
- '11025_F*0*_Only options valid for the default or selected pla','tform a'+
- 're listed.'#010+
+ ' http://www.freepasc','al.org'#000+
+ '11025_F*0*_Only options valid for the default or selected platform are'+
+ ' listed.'#010+
'**0*_Put + after a boolean switch option to enable it, - to disable it'+
'.'#010+
'**1@<x>_Read compiler options from <x> in addition to the default fpc.'+
'cfg'#010+
- '**1a_The compiler does not delete the generated assembler file'#010+
- '**2a5_Don'#039't g','enerate Big Obj COFF files for GNU Binutils older t'+
- 'han 2.25 (Windows, NativeNT)'#010+
+ '**1a_The',' compiler does not delete the generated assembler file'#010+
+ '**2a5_Don'#039't generate Big Obj COFF files for GNU Binutils older tha'+
+ 'n 2.25 (Windows, NativeNT)'#010+
'**2al_List sourcecode lines in assembler file'#010+
- '**2an_List node info in assembler file (-dEXTDEBUG compiler)'#010+
- '**2ao_Add an extra option to external assembler call ','(ignored for in'+
- 'ternal)'#010+
+ '**2an_List node info in assembler file (-dEXTD','EBUG compiler)'#010+
+ '**2ao_Add an extra option to external assembler call (ignored for inte'+
+ 'rnal)'#010+
'*L2ap_Use pipes instead of creating temporary assembler files'#010+
'**2ar_List register allocation/release info in assembler file'#010+
- '**2at_List temp allocation/release info in assembler file'#010+
+ '**2at_List temp allocatio','n/release info in assembler file'#010+
'**1A<x>_Output format:'#010+
- '**2Adefault_','Use default assembler'#010+
+ '**2Adefault_Use default assembler'#010+
'3*2Aas_Assemble using GNU AS'#010+
'3*2Amacho_Mach-O (Darwin, Intel 32 bit) using internal writer'#010+
'8*2Anasm_Assemble using Nasm'#010+
- '8*2Anasmobj_Assemble using Nasm'#010+
+ '8*2Anasmobj_Assemble using Nas','m'#010+
'3*2Anasm_Assemble using Nasm'#010+
- '3*2Anasmcoff_COFF (Go32v2) file using',' Nasm'#010+
+ '3*2Anasmcoff_COFF (Go32v2) file using Nasm'#010+
'3*2Anasmelf_ELF32 (Linux) file using Nasm'#010+
'3*2Anasmwin32_Win32 object file using Nasm'#010+
'3*2Anasmwdosx_Win32/WDOSX object file using Nasm'#010+
- '3*2Anasmdarwin_macho32 object file using Nasm (experimental)'#010+
+ '3*2Anasmdarwin_macho32 object fi','le using Nasm (experimental)'#010+
'3*2Awasm_Obj file using Wasm (Watcom)'#010+
- '3','*2Anasmobj_Obj file using Nasm'#010+
+ '3*2Anasmobj_Obj file using Nasm'#010+
'3*2Amasm_Obj file using Masm (Microsoft)'#010+
'3*2Atasm_Obj file using Tasm (Borland)'#010+
'3*2Aelf_ELF (Linux) using internal writer'#010+
- '3*2Acoff_COFF (Go32v2) using internal writer'#010+
- '3*2Apecoff_PE-COFF (Win32) using internal ','writer'#010+
+ '3*2Acoff_COFF (Go32','v2) using internal writer'#010+
+ '3*2Apecoff_PE-COFF (Win32) using internal writer'#010+
'3*2Ayasm_Assemble using Yasm (experimental)'#010+
'4*2Aas_Assemble using GNU AS'#010+
'4*2Agas_Assemble using GNU GAS'#010+
'4*2Agas-darwin_Assemble darwin Mach-O64 using GNU GAS'#010+
- '4*2Amasm_Win64 object file using ml64 (Microsoft)'#010+
- '4*2Apecoff_PE-COFF (Win64',') using internal writer'#010+
+ '4*2Amas','m_Win64 object file using ml64 (Microsoft)'#010+
+ '4*2Apecoff_PE-COFF (Win64) using internal writer'#010+
'4*2Aelf_ELF (Linux-64bit) using internal writer'#010+
'4*2Ayasm_Assemble using Yasm (experimental)'#010+
'4*2Anasm_Assemble using Nasm (experimental)'#010+
- '4*2Anasmwin64_Assemble Win64 object file using Nasm (experimental)'#010+
- '4*2Anasmelf_A','ssemble Linux-64bit object file using Nasm (experimenta'+
- 'l)'#010+
+ '4*2Anasmwin6','4_Assemble Win64 object file using Nasm (experimental)'#010+
+ '4*2Anasmelf_Assemble Linux-64bit object file using Nasm (experimental)'+
+ #010+
'4*2Anasmdarwin_Assemble darwin macho64 object file using Nasm (experim'+
'ental)'#010+
'6*2Aas_Unix o-file using GNU AS'#010+
- '6*2Agas_GNU Motorola assembler'#010+
+ '6*2Ag','as_GNU Motorola assembler'#010+
'6*2Amit_MIT Syntax (old GAS)'#010+
- '6*2Amot_Stand','ard Motorola assembler'#010+
+ '6*2Amot_Standard Motorola assembler'#010+
'A*2Aas_Assemble using GNU AS'#010+
'P*2Aas_Assemble using GNU AS'#010+
'S*2Aas_Assemble using GNU AS'#010+
'**1b_Generate browser info'#010+
'**2bl_Generate local symbol info'#010+
- '**1B_Build all modules'#010+
+ '**','1B_Build all modules'#010+
'**1C<x>_Code generation options:'#010+
- '**2C3_Turn on ','ieee error checking for constants'#010+
+ '**2C3_Turn on ieee error checking for constants'#010+
'**2Ca<x>_Select ABI; see fpc -i or fpc -ia for possible values'#010+
'**2Cb_Generate code for a big-endian variant of the target architectur'+
'e'#010+
- '**2Cc<x>_Set default calling convention to <x>'#010+
- '**2CD_Create also dynami','c library (not supported)'#010+
+ '**2','Cc<x>_Set default calling convention to <x>'#010+
+ '**2CD_Create also dynamic library (not supported)'#010+
'**2Ce_Compilation with emulated floating point opcodes'#010+
'**2CE_Generate FPU code which can raise exceptions'#010+
- '**2Cf<x>_Select fpu instruction set to use; see fpc -i or fpc -if for '+
- 'possible values'#010+
- '**2CF<x>_Minimal float','ing point constant precision (default, 32, 64)'+
- #010+
+ '**2Cf<x>_Select fpu instruction set to u','se; see fpc -i or fpc -if fo'+
+ 'r possible values'#010+
+ '**2CF<x>_Minimal floating point constant precision (default, 32, 64)'#010+
'**2Cg_Generate PIC code'#010+
'**2Ch<n>[,m]_<n> bytes min heap size (between 1023 and 67107840) and o'+
'ptionally [m] max heap size'#010+
- '**2Ci_IO-checking'#010+
- 'A*2CI<x>_Select instruction set on ARM: ARM or THUMB'#010,
+ '**2','Ci_IO-checking'#010+
+ 'A*2CI<x>_Select instruction set on ARM: ARM or THUMB'#010+
'L*2CL<x>_LLVM code generation options'#010+
'L*3CLflto_Enable Link-time optimisation (needed both when compiling un'+
'its and programs/libraries)'#010+
- 'L*3CLfltonosystem_Disable LTO for the system unit (needed with at leas'+
- 't Xcode 10.2 and earlier due to li','nker bugs)'#010+
+ 'L*3CLfltonosystem_Disable LTO for th','e system unit (needed with at le'+
+ 'ast Xcode 10.2 and earlier due to linker bugs)'#010+
'L*3CLv<x>_LLVM target version: 3.3, 3.4, .., Xcode-6.4, .., Xcode-10.1'+
', 7.0, 8.0'#010+
'**2Cn_Omit linking stage'#010+
'P*2CN_Generate nil-pointer checks (AIX-only)'#010+
- '**2Co_Check overflow of integer operations'#010+
- '**2CO_Check for possible overflow o','f integer operations'#010+
+ '**2Co_Chec','k overflow of integer operations'#010+
+ '**2CO_Check for possible overflow of integer operations'#010+
'**2Cp<x>_Select instruction set; see fpc -i or fpc -ic for possible va'+
'lues'#010+
'**2CP<x>=<y>_ packing settings'#010+
- '**3CPPACKSET=<y>_ <y> set allocation: 0, 1 or DEFAULT or NORMAL, 2, 4 '+
- 'and 8'#010+
- '**3CPPACKENUM=<y>_ <y> enum packing: ','0, 1, 2 and 4 or DEFAULT or NOR'+
- 'MAL'#010+
+ '**3CPPACKSET=<y>_ <y> set allocation: 0, 1 or',' DEFAULT or NORMAL, 2, '+
+ '4 and 8'#010+
+ '**3CPPACKENUM=<y>_ <y> enum packing: 0, 1, 2 and 4 or DEFAULT or NORMA'+
+ 'L'#010+
'**3CPPACKRECORD=<y>_ <y> record packing: 0 or DEFAULT or NORMAL, 1, 2,'+
' 4, 8, 16 and 32'#010+
'**2Cr_Range checking'#010+
- '**2CR_Verify object method call validity'#010+
+ '**2CR_Verify object method ca','ll validity'#010+
'**2Cs<n>_Set stack checking size to <n>'#010+
- '**2Ct_Stack chec','king (for testing only, see manual)'#010+
+ '**2Ct_Stack checking (for testing only, see manual)'#010+
'8*2CT<x>_Target-specific code generation options'#010+
'3*2CT<x>_Target-specific code generation options'#010+
- '4*2CT<x>_Target-specific code generation options'#010+
+ '4*2CT<x>_Target-specific code generati','on options'#010+
'p*2CT<x>_Target-specific code generation options'#010+
- 'P*2CT<x>','_Target-specific code generation options'#010+
+ 'P*2CT<x>_Target-specific code generation options'#010+
'J*2CT<x>_Target-specific code generation options'#010+
'A*2CT<x>_Target-specific code generation options'#010+
- 'p*3CTsmalltoc_ Generate smaller TOCs at the expense of execution speed'+
- ' (AIX)'#010+
- 'P*3CTsmalltoc_ Generate ','smaller TOCs at the expense of execution spe'+
+ 'p*3CTsmalltoc_ Generate smaller T','OCs at the expense of execution spe'+
'ed (AIX)'#010+
+ 'P*3CTsmalltoc_ Generate smaller TOCs at the expense of execution speed'+
+ ' (AIX)'#010+
'J*3CTautogetterprefix=X_ Automatically create getters for properties '+
'with prefix X (empty string disables)'#010+
- 'J*3CTautosetterprefix=X_ Automatically create setters for properties '+
- 'with pref','ix X (empty string disables)'#010+
+ 'J*3CTautose','tterprefix=X_ Automatically create setters for propertie'+
+ 's with prefix X (empty string disables)'#010+
'8*3CTcld_ Emit a CLD instruction before using the x86 '+
'string instructions'#010+
- '3*3CTcld_ Emit a CLD instruction before using the x86 '+
- 'string instructions'#010+
- '4*3CTcld_ Emit ','a CLD instruction before using the x8'+
+ '3*3CTcld_ Emit a CLD instruction befo','re using the x8'+
'6 string instructions'#010+
+ '4*3CTcld_ Emit a CLD instruction before using the x86 '+
+ 'string instructions'#010+
'8*3CTfarprocspushoddbp_ Increment BP before pushing it in the pr'+
'ologue of far functions'#010+
- 'J*3CTcompactintarrayinit_ Generate smaller (but potentially slower) co'+
- 'de for initializi','ng integer array constants'#010+
+ 'J*3CTcompactintarra','yinit_ Generate smaller (but potentially slower) '+
+ 'code for initializing integer array constants'#010+
'J*3CTenumfieldinit_ Initialize enumeration fields in constructor'+
's to enumtype(0), after calling inherited constructors'#010+
- 'J*3CTinitlocals_ Initialize local variables that trigger a JV'+
- 'M bytecode verific','ation error if used uninitialized (slows down code'+
+ 'J*3CTinitlocals_ ',' Initialize local variables that trigger a '+
+ 'JVM bytecode verification error if used uninitialized (slows down code'+
')'#010+
'J*3CTlowercaseprocstart_ Lowercase the first character of procedure/f'+
'unction/method names'#010+
- 'A*3CTthumbinterworking_ Generate Thumb interworking-safe code if possi'+
- 'ble'#010+
- 'J*2Cv_Var/out parameter',' copy-out checking'#010+
+ 'A*3CTthumbinterworking_ Gener','ate Thumb interworking-safe code if pos'+
+ 'sible'#010+
+ 'J*2Cv_Var/out parameter copy-out checking'#010+
'**2CX_Create also smartlinked library'#010+
'**1d<x>_Defines the symbol <x>'#010+
'**1D_Generate a DEF file'#010+
'**2Dd<x>_Set description to <x>'#010+
- '**2Dv<x>_Set DLL version to <x>'#010+
+ '**2Dv<x>_Set DLL version to',' <x>'#010+
'*O2Dw_PM application'#010+
'**1e<x>_Set path to executable'#010+
- '**1E_Same a','s -Cn'#010+
+ '**1E_Same as -Cn'#010+
'**1fPIC_Same as -Cg'#010+
'**1F<x>_Set file names and paths:'#010+
'**2Fa<x>[,y]_(for a program) load units <x> and [y] before uses is par'+
'sed'#010+
'**2Fc<x>_Set input codepage to <x>'#010+
- '**2FC<x>_Set RC compiler binary name to <x>'#010+
- '**2Fd_Disable the compiler'#039,'s internal directory cache'#010+
+ '**2','FC<x>_Set RC compiler binary name to <x>'#010+
+ '**2Fd_Disable the compiler'#039's internal directory cache'#010+
'**2FD<x>_Set the directory where to search for compiler utilities'#010+
'**2Fe<x>_Redirect error output to <x>'#010+
- '**2Ff<x>_Add <x> to framework path (Darwin only)'#010+
+ '**2Ff<x>_Add <x> to framework path (Darwi','n only)'#010+
'**2FE<x>_Set exe/unit output path to <x>'#010+
- '**2Fi<x>_Add <x> to',' include path'#010+
+ '**2Fi<x>_Add <x> to include path'#010+
'**2Fl<x>_Add <x> to library path'#010+
'**2FL<x>_Use <x> as dynamic linker'#010+
'**2Fm<x>_Load unicode conversion table from <x>.txt in the compiler di'+
'r'#010+
- '**2FM<x>_Set the directory where to search for unicode binary files'#010+
- '**2FN<x>_Add <x> t','o list of default unit scopes (namespaces)'#010+
+ '**2FM<x>_Set the d','irectory where to search for unicode binary files'#010+
+ '**2FN<x>_Add <x> to list of default unit scopes (namespaces)'#010+
'**2Fo<x>_Add <x> to object path'#010+
'**2Fr<x>_Load error message file <x>'#010+
'**2FR<x>_Set resource (.res) linker to <x>'#010+
- '**2Fu<x>_Add <x> to unit path'#010+
+ '**2Fu<x>_Add <x> ','to unit path'#010+
'**2FU<x>_Set unit output path to <x>, overrides -FE'#010+
- '**2','FW<x>_Store generated whole-program optimization feedback in <x>'#010+
+ '**2FW<x>_Store generated whole-program optimization feedback in <x>'#010+
'**2Fw<x>_Load previously stored whole-program optimization feedback fr'+
'om <x>'#010+
- '*g1g_Generate debug information (default format for target)'#010+
- '*g2gc_Generate checks for pointers (ex','perimental, only available on '+
- 'some targets, might generate false positive)'#010+
+ '*g1g_Generate debug informatio','n (default format for target)'#010+
+ '*g2gc_Generate checks for pointers (experimental, only available on so'+
+ 'me targets, might generate false positive)'#010+
'*g2gh_Use heaptrace unit (for memory leak/corruption debugging)'#010+
- '*g2gl_Use line info unit (show more info with backtraces)'#010+
- '*g2gm_Generate Microsoft CodeView debug inf','ormation (experimental)'#010+
+ '*g2gl_Use line info unit (show mo','re info with backtraces)'#010+
+ '*g2gm_Generate Microsoft CodeView debug information (experimental)'#010+
'*g2go<x>_Set debug information options'#010+
'*g3godwarfsets_ Enable DWARF '#039'set'#039' type debug information (bre'+
'aks gdb < 6.5)'#010+
- '*g3gostabsabsincludes_ Store absolute/full include file paths in Stabs'+
- #010+
- '*g3godwarfmethodclassprefix_ ','Prefix method names in DWARF with class'+
- ' name'#010+
+ '*g3gostabsabsincludes_ Store abs','olute/full include file paths in Sta'+
+ 'bs'#010+
+ '*g3godwarfmethodclassprefix_ Prefix method names in DWARF with class n'+
+ 'ame'#010+
'*g3godwarfcpp_ Simulate C++ debug information in DWARF'#010+
'*g3godwarfomflinnum_ Generate line number information in OMF LINNUM re'+
- 'cords in MS LINK format in addition to the DWARF debug information (Op',
- 'en Watcom Debugger/Linker compatibility)'#010+
+ 'co','rds in MS LINK format in addition to the DWARF debug information ('+
+ 'Open Watcom Debugger/Linker compatibility)'#010+
'*g2gp_Preserve case in stabs symbol names'#010+
'*g2gs_Generate Stabs debug information'#010+
- '*g2gt_Trash local variables (to detect uninitialized uses; multiple '#039+
- 't'#039' changes the trashing value)'#010+
- '*g2gv_Generates pr','ograms traceable with Valgrind'#010+
+ '*g2gt_Trash local variables (to detect uninitializ','ed uses; multiple '+
+ #039't'#039' changes the trashing value)'#010+
+ '*g2gv_Generates programs traceable with Valgrind'#010+
'*g2gw_Generate DWARFv2 debug information (same as -gw2)'#010+
'*g2gw2_Generate DWARFv2 debug information'#010+
'*g2gw3_Generate DWARFv3 debug information'#010+
- '*g2gw4_Generate DWARFv4 debug information (experimental)'#010+
- '**1i_Informa','tion'#010+
+ '*','g2gw4_Generate DWARFv4 debug information (experimental)'#010+
+ '**1i_Information'#010+
'**2iD_Return compiler date'#010+
'**2iSO_Return compiler OS'#010+
'**2iSP_Return compiler host processor'#010+
'**2iTO_Return target OS'#010+
'**2iTP_Return target processor'#010+
- '**2iV_Return short compiler version'#010+
+ '**2iV_Return short co','mpiler version'#010+
'**2iW_Return full compiler version'#010+
- '**2ia_Return list ','of supported ABI targets'#010+
+ '**2ia_Return list of supported ABI targets'#010+
'**2ic_Return list of supported CPU instruction sets'#010+
'**2if_Return list of supported FPU instruction sets'#010+
- '**2ii_Return list of supported inline assembler modes'#010+
+ '**2ii_Return list of supported inline assem','bler modes'#010+
'**2io_Return list of supported optimizations'#010+
- '**2ir_Return',' list of recognized compiler and RTL features'#010+
+ '**2ir_Return list of recognized compiler and RTL features'#010+
'**2it_Return list of supported targets'#010+
'**2iu_Return list of supported microcontroller types'#010+
- '**2iw_Return list of supported whole program optimizations'#010+
+ '**2iw_Return list of supported who','le program optimizations'#010+
'**1I<x>_Add <x> to include path'#010+
- '**1k<x>_Pas','s <x> to the linker'#010+
+ '**1k<x>_Pass <x> to the linker'#010+
'**1l_Write logo'#010+
'**1M<x>_Set language mode to <x>'#010+
'**2Mfpc_Free Pascal dialect (default)'#010+
'**2Mobjfpc_FPC mode with Object Pascal support'#010+
- '**2Mdelphi_Delphi 7 compatibility mode'#010+
+ '**2Mdelphi_Delphi ','7 compatibility mode'#010+
'**2Mtp_TP/BP 7.0 compatibility mode'#010+
- '**2Mmacpas_','Macintosh Pascal dialects compatibility mode'#010+
+ '**2Mmacpas_Macintosh Pascal dialects compatibility mode'#010+
'**2Miso_ISO 7185 mode'#010+
'**2Mextendedpascal_ISO 10206 mode'#010+
'**2Mdelphiunicode_Delphi 2009 and later compatibility mode'#010+
- '**1n_Do not read the default config files'#010+
- '**1o<x>_Change the name of the executa','ble produced to <x>'#010+
+ '**1n_Do not ','read the default config files'#010+
+ '**1o<x>_Change the name of the executable produced to <x>'#010+
'**1O<x>_Optimizations:'#010+
'**2O-_Disable optimizations'#010+
'**2O1_Level 1 optimizations (quick and debugger friendly)'#010+
- '**2O2_Level 2 optimizations (-O1 + quick optimizations)'#010+
- '**2O3_Level 3 optimizations (-O2 + slow optimizations)'#010,
+ '**2O2_Level 2 optimizations (-O1 + quick op','timizations)'#010+
+ '**2O3_Level 3 optimizations (-O2 + slow optimizations)'#010+
'**2O4_Level 4 optimizations (-O3 + optimizations which might have unex'+
'pected side effects)'#010+
'**2Oa<x>=<y>_Set alignment'#010+
- '**2Oo[NO]<x>_Enable or disable optimizations; see fpc -i or fpc -io fo'+
- 'r possible values'#010+
- '**2Op<x>_Set target cpu for optimi','zing; see fpc -i or fpc -ic for po'+
- 'ssible values'#010+
+ '**2Oo[NO]<x>_Enable or disable optimizations; see fpc ','-i or fpc -io '+
+ 'for possible values'#010+
+ '**2Op<x>_Set target cpu for optimizing; see fpc -i or fpc -ic for poss'+
+ 'ible values'#010+
'**2OW<x>_Generate whole-program optimization feedback for optimization'+
' <x>; see fpc -i or fpc -iw for possible values'#010+
- '**2Ow<x>_Perform whole-program optimization <x>; see fpc -i or fpc -iw'+
- ' for',' possible values'#010+
+ '**2Ow<','x>_Perform whole-program optimization <x>; see fpc -i or fpc -'+
+ 'iw for possible values'#010+
'**2Os_Optimize for size rather than speed'#010+
'**1pg_Generate profile code for gprof (defines FPC_PROFILE)'#010+
'F*1P<x>_Target CPU / compiler related options:'#010+
- 'F*2PB_Show default compiler binary'#010+
+ 'F*2PB_','Show default compiler binary'#010+
'F*2PP_Show default target cpu'#010+
- 'F*2P<x>_S','et target CPU (aarch64,arm,avr,i386,i8086,jvm,m68k,mips,mip'+
- 'sel,powerpc,powerpc64,sparc,x86_64)'#010+
+ 'F*2P<x>_Set target CPU (aarch64,arm,avr,i386,i8086,jvm,m68k,mips,mipse'+
+ 'l,powerpc,powerpc64,sparc,x86_64)'#010+
'**1R<x>_Assembler reading style:'#010+
- '**2Rdefault_Use default assembler for target'#010+
+ '**2Rdefault_Use default assembler for target',#010+
'3*2Ratt_Read AT&T style assembler'#010+
- '3*2Rintel_Read Intel style assemb','ler'#010+
+ '3*2Rintel_Read Intel style assembler'#010+
'4*2Ratt_Read AT&T style assembler'#010+
'4*2Rintel_Read Intel style assembler'#010+
'8*2Ratt_Read AT&T style assembler'#010+
'8*2Rintel_Read Intel style assembler'#010+
- '6*2RMOT_Read Motorola style assembler'#010+
+ '6*2RMOT_Read Motorola styl','e assembler'#010+
'**1S<x>_Syntax options:'#010+
'**2S2_Same as -Mobjfpc'#010+
- '**2Sc_Sup','port operators like C (*=,+=,/= and -=)'#010+
+ '**2Sc_Support operators like C (*=,+=,/= and -=)'#010+
'**2Sa_Turn on assertions'#010+
'**2Sd_Same as -Mdelphi'#010+
'**2Se<x>_Error options. <x> is a combination of the following:'#010+
- '**3*_<n> : Compiler halts after the <n> errors (default is 1)'#010+
- '**3*_w : Compiler also halt','s after warnings'#010+
+ '**3*_<n> : Compiler h','alts after the <n> errors (default is 1)'#010+
+ '**3*_w : Compiler also halts after warnings'#010+
'**3*_n : Compiler also halts after notes'#010+
'**3*_h : Compiler also halts after hints'#010+
'**2Sf_Enable certain features in compiler and RTL; see fpc -i or fpc -'+
- 'ir for possible values)'#010+
- '**2Sg_Enable LABEL and GOTO (default in -Mtp an','d -Mdelphi)'#010+
+ 'ir ','for possible values)'#010+
+ '**2Sg_Enable LABEL and GOTO (default in -Mtp and -Mdelphi)'#010+
'**2Sh_Use reference counted strings (ansistring by default) instead of'+
' shortstrings'#010+
'**2Si_Turn on inlining of procedures/functions declared as "inline"'#010+
- '**2Sj_Allows typed constants to be writeable (default in all modes)'#010+
- '**2Sk_Lo','ad fpcylix unit'#010+
+ '**2Sj_Al','lows typed constants to be writeable (default in all modes)'#010+
+ '**2Sk_Load fpcylix unit'#010+
'**2SI<x>_Set interface style to <x>'#010+
'**3SIcom_COM compatible interface (default)'#010+
'**3SIcorba_CORBA compatible interface'#010+
'**2Sm_Support macros like C (global)'#010+
- '**2So_Same as -Mtp'#010+
+ '*','*2So_Same as -Mtp'#010+
'**2Sr_Transparent file names in ISO mode'#010+
- '**2Ss_Con','structor name must be init (destructor must be done)'#010+
+ '**2Ss_Constructor name must be init (destructor must be done)'#010+
'**2Sv_Support vector processing (use CPU vector extensions if availabl'+
'e)'#010+
- '**2Sx_Enable exception keywords (default in Delphi/ObjFPC modes)'#010+
- '**2Sy_@<pointer> returns a typed pointer, same as',' $T+'#010+
+ '**2Sx_Enable exception keywords (default in De','lphi/ObjFPC modes)'#010+
+ '**2Sy_@<pointer> returns a typed pointer, same as $T+'#010+
'**1s_Do not call assembler and linker'#010+
'**2sh_Generate script to link on host'#010+
'**2st_Generate script to link on target'#010+
- '**2sr_Skip register allocation phase (use with -alr)'#010+
+ '**2sr_Skip register allocation phase (use with -alr',')'#010+
'**1T<x>_Target operating system:'#010+
'3*2Tandroid_Android'#010+
- '3*2Taros_AROS',#010+
+ '3*2Taros_AROS'#010+
'3*2Tbeos_BeOS'#010+
'3*2Tdarwin_Darwin/Mac OS X'#010+
'3*2Tembedded_Embedded'#010+
'3*2Temx_OS/2 via EMX (including EMX/RSX extender)'#010+
'3*2Tfreebsd_FreeBSD'#010+
- '3*2Tgo32v2_Version 2 of DJ Delorie DOS extender'#010+
+ '3*2Tgo32v2_Version 2 of DJ Delorie DOS',' extender'#010+
'3*2Thaiku_Haiku'#010+
- '3*2Tiphonesim_iPhoneSimulator from iOS SDK',' 3.2+ (older versions: -Td'+
- 'arwin)'#010+
+ '3*2Tiphonesim_iPhoneSimulator from iOS SDK 3.2+ (older versions: -Tdar'+
+ 'win)'#010+
'3*2Tlinux_Linux'#010+
'3*2Tnativent_Native NT API (experimental)'#010+
'3*2Tnetbsd_NetBSD'#010+
'3*2Tnetware_Novell Netware Module (clib)'#010+
- '3*2Tnetwlibc_Novell Netware Module (libc)'#010+
+ '3*2Tnetwlibc_Novell Ne','tware Module (libc)'#010+
'3*2Topenbsd_OpenBSD'#010+
'3*2Tos2_OS/2 / eComStation'#010+
- '3','*2Tsymbian_Symbian OS'#010+
+ '3*2Tsymbian_Symbian OS'#010+
'3*2Tsolaris_Solaris'#010+
'3*2Twatcom_Watcom compatible DOS extender'#010+
'3*2Twdosx_WDOSX DOS extender'#010+
'3*2Twin32_Windows 32 Bit'#010+
'3*2Twince_Windows CE'#010+
- '4*2Taros_AROS'#010+
+ '4*2Taros_AROS',#010+
'4*2Tdarwin_Darwin/Mac OS X'#010+
'4*2Tdragonfly_DragonFly BSD'#010+
- '4*2Tembedded','_Embedded'#010+
+ '4*2Tembedded_Embedded'#010+
'4*2Tfreebsd_FreeBSD'#010+
'4*2Tiphonesim_iPhoneSimulator'#010+
'4*2Tlinux_Linux'#010+
'4*2Tnetbsd_NetBSD'#010+
'4*2Topenbsd_OpenBSD'#010+
'4*2Tsolaris_Solaris'#010+
- '4*2Twin64_Win64 (64 bit Windows systems)'#010+
+ '4*2Twin64_Win64 (64 bit Windows system','s)'#010+
'6*2Tamiga_Commodore Amiga'#010+
'6*2Tatari_Atari ST/STe/TT'#010+
- '6*2Tembedded_','Embedded'#010+
+ '6*2Tembedded_Embedded'#010+
'6*2Tlinux_Linux'#010+
'6*2Tnetbsd_NetBSD'#010+
'6*2Tmacos_Mac OS'#010+
@@ -1743,10 +1741,10 @@ const msgtxt : array[0..000347,1..240] of char=(
'8*2Tembedded_Embedded'#010+
'8*2Tmsdos_MS-DOS (and compatible)'#010+
'8*2Twin16_Windows 16 Bit'#010+
- 'A*2Tandroid_Android'#010+
+ 'A*2Tandroid_A','ndroid'#010+
'A*2Taros_AROS'#010+
'A*2Tdarwin_Darwin/iPhoneOS/iOS'#010+
- 'A*2Tembedded_Emb','edded'#010+
+ 'A*2Tembedded_Embedded'#010+
'A*2Tgba_Game Boy Advance'#010+
'A*2Tlinux_Linux'#010+
'A*2Tnds_Nintendo DS'#010+
@@ -1755,11 +1753,11 @@ const msgtxt : array[0..000347,1..240] of char=(
'A*2Tsymbian_Symbian'#010+
'A*2Twince_Windows CE'#010+
'a*2Tdarwin_Darwin/iOS'#010+
- 'a*2Tlinux_Linux'#010+
+ 'a*2Tli','nux_Linux'#010+
'J*2Tandroid_Android'#010+
'J*2Tjava_Java'#010+
'm*2Tandroid_Android'#010+
- 'm*2T','embedded_Embedded'#010+
+ 'm*2Tembedded_Embedded'#010+
'm*2Tlinux_Linux'#010+
'M*2Tembedded_Embedded'#010+
'M*2Tlinux_Linux'#010+
@@ -1768,10 +1766,10 @@ const msgtxt : array[0..000347,1..240] of char=(
'P*2Tdarwin_Darwin/Mac OS X'#010+
'P*2Tembedded_Embedded'#010+
'P*2Tlinux_Linux'#010+
- 'P*2Tmacos_Mac OS (classic)'#010+
+ 'P*2Tm','acos_Mac OS (classic)'#010+
'P*2Tmorphos_MorphOS'#010+
'P*2Tnetbsd_NetBSD'#010+
- 'P*2Twii_','Wii'#010+
+ 'P*2Twii_Wii'#010+
'p*2Taix_AIX'#010+
'p*2Tdarwin_Darwin/Mac OS X'#010+
'p*2Tembedded_Embedded'#010+
@@ -1780,149 +1778,148 @@ const msgtxt : array[0..000347,1..240] of char=(
'R*2Tembedded_Embedded'#010+
'r*2Tlinux_Linux'#010+
'r*2Tembedded_Embedded'#010+
- 'S*2Tlinux_Linux'#010+
+ 'S*2Tlinux_Linux',#010+
'S*2Tsolaris_Solaris'#010+
's*2Tlinux_Linux'#010+
'V*2Tembedded_Embedded'#010+
- '**1u<x>_U','ndefines the symbol <x>'#010+
+ '**1u<x>_Undefines the symbol <x>'#010+
'**1U_Unit options:'#010+
'**2Un_Do not check where the unit name matches the file name'#010+
'**2Ur_Generate release unit files (never automatically recompiled)'#010+
- '**2Us_Compile a system unit'#010+
- '**1v<x>_Be verbose. <x> is a combination ','of the following letters:'#010+
+ '*','*2Us_Compile a system unit'#010+
+ '**1v<x>_Be verbose. <x> is a combination of the following letters:'#010+
'**2*_e : Show errors (default) 0 : Show nothing (except errors)'#010+
'**2*_w : Show warnings u : Show unit info'#010+
- '**2*_n : Show notes t : Show tried/used files'#010+
- '**2*_h : Show hints ',' c : Show conditionals'#010+
+ '**2*_n : Show notes ',' t : Show tried/used files'#010+
+ '**2*_h : Show hints c : Show conditionals'#010+
'**2*_i : Show general info d : Show debug info'#010+
'**2*_l : Show linenumbers r : Rhide/GCC compatibility mode'#010+
- '**2*_s : Show time stamps q : Show message numbers'#010+
- '**2*_a : Show eve','rything x : Show info about invoked too'+
- 'ls'#010+
+ '**2*_s : Sh','ow time stamps q : Show message numbers'#010+
+ '**2*_a : Show everything x : Show info about invoked tools'+
+ #010+
'**2*_b : Write file names messages p : Write tree.log with parse tre'+
'e'#010+
- '**2*_ with full path v : Write fpcdebug.txt with'#010+
- '**2*_z : Write output to stderr lots of ','debugging info'#010+
+ '**2*_ with full path v : Write',' fpcdebug.txt with'#010+
+ '**2*_z : Write output to stderr lots of debugging info'#010+
'**2*_m<x>,<y> : Do not show messages numbered <x> and <y>'#010+
'F*1V<x>_Append '#039'-<x>'#039' to the used compiler binary name (e.g. f'+
'or version)'#010+
- '**1W<x>_Target-specific options (targets)'#010+
+ '**1W<x>_Target-specific o','ptions (targets)'#010+
'3*2WA_Specify native type application (Windows)'#010+
- '4*2','WA_Specify native type application (Windows)'#010+
+ '4*2WA_Specify native type application (Windows)'#010+
'A*2WA_Specify native type application (Windows)'#010+
'3*2Wb_Create a bundle instead of a library (Darwin)'#010+
- 'P*2Wb_Create a bundle instead of a library (Darwin)'#010+
- 'p*2Wb_Create a bundle instead of a library ','(Darwin)'#010+
+ 'P*2Wb_Create a bundle inste','ad of a library (Darwin)'#010+
+ 'p*2Wb_Create a bundle instead of a library (Darwin)'#010+
'a*2Wb_Create a bundle instead of a library (Darwin)'#010+
'A*2Wb_Create a bundle instead of a library (Darwin)'#010+
'4*2Wb_Create a bundle instead of a library (Darwin)'#010+
- '3*2WB_Create a relocatable image (Windows, Symbian)'#010+
- '3*2WB<x>_Set image base',' to <x> (Windows, Symbian)'#010+
+ '3*2WB_C','reate a relocatable image (Windows, Symbian)'#010+
+ '3*2WB<x>_Set image base to <x> (Windows, Symbian)'#010+
'4*2WB_Create a relocatable image (Windows)'#010+
'4*2WB<x>_Set image base to <x> (Windows)'#010+
'A*2WB_Create a relocatable image (Windows, Symbian)'#010+
- 'A*2WB<x>_Set image base to <x> (Windows, Symbian)'#010+
- '3*2WC_Specify console type ','application (EMX, OS/2, Windows)'#010+
+ 'A*2WB<x>_','Set image base to <x> (Windows, Symbian)'#010+
+ '3*2WC_Specify console type application (EMX, OS/2, Windows)'#010+
'4*2WC_Specify console type application (Windows)'#010+
'A*2WC_Specify console type application (Windows)'#010+
- 'P*2WC_Specify console type application (Classic Mac OS)'#010+
- '3*2WD_Use DEFFILE to export functions of DLL or EXE (','Windows)'#010+
+ 'P*2WC_Specify console type application (C','lassic Mac OS)'#010+
+ '3*2WD_Use DEFFILE to export functions of DLL or EXE (Windows)'#010+
'4*2WD_Use DEFFILE to export functions of DLL or EXE (Windows)'#010+
'A*2WD_Use DEFFILE to export functions of DLL or EXE (Windows)'#010+
'3*2We_Use external resources (Darwin)'#010+
- '4*2We_Use external resources (Darwin)'#010+
- 'a*2We_Use external resources (D','arwin)'#010+
+ '4','*2We_Use external resources (Darwin)'#010+
+ 'a*2We_Use external resources (Darwin)'#010+
'A*2We_Use external resources (Darwin)'#010+
'P*2We_Use external resources (Darwin)'#010+
'p*2We_Use external resources (Darwin)'#010+
- '3*2WF_Specify full-screen type application (EMX, OS/2)'#010+
+ '3*2WF_Specify full-screen type application (EMX, OS','/2)'#010+
'3*2WG_Specify graphic type application (EMX, OS/2, Windows)'#010+
- '4*2W','G_Specify graphic type application (Windows)'#010+
+ '4*2WG_Specify graphic type application (Windows)'#010+
'A*2WG_Specify graphic type application (Windows)'#010+
'P*2WG_Specify graphic type application (Classic Mac OS)'#010+
- '3*2Wi_Use internal resources (Darwin)'#010+
+ '3*2Wi_Use internal res','ources (Darwin)'#010+
'4*2Wi_Use internal resources (Darwin)'#010+
- 'a*2Wi_Use inte','rnal resources (Darwin)'#010+
+ 'a*2Wi_Use internal resources (Darwin)'#010+
'A*2Wi_Use internal resources (Darwin)'#010+
'P*2Wi_Use internal resources (Darwin)'#010+
'p*2Wi_Use internal resources (Darwin)'#010+
- '3*2WI_Turn on/off the usage of import sections (Windows)'#010+
- '4*2WI_Turn on/off the usage of import section','s (Windows)'#010+
+ '3*2WI_Turn on/off the usage of imp','ort sections (Windows)'#010+
+ '4*2WI_Turn on/off the usage of import sections (Windows)'#010+
'A*2WI_Turn on/off the usage of import sections (Windows)'#010+
'8*2Wh_Use huge code for units (ignored for models with CODE in a uniqu'+
'e segment)'#010+
- '8*2Wm<x>_Set memory model'#010+
+ '8*2Wm<x>_Set memory mo','del'#010+
'8*3WmTiny_Tiny memory model'#010+
- '8*3WmSmall_Small memory model (defau','lt)'#010+
+ '8*3WmSmall_Small memory model (default)'#010+
'8*3WmMedium_Medium memory model'#010+
'8*3WmCompact_Compact memory model'#010+
'8*3WmLarge_Large memory model'#010+
'8*3WmHuge_Huge memory model'#010+
- '3*2WM<x>_Minimum Mac OS X deployment version: 10.4, 10.5.1, ... (Darwi'+
- 'n)'#010+
- '4*2WM<x>_Minimum Mac OS X deployment ve','rsion: 10.4, 10.5.1, ... (Dar'+
+ '3*2WM<x>_Minimum Mac OS X deployment version',': 10.4, 10.5.1, ... (Dar'+
'win)'#010+
- 'p*2WM<x>_Minimum Mac OS X deployment version: 10.4, 10.5.1, ... (Darwi'+
+ '4*2WM<x>_Minimum Mac OS X deployment version: 10.4, 10.5.1, ... (Darwi'+
'n)'#010+
- 'P*2WM<x>_Minimum Mac OS X deployment version: 10.4, 10.5.1, ... (Darwi'+
+ 'p*2WM<x>_Minimum Mac OS X deployment version: 10.4, 10.5.1, ... (Darwi'+
'n)'#010+
- '3*2WN_Do not generate relocation code, needed for debugging ','(Windows'+
- ')'#010+
+ 'P*2WM<x>_Minimum Mac OS X deployment version: 10.4, 10.5.1, ... (','Dar'+
+ 'win)'#010+
+ '3*2WN_Do not generate relocation code, needed for debugging (Windows)'#010+
'4*2WN_Do not generate relocation code, needed for debugging (Windows)'#010+
'A*2WN_Do not generate relocation code, needed for debugging (Windows)'#010+
- 'A*2Wp<x>_Specify the controller type; see fpc -i or fpc -iu for possib'+
- 'le values'#010+
- 'm*2Wp<x>_S','pecify the controller type; see fpc -i or fpc -iu for poss'+
+ 'A*2Wp<x>_Specify the c','ontroller type; see fpc -i or fpc -iu for poss'+
'ible values'#010+
+ 'm*2Wp<x>_Specify the controller type; see fpc -i or fpc -iu for possib'+
+ 'le values'#010+
'V*2Wp<x>_Specify the controller type; see fpc -i or fpc -iu for possib'+
'le values'#010+
- '3*2WP<x>_Minimum iOS deployment version: 3.0, 5.0.1, ... (iphonesim)'#010+
- '4*2WP<x>_Minimum iOS ','deployment version: 8.0, 8.0.2, ... (iphonesim)'+
+ '3*2WP<x>_Minimum iOS d','eployment version: 3.0, 5.0.1, ... (iphonesim)'+
#010+
+ '4*2WP<x>_Minimum iOS deployment version: 8.0, 8.0.2, ... (iphonesim)'#010+
'a*2WP<x>_Minimum iOS deployment version: 7.0, 7.1.2, ... (Darwin)'#010+
- 'A*2WP<x>_Minimum iOS deployment version: 3.0, 5.0.1, ... (Darwin)'#010+
+ 'A*2WP<x>_Minimum iOS deployment version: 3.0, 5.0.1, ... (','Darwin)'#010+
'3*2WR_Generate relocation code (Windows)'#010+
- '4*2WR_Generate relo','cation code (Windows)'#010+
+ '4*2WR_Generate relocation code (Windows)'#010+
'A*2WR_Generate relocation code (Windows)'#010+
'8*2Wt<x>_Set the target executable format'#010+
'8*3Wtexe_Create a DOS .EXE file (default)'#010+
- '8*3Wtcom_Create a DOS .COM file (requires tiny memory model)'#010+
- 'P*2WT_Specify MPW tool type appl','ication (Classic Mac OS)'#010+
+ '8*3Wtcom_Create a DOS .CO','M file (requires tiny memory model)'#010+
+ 'P*2WT_Specify MPW tool type application (Classic Mac OS)'#010+
'**2WX_Enable executable stack (Linux)'#010+
'**1X_Executable options:'#010+
'**2X9_Generate linkerscript for GNU Binutils ld older than version 2.1'+
'9.1 (Linux)'#010+
- '**2Xc_Pass --shared/-dynamic to the linker (BeOS, Darwin, FreeBSD, Lin',
- 'ux)'#010+
+ '**','2Xc_Pass --shared/-dynamic to the linker (BeOS, Darwin, FreeBSD, L'+
+ 'inux)'#010+
'**2Xd_Do not search default library path (sometimes required for cross'+
'-compiling when not using -XR)'#010+
'**2Xe_Use external linker'#010+
- '**2Xf_Substitute pthread library name for linking (BSD)'#010+
- '**2Xg_Create debuginfo in a separate file and add a d','ebuglink sectio'+
- 'n to executable'#010+
+ '**2Xf_Substitute pthread library name for',' linking (BSD)'#010+
+ '**2Xg_Create debuginfo in a separate file and add a debuglink section '+
+ 'to executable'#010+
'**2XD_Try to link units dynamically (defines FPC_LINK_DYNAMIC)'#010+
'**2Xi_Use internal linker'#010+
- '**2XLA_Define library substitutions for linking'#010+
+ '**2XLA_Define library substitutions for linking',#010+
'**2XLO_Define order of library linking'#010+
- '**2XLD_Exclude default order',' of standard libraries'#010+
+ '**2XLD_Exclude default order of standard libraries'#010+
'**2Xm_Generate link map'#010+
'**2XM<x>_Set the name of the '#039'main'#039' program routine (default i'+
's '#039'main'#039')'#010+
- '**2Xn_Use target system native linker instead of GNU ld (Solaris, AIX)'+
- #010+
- 'F*2Xp<x>_First search for the compiler binary in t','he directory <x>'#010+
+ '**2Xn_Use target system native linker instead of GNU ','ld (Solaris, AI'+
+ 'X)'#010+
+ 'F*2Xp<x>_First search for the compiler binary in the directory <x>'#010+
'**2XP<x>_Prepend the binutils names with the prefix <x>'#010+
'**2Xr<x>_Set the linker'#039's rlink-path to <x> (needed for cross comp'+
- 'ile, see the ld manual for more information) (BeOS, Linux)'#010+
- '**2XR<x>_Prepend <x> to all linker search ','paths (BeOS, Darwin, FreeB'+
- 'SD, Linux, Mac OS, Solaris)'#010+
+ 'ile, see the ld manual for more i','nformation) (BeOS, Linux)'#010+
+ '**2XR<x>_Prepend <x> to all linker search paths (BeOS, Darwin, FreeBSD'+
+ ', Linux, Mac OS, Solaris)'#010+
'**2Xs_Strip all symbols from executable'#010+
'**2XS_Try to link units statically (default, defines FPC_LINK_STATIC)'#010+
- '**2Xt_Link with static libraries (-static is passed to linker)'#010+
- '**2Xv_Generat','e table for Virtual Entry calls'#010+
+ '**2Xt_Li','nk with static libraries (-static is passed to linker)'#010+
+ '**2Xv_Generate table for Virtual Entry calls'#010+
'**2XV_Use VLink as external linker (default on Amiga, MorphOS)'#010+
'**2XX_Try to smartlink units (defines FPC_LINK_SMART)'#010+
- '**1*_'#010+
+ '**1*_',#010+
'**1?_Show this help'#010+
'**1h_Shows this help without waiting'
);
diff --git a/compiler/scanner.pas b/compiler/scanner.pas
index 766894f2d9..5c6e6b0dd9 100644
--- a/compiler/scanner.pas
+++ b/compiler/scanner.pas
@@ -39,7 +39,7 @@ interface
type
- tcommentstyle = (comment_none,comment_tp,comment_oldtp,comment_delphi,comment_c);
+ tcommentstyle = (comment_none,comment_tp,comment_oldtp,comment_delphi,comment_c, comment_x86OpExt);
tscannerfile = class;
@@ -214,7 +214,7 @@ interface
procedure readnumber;
function readid:string;
function readval:longint;
- function readcomment:string;
+ function readcomment(include_special_char: boolean = false):string;
function readquotedstring:string;
function readstate:char;
function readoptionalstate(fallback:char):char;
@@ -4137,7 +4137,7 @@ type
end;
- function tscannerfile.readcomment:string;
+ function tscannerfile.readcomment(include_special_char: boolean):string;
var
i : longint;
begin
@@ -4146,15 +4146,29 @@ type
case c of
'{' :
begin
+ if (include_special_char) and (i<255) then
+ begin
+ inc(i);
+ readcomment[i]:=c;
+ end;
+
if current_commentstyle=comment_tp then
inc_comment_level;
end;
'}' :
begin
+ if (include_special_char) and (i<255) then
+ begin
+ inc(i);
+ readcomment[i]:=c;
+ end;
+
if current_commentstyle=comment_tp then
begin
readchar;
dec_comment_level;
+
+
if comment_level=0 then
break
else
diff --git a/compiler/utils/mkx86ins.pp b/compiler/utils/mkx86ins.pp
index a1db21392c..13bea6d97e 100644
--- a/compiler/utils/mkx86ins.pp
+++ b/compiler/utils/mkx86ins.pp
@@ -57,7 +57,7 @@ var
function formatop(s:string;allowsizeonly:boolean):string;
const
- replaces=28;
+ replaces=29;
replacetab : array[1..replaces,1..2] of string[32]=(
(':',' or ot_colon'),
('reg','regnorm'),
@@ -73,6 +73,7 @@ function formatop(s:string;allowsizeonly:boolean):string;
('mem64','memory or ot_bits64'),
('mem128','memory or ot_bits128'),
('mem256','memory or ot_bits256'),
+ ('mem512','memory or ot_bits512'),
('mem80','memory or ot_bits80'),
('mem','memory'),
('memory_offs','mem_offs'),
@@ -282,6 +283,7 @@ begin
begin
{ handle comment }
readln(infile,s);
+
while (s[1]=' ') do
delete(s,1,1);
if (s='') or (s[1]=';') then
diff --git a/compiler/utils/mkx86reg.pp b/compiler/utils/mkx86reg.pp
index ce08afa3af..bb0e14d5b6 100644
--- a/compiler/utils/mkx86reg.pp
+++ b/compiler/utils/mkx86reg.pp
@@ -17,12 +17,12 @@
program mkx86reg;
const Version = '1.00';
- max_regcount = 200;
+ max_regcount = 255;
var s : string;
i : longint;
line : longint;
- regcount:byte;
+ regcount:longint;
regcount_bsstart:byte;
names,numbers,stdnames,intnames,nasmnames,attnames,stabs,dwarf16,dwarf32,dwarf64,ots,ops:
array[0..max_regcount-1] of string[63];
@@ -246,7 +246,7 @@ var infile:text;
begin
{ open dat file }
- assign(infile,'x86reg.dat');
+ assign(infile,'../x86/x86reg.dat');
reset(infile);
while not(eof(infile)) do
begin
diff --git a/compiler/x86/aasmcpu.pas b/compiler/x86/aasmcpu.pas
index 60c6c31f5b..050e16a37c 100644
--- a/compiler/x86/aasmcpu.pas
+++ b/compiler/x86/aasmcpu.pas
@@ -50,9 +50,26 @@ interface
OT_BITS16 = $00000002;
OT_BITS32 = $00000004;
OT_BITS64 = $00000008; { x86_64 and FPU }
- OT_BITS128 = $10000000; { 16 byte SSE }
- OT_BITS256 = $20000000; { 32 byte AVX }
- OT_BITS512 = $40000000; { 64 byte AVX512 }
+ //OT_BITS128 = $10000000; { 16 byte SSE }
+ //OT_BITS256 = $20000000; { 32 byte AVX }
+ //OT_BITS512 = $40000000; { 64 byte AVX512 }
+ OT_BITS128 = $20000000; { 16 byte SSE }
+ OT_BITS256 = $40000000; { 32 byte AVX }
+ OT_BITS512 = $80000000; { 64 byte AVX512 }
+
+ OT_VECTORMASK = $1000000000; { OPTIONAL VECTORMASK AVX512}
+ OT_VECTORZERO = $2000000000; { OPTIONAL ZERO-FLAG AVX512}
+ OT_VECTORBCST = $4000000000; { BROADCAST-MEM-FLAG AVX512}
+ OT_VECTORSAE = $8000000000; { OPTIONAL SAE-FLAG AVX512}
+ OT_VECTORER = $10000000000; { OPTIONAL ER-FLAG-FLAG AVX512}
+
+
+ OT_BITSB32 = OT_BITS32 or OT_VECTORBCST;
+ OT_BITSB64 = OT_BITS64 or OT_VECTORBCST;
+
+
+ OT_VECTOR_EXT_MASK = OT_VECTORMASK or OT_VECTORZERO or OT_VECTORBCST;
+
OT_BITS80 = $00000010; { FPU only }
OT_FAR = $00000020; { this means 16:16 or 16:32, like in CALL/JMP }
OT_NEAR = $00000040;
@@ -60,8 +77,9 @@ interface
{ TODO: FAR/NEAR/SHORT are sizes too, they should be included into size mask,
but this requires adjusting the opcode table }
- OT_SIZE_MASK = $3000001F; { all the size attributes }
- OT_NON_SIZE = longint(not OT_SIZE_MASK);
+ //OT_SIZE_MASK = $3000001F; { all the size attributes }
+ OT_SIZE_MASK = $E000001F; { all the size attributes }
+ OT_NON_SIZE = longint(not(longint(OT_SIZE_MASK)));
{ Bits 8..11: modifiers }
OT_SIGNED = $00000100; { the operand need to be signed -128-127 }
@@ -83,10 +101,13 @@ interface
otf_reg_cdt = $00100000;
otf_reg_gpr = $00200000;
otf_reg_sreg = $00400000;
+ otf_reg_k = $00800000;
otf_reg_fpu = $01000000;
otf_reg_mmx = $02000000;
otf_reg_xmm = $04000000;
otf_reg_ymm = $08000000;
+ otf_reg_zmm = $10000000;
+
otf_reg_extra_mask = $0F000000;
{ Bits 16..19: subclasses, meaning depends on classes field }
@@ -96,9 +117,10 @@ interface
otf_sub3 = $00080000;
OT_REG_SMASK = otf_sub0 or otf_sub1 or otf_sub2 or otf_sub3;
- OT_REG_EXTRA_MASK = $0F000000;
+ //OT_REG_EXTRA_MASK = $0F000000;
+ OT_REG_EXTRA_MASK = $1F000000;
- OT_REG_TYPMASK = otf_reg_cdt or otf_reg_gpr or otf_reg_sreg or otf_reg_extra_mask;
+ OT_REG_TYPMASK = otf_reg_cdt or otf_reg_gpr or otf_reg_sreg or otf_reg_k or otf_reg_extra_mask;
{ register class 0: CRx, DRx and TRx }
{$ifdef x86_64}
OT_REG_CDT = OT_REGISTER or otf_reg_cdt or OT_BITS64;
@@ -156,31 +178,89 @@ interface
OT_XMMREG = OT_REGNORM or otf_reg_xmm;
OT_XMMRM = OT_REGMEM or otf_reg_xmm;
OT_XMEM32 = OT_REGNORM or otf_reg_xmm or otf_reg_gpr or OT_BITS32;
+ OT_XMEM32_M = OT_XMEM32 or OT_VECTORMASK;
OT_XMEM64 = OT_REGNORM or otf_reg_xmm or otf_reg_gpr or OT_BITS64;
+ OT_XMEM64_M = OT_XMEM64 or OT_VECTORMASK;
- { register class 5: XMM (both reg and r/m) }
- OT_YMMREG = OT_REGNORM or otf_reg_ymm;
- OT_YMMRM = OT_REGMEM or otf_reg_ymm;
- OT_YMEM32 = OT_REGNORM or otf_reg_ymm or otf_reg_gpr or OT_BITS32;
- OT_YMEM64 = OT_REGNORM or otf_reg_ymm or otf_reg_gpr or OT_BITS64;
+ OT_XMMREG_M = OT_XMMREG or OT_VECTORMASK;
+ OT_XMMREG_MZ = OT_XMMREG or OT_VECTORMASK or OT_VECTORZERO;
+ OT_XMMRM_MZ = OT_XMMRM or OT_VECTORMASK or OT_VECTORZERO;
+ OT_XMMREG_SAE = OT_XMMREG or OT_VECTORSAE;
+ OT_XMMRM_SAE = OT_XMMRM or OT_VECTORSAE;
+ OT_XMMREG_ER = OT_XMMREG or OT_VECTORER;
+ OT_XMMRM_ER = OT_XMMRM or OT_VECTORER;
+
+
+
+ { register class 5: YMM (both reg and r/m) }
+ OT_YMMREG = OT_REGNORM or otf_reg_ymm;
+ OT_YMMRM = OT_REGMEM or otf_reg_ymm;
+ OT_YMEM32 = OT_REGNORM or otf_reg_ymm or otf_reg_gpr or OT_BITS32;
+ OT_YMEM32_M = OT_YMEM32 or OT_VECTORMASK;
+ OT_YMEM64 = OT_REGNORM or otf_reg_ymm or otf_reg_gpr or OT_BITS64;
+ OT_YMEM64_M = OT_YMEM64 or OT_VECTORMASK;
+
+ OT_YMMREG_M = OT_YMMREG or OT_VECTORMASK;
+ OT_YMMREG_MZ = OT_YMMREG or OT_VECTORMASK or OT_VECTORZERO;
+ OT_YMMRM_MZ = OT_YMMRM or OT_VECTORMASK or OT_VECTORZERO;
+ OT_YMMREG_SAE = OT_YMMREG or OT_VECTORSAE;
+ OT_YMMRM_SAE = OT_YMMRM or OT_VECTORSAE;
+ OT_YMMREG_ER = OT_YMMREG or OT_VECTORER;
+ OT_YMMRM_ER = OT_YMMRM or OT_VECTORER;
+
+
+ { register class 5: ZMM (both reg and r/m) }
+ OT_ZMMREG = OT_REGNORM or otf_reg_zmm;
+ OT_ZMMRM = OT_REGMEM or otf_reg_zmm;
+ OT_ZMEM32 = OT_REGNORM or otf_reg_zmm or otf_reg_gpr or OT_BITS32;
+ OT_ZMEM32_M = OT_ZMEM32 or OT_VECTORMASK;
+ OT_ZMEM64 = OT_REGNORM or otf_reg_zmm or otf_reg_gpr or OT_BITS64;
+ OT_ZMEM64_M = OT_ZMEM64 or OT_VECTORMASK;
+
+
+ OT_ZMMREG_M = OT_ZMMREG or OT_VECTORMASK;
+ OT_ZMMREG_MZ = OT_ZMMREG or OT_VECTORMASK or OT_VECTORZERO;
+ OT_ZMMRM_MZ = OT_ZMMRM or OT_VECTORMASK or OT_VECTORZERO;
+ OT_ZMMREG_SAE = OT_ZMMREG or OT_VECTORSAE;
+ OT_ZMMRM_SAE = OT_ZMMRM or OT_VECTORSAE;
+ OT_ZMMREG_ER = OT_ZMMREG or OT_VECTORER;
+ OT_ZMMRM_ER = OT_ZMMRM or OT_VECTORER;
+
+
+ OT_KREG = OT_REGNORM or otf_reg_k;
+ OT_KREG_M = OT_KREG or OT_VECTORMASK;
{ Vector-Memory operands }
- OT_VMEM_ANY = OT_XMEM32 or OT_XMEM64 or OT_YMEM32 or OT_YMEM64;
+ OT_VMEM_ANY = OT_XMEM32 or OT_XMEM64 or OT_YMEM32 or OT_YMEM64 or OT_ZMEM32 or OT_ZMEM64;
{ Memory operands }
OT_MEM8 = OT_MEMORY or OT_BITS8;
OT_MEM16 = OT_MEMORY or OT_BITS16;
+ OT_MEM16_M = OT_MEM16 or OT_VECTORMASK;
OT_MEM32 = OT_MEMORY or OT_BITS32;
+ OT_MEM32_M = OT_MEMORY or OT_BITS32 or OT_VECTORMASK;
+ OT_BMEM32 = OT_MEMORY or OT_BITS32 or OT_VECTORBCST;
+ OT_BMEM32_SAE= OT_MEMORY or OT_BITS32 or OT_VECTORBCST or OT_VECTORSAE;
OT_MEM64 = OT_MEMORY or OT_BITS64;
+ OT_MEM64_M = OT_MEMORY or OT_BITS64 or OT_VECTORMASK;
+ OT_BMEM64 = OT_MEMORY or OT_BITS64 or OT_VECTORBCST;
+ OT_BMEM64_SAE= OT_MEMORY or OT_BITS64 or OT_VECTORBCST or OT_VECTORSAE;
OT_MEM128 = OT_MEMORY or OT_BITS128;
+ OT_MEM128_M = OT_MEMORY or OT_BITS128 or OT_VECTORMASK;
OT_MEM256 = OT_MEMORY or OT_BITS256;
+ OT_MEM256_M = OT_MEMORY or OT_BITS256 or OT_VECTORMASK;
+ OT_MEM512 = OT_MEMORY or OT_BITS512;
+ OT_MEM512_M = OT_MEMORY or OT_BITS512 or OT_VECTORMASK;
OT_MEM80 = OT_MEMORY or OT_BITS80;
+
+
+
OT_MEM_OFFS = OT_MEMORY or otf_sub0; { special type of EA }
{ simple [address] offset }
{ Matches any type of r/m operand }
- OT_MEMORY_ANY = OT_MEMORY or OT_RM_GPR or OT_XMMRM or OT_MMXRM or OT_YMMRM or OT_REG_EXTRA_MASK;
+ OT_MEMORY_ANY = OT_MEMORY or OT_RM_GPR or OT_XMMRM or OT_MMXRM or OT_YMMRM or OT_ZMMRM or OT_REG_EXTRA_MASK;
{ Immediate operands }
OT_IMM8 = OT_IMMEDIATE or OT_BITS8;
@@ -191,6 +271,26 @@ interface
OT_ONENESS = otf_sub0; { special type of immediate operand }
OT_UNITY = OT_IMMEDIATE or OT_ONENESS; { for shift/rotate instructions }
+ OTVE_VECTOR_SAE = 1 shl 8;
+ OTVE_VECTOR_ER = 1 shl 9;
+ OTVE_VECTOR_ZERO = 1 shl 10;
+ OTVE_VECTOR_WRITEMASK = 1 shl 11;
+ OTVE_VECTOR_BCST = 1 shl 12;
+ OTVE_VECTOR_BCST2 = 0;
+ OTVE_VECTOR_BCST4 = 1 shl 4;
+ OTVE_VECTOR_BCST8 = 1 shl 5;
+ OTVE_VECTOR_BCST16 = 3 shl 4;
+ OTVE_VECTOR_RNSAE = OTVE_VECTOR_ER or 0;
+ OTVE_VECTOR_RDSAE = OTVE_VECTOR_ER or 1 shl 6;
+ OTVE_VECTOR_RUSAE = OTVE_VECTOR_ER or 1 shl 7;
+ OTVE_VECTOR_RZSAE = OTVE_VECTOR_ER or 3 shl 6;
+
+
+ OTVE_VECTOR_BCST_MASK = OTVE_VECTOR_BCST2 or OTVE_VECTOR_BCST4 or OTVE_VECTOR_BCST8 or OTVE_VECTOR_BCST16;
+ OTVE_VECTOR_ER_MASK = OTVE_VECTOR_RNSAE or OTVE_VECTOR_RDSAE or OTVE_VECTOR_RUSAE or OTVE_VECTOR_RZSAE;
+
+ OTVE_VECTOR_MASK = OTVE_VECTOR_SAE or OTVE_VECTOR_ER or OTVE_VECTOR_ZERO or OTVE_VECTOR_WRITEMASK or OTVE_VECTOR_BCST;
+
{ Size of the instruction table converted by nasmconv.pas }
{$if defined(x86_64)}
instabentries = {$i x8664nop.inc}
@@ -199,7 +299,7 @@ interface
{$elseif defined(i8086)}
instabentries = {$i i8086nop.inc}
{$endif}
- maxinfolen = 9;
+ maxinfolen = 10;
type
{ What an instruction can change. Needed for optimizer and spilling code.
@@ -257,29 +357,44 @@ interface
TMemRefSizeInfo = (msiUnkown, msiUnsupported, msiNoSize,
msiMultiple, msiMultiple8, msiMultiple16, msiMultiple32,
- msiMultiple64, msiMultiple128, msiMultiple256,
- msiMemRegSize, msiMemRegx16y32, msiMemRegx32y64, msiMemRegx64y128, msiMemRegx64y256,
- msiMem8, msiMem16, msiMem32, msiMem64, msiMem128, msiMem256,
- msiXMem32, msiXMem64, msiYMem32, msiYMem64,
- msiVMemMultiple, msiVMemRegSize);
-
+ msiMultiple64, msiMultiple128, msiMultiple256, msiMultiple512,
+ msiMemRegSize, msiMemRegx16y32, msiMemRegx16y32z64, msiMemRegx32y64, msiMemRegx32y64z128, msiMemRegx64y128, msiMemRegx64y128z256,
+ msiMemRegx64y256, msiMemRegx64y256z512,
+ msiMem8, msiMem16, msiMem32, msiBMem32, msiMem64, msiBMem64, msiMem128, msiMem256, msiMem512,
+ msiXMem32, msiXMem64, msiYMem32, msiYMem64, msiZMem32, msiZMem64,
+ msiVMemMultiple, msiVMemRegSize,
+ msiMemRegConst128,msiMemRegConst256,msiMemRegConst512);
+
+ TMemRefSizeInfoBCST = (msbUnknown, msbBCST32, msbBCST64, msbMultiple);
+ TMemRefSizeInfoBCSTType = (btUnknown, bt1to2, bt1to4, bt1to8, bt1to16);
+
+ TEVEXTupleState = (etsUnknown, etsIsTuple, etsNotTuple);
TConstSizeInfo = (csiUnkown, csiMultiple, csiNoSize, csiMem8, csiMem16, csiMem32, csiMem64);
TInsTabMemRefSizeInfoRec = record
- MemRefSize : TMemRefSizeInfo;
- ExistsSSEAVX: boolean;
- ConstSize : TConstSizeInfo;
+ MemRefSize : TMemRefSizeInfo;
+ MemRefSizeBCST : TMemRefSizeInfoBCST;
+ BCSTXMMMultiplicator : byte;
+ ExistsSSEAVX : boolean;
+ ConstSize : TConstSizeInfo;
+ BCSTTypes : Set of TMemRefSizeInfoBCSTType;
end;
+
+
const
MemRefMultiples: set of TMemRefSizeInfo = [msiMultiple, msiMultiple8,
msiMultiple16, msiMultiple32,
msiMultiple64, msiMultiple128,
- msiMultiple256, msiVMemMultiple];
+ msiMultiple256, msiMultiple512,
+ msiVMemMultiple];
MemRefSizeInfoVMems: Set of TMemRefSizeInfo = [msiXMem32, msiXMem64, msiYMem32, msiYMem64,
+ msiZMem32, msiZMem64,
msiVMemMultiple, msiVMemRegSize];
+
+
InsProp : array[tasmop] of TInsProp =
{$if defined(x86_64)}
{$i x8664pro.inc}
@@ -335,6 +450,7 @@ interface
IF_CLMUL,
IF_AVX,
IF_AVX2,
+ IF_AVX512,
IF_BMI1,
IF_BMI2,
{ Intel ADX (Multi-Precision Add-Carry Instruction Extensions) }
@@ -380,7 +496,27 @@ interface
IF_PRE, { it's a prefix instruction }
IF_PASS2, { if the instruction can change in a second pass }
IF_IMM4, { immediate operand is a nibble (must be in range [0..15]) }
- IF_IMM3 { immediate operand is a triad (must be in range [0..7]) }
+ IF_IMM3, { immediate operand is a triad (must be in range [0..7]) }
+
+ { avx512 flags }
+ IF_BCST2,
+ IF_BCST4,
+ IF_BCST8,
+ IF_BCST16,
+ IF_T2, { disp8 - tuple - 2 }
+ IF_T4, { disp8 - tuple - 4 }
+ IF_T8, { disp8 - tuple - 8 }
+ IF_T1S, { disp8 - tuple - 1 scalar }
+ IF_T1F32,
+ IF_T1F64,
+ IF_TMDDUP,
+ IF_TFV, { disp8 - tuple - full vector }
+ IF_TFVM, { disp8 - tuple - full vector memory }
+ IF_TQVM,
+ IF_TMEM128,
+ IF_THV,
+ IF_THVM,
+ IF_TOVM
);
tinsflags=set of tinsflag;
@@ -389,11 +525,14 @@ interface
IF_ARMASK=[IF_AR0,IF_AR1,IF_AR2]; { mask for unsized argument spec }
IF_PLEVEL=[IF_8086..IF_NEC]; { mask for processor level }
+ IF_TUPLEMASK=[IF_T2..IF_TOVM]; { mask for AVX512 disp8-tuples }
+
+
type
tinsentry=packed record
opcode : tasmop;
ops : byte;
- optypes : array[0..max_operands-1] of longint;
+ optypes : array[0..max_operands-1] of int64;
code : array[0..maxinfolen] of char;
flags : tinsflags;
end;
@@ -404,6 +543,8 @@ interface
function calculatefillbuf(var buf : tfillbuffer;executable : boolean):pchar;override;
end;
+ { taicpu }
+
taicpu = class(tai_cpu_abstract_sym)
opsize : topsize;
constructor op_none(op : tasmop);
@@ -481,6 +622,7 @@ interface
insoffset : longint;
LastInsOffset : longint; { need to be public to be reset }
inssize : shortint;
+ EVEXTupleState: TEVEXTupleState; { AVX512 disp8*N }
{$ifdef x86_64}
rex : byte;
{$endif x86_64}
@@ -495,6 +637,8 @@ interface
procedure write0x67prefix(objdata:TObjData);
procedure Swapoperands;
function FindInsentry(objdata:TObjData):boolean;
+ function CheckUseEVEX: boolean;
+ procedure CheckEVEXTuple(const aInput:toper; aInsEntry: pInsentry; aIsVector128, aIsVector256, aIsVector512, aIsEVEXW1: boolean);
end;
function is_64_bit_ref(const ref:treference):boolean;
@@ -605,7 +749,7 @@ implementation
const
{$if defined(x86_64)}
{ Intel style operands ! }
- opsize_2_type:array[0..2,topsize] of longint=(
+ opsize_2_type:array[0..2,topsize] of int64=(
(OT_NONE,
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS64,OT_BITS16,OT_BITS32,OT_BITS32,OT_BITS64,OT_BITS64,OT_BITS64,
OT_BITS16,OT_BITS32,OT_BITS64,
@@ -646,7 +790,7 @@ implementation
);
{$elseif defined(i386)}
{ Intel style operands ! }
- opsize_2_type:array[0..2,topsize] of longint=(
+ opsize_2_type:array[0..2,topsize] of int64=(
(OT_NONE,
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS64,OT_BITS16,OT_BITS32,OT_BITS32,
OT_BITS16,OT_BITS32,OT_BITS64,
@@ -687,7 +831,7 @@ implementation
);
{$elseif defined(i8086)}
{ Intel style operands ! }
- opsize_2_type:array[0..2,topsize] of longint=(
+ opsize_2_type:array[0..2,topsize] of int64=(
(OT_NONE,
OT_BITS8,OT_BITS16,OT_BITS32,OT_BITS64,OT_BITS16,OT_BITS32,OT_BITS32,
OT_BITS16,OT_BITS32,OT_BITS64,
@@ -841,6 +985,7 @@ implementation
LastInsOffset:=-1;
InsOffset:=0;
InsSize:=0;
+ EVEXTupleState := etsUnknown;
end;
@@ -1084,6 +1229,7 @@ implementation
var
i : longint;
s : string;
+ regnr: string;
addsize : boolean;
begin
s:='['+std_op2str[opcode];
@@ -1097,11 +1243,20 @@ implementation
s:=s+',';
{ type }
addsize:=false;
- if (ot and OT_REG_EXTRA_MASK)=OT_XMMREG then
- s:=s+'xmmreg'
+
+ regnr := '';
+ if getregtype(reg) = R_MMREGISTER then
+ str(getsupreg(reg),regnr);
+
+ if (ot and OT_XMMREG)=OT_XMMREG then
+ s:=s+'xmmreg' + regnr
else
- if (ot and OT_REG_EXTRA_MASK)=OT_YMMREG then
- s:=s+'ymmreg'
+ if (ot and OT_YMMREG)=OT_YMMREG then
+ s:=s+'ymmreg' + regnr
+ else
+ if (ot and OT_ZMMREG)=OT_ZMMREG then
+ s:=s+'zmmreg' + regnr
+
else
if (ot and OT_REG_EXTRA_MASK)=OT_MMXREG then
s:=s+'mmxreg'
@@ -1148,12 +1303,46 @@ implementation
else
if (ot and OT_BITS256)<>0 then
s:=s+'256'
+ else
+ if (ot and OT_BITS512)<>0 then
+ s:=s+'512'
else
s:=s+'??';
{ signed }
if (ot and OT_SIGNED)<>0 then
s:=s+'s';
end;
+
+ if vopext <> 0 then
+ begin
+ str(vopext and $07, regnr);
+ if vopext and OTVE_VECTOR_WRITEMASK = OTVE_VECTOR_WRITEMASK then
+ s := s + ' {k' + regnr + '}';
+
+ if vopext and OTVE_VECTOR_ZERO = OTVE_VECTOR_ZERO then
+ s := s + ' {z}';
+
+ if vopext and OTVE_VECTOR_SAE = OTVE_VECTOR_SAE then
+ s := s + ' {sae}';
+
+
+ if vopext and OTVE_VECTOR_BCST = OTVE_VECTOR_BCST then
+ case vopext and OTVE_VECTOR_BCST_MASK of
+ OTVE_VECTOR_BCST2: s := s + ' {1to2}';
+ OTVE_VECTOR_BCST4: s := s + ' {1to4}';
+ OTVE_VECTOR_BCST8: s := s + ' {1to8}';
+ OTVE_VECTOR_BCST16: s := s + ' {1to16}';
+ end;
+
+ if vopext and OTVE_VECTOR_ER = OTVE_VECTOR_ER then
+ case vopext and OTVE_VECTOR_ER_MASK of
+ OTVE_VECTOR_RNSAE: s := s + ' {rn-sae}';
+ OTVE_VECTOR_RDSAE: s := s + ' {rd-sae}';
+ OTVE_VECTOR_RUSAE: s := s + ' {ru-sae}';
+ OTVE_VECTOR_RZSAE: s := s + ' {rz-sae}';
+ end;
+
+ end;
end;
end;
GetString:=s+']';
@@ -1314,17 +1503,20 @@ implementation
{$endif x86_64}
then
begin
+
{ create ot field }
if (reg_ot_table[findreg_by_number(ref^.base)] and OT_REG_GPR = OT_REG_GPR) and
((reg_ot_table[findreg_by_number(ref^.index)] = OT_XMMREG) or
- (reg_ot_table[findreg_by_number(ref^.index)] = OT_YMMREG)
+ (reg_ot_table[findreg_by_number(ref^.index)] = OT_YMMREG) or
+ (reg_ot_table[findreg_by_number(ref^.index)] = OT_ZMMREG)
) then
// AVX2 - vector-memory-referenz (e.g. vgatherdpd xmm0, [rax xmm1], xmm2)
ot := (reg_ot_table[findreg_by_number(ref^.base)] and OT_REG_GPR) or
(reg_ot_table[findreg_by_number(ref^.index)])
else if (ref^.base = NR_NO) and
((reg_ot_table[findreg_by_number(ref^.index)] = OT_XMMREG) or
- (reg_ot_table[findreg_by_number(ref^.index)] = OT_YMMREG)
+ (reg_ot_table[findreg_by_number(ref^.index)] = OT_YMMREG) or
+ (reg_ot_table[findreg_by_number(ref^.index)] = OT_ZMMREG)
) then
// AVX2 - vector-memory-referenz without base-register (e.g. vgatherdpd xmm0, [xmm1], xmm2)
ot := (OT_REG_GPR) or
@@ -1484,9 +1676,10 @@ implementation
}
var
insot,
- currot,
+ currot: int64;
i,j,asize,oprs : longint;
insflags:tinsflags;
+ vopext: int64;
siz : array[0..max_operands-1] of longint;
begin
result:=false;
@@ -1599,13 +1792,15 @@ implementation
begin
insot:=p^.optypes[i];
if ((insot and (OT_XMMRM or OT_REG_EXTRA_MASK)) = OT_XMMRM) OR
- ((insot and (OT_YMMRM or OT_REG_EXTRA_MASK)) = OT_YMMRM) then
+ ((insot and (OT_YMMRM or OT_REG_EXTRA_MASK)) = OT_YMMRM) OR
+ ((insot and (OT_ZMMRM or OT_REG_EXTRA_MASK)) = OT_ZMMRM) then
begin
if (insot and OT_SIZE_MASK) = 0 then
begin
- case insot and (OT_XMMRM or OT_YMMRM or OT_REG_EXTRA_MASK) of
+ case insot and (OT_XMMRM or OT_YMMRM or OT_ZMMRM or OT_REG_EXTRA_MASK) of
OT_XMMRM: insot := insot or OT_BITS128;
OT_YMMRM: insot := insot or OT_BITS256;
+ OT_ZMMRM: insot := insot or OT_BITS512;
else
;
end;
@@ -1622,8 +1817,69 @@ implementation
((insot and currot and OT_SIZE_MASK)<>(currot and OT_SIZE_MASK)) then
exit;
end;
+ end;
+
+ if (InsTabMemRefSizeInfoCache^[opcode].ExistsSSEAVX) then
+ begin
+ for i:=0 to p^.ops-1 do
+ begin
+ // check vectoroperand-extention e.g. {k1} {z}
+
+ vopext := 0;
+ if (oper[i]^.vopext and OTVE_VECTOR_WRITEMASK) = OTVE_VECTOR_WRITEMASK then
+ begin
+ vopext := vopext or OT_VECTORMASK;
+
+ if (oper[i]^.vopext and OTVE_VECTOR_ZERO) = OTVE_VECTOR_ZERO then
+ vopext := vopext or OT_VECTORZERO;
+ end;
+ if (oper[i]^.vopext and OTVE_VECTOR_BCST) = OTVE_VECTOR_BCST then
+ begin
+ vopext := vopext or OT_VECTORBCST;
+
+ if (InsTabMemRefSizeInfoCache^[opcode].BCSTTypes <> []) then
+ begin
+ // any opcodes needs a special handling
+
+ // default broadcast calculation is
+ // bmem32
+ // xmmreg: {1to4}
+ // ymmreg: {1to8}
+ // zmmreg: {1to16}
+
+ // bmem64
+ // xmmreg: {1to2}
+ // ymmreg: {1to4}
+ // zmmreg: {1to8}
+
+ // in any opcodes not exists a mmregister
+ // e.g. vfpclasspd k1, [RAX] {1to8}, 0
+ // =>> check flags
+
+
+ case oper[i]^.vopext and (OTVE_VECTOR_BCST2 or OTVE_VECTOR_BCST4 or OTVE_VECTOR_BCST8 or OTVE_VECTOR_BCST16) of
+ OTVE_VECTOR_BCST2: if not(IF_BCST2 in p^.flags) then exit;
+ OTVE_VECTOR_BCST4: if not(IF_BCST4 in p^.flags) then exit;
+ OTVE_VECTOR_BCST8: if not(IF_BCST8 in p^.flags) then exit;
+ OTVE_VECTOR_BCST16: if not(IF_BCST16 in p^.flags) then exit;
+ else exit;
+ end;
+ end;
+
+ end;
+
+ if (oper[i]^.vopext and OTVE_VECTOR_ER) = OTVE_VECTOR_ER then
+ vopext := vopext or OT_VECTORER;
+
+ if (oper[i]^.vopext and OTVE_VECTOR_SAE) = OTVE_VECTOR_SAE then
+ vopext := vopext or OT_VECTORSAE;
+
+ if p^.optypes[i] and vopext <> vopext then
+ exit;
+ end;
end;
+
result:=true;
end;
@@ -1665,12 +1921,14 @@ implementation
result:=false;
{ Things which may only be done once, not when a second pass is done to
optimize }
+
if (Insentry=nil) or (IF_PASS2 in InsEntry^.flags) then
begin
current_filepos:=fileinfo;
{ We need intel style operands }
SetOperandOrder(op_intel);
{ create the .ot fields }
+
create_ot(objdata);
{ set the file postion }
end
@@ -1704,6 +1962,211 @@ implementation
inssize:=-1;
end;
+ function taicpu.CheckUseEVEX: boolean;
+ var
+ i: integer;
+ begin
+ result := false;
+ for i := 0 to ops - 1 do
+ begin
+ if (oper[i]^.typ=top_reg) and
+ (getregtype(oper[i]^.reg) = R_MMREGISTER) then
+ if getsupreg(oper[i]^.reg)>=16 then
+ result := true;
+
+ if (oper[i]^.vopext and OTVE_VECTOR_MASK) <> 0 then
+ result := true;
+ end;
+ end;
+
+ procedure taicpu.CheckEVEXTuple(const aInput:toper; aInsEntry: pInsentry; aIsVector128, aIsVector256, aIsVector512, aIsEVEXW1: boolean);
+ var
+ i: integer;
+ tuplesize: integer;
+ memsize: integer;
+ begin
+ if EVEXTupleState = etsUnknown then
+ begin
+ EVEXTupleState := etsNotTuple;
+
+ if aInsEntry^.Flags * IF_TUPLEMASK <> [] then
+ begin
+ tuplesize := 0;
+
+ if IF_TFV in aInsEntry^.Flags then
+ begin
+ for i := 0 to aInsEntry^.ops - 1 do
+ if (aInsEntry^.optypes[i] and OT_BMEM32 = OT_BMEM32) then
+ begin
+ tuplesize := 4;
+ break;
+ end
+ else if (aInsEntry^.optypes[i] and OT_BMEM64 = OT_BMEM64) then
+ begin
+ tuplesize := 8;
+ break;
+ end
+ else if (aInsEntry^.optypes[i] and OT_MEMORY = OT_MEMORY) then
+ begin
+ if aIsVector512 then tuplesize := 64
+ else if aIsVector256 then tuplesize := 32
+ else tuplesize := 16;
+
+ break;
+ end
+ else if (aInsEntry^.optypes[i] and OT_REGNORM = OT_REGMEM) then
+ begin
+ if aIsVector512 then tuplesize := 64
+ else if aIsVector256 then tuplesize := 32
+ else tuplesize := 16;
+
+ break;
+ end;
+
+
+ end
+ else if IF_THV in aInsEntry^.Flags then
+ begin
+ for i := 0 to aInsEntry^.ops - 1 do
+ if (aInsEntry^.optypes[i] and OT_BMEM32 = OT_BMEM32) then
+ begin
+ tuplesize := 4;
+ break;
+ end
+ else if (aInsEntry^.optypes[i] and OT_REGNORM = OT_REGMEM) then
+ begin
+ if aIsVector512 then tuplesize := 32
+ else if aIsVector256 then tuplesize := 16
+ else tuplesize := 8;
+
+ break;
+ end
+ end
+ else if IF_TFVM in aInsEntry^.Flags then
+ begin
+ if aIsVector512 then tuplesize := 64
+ else if aIsVector256 then tuplesize := 32
+ else tuplesize := 16;
+ end
+ else
+ begin
+ memsize := 0;
+
+ for i := 0 to aInsEntry^.ops - 1 do
+ begin
+ if aInsEntry^.optypes[i] and (OT_REGNORM or OT_MEMORY) = OT_REGMEM then
+ begin
+ case aInsEntry^.optypes[i] and (OT_BITS32 or OT_BITS64) of
+ OT_BITS32: begin
+ memsize := 32;
+ break;
+ end;
+ OT_BITS64: begin
+ memsize := 64;
+ break;
+ end;
+ end;
+ end
+ else
+ case aInsEntry^.optypes[i] and (OT_MEM8 or OT_MEM16 or OT_MEM32 or OT_MEM64) of
+ OT_MEM8: begin
+ memsize := 8;
+ break;
+ end;
+ OT_MEM16: begin
+ memsize := 16;
+ break;
+ end;
+ OT_MEM32: begin
+ memsize := 32;
+ break;
+ end;
+ OT_MEM64: //if aIsEVEXW1 then
+ begin
+ memsize := 64;
+ break;
+ end;
+ end;
+ end;
+
+ if IF_T1S in aInsEntry^.Flags then
+ begin
+ case memsize of
+ 8: tuplesize := 1;
+ 16: tuplesize := 2;
+ else if aIsEVEXW1 then tuplesize := 8
+ else tuplesize := 4;
+ end;
+ end
+ else if IF_T1F32 in aInsEntry^.Flags then tuplesize := 4
+ else if IF_T1F64 in aInsEntry^.Flags then tuplesize := 8
+ else if IF_T2 in aInsEntry^.Flags then
+ begin
+ case aIsEVEXW1 of
+ false: tuplesize := 8;
+ else if aIsVector256 or aIsVector512 then tuplesize := 16;
+ end;
+ end
+ else if IF_T4 in aInsEntry^.Flags then
+ begin
+ case aIsEVEXW1 of
+ false: if aIsVector256 or aIsVector512 then tuplesize := 16;
+ else if aIsVector512 then tuplesize := 32;
+ end;
+ end
+ else if IF_T8 in aInsEntry^.Flags then
+ begin
+ case aIsEVEXW1 of
+ false: if aIsVector512 then tuplesize := 32;
+ else
+ Internalerror(2019081003);
+ end;
+ end
+ else if IF_THVM in aInsEntry^.Flags then
+ begin
+ tuplesize := 8; // default 128bit-vectorlength
+ if aIsVector256 then tuplesize := 16
+ else if aIsVector512 then tuplesize := 32;
+ end
+ else if IF_TQVM in aInsEntry^.Flags then
+ begin
+ tuplesize := 4; // default 128bit-vectorlength
+ if aIsVector256 then tuplesize := 8
+ else if aIsVector512 then tuplesize := 16;
+ end
+ else if IF_TOVM in aInsEntry^.Flags then
+ begin
+ tuplesize := 2; // default 128bit-vectorlength
+ if aIsVector256 then tuplesize := 4
+ else if aIsVector512 then tuplesize := 8;
+ end
+ else if IF_TMEM128 in aInsEntry^.Flags then tuplesize := 16
+ else if IF_TMDDUP in aInsEntry^.Flags then
+ begin
+ tuplesize := 8; // default 128bit-vectorlength
+ if aIsVector256 then tuplesize := 32
+ else if aIsVector512 then tuplesize := 64;
+ end;
+ end;;
+
+ if tuplesize > 0 then
+ begin
+ if aInput.typ = top_ref then
+ begin
+ if (aInput.ref^.offset <> 0) and
+ ((aInput.ref^.offset mod tuplesize) = 0) and
+ (abs(aInput.ref^.offset) div tuplesize <= 127) then
+ begin
+ aInput.ref^.offset := aInput.ref^.offset div tuplesize;
+ EVEXTupleState := etsIsTuple;
+ end;
+ end;
+ end;
+ end;
+ end;
+ end;
+
+
function taicpu.Pass1(objdata:TObjData):longint;
begin
@@ -1718,6 +2181,7 @@ implementation
{ Get InsEntry }
if FindInsEntry(ObjData) then
begin
+
{ Calculate instruction size }
InsSize:=calcsize(insentry);
if segprefix<>NR_NO then
@@ -1944,7 +2408,7 @@ implementation
end;
- function taicpu.needaddrprefix(opidx:byte):boolean;
+ function taicpu.NeedAddrPrefix(opidx: byte): boolean;
begin
{$if defined(x86_64)}
result:=(oper[opidx]^.typ=top_ref) and is_32_bit_ref(oper[opidx]^.ref^);
@@ -1981,9 +2445,9 @@ implementation
(0, 1, 2, 3, 6, 7, 5, 4);
maxsupreg: array[tregistertype] of tsuperregister=
{$ifdef x86_64}
- (0, 16, 9, 8, 16, 32, 0, 0);
+ (0, 16, 9, 8, 32, 32, 8, 0);
{$else x86_64}
- (0, 8, 9, 8, 8, 32, 0, 0);
+ (0, 8, 9, 8, 8, 32, 8, 0);
{$endif x86_64}
var
rs: tsuperregister;
@@ -1991,8 +2455,10 @@ implementation
begin
rs:=getsupreg(r);
rt:=getregtype(r);
+
if (rs>=maxsupreg[rt]) then
- badreg(r);
+ badreg(r);
+
result:=rs and 7;
if (rt=R_INTREGISTER) then
begin
@@ -2022,14 +2488,20 @@ implementation
AH/BH/CH/DH }
result:=result or $80;
R_MMREGISTER:
- if getsupreg(r)>=RS_XMM8 then
+ //if getsupreg(r)>=RS_XMM8 then
+ // AVX512 = 32 register
+ // rexbit = 0 => MMRegister 0..7 or 16..23
+ // rexbit = 1 => MMRegister 8..15 or 24..31
+ if (getsupreg(r) and $08) = $08 then
result:=result or $47;
else
;
end;
end;
- function process_ea_ref_64_32(const input:toper;var output:ea;rfield:longint):boolean;
+
+
+ function process_ea_ref_64_32(const input:toper;var output:ea;rfield:longint; uselargeoffset: boolean):boolean;
var
sym : tasmsymbol;
md,s : byte;
@@ -2073,7 +2545,7 @@ implementation
begin
{ 16 bit? }
- if ((ir<>NR_NO) and (isub in [R_SUBMMX,R_SUBMMY]) and
+ if ((ir<>NR_NO) and (isub in [R_SUBMMX,R_SUBMMY,R_SUBMMZ]) and
(br<>NR_NO) and (bsub=R_SUBQ)
) then
begin
@@ -2139,64 +2611,128 @@ implementation
NR_RAX,
NR_XMM0,
NR_XMM8,
+ NR_XMM16,
+ NR_XMM24,
NR_YMM0,
- NR_YMM8 : index:=0;
+ NR_YMM8,
+ NR_YMM16,
+ NR_YMM24,
+ NR_ZMM0,
+ NR_ZMM8,
+ NR_ZMM16,
+ NR_ZMM24: index:=0;
NR_R9D,
NR_ECX,
NR_R9,
NR_RCX,
NR_XMM1,
NR_XMM9,
+ NR_XMM17,
+ NR_XMM25,
NR_YMM1,
- NR_YMM9 : index:=1;
+ NR_YMM9,
+ NR_YMM17,
+ NR_YMM25,
+ NR_ZMM1,
+ NR_ZMM9,
+ NR_ZMM17,
+ NR_ZMM25: index:=1;
NR_R10D,
NR_EDX,
NR_R10,
NR_RDX,
NR_XMM2,
NR_XMM10,
+ NR_XMM18,
+ NR_XMM26,
NR_YMM2,
- NR_YMM10 : index:=2;
+ NR_YMM10,
+ NR_YMM18,
+ NR_YMM26,
+ NR_ZMM2,
+ NR_ZMM10,
+ NR_ZMM18,
+ NR_ZMM26: index:=2;
NR_R11D,
NR_EBX,
NR_R11,
NR_RBX,
NR_XMM3,
NR_XMM11,
+ NR_XMM19,
+ NR_XMM27,
NR_YMM3,
- NR_YMM11 : index:=3;
+ NR_YMM11,
+ NR_YMM19,
+ NR_YMM27,
+ NR_ZMM3,
+ NR_ZMM11,
+ NR_ZMM19,
+ NR_ZMM27: index:=3;
NR_R12D,
NR_ESP,
NR_R12,
NR_NO,
NR_XMM4,
NR_XMM12,
+ NR_XMM20,
+ NR_XMM28,
NR_YMM4,
- NR_YMM12 : index:=4;
+ NR_YMM12,
+ NR_YMM20,
+ NR_YMM28,
+ NR_ZMM4,
+ NR_ZMM12,
+ NR_ZMM20,
+ NR_ZMM28: index:=4;
NR_R13D,
NR_EBP,
NR_R13,
NR_RBP,
NR_XMM5,
NR_XMM13,
+ NR_XMM21,
+ NR_XMM29,
NR_YMM5,
- NR_YMM13: index:=5;
+ NR_YMM13,
+ NR_YMM21,
+ NR_YMM29,
+ NR_ZMM5,
+ NR_ZMM13,
+ NR_ZMM21,
+ NR_ZMM29: index:=5;
NR_R14D,
NR_ESI,
NR_R14,
NR_RSI,
NR_XMM6,
NR_XMM14,
+ NR_XMM22,
+ NR_XMM30,
NR_YMM6,
- NR_YMM14: index:=6;
+ NR_YMM14,
+ NR_YMM22,
+ NR_YMM30,
+ NR_ZMM6,
+ NR_ZMM14,
+ NR_ZMM22,
+ NR_ZMM30: index:=6;
NR_R15D,
NR_EDI,
NR_R15,
NR_RDI,
NR_XMM7,
NR_XMM15,
+ NR_XMM23,
+ NR_XMM31,
NR_YMM7,
- NR_YMM15: index:=7;
+ NR_YMM15,
+ NR_YMM23,
+ NR_YMM31,
+ NR_ZMM7,
+ NR_ZMM15,
+ NR_ZMM23,
+ NR_ZMM31: index:=7;
else
exit;
end;
@@ -2214,7 +2750,7 @@ implementation
((br<>NR_RBP) and (br<>NR_R13) and (br<>NR_EBP) and (br<>NR_R13D) and (o=0) and (sym=nil)) then
md:=0
else
- if ((o>=-128) and (o<=127) and (sym=nil)) then
+ if ((o>=-128) and (o<=127) and (sym=nil) and (not(uselargeoffset) or (o = 0))) then
md:=1
else
md:=2;
@@ -2242,7 +2778,7 @@ implementation
{$elseif defined(i386) or defined(i8086)}
- function process_ea_ref_32(const input:toper;out output:ea;rfield:longint):boolean;
+ function process_ea_ref_32(const input:toper;out output:ea;rfield:longint; uselargeoffset: boolean):boolean;
var
sym : tasmsymbol;
md,s : byte;
@@ -2278,7 +2814,7 @@ implementation
begin
{ 16 bit address? }
- if ((ir<>NR_NO) and (isub in [R_SUBMMX,R_SUBMMY]) and
+ if ((ir<>NR_NO) and (isub in [R_SUBMMX,R_SUBMMY,R_SUBMMZ]) and
(br<>NR_NO) and (bsub=R_SUBD)
) then
begin
@@ -2330,28 +2866,36 @@ implementation
case ir of
NR_EAX,
NR_XMM0,
- NR_YMM0: index:=0;
+ NR_YMM0,
+ NR_ZMM0: index:=0;
NR_ECX,
NR_XMM1,
- NR_YMM1: index:=1;
+ NR_YMM1,
+ NR_ZMM1: index:=1;
NR_EDX,
NR_XMM2,
- NR_YMM2: index:=2;
+ NR_YMM2,
+ NR_ZMM2: index:=2;
NR_EBX,
NR_XMM3,
- NR_YMM3: index:=3;
+ NR_YMM3,
+ NR_ZMM3: index:=3;
NR_NO,
NR_XMM4,
- NR_YMM4: index:=4;
+ NR_YMM4,
+ NR_ZMM4: index:=4;
NR_EBP,
NR_XMM5,
- NR_YMM5: index:=5;
+ NR_YMM5,
+ NR_ZMM5: index:=5;
NR_ESI,
NR_XMM6,
- NR_YMM6: index:=6;
+ NR_YMM6,
+ NR_ZMM6: index:=6;
NR_EDI,
NR_XMM7,
- NR_YMM7: index:=7;
+ NR_YMM7,
+ NR_ZMM7: index:=7;
else
exit;
end;
@@ -2368,7 +2912,7 @@ implementation
((br<>NR_EBP) and (o=0) and (sym=nil)) then
md:=0
else
- if ((o>=-128) and (o<=127) and (sym=nil)) then
+ if ((o>=-128) and (o<=127) and (sym=nil) and (not(uselargeoffset) or (o = 0))) then
md:=1
else
md:=2;
@@ -2409,7 +2953,7 @@ implementation
end;
end;
- function process_ea_ref_16(const input:toper;out output:ea;rfield:longint):boolean;
+ function process_ea_ref_16(const input:toper;out output:ea;rfield:longint; uselargeoffset: boolean):boolean;
var
sym : tasmsymbol;
md,s : byte;
@@ -2470,7 +3014,7 @@ implementation
exit;
if (base<>6) and (o=0) and (sym=nil) then
md:=0
- else if ((o>=-128) and (o<=127) and (sym=nil)) then
+ else if ((o>=-128) and (o<=127) and (sym=nil) and (not(uselargeoffset) or (o = 0))) then
md:=1
else
md:=2;
@@ -2483,7 +3027,7 @@ implementation
end;
{$endif}
- function process_ea(const input:toper;out output:ea;rfield:longint):boolean;
+ function process_ea(const input:toper;out output:ea;rfield:longint; uselargeoffset: boolean):boolean;
var
rv : byte;
begin
@@ -2505,12 +3049,12 @@ implementation
if input.typ<>top_ref then
internalerror(200409263);
{$if defined(x86_64)}
- result:=process_ea_ref_64_32(input,output,rfield);
+ result:=process_ea_ref_64_32(input,output,rfield, uselargeoffset);
{$elseif defined(i386) or defined(i8086)}
if is_16_bit_ref(input.ref^) then
- result:=process_ea_ref_16(input,output,rfield)
+ result:=process_ea_ref_16(input,output,rfield, uselargeoffset)
else
- result:=process_ea_ref_32(input,output,rfield);
+ result:=process_ea_ref_32(input,output,rfield, uselargeoffset);
{$endif}
end;
@@ -2519,23 +3063,41 @@ implementation
codes : pchar;
c : byte;
len : shortint;
+ len_ea_data: shortint;
+ len_ea_data_evex: shortint;
+ mref_offset: asizeint;
ea_data : ea;
+ exists_evex: boolean;
exists_vex: boolean;
exists_vex_extension: boolean;
exists_prefix_66: boolean;
exists_prefix_F2: boolean;
exists_prefix_F3: boolean;
+ exists_l256: boolean;
+ exists_l512: boolean;
+ exists_EVEXW1: boolean;
+ pmref_operand: poper;
{$ifdef x86_64}
omit_rexw : boolean;
{$endif x86_64}
begin
+
len:=0;
+ len_ea_data := 0;
+ len_ea_data_evex:= 0;
+ mref_offset := 0;
+ pmref_operand := nil;
+
codes:=@p^.code[0];
exists_vex := false;
exists_vex_extension := false;
exists_prefix_66 := false;
exists_prefix_F2 := false;
exists_prefix_F3 := false;
+ exists_evex := false;
+ exists_l256 := false;
+ exists_l512 := false;
+ exists_EVEXW1 := false;
{$ifdef x86_64}
rex:=0;
omit_rexw:=false;
@@ -2692,34 +3254,53 @@ implementation
end;
{$endif x86_64}
- if not process_ea(oper[(c shr 3) and 7]^, ea_data, 0) then
- Message(asmw_e_invalid_effective_address)
- else
- inc(len,ea_data.size);
+ if (oper[(c shr 3) and 7]^.typ = top_ref) and
+ (oper[(c shr 3) and 7]^.ref^.offset <> 0) then
+ begin
+ if (exists_vex and exists_evex and CheckUseEVEX) or
+ (not(exists_vex) and exists_evex) then
+ begin
+ CheckEVEXTuple(oper[(c shr 3) and 7]^, p, not(exists_l256 or exists_l512), exists_l256, exists_l512, exists_EVEXW1);
+ //const aInput:toper; aInsEntry: pInsentry; aIsVector128, aIsVector256, aIsVector512, aIsEVEXW1: boolean);
+ end;
+ end;
+
+ if process_ea(oper[(c shr 3) and 7]^, ea_data, 0, EVEXTupleState = etsNotTuple) then
+ inc(len,ea_data.size)
+ else Message(asmw_e_invalid_effective_address);
+
{$ifdef x86_64}
rex:=rex or ea_data.rex;
{$endif x86_64}
end;
+ &350:
+ begin
+ exists_evex := true;
+ end;
+ &351: exists_l512 := true; // EVEX length bit 512
+ &352: exists_EVEXW1 := true; // EVEX W1
&362: // VEX prefix for AVX (length = 2 or 3 bytes, dependens on REX.XBW or opcode-prefix ($0F38 or $0F3A))
// =>> DEFAULT = 2 Bytes
begin
- if not(exists_vex) then
- begin
- inc(len, 2);
- exists_vex := true;
- end;
+ //if not(exists_vex) then
+ //begin
+ // inc(len, 2);
+ //end;
+
+ exists_vex := true;
end;
&363: // REX.W = 1
// =>> VEX prefix length = 3
begin
if not(exists_vex_extension) then
begin
- inc(len);
+ //inc(len);
exists_vex_extension := true;
end;
end;
- &364: ; // VEX length bit
+ &364: exists_l256 := true; // VEX length bit 256
+
&366, // operand 2 (ymmreg) encoded immediate byte (bit 4-7)
&367: inc(len); // operand 3 (ymmreg) encoded immediate byte (bit 4-7)
&370: // VEX-Extension prefix $0F
@@ -2730,7 +3311,7 @@ implementation
begin
if not(exists_vex_extension) then
begin
- inc(len);
+ //inc(len);
exists_vex_extension := true;
end;
end;
@@ -2756,22 +3337,60 @@ implementation
else
rex:=rex and $F7;
end;
- if not(exists_vex) then
+ if not(exists_vex or exists_evex) then
begin
if rex<>0 then
Inc(len);
end;
{$endif}
- if exists_vex then
+ if exists_evex and
+ exists_vex then
+ begin
+ if CheckUseEVEX then
+ begin
+ inc(len, 4);
+ end
+ else
+ begin
+ inc(len, 2);
+ if exists_vex_extension then inc(len);
+
+ {$ifdef x86_64}
+ if not(exists_vex_extension) then
+ if rex and $0B <> 0 then inc(len); // REX.WXB <> 0 =>> needed VEX-Extension
+ {$endif x86_64}
+ end;
+
+ if exists_prefix_66 then dec(len);
+ if exists_prefix_F2 then dec(len);
+ if exists_prefix_F3 then dec(len);
+
+ end
+ else if exists_evex then
begin
+ inc(len, 4);
+
if exists_prefix_66 then dec(len);
if exists_prefix_F2 then dec(len);
if exists_prefix_F3 then dec(len);
+ end
+ else
+ begin
+ if exists_vex then
+ begin
+ inc(len,2);
+
+ if exists_prefix_66 then dec(len);
+ if exists_prefix_F2 then dec(len);
+ if exists_prefix_F3 then dec(len);
- {$ifdef x86_64}
- if not(exists_vex_extension) then
- if rex and $0B <> 0 then inc(len); // REX.WXB <> 0 =>> needed VEX-Extension
- {$endif x86_64}
+ if exists_vex_extension then inc(len);
+ {$ifdef x86_64}
+ if not(exists_vex_extension) then
+ if rex and $0B <> 0 then inc(len); // REX.WXB <> 0 =>> needed VEX-Extension
+ {$endif x86_64}
+
+ end;
end;
calcsize:=len;
@@ -2802,7 +3421,7 @@ implementation
end;
- procedure taicpu.GenCode(objdata:TObjData);
+ procedure taicpu.gencode(objdata: TObjData);
{
* the actual codes (C syntax, i.e. octal):
* \0 - terminates the code. (Unless it's a literal of course.)
@@ -2859,18 +3478,25 @@ implementation
* \333 - 0xF3 prefix for SSE instructions
* \334 - 0xF2 prefix for SSE instructions
* \335 - Indicates 64-bit operand size with REX.W not necessary
+
+ * \350 - EVEX prefix for AVX instructions
+ * \351 - EVEX Vector length 512
+ * \352 - EVEX W1
+
* \361 - 0x66 prefix for SSE instructions
* \362 - VEX prefix for AVX instructions
* \363 - VEX W1
* \364 - VEX Vector length 256
- * \366 - operand 2 (ymmreg) encoded in bit 4-7 of the immediate byte
- * \367 - operand 3 (ymmreg) encoded in bit 4-7 of the immediate byte
+
+ * \366 - operand 2 (ymmreg,zmmreg) encoded in bit 4-7 of the immediate byte
+ * \367 - operand 3 (ymmreg,zmmreg) encoded in bit 4-7 of the immediate byte
* \370 - VEX 0F-FLAG
* \371 - VEX 0F38-FLAG
* \372 - VEX 0F3A-FLAG
+
}
var
@@ -3003,6 +3629,7 @@ implementation
$3, $7, $3, $5, $E, $C, $D, $F, $1, $B, $9, $5,
$0, $A, $A, $B, $8, $4);
var
+ i: integer;
c : byte;
pb : pbyte;
codes : pchar;
@@ -3013,13 +3640,34 @@ implementation
relsym : TObjSymbol;
needed_VEX_Extension: boolean;
needed_VEX: boolean;
+ needed_EVEX: boolean;
+ needed_VSIB: boolean;
opmode: integer;
VEXvvvv: byte;
VEXmmmmm: byte;
+ VEXw : byte;
+ VEXpp : byte;
+ VEXll : byte;
+ EVEXvvvv: byte;
+ EVEXpp: byte;
+ EVEXr: byte;
+ EVEXx: byte;
+ EVEXv: byte;
+ EVEXll: byte;
+ EVEXw0: byte;
+ EVEXw1: byte;
+ EVEXz : byte;
+ EVEXaaa : byte;
+ EVEXb : byte;
+ EVEXmm : byte;
+
begin
{ safety check }
+
if objdata.currobjsec.size<>longword(insoffset) then
- internalerror(200130121);
+ begin
+ internalerror(200130121);
+ end;
{ those variables are initialized inside local procedures, the dfa cannot handle this yet }
currsym:=nil;
@@ -3099,11 +3747,30 @@ implementation
// needed VEX Prefix (for AVX etc.)
- needed_VEX := false;
+ needed_VEX := false;
+ needed_EVEX := false;
needed_VEX_Extension := false;
+ needed_VSIB := false;
opmode := -1;
VEXvvvv := 0;
VEXmmmmm := 0;
+
+ VEXll := 0;
+ VEXw := 0;
+ VEXpp := 0;
+ EVEXpp := 0;
+ EVEXvvvv := 0;
+ EVEXr := 0;
+ EVEXx := 0;
+ EVEXv := 0;
+ EVEXll := 0;
+ EVEXw0 := 0;
+ EVEXw1 := 0;
+ EVEXz := 0;
+ EVEXaaa := 0;
+ EVEXb := 0;
+ EVEXmm := 0;
+
repeat
c:=ord(codes^);
inc(codes);
@@ -3113,32 +3780,110 @@ implementation
&1,
&2,
&3: inc(codes,c);
+ &10,
+ &11,
+ &12: inc(codes, 1);
&74: opmode := 0;
&75: opmode := 1;
&76: opmode := 2;
- &333: VEXvvvv := VEXvvvv OR $02; // set SIMD-prefix $F3
- &334: VEXvvvv := VEXvvvv OR $03; // set SIMD-prefix $F2
- &361: VEXvvvv := VEXvvvv OR $01; // set SIMD-prefix $66
+ &100..&227: begin
+ // AVX 512 - EVEX
+ // check operands
+
+ if (c shr 6) = 1 then
+ begin
+ opidx := c and 7;
+ if ops > opidx then
+ begin
+ if (oper[opidx]^.typ=top_reg) then
+ if getsupreg(oper[opidx]^.reg) and $10 = $0 then EVEXr := 1;
+ end
+ end
+ else EVEXr := 1; // modrm:reg not used =>> 1
+
+ opidx := (c shr 3) and 7;
+ if ops > opidx then
+ case oper[opidx]^.typ of
+ top_reg: if getsupreg(oper[opidx]^.reg) and $10 = $0 then EVEXx := 1;
+ top_ref: begin
+ if getsupreg(oper[opidx]^.ref^.index) and $08 = $0 then EVEXx := 1;
+ if getsubreg(oper[opidx]^.ref^.index) in [R_SUBMMX,R_SUBMMY,R_SUBMMZ] then
+ begin
+ // VSIB memory addresing
+ if getsupreg(oper[opidx]^.ref^.index) and $10 = $0 then EVEXv := 1; // VECTOR-Index
+ needed_VSIB := true;
+ end;
+ end;
+ else
+ Internalerror(2019081004);
+ end;
+
+
+ end;
+ &333: begin
+ VEXvvvv := VEXvvvv OR $02; // set SIMD-prefix $F3
+ VEXpp := $02; // set SIMD-prefix $F3
+ EVEXpp := $02; // set SIMD-prefix $F3
+ end;
+ &334: begin
+ VEXvvvv := VEXvvvv OR $03; // set SIMD-prefix $F2
+ VEXpp := $03; // set SIMD-prefix $F2
+ EVEXpp := $03; // set SIMD-prefix $F2
+ end;
+ &350: needed_EVEX := true; // AVX512 instruction or AVX128/256/512-instruction (depended on operands [x,y,z]mm16..)
+ &351: EVEXll := $02; // vectorlength = 512 bits AND no scalar
+ &352: EVEXw1 := $01;
+ &361: begin
+ VEXvvvv := VEXvvvv OR $01; // set SIMD-prefix $66
+ VEXpp := $01; // set SIMD-prefix $66
+ EVEXpp := $01; // set SIMD-prefix $66
+ end;
&362: needed_VEX := true;
&363: begin
needed_VEX_Extension := true;
VEXvvvv := VEXvvvv OR (1 shl 7); // set REX.W
+ VEXw := 1;
+ end;
+ &364: begin
+ VEXvvvv := VEXvvvv OR $04; // vectorlength = 256 bits AND no scalar
+ VEXll := $01;
+ EVEXll := $01;
+ end;
+ &366,
+ &367: begin
+ opidx:=c-&364; { 0366->operand 2, 0367->operand 3 }
+ if (ops > opidx) and
+ (oper[opidx]^.typ=top_reg) and
+ ((oper[opidx]^.ot and OT_REG_EXTRA_MASK = otf_reg_xmm) or
+ (oper[opidx]^.ot and OT_REG_EXTRA_MASK = otf_reg_ymm) or
+ (oper[opidx]^.ot and OT_REG_EXTRA_MASK = otf_reg_zmm)) then
+ if (getsupreg(oper[opidx]^.reg) and $10 = $0) then EVEXx := 1;
+ end;
+ &370: begin
+ VEXmmmmm := VEXmmmmm OR $01; // set leading opcode byte $0F
+ EVEXmm := $01;
end;
- &364: VEXvvvv := VEXvvvv OR $04; // vectorlength = 256 bits AND no scalar
- &370: VEXmmmmm := VEXmmmmm OR $01; // set leading opcode byte $0F
&371: begin
needed_VEX_Extension := true;
VEXmmmmm := VEXmmmmm OR $02; // set leading opcode byte $0F38
+ EVEXmm := $02;
end;
&372: begin
needed_VEX_Extension := true;
VEXmmmmm := VEXmmmmm OR $03; // set leading opcode byte $0F3A
+ EVEXmm := $03;
end;
end;
until false;
- if needed_VEX then
+ {$ifndef x86_64}
+ EVEXv := 1;
+ EVEXx := 1;
+ EVEXr := 1;
+ {$endif}
+
+ if needed_VEX or needed_EVEX then
begin
if (opmode > ops) or
(opmode < -1) then
@@ -3147,16 +3892,25 @@ implementation
end
else if opmode = -1 then
begin
- VEXvvvv := VEXvvvv or ($0F shl 3); // set VEXvvvv bits (bits 6-3) to 1
+ VEXvvvv := VEXvvvv or ($0F shl 3); // set VEXvvvv bits (bits 6-3) to 1
+ EVEXvvvv := $0F;
+ {$ifdef x86_64}
+ if not(needed_vsib) then EVEXv := 1;
+ {$endif x86_64}
end
else if oper[opmode]^.typ = top_reg then
begin
- VEXvvvv := VEXvvvv or ((not(regval(oper[opmode]^.reg)) and $07) shl 3);
+ VEXvvvv := VEXvvvv or ((not(regval(oper[opmode]^.reg)) and $07) shl 3);
+ EVEXvvvv := not(regval(oper[opmode]^.reg)) and $07;
{$ifdef x86_64}
if rexbits(oper[opmode]^.reg) = 0 then VEXvvvv := VEXvvvv or (1 shl 6);
+
+ if rexbits(oper[opmode]^.reg) = 0 then EVEXvvvv := EVEXvvvv or (1 shl 3);
+ if getsupreg(oper[opmode]^.reg) and $10 = 0 then EVEXv := 1;
{$else}
VEXvvvv := VEXvvvv or (1 shl 6);
+ EVEXvvvv := EVEXvvvv or (1 shl 3);
{$endif x86_64}
end
else Internalerror(777101);
@@ -3168,7 +3922,90 @@ implementation
{$endif x86_64}
end;
- if needed_VEX_Extension then
+ //TG
+ if needed_EVEX and needed_VEX then
+ begin
+ needed_EVEX := false;
+
+
+ if CheckUseEVEX then
+ begin
+ // EVEX-Flags r,v,x indicate extended-MMregister
+ // Flag = 0 =>> [x,y,z]mm16..[x,y,z]mm31
+ // Flag = 1 =>> [x,y,z]mm00..[x,y,z]mm15
+
+ needed_EVEX := true;
+
+ needed_VEX := false;
+ needed_VEX_Extension := false;
+ end;
+ end;
+
+ if needed_EVEX then
+ begin
+ EVEXaaa:= 0;
+ EVEXz := 0;
+
+ for i := 0 to ops - 1 do
+ if (oper[i]^.vopext and OTVE_VECTOR_MASK) <> 0 then
+ begin
+ if oper[i]^.vopext and OTVE_VECTOR_WRITEMASK = OTVE_VECTOR_WRITEMASK then
+ begin
+ EVEXaaa := oper[i]^.vopext and $07;
+ if oper[i]^.vopext and OTVE_VECTOR_ZERO = OTVE_VECTOR_ZERO then EVEXz := 1;
+ end;
+
+ if oper[i]^.vopext and OTVE_VECTOR_BCST = OTVE_VECTOR_BCST then
+ begin
+ EVEXb := 1;
+ end;
+
+ // flag EVEXb is multiple use (broadcast, sae and er)
+ if oper[i]^.vopext and OTVE_VECTOR_SAE = OTVE_VECTOR_SAE then
+ begin
+ EVEXb := 1;
+ end;
+
+ if oper[i]^.vopext and OTVE_VECTOR_ER = OTVE_VECTOR_ER then
+ begin
+ EVEXb := 1;
+
+ case oper[i]^.vopext and OTVE_VECTOR_ER_MASK of
+ OTVE_VECTOR_RNSAE: EVEXll := 0;
+ OTVE_VECTOR_RDSAE: EVEXll := 1;
+ OTVE_VECTOR_RUSAE: EVEXll := 2;
+ OTVE_VECTOR_RZSAE: EVEXll := 3;
+ else EVEXll := 0;
+ end;
+ end;
+ end;
+
+
+ bytes[0] := $62;
+
+ bytes[1] := ((EVEXmm and $03) shl 0) or
+ {$ifdef x86_64}
+ ((not(rex) and $05) shl 5) or
+ {$else}
+ (($05) shl 5) or
+ {$endif x86_64}
+ ((EVEXr and $01) shl 4) or
+ ((EVEXx and $01) shl 6);
+
+ bytes[2] := ((EVEXpp and $03) shl 0) or
+ ((1 and $01) shl 2) or // fixed in AVX512
+ ((EVEXvvvv and $0F) shl 3) or
+ ((EVEXw1 and $01) shl 7);
+
+ bytes[3] := ((EVEXaaa and $07) shl 0) or
+ ((EVEXv and $01) shl 3) or
+ ((EVEXb and $01) shl 4) or
+ ((EVEXll and $03) shl 5) or
+ ((EVEXz and $01) shl 7);
+
+ objdata.writebytes(bytes,4);
+ end
+ else if needed_VEX_Extension then
begin
// VEX-Prefix-Length = 3 Bytes
{$ifdef x86_64}
@@ -3204,9 +4041,24 @@ implementation
opmode := -1;
end;
+ if not(needed_EVEX) then
+ begin
+ for opidx := 0 to ops - 1 do
+ begin
+ if ops > opidx then
+ if (oper[opidx]^.typ=top_reg) and
+ (getregtype(oper[opidx]^.reg) = R_MMREGISTER) then
+ if getsupreg(oper[opidx]^.reg) and $10 = $10 then
+ begin
+ Message1(asmw_e_invalid_opcode_and_operands,GetString);
+ break;
+ end;
+ //badreg(oper[opidx]^.reg);
+ end;
+ end;
+
{ load data to write }
codes:=insentry^.code;
-
repeat
c:=ord(codes^);
inc(codes);
@@ -3216,7 +4068,7 @@ implementation
&1,&2,&3 :
begin
{$ifdef x86_64}
- if not(needed_VEX) then // TG
+ if not(needed_VEX or needed_EVEX) then // TG
maybewriterex;
{$endif x86_64}
objdata.writebytes(codes^,c);
@@ -3258,7 +4110,7 @@ implementation
&10,&11,&12 :
begin
{$ifdef x86_64}
- if not(needed_VEX) then // TG
+ if not(needed_VEX or needed_EVEX) then // TG
maybewriterex;
{$endif x86_64}
bytes[0]:=ord(codes^)+regval(oper[c-&10]^.reg);
@@ -3515,7 +4367,7 @@ implementation
&361:
begin
{$ifndef i8086}
- if not(needed_VEX) then
+ if not(needed_VEX or needed_EVEX) then
write0x66prefix(objdata);
{$endif not i8086}
end;
@@ -3527,7 +4379,7 @@ implementation
end;
&333 :
begin
- if not(needed_VEX) then
+ if not(needed_VEX or needed_EVEX) then
begin
bytes[0]:=$f3;
objdata.writebytes(bytes,1);
@@ -3535,7 +4387,7 @@ implementation
end;
&334 :
begin
- if not(needed_VEX) then
+ if not(needed_VEX or needed_EVEX) then
begin
bytes[0]:=$f2;
objdata.writebytes(bytes,1);
@@ -3554,11 +4406,14 @@ implementation
&366, &367:
begin
opidx:=c-&364; { 0366->operand 2, 0367->operand 3 }
- if needed_VEX and
+ if (needed_VEX or needed_EVEX) and
(ops=4) and
(oper[opidx]^.typ=top_reg) and
- ((oper[opidx]^.ot and OT_REG_EXTRA_MASK)=otf_reg_xmm) or
- ((oper[opidx]^.ot and OT_REG_EXTRA_MASK)=otf_reg_ymm) then
+ (
+ ((oper[opidx]^.ot and OT_REG_EXTRA_MASK)=otf_reg_xmm) or
+ ((oper[opidx]^.ot and OT_REG_EXTRA_MASK)=otf_reg_ymm) or
+ ((oper[opidx]^.ot and OT_REG_EXTRA_MASK)=otf_reg_zmm)
+ ) then
begin
bytes[0] := ((getsupreg(oper[opidx]^.reg) and 15) shl 4);
objdata.writebytes(bytes,1);
@@ -3566,6 +4421,7 @@ implementation
else
Internalerror(2014032001);
end;
+ &350..&352: ; // EVEX flags =>> nothing todo
&370..&372: ; // VEX flags =>> nothing todo
&37:
begin
@@ -3582,7 +4438,7 @@ implementation
begin
{ rex should be written at this point }
{$ifdef x86_64}
- if not(needed_VEX) then // TG
+ if not(needed_VEX or needed_EVEX) then // TG
if (rex<>0) and not(rexwritten) then
internalerror(200603191);
{$endif x86_64}
@@ -3598,8 +4454,10 @@ implementation
else
rfield:=c and 7;
opidx:=(c shr 3) and 7;
- if not process_ea(oper[opidx]^,ea_data,rfield) then
- Message(asmw_e_invalid_effective_address);
+
+ if not process_ea(oper[opidx]^,ea_data,rfield, EVEXTupleState = etsNotTuple) then
+ Message(asmw_e_invalid_effective_address);
+
pb:=@bytes[0];
pb^:=ea_data.modrm;
@@ -3975,6 +4833,9 @@ implementation
AsmOp: TasmOp;
i,j: longint;
insentry : PInsEntry;
+ codes : pchar;
+ c : byte;
+
MRefInfo: TMemRefSizeInfo;
SConstInfo: TConstSizeInfo;
actRegSize: int64;
@@ -3993,6 +4854,17 @@ implementation
RegMMXSizeMask: int64;
RegXMMSizeMask: int64;
RegYMMSizeMask: int64;
+ RegZMMSizeMask: int64;
+
+ RegMMXConstSizeMask: int64;
+ RegXMMConstSizeMask: int64;
+ RegYMMConstSizeMask: int64;
+ RegZMMConstSizeMask: int64;
+
+ RegBCSTSizeMask: int64;
+ RegBCSTXMMSizeMask: int64;
+ RegBCSTYMMSizeMask: int64;
+ RegBCSTZMMSizeMask: int64;
bitcount: integer;
@@ -4023,14 +4895,28 @@ implementation
if i >= 0 then
begin
- InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiUnkown;
- InsTabMemRefSizeInfoCache^[AsmOp].ConstSize := csiUnkown;
- InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX := false;
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiUnkown;
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSizeBCST := msbUnknown;
+ InsTabMemRefSizeInfoCache^[AsmOp].BCSTXMMMultiplicator := 0;
+ InsTabMemRefSizeInfoCache^[AsmOp].ConstSize := csiUnkown;
+ InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX := false;
+ InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes := [];
insentry:=@instab[i];
RegMMXSizeMask := 0;
RegXMMSizeMask := 0;
RegYMMSizeMask := 0;
+ RegZMMSizeMask := 0;
+
+ RegMMXConstSizeMask := 0;
+ RegXMMConstSizeMask := 0;
+ RegYMMConstSizeMask := 0;
+ RegZMMConstSizeMask := 0;
+
+ RegBCSTSizeMask:= 0;
+ RegBCSTXMMSizeMask := 0;
+ RegBCSTYMMSizeMask := 0;
+ RegBCSTZMMSizeMask := 0;
while (insentry^.opcode=AsmOp) do
begin
@@ -4056,15 +4942,19 @@ implementation
if ((insentry^.optypes[j] and OT_XMEM32) = OT_XMEM32) OR
((insentry^.optypes[j] and OT_XMEM64) = OT_XMEM64) OR
((insentry^.optypes[j] and OT_YMEM32) = OT_YMEM32) OR
- ((insentry^.optypes[j] and OT_YMEM64) = OT_YMEM64) then
+ ((insentry^.optypes[j] and OT_YMEM64) = OT_YMEM64) OR
+ ((insentry^.optypes[j] and OT_ZMEM32) = OT_ZMEM32) OR
+ ((insentry^.optypes[j] and OT_ZMEM64) = OT_ZMEM64) then
begin
inc(actVMemCount);
- case insentry^.optypes[j] and (OT_XMEM32 OR OT_XMEM64 OR OT_YMEM32 OR OT_YMEM64) of
+ case insentry^.optypes[j] and (OT_XMEM32 OR OT_XMEM64 OR OT_YMEM32 OR OT_YMEM64 OR OT_ZMEM32 OR OT_ZMEM64) of
OT_XMEM32: actVMemTypes := actVMemTypes or OT_XMEM32;
OT_XMEM64: actVMemTypes := actVMemTypes or OT_XMEM64;
OT_YMEM32: actVMemTypes := actVMemTypes or OT_YMEM32;
OT_YMEM64: actVMemTypes := actVMemTypes or OT_YMEM64;
+ OT_ZMEM32: actVMemTypes := actVMemTypes or OT_ZMEM32;
+ OT_ZMEM64: actVMemTypes := actVMemTypes or OT_ZMEM64;
else InternalError(777206);
end;
end
@@ -4075,7 +4965,7 @@ implementation
NewRegSize := (insentry^.optypes[j] and OT_SIZE_MASK);
if NewRegSize = 0 then
begin
- case insentry^.optypes[j] and (OT_MMXREG or OT_XMMREG or OT_YMMREG or OT_REG_EXTRA_MASK) of
+ case insentry^.optypes[j] and (OT_MMXREG or OT_XMMREG or OT_YMMREG or OT_ZMMREG or OT_KREG or OT_REG_EXTRA_MASK) of
OT_MMXREG: begin
NewRegSize := OT_BITS64;
end;
@@ -4087,18 +4977,26 @@ implementation
NewRegSize := OT_BITS256;
InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX := true;
end;
+ OT_ZMMREG: begin
+ NewRegSize := OT_BITS512;
+ InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX := true;
+ end;
+ OT_KREG: begin
+ InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX := true;
+ end;
+
else NewRegSize := not(0);
end;
end;
actRegSize := actRegSize or NewRegSize;
- actRegTypes := actRegTypes or (insentry^.optypes[j] and (OT_MMXREG or OT_XMMREG or OT_YMMREG or OT_REG_EXTRA_MASK));
+ actRegTypes := actRegTypes or (insentry^.optypes[j] and (OT_MMXREG or OT_XMMREG or OT_YMMREG or OT_ZMMREG or OT_KREG or OT_REG_EXTRA_MASK));
end
else if ((insentry^.optypes[j] and OT_MEMORY) <> 0) then
begin
inc(actMemCount);
- actMemSize:=actMemSize or (insentry^.optypes[j] and OT_SIZE_MASK);
+ 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];
@@ -4144,6 +5042,8 @@ implementation
OT_XMEM64: MRefInfo := msiXMem64;
OT_YMEM32: MRefInfo := msiYMem32;
OT_YMEM64: MRefInfo := msiYMem64;
+ OT_ZMEM32: MRefInfo := msiZMem32;
+ OT_ZMEM64: MRefInfo := msiZMem64;
else InternalError(777208);
end;
@@ -4153,6 +5053,8 @@ implementation
msiXMem64: RegXMMSizeMask := RegXMMSizeMask or OT_BITS128;
msiYMem32,
msiYMem64: RegXMMSizeMask := RegXMMSizeMask or OT_BITS256;
+ msiZMem32,
+ msiZMem64: RegXMMSizeMask := RegXMMSizeMask or OT_BITS512;
else InternalError(777210);
end;
OT_YMMREG: case MRefInfo of
@@ -4160,8 +5062,20 @@ implementation
msiXMem64: RegYMMSizeMask := RegYMMSizeMask or OT_BITS128;
msiYMem32,
msiYMem64: RegYMMSizeMask := RegYMMSizeMask or OT_BITS256;
+ msiZMem32,
+ msiZMem64: RegYMMSizeMask := RegYMMSizeMask or OT_BITS512;
+ else InternalError(777211);
+ end;
+ OT_ZMMREG: case MRefInfo of
+ msiXMem32,
+ msiXMem64: RegZMMSizeMask := RegZMMSizeMask or OT_BITS128;
+ msiYMem32,
+ msiYMem64: RegZMMSizeMask := RegZMMSizeMask or OT_BITS256;
+ msiZMem32,
+ msiZMem64: RegZMMSizeMask := RegZMMSizeMask or OT_BITS512;
else InternalError(777211);
end;
+
//else InternalError(777209);
end;
@@ -4172,11 +5086,11 @@ implementation
end
else if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize <> MRefInfo then
begin
- if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize in [msiXMem32, msiXMem64, msiYMem32, msiYMem64] then
+ if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize in [msiXMem32, msiXMem64, msiYMem32, msiYMem64, msiZMem32, msiZMem64] then
begin
InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiVMemMultiple;
end
- else InternalError(777212);
+ else if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize <> msiVMemMultiple then InternalError(777212);
end;
end;
@@ -4185,116 +5099,273 @@ implementation
end
else
begin
- if (actMemCount=2) and ((AsmOp=A_MOVS) or (AsmOp=A_CMPS)) then
- actMemCount:=1;
- case actMemCount of
- 0: ; // nothing todo
- 1: begin
- MRefInfo := msiUnkown;
- case actRegMemTypes and (OT_MMXRM or OT_XMMRM or OT_YMMRM 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;
- end;
+ if (actMemCount=2) and ((AsmOp=A_MOVS) or (AsmOp=A_CMPS)) then actMemCount:=1;
+
+ 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;
- case actMemSize of
- 0: MRefInfo := msiNoSize;
- OT_BITS8: MRefInfo := msiMem8;
- OT_BITS16: MRefInfo := msiMem16;
- OT_BITS32: MRefInfo := msiMem32;
- OT_BITS64: MRefInfo := msiMem64;
- OT_BITS128: MRefInfo := msiMem128;
- OT_BITS256: MRefInfo := msiMem256;
- OT_BITS80,
- OT_FAR,
- OT_NEAR,
- OT_SHORT: ; // ignore
- else
- begin
- bitcount := bitcnt(actMemSize);
+ case actMemSize of
+ 0: MRefInfo := msiNoSize;
+ OT_BITS8: MRefInfo := msiMem8;
+ OT_BITS16: MRefInfo := msiMem16;
+ OT_BITS32: MRefInfo := msiMem32;
+ OT_BITSB32: MRefInfo := msiBMem32;
+ OT_BITS64: MRefInfo := msiMem64;
+ OT_BITSB64: MRefInfo := msiBMem64;
+ OT_BITS128: MRefInfo := msiMem128;
+ OT_BITS256: MRefInfo := msiMem256;
+ OT_BITS512: MRefInfo := msiMem512;
+ OT_BITS80,
+ OT_FAR,
+ OT_NEAR,
+ OT_SHORT: ; // ignore
+ else
+ begin
+ bitcount := bitcnt(actMemSize);
- if bitcount > 1 then MRefInfo := msiMultiple
- else InternalError(777203);
- end;
- end;
+ if bitcount > 1 then MRefInfo := msiMultiple
+ else InternalError(777203);
+ end;
+ end;
- if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiUnkown then
- begin
- InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := MRefInfo;
- end
- else if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize <> MRefInfo then
+ if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiUnkown then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := MRefInfo;
+ end
+ else
begin
- with InsTabMemRefSizeInfoCache^[AsmOp] do
+ // ignore broadcast-memory
+ if not(MRefInfo in [msiBMem32, msiBMem64]) then
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 MemRefSize := msiMultiple;
+ if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize <> MRefInfo then
+ 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
+ else MemRefSize := msiMultiple;
+ end;
+ end;
end;
- end;
+ end;
- if actRegCount > 0 then
+ //if not(MRefInfo in [msiBMem32, msiBMem64]) and (actRegCount > 0) then
+ if actRegCount > 0 then
begin
- case actRegTypes and (OT_MMXREG or OT_XMMREG or OT_YMMREG or OT_REG_EXTRA_MASK) of
- OT_MMXREG: RegMMXSizeMask := RegMMXSizeMask or actMemSize;
- OT_XMMREG: RegXMMSizeMask := RegXMMSizeMask or actMemSize;
- OT_YMMREG: RegYMMSizeMask := RegYMMSizeMask or actMemSize;
+ if MRefInfo in [msiBMem32, msiBMem64] then
+ begin
+ if IF_BCST2 in insentry^.flags then InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes := InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes + [bt1to2];
+ if IF_BCST4 in insentry^.flags then InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes := InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes + [bt1to4];
+ if IF_BCST8 in insentry^.flags then InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes := InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes + [bt1to8];
+ if IF_BCST16 in insentry^.flags then InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes := InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes + [bt1to16];
+
+ //InsTabMemRefSizeInfoCache^[AsmOp].BCSTTypes
+
+ // BROADCAST - OPERAND
+ RegBCSTSizeMask := RegBCSTSizeMask or actMemSize;
+
+ case actRegTypes and (OT_XMMREG or OT_YMMREG or OT_ZMMREG or OT_REG_EXTRA_MASK) of
+ OT_XMMREG: RegBCSTXMMSizeMask := RegBCSTXMMSizeMask or actMemSize;
+ OT_YMMREG: RegBCSTYMMSizeMask := RegBCSTYMMSizeMask or actMemSize;
+ OT_ZMMREG: RegBCSTZMMSizeMask := RegBCSTZMMSizeMask or actMemSize;
+ else begin
+
+ RegBCSTXMMSizeMask := not(0);
+ RegBCSTYMMSizeMask := not(0);
+ RegBCSTZMMSizeMask := not(0);
+ end;
+ end;
+ end
+ else
+ case actRegTypes and (OT_MMXREG or OT_XMMREG or OT_YMMREG or OT_ZMMREG or OT_REG_EXTRA_MASK) of
+ OT_MMXREG: if actConstCount > 0 then RegMMXConstSizeMask := RegMMXConstSizeMask or actMemSize
+ else RegMMXSizeMask := RegMMXSizeMask or actMemSize;
+ OT_XMMREG: if actConstCount > 0 then RegXMMConstSizeMask := RegXMMConstSizeMask or actMemSize
+ else RegXMMSizeMask := RegXMMSizeMask or actMemSize;
+ OT_YMMREG: if actConstCount > 0 then RegYMMConstSizeMask := RegYMMConstSizeMask or actMemSize
+ else RegYMMSizeMask := RegYMMSizeMask or actMemSize;
+ OT_ZMMREG: if actConstCount > 0 then RegZMMConstSizeMask := RegZMMConstSizeMask or actMemSize
+ else RegZMMSizeMask := RegZMMSizeMask or actMemSize;
else begin
RegMMXSizeMask := not(0);
RegXMMSizeMask := not(0);
RegYMMSizeMask := not(0);
+ RegZMMSizeMask := not(0);
+
+ RegMMXConstSizeMask := not(0);
+ RegXMMConstSizeMask := not(0);
+ RegYMMConstSizeMask := not(0);
+ RegZMMConstSizeMask := not(0);
end;
end;
- end;
- end;
- else InternalError(777202);
- end;
+ end
+ else
+
+
+ end
+ else InternalError(777202);
+ end;
end;
inc(insentry);
end;
+ if InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX then
+ begin
+ case RegBCSTSizeMask of
+ 0: ; // ignore;
+ OT_BITSB32: begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSizeBCST := msbBCST32;
+ InsTabMemRefSizeInfoCache^[AsmOp].BCSTXMMMultiplicator := 4;
+ end;
+ OT_BITSB64: begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSizeBCST := msbBCST64;
+ InsTabMemRefSizeInfoCache^[AsmOp].BCSTXMMMultiplicator := 2;
+ end;
+ else begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSizeBCST := msbMultiple;
+ end;;
+ end;
+ end;
+
if (InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize in MemRefMultiples) and
(InsTabMemRefSizeInfoCache^[AsmOp].ExistsSSEAVX)then
begin
- case RegXMMSizeMask of
- OT_BITS16: case RegYMMSizeMask of
- OT_BITS32: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx16y32;
- end;
- OT_BITS32: case RegYMMSizeMask of
- OT_BITS64: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx32y64;
- end;
- OT_BITS64: case RegYMMSizeMask of
- OT_BITS128: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx64y128;
- OT_BITS256: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx64y256;
- end;
- OT_BITS128: begin
- if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiVMemMultiple then
- begin
- // vector-memory-operand AVX2 (e.g. VGATHER..)
- case RegYMMSizeMask of
- OT_BITS256: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiVMemRegSize;
- end;
- end
- else if RegMMXSizeMask = 0 then
- begin
- case RegYMMSizeMask of
- OT_BITS128: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx64y128;
- OT_BITS256: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegSize;
- end;
- end
- else if RegYMMSizeMask = 0 then
- begin
- case RegMMXSizeMask of
- OT_BITS64: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegSize;
- end;
- end
- else InternalError(777205);
- end;
+ if InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize = msiVMemMultiple then
+ begin
+ if ((RegXMMSizeMask = OT_BITS128) or (RegXMMSizeMask = 0)) and
+ ((RegYMMSizeMask = OT_BITS256) or (RegYMMSizeMask = 0)) and
+ ((RegZMMSizeMask = OT_BITS512) or (RegZMMSizeMask = 0)) and
+ ((RegXMMSizeMask or RegYMMSizeMask or RegZMMSizeMask) <> 0) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiVMemRegSize;
+ end;
+ end
+ else if (RegMMXSizeMask or RegMMXConstSizeMask) <> 0 then
+ begin
+ if ((RegMMXSizeMask or RegMMXConstSizeMask) = OT_BITS64) and
+ ((RegXMMSizeMask or RegXMMConstSizeMask) = OT_BITS128) and
+ ((RegYMMSizeMask or RegYMMConstSizeMask) = 0) and
+ ((RegZMMSizeMask or RegZMMConstSizeMask) = 0) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegSize;
+ end;
+ end
+ else if (((RegXMMSizeMask or RegXMMConstSizeMask) = OT_BITS128) or ((RegXMMSizeMask or RegXMMConstSizeMask) = 0)) and
+ (((RegYMMSizeMask or RegYMMConstSizeMask) = OT_BITS256) or ((RegYMMSizeMask or RegYMMConstSizeMask) = 0)) and
+ (((RegZMMSizeMask or RegZMMConstSizeMask) = OT_BITS512) or ((RegZMMSizeMask or RegZMMConstSizeMask) = 0)) and
+ (((RegXMMSizeMask or RegXMMConstSizeMask or
+ RegYMMSizeMask or RegYMMConstSizeMask or
+ RegZMMSizeMask or RegZMMConstSizeMask)) <> 0) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegSize;
+ end
+ else if (RegXMMSizeMask or RegXMMConstSizeMask = OT_BITS16) and
+ (RegYMMSizeMask or RegYMMConstSizeMask = OT_BITS32) and
+ (RegZMMSizeMask or RegZMMConstSizeMask = 0) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx16y32;
+ end
+ else if (RegXMMSizeMask or RegXMMConstSizeMask = OT_BITS16) and
+ (RegYMMSizeMask or RegYMMConstSizeMask = OT_BITS32) and
+ (RegZMMSizeMask or RegZMMConstSizeMask = OT_BITS64) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx16y32z64;
+ end
+ else if ((RegXMMSizeMask or RegXMMConstSizeMask) = OT_BITS32) and
+ ((RegYMMSizeMask or RegYMMConstSizeMask) = OT_BITS64) then
+ begin
+ if ((RegZMMSizeMask or RegZMMConstSizeMask) = 0) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx32y64;
+ end
+ else if ((RegZMMSizeMask or RegZMMConstSizeMask) = OT_BITS128) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx32y64z128;
+ end;
+ end
+ else if ((RegXMMSizeMask or RegXMMConstSizeMask) = OT_BITS64) and
+ ((RegYMMSizeMask or RegYMMConstSizeMask) = OT_BITS128) and
+ ((RegZMMSizeMask or RegZMMConstSizeMask) = 0) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx64y128;
+ end
+ else if ((RegXMMSizeMask or RegXMMConstSizeMask) = OT_BITS64) and
+ ((RegYMMSizeMask or RegYMMConstSizeMask) = OT_BITS128) and
+ ((RegZMMSizeMask or RegZMMConstSizeMask) = OT_BITS256) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx64y128z256;
+ end
+ else if ((RegXMMSizeMask or RegXMMConstSizeMask) = OT_BITS64) and
+ ((RegYMMSizeMask or RegYMMConstSizeMask) = OT_BITS256) and
+ ((RegZMMSizeMask or RegZMMConstSizeMask) = 0) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx64y256;
+ end
+ else if ((RegXMMSizeMask or RegXMMConstSizeMask) = OT_BITS64) and
+ ((RegYMMSizeMask or RegYMMConstSizeMask) = OT_BITS256) and
+ ((RegZMMSizeMask or RegZMMConstSizeMask) = OT_BITS512) then
+ begin
+ InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegx64y256z512;
+ end
+ else if ((RegXMMConstSizeMask = 0) or (RegXMMConstSizeMask = OT_BITS128)) and
+ ((RegYMMConstSizeMask = 0) or (RegYMMConstSizeMask = OT_BITS256)) and
+ ((RegZMMConstSizeMask = 0) or (RegZMMConstSizeMask = OT_BITS512)) and
+ ((RegXMMConstSizeMask or RegYMMConstSizeMask or RegZMMConstSizeMask) <> 0) and
+ (
+ ((RegXMMSizeMask or RegYMMSizeMask or RegZMMSizeMask) = OT_BITS128) or
+ ((RegXMMSizeMask or RegYMMSizeMask or RegZMMSizeMask) = OT_BITS256) or
+ ((RegXMMSizeMask or RegYMMSizeMask or RegZMMSizeMask) = OT_BITS512)
+ ) then
+ begin
+ case RegXMMSizeMask or RegYMMSizeMask or RegZMMSizeMask of
+ OT_BITS128: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegConst128;
+ OT_BITS256: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegConst256;
+ OT_BITS512: InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMemRegConst512;
+ else InsTabMemRefSizeInfoCache^[AsmOp].MemRefSize := msiMultiple;
+ end;
+ end
+ else
+ begin
+ if not(
+ (AsmOp = A_CVTSI2SS) or
+ (AsmOp = A_CVTSI2SD) or
+ (AsmOp = A_CVTPD2DQ) or
+ (AsmOp = A_VCVTPD2DQ) or
+ (AsmOp = A_VCVTPD2PS) or
+ (AsmOp = A_VCVTSI2SD) or
+ (AsmOp = A_VCVTSI2SS) or
+ (AsmOp = A_VCVTTPD2DQ) or
+ (AsmOp = A_VCVTPD2UDQ) or
+ (AsmOp = A_VCVTQQ2PS) or
+ (AsmOp = A_VCVTTPD2UDQ) or
+ (AsmOp = A_VCVTUQQ2PS) or
+ (AsmOp = A_VCVTUSI2SD) or
+ (AsmOp = A_VCVTUSI2SS) or
+
+
+ // TODO check
+ (AsmOp = A_VCMPSS)
+
+
+ ) then
+
+ InternalError(777205);
end;
+
end;
end;
end;
diff --git a/compiler/x86/agx86att.pas b/compiler/x86/agx86att.pas
index 1612387592..29b321a076 100644
--- a/compiler/x86/agx86att.pas
+++ b/compiler/x86/agx86att.pas
@@ -231,6 +231,21 @@ interface
procedure Tx86InstrWriter.WriteOper(const o:toper);
begin
+ if o.vopext and OTVE_VECTOR_SAE = OTVE_VECTOR_SAE then
+ owner.writer.AsmWrite('{sae},');
+
+ if o.vopext and OTVE_VECTOR_ER_MASK = OTVE_VECTOR_RNSAE then
+ owner.writer.AsmWrite('{rn-sae},');
+
+ if o.vopext and OTVE_VECTOR_ER_MASK = OTVE_VECTOR_RDSAE then
+ owner.writer.AsmWrite('{rd-sae},');
+
+ if o.vopext and OTVE_VECTOR_ER_MASK = OTVE_VECTOR_RUSAE then
+ owner.writer.AsmWrite('{ru-sae},');
+
+ if o.vopext and OTVE_VECTOR_ER_MASK = OTVE_VECTOR_RZSAE then
+ owner.writer.AsmWrite('{rz-sae},');
+
case o.typ of
top_reg :
{ Solaris assembler does not accept %st instead of %st(0) }
@@ -263,6 +278,26 @@ interface
else
internalerror(10001);
end;
+
+ if o.vopext and OTVE_VECTOR_WRITEMASK = OTVE_VECTOR_WRITEMASK then
+ begin
+ owner.writer.AsmWrite('{%k' + tostr(o.vopext and $07) + '} ');
+ if o.vopext and OTVE_VECTOR_ZERO = OTVE_VECTOR_ZERO then
+ owner.writer.AsmWrite('{z}');
+ end;
+
+
+ if o.vopext and OTVE_VECTOR_BCST = OTVE_VECTOR_BCST then
+ begin
+ case o.vopext and (OTVE_VECTOR_BCST2 or OTVE_VECTOR_BCST4 or OTVE_VECTOR_BCST8 or OTVE_VECTOR_BCST16) of
+ OTVE_VECTOR_BCST2: owner.writer.AsmWrite('{1to2}');
+ OTVE_VECTOR_BCST4: owner.writer.AsmWrite('{1to4}');
+ OTVE_VECTOR_BCST8: owner.writer.AsmWrite('{1to8}');
+ OTVE_VECTOR_BCST16: owner.writer.AsmWrite('{1to16}');
+ else ; //TG TODO errormsg
+ end;
+ end;
+
end;
diff --git a/compiler/x86/agx86int.pas b/compiler/x86/agx86int.pas
index d85fa48945..47ca4a0f1b 100644
--- a/compiler/x86/agx86int.pas
+++ b/compiler/x86/agx86int.pas
@@ -390,6 +390,7 @@ implementation
writer.AsmWrite('word ptr ');
S_XMM: writer.AsmWrite('xmmword ptr ');
S_YMM: writer.AsmWrite('ymmword ptr ');
+ S_ZMM: writer.AsmWrite('zmmword ptr ');
{$ifdef x86_64}
S_BQ : if dest then
writer.AsmWrite('qword ptr ')
diff --git a/compiler/x86/cpubase.pas b/compiler/x86/cpubase.pas
index 6b379f40ec..17b1c3b62d 100644
--- a/compiler/x86/cpubase.pas
+++ b/compiler/x86/cpubase.pas
@@ -487,7 +487,12 @@ implementation
{$endif x86_64}
else
reg_cgsize:=OS_32
- end
+ end;
+ R_ADDRESSREGISTER:
+ case reg of
+ NR_K0..NR_K7: reg_cgsize:=OS_64;
+ else internalerror(2003031801);
+ end;
else
internalerror(2003031801);
end;
@@ -594,8 +599,18 @@ implementation
{ for the name the sub reg doesn't matter }
hr:=r;
if (getregtype(hr)=R_MMREGISTER) and
- (getsubreg(hr)<>R_SUBMMY) then
+ (getsubreg(hr)<>R_SUBMMY) and
+ (getsubreg(hr)<>R_SUBMMZ) then
setsubreg(hr,R_SUBMMX);
+
+ //// TG TODO check
+ //if (getregtype(hr)=R_MMREGISTER) then
+ // case getsubreg(hr) of
+ // R_SUBMMX: setsubreg(hr,R_SUBMMX);
+ // R_SUBMMY: setsubreg(hr,R_SUBMMY);
+ // R_SUBMMZ: setsubreg(hr,R_SUBMMZ);
+ // else setsubreg(hr,R_SUBMMX);
+ // end;
result:=findreg_by_number_table(hr,regnumber_index);
end;
diff --git a/compiler/x86/rax86.pas b/compiler/x86/rax86.pas
index 7cca88ae92..7958e53828 100644
--- a/compiler/x86/rax86.pas
+++ b/compiler/x86/rax86.pas
@@ -42,6 +42,8 @@ Procedure FWaitWarning;
type
Tx86Operand=class(TOperand)
opsize : topsize;
+ vopext : smallint; // bitmask: vector-operand extention AVX512 (e.g. vaddps xmm0 {k1} {z})
+ vbcst : byte;
Procedure SetSize(_size:longint;force:boolean);override;
Procedure SetCorrectSize(opcode:tasmop);override;
Function CheckOperand: boolean; override;
@@ -49,10 +51,15 @@ type
Procedure SetupCode;
{ handles the @Data symbol }
Procedure SetupData;
+
+ constructor create; override;
end;
{ Operands are always in AT&T order.
Intel reader attaches them right-to-left, then shifts to start with 1 }
+
+ { Tx86Instruction }
+
Tx86Instruction=class(TInstruction)
opsize : topsize;
constructor Create(optype : tcoperand);override;
@@ -65,6 +72,7 @@ type
procedure FixupOpcode;virtual;
{ opcode adding }
function ConcatInstruction(p : TAsmList) : tai;override;
+ function getstring: string;
end;
const
@@ -195,6 +203,7 @@ begin
case _size of
16: size := OS_M128;
32: size := OS_M256;
+ 64: size := OS_M512;
end;
{$ifdef i8086}
@@ -406,6 +415,13 @@ begin
{$endif i8086}
end;
+constructor Tx86Operand.create;
+begin
+ inherited;
+
+ vopext := 0;
+ vbcst := 0;
+end;
{*****************************************************************************
T386Instruction
@@ -422,21 +438,29 @@ procedure Tx86Instruction.AddReferenceSizes;
have the size set yet, it will take only the size if the other
operand is a register }
var
- operand2,i,j : longint;
+ operand2,i,j,k : longint;
+ t: topsize;
s : tasmsymbol;
so : aint;
ExistsMemRefNoSize: boolean;
ExistsMemRef: boolean;
ExistsConstNoSize: boolean;
+ ExistConst: boolean;
ExistsLocalSymSize: boolean;
+ ExistsBCST: boolean;
memrefsize: integer;
memopsize: integer;
memoffset: asizeint;
+ vbcst: byte;
+ mmregs: Set of TSubregister;
+ multiplicator: integer;
+ bcst1,bcst2: string;
begin
ExistsMemRefNoSize := false;
ExistsMemRef := false;
ExistsConstNoSize := false;
ExistsLocalSymSize := false;
+ ExistsBCST := false;
// EXIST A MEMORY- OR CONSTANT-OPERAND WITHOUT SIZE ?
for i := 1 to ops do
@@ -445,6 +469,9 @@ begin
begin
ExistsMemRef := true;
+ ExistsBCST := (MemRefInfo(opcode).ExistsSSEAVX) and
+ (tx86operand(operands[i]).vbcst <> 0);
+
if (tx86operand(operands[i]).opsize = S_NO) then
begin
ExistsMemRefNoSize := true;
@@ -455,7 +482,6 @@ begin
else
;
end;
-
end;
end
else if operands[i].Opr.Typ in [OPR_CONSTANT] then
@@ -485,6 +511,16 @@ begin
begin
memrefsize := -1;
+ if ExistsBCST then
+ begin
+ case MemRefInfo(opcode).MemRefSizeBCST of
+ msbBCST32: memrefsize := 32;
+ msbBCST64: memrefsize := 64;
+ else
+ Internalerror(2019081005);
+ end;
+ end
+ else
case MemRefInfo(opcode).MemRefSize of
msiMultiple8,
msiMem8: memrefsize := 8;
@@ -502,6 +538,8 @@ begin
msiMem128: memrefsize := 128;
msiMultiple256,
msiMem256: memrefsize := 256;
+ msiMultiple512,
+ msiMem512: memrefsize := 512;
msiMemRegx16y32:
begin
for j := 1 to ops do
@@ -516,7 +554,6 @@ begin
end;
end;
end;
-
msiMemRegx32y64:
begin
for j := 1 to ops do
@@ -532,54 +569,136 @@ begin
end;
end;
msiMemRegx64y128:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: memrefsize := 64;
+ R_SUBMMY: memrefsize := 128;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx64y256:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: memrefsize := 64;
+ R_SUBMMY: memrefsize := 256;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx64y128z256:
+ begin
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: memrefsize := 64;
+ R_SUBMMY: memrefsize := 128;
+ R_SUBMMZ: memrefsize := 256;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx64y256z512:
+ begin
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: memrefsize := 64;
+ R_SUBMMY: memrefsize := 256;
+ R_SUBMMZ: memrefsize := 512;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ end;
+ msiMemRegSize:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
begin
- for j := 1 to ops do
+ if (tx86operand(operands[j]).opsize <> S_NO) and
+ (tx86operand(operands[j]).size <> OS_NO) then
begin
- if operands[j].Opr.Typ = OPR_REGISTER then
- begin
- case getsubreg(operands[j].opr.reg) of
- R_SUBMMX: memrefsize := 64;
- R_SUBMMY: memrefsize := 128;
- else Message(asmr_e_unable_to_determine_reference_size);
- end;
+ case tx86operand(operands[j]).opsize of
+ S_B : memrefsize := 8;
+ S_W : memrefsize := 16;
+ S_L : memrefsize := 32;
+ S_Q : memrefsize := 64;
+ S_XMM : memrefsize := 128;
+ S_YMM : memrefsize := 256;
+ S_ZMM : memrefsize := 512;
+ else Internalerror(2019081001);
end;
+ break;
end;
end;
- msiMemRegx64y256:
+ end;
+ end;
+ msiMemRegConst128,
+ msiMemRegConst256,
+ msiMemRegConst512:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_CONSTANT then
+ begin
+ for k := 1 to ops do
begin
- for j := 1 to ops do
+ if operands[k].Opr.Typ = OPR_REGISTER then
begin
- if operands[j].Opr.Typ = OPR_REGISTER then
+ if (tx86operand(operands[k]).opsize <> S_NO) and
+ (tx86operand(operands[k]).size <> OS_NO) then
begin
- case getsubreg(operands[j].opr.reg) of
- R_SUBMMX: memrefsize := 64;
- R_SUBMMY: memrefsize := 256;
- else Message(asmr_e_unable_to_determine_reference_size);
+ case tx86operand(operands[k]).opsize of
+ S_B : memrefsize := 8;
+ S_W : memrefsize := 16;
+ S_L : memrefsize := 32;
+ S_Q : memrefsize := 64;
+ S_XMM : memrefsize := 128;
+ S_YMM : memrefsize := 256;
+ S_ZMM : memrefsize := 512;
+ else Internalerror(777200);
end;
+ break;
end;
end;
end;
- msiMemRegSize
- : for j := 1 to ops do
- begin
- if operands[j].Opr.Typ = OPR_REGISTER then
- begin
- if (tx86operand(operands[j]).opsize <> S_NO) and
- (tx86operand(operands[j]).size <> OS_NO) then
- begin
- case tx86operand(operands[j]).opsize of
- S_B : memrefsize := 8;
- S_W : memrefsize := 16;
- S_L : memrefsize := 32;
- S_Q : memrefsize := 64;
- S_XMM : memrefsize := 128;
- S_YMM : memrefsize := 256;
- else Internalerror(777200);
- end;
- break;
- end;
- end;
- end;
+
+ break;
+ end;
+ end;
+
+ // no exists const-operand
+ if memrefsize = -1 then
+ begin
+ case MemRefInfo(opcode).MemRefSize of
+ msiMemRegConst128: memrefsize := 128;
+ msiMemRegConst256: memrefsize := 256;
+ msiMemRegConst512: memrefsize := 512;
+ else Internalerror(2019081002);
+ end;
+ end;
+ end;
msiNoSize,
msiUnkown,
msiUnsupported,
@@ -587,6 +706,8 @@ begin
msiVMemRegSize,
msiMultiple:
;
+ else
+ Internalerror(2019081005);
end;
if memrefsize > -1 then
@@ -669,161 +790,224 @@ begin
begin
case operands[i].Opr.Typ of
OPR_REFERENCE:
- case MemRefInfo(opcode).MemRefSize of
- msiMem8:
- begin
- tx86operand(operands[i]).opsize := S_B;
- tx86operand(operands[i]).size := OS_8;
- end;
- msiMultiple8:
- begin
- tx86operand(operands[i]).opsize := S_B;
- tx86operand(operands[i]).size := OS_8;
+ begin
+ if ExistsBCST then
+ begin
+ case MemRefInfo(opcode).MemRefSizeBCST of
+ msbBCST32: begin
+ tx86operand(operands[i]).opsize := S_L;
+ tx86operand(operands[i]).size := OS_32;
+ end;
+ msbBCST64: begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ end;
+ else
+ Internalerror(2019081006);
+ end;
+ end
+ else
- Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"8 bit memory operand"');
- end;
- msiMem16:
- begin
- tx86operand(operands[i]).opsize := S_W;
- tx86operand(operands[i]).size := OS_16;
- end;
- msiMultiple16:
- begin
- tx86operand(operands[i]).opsize := S_W;
- tx86operand(operands[i]).size := OS_16;
-
- Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"16 bit memory operand"');
- end;
- msiXMem32,
- msiYMem32,
- msiMem32:
- begin
- tx86operand(operands[i]).opsize := S_L;
- tx86operand(operands[i]).size := OS_32;
- end;
- msiMultiple32:
- begin
- tx86operand(operands[i]).opsize := S_L;
- tx86operand(operands[i]).size := OS_32;
-
- Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"32 bit memory operand"');
- end;
- msiXMem64,
- msiYMem64,
- msiMem64:
- begin
- tx86operand(operands[i]).opsize := S_Q;
- tx86operand(operands[i]).size := OS_M64;
- end;
- msiMultiple64:
- begin
- tx86operand(operands[i]).opsize := S_Q;
- tx86operand(operands[i]).size := OS_M64;
-
- Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"64 bit memory operand"');
- end;
- msiMem128:
- begin
- tx86operand(operands[i]).opsize := S_XMM;
- tx86operand(operands[i]).size := OS_M128;
- end;
- msiMultiple128:
- begin
- tx86operand(operands[i]).opsize := S_XMM;
- tx86operand(operands[i]).size := OS_M128;
-
- Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"128 bit memory operand"');
- end;
- msiMem256:
- begin
- tx86operand(operands[i]).opsize := S_YMM;
- tx86operand(operands[i]).size := OS_M256;
- opsize := S_YMM;
- end;
- msiMultiple256:
- begin
- tx86operand(operands[i]).opsize := S_YMM;
- tx86operand(operands[i]).size := OS_M256;
- opsize := S_YMM;
-
- Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"256 bit memory operand"');
- end;
- msiMemRegSize:
- begin
- // mem-ref-size = register size
- for j := 1 to ops do
+ case MemRefInfo(opcode).MemRefSize of
+ msiMem8:
+ begin
+ tx86operand(operands[i]).opsize := S_B;
+ tx86operand(operands[i]).size := OS_8;
+ end;
+ msiMultiple8:
+ begin
+ tx86operand(operands[i]).opsize := S_B;
+ tx86operand(operands[i]).size := OS_8;
+
+ Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"8 bit memory operand"');
+ end;
+ msiMem16:
+ begin
+ tx86operand(operands[i]).opsize := S_W;
+ tx86operand(operands[i]).size := OS_16;
+ end;
+ msiMultiple16:
begin
- if operands[j].Opr.Typ = OPR_REGISTER then
+ tx86operand(operands[i]).opsize := S_W;
+ tx86operand(operands[i]).size := OS_16;
+
+ Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"16 bit memory operand"');
+ end;
+ msiXMem32,
+ msiYMem32,
+ msiMem32:
+ begin
+ tx86operand(operands[i]).opsize := S_L;
+ tx86operand(operands[i]).size := OS_32;
+ end;
+ msiMultiple32:
+ begin
+ tx86operand(operands[i]).opsize := S_L;
+ tx86operand(operands[i]).size := OS_32;
+
+ Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"32 bit memory operand"');
+ end;
+ msiXMem64,
+ msiYMem64,
+ msiMem64:
+ begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ end;
+ msiMultiple64:
+ begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+
+ Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"64 bit memory operand"');
+ end;
+ msiMem128:
+ begin
+ tx86operand(operands[i]).opsize := S_XMM;
+ tx86operand(operands[i]).size := OS_M128;
+ end;
+ msiMultiple128:
+ begin
+ tx86operand(operands[i]).opsize := S_XMM;
+ tx86operand(operands[i]).size := OS_M128;
+
+ Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"128 bit memory operand"');
+ end;
+ msiMem256:
+ begin
+ tx86operand(operands[i]).opsize := S_YMM;
+ tx86operand(operands[i]).size := OS_M256;
+ opsize := S_YMM;
+ end;
+ msiMultiple256:
+ begin
+ tx86operand(operands[i]).opsize := S_YMM;
+ tx86operand(operands[i]).size := OS_M256;
+ opsize := S_YMM;
+
+ Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"256 bit memory operand"');
+ end;
+ msiMem512:
+ begin
+ tx86operand(operands[i]).opsize := S_ZMM;
+ tx86operand(operands[i]).size := OS_M512;
+ opsize := S_ZMM;
+ end;
+ msiMultiple512:
+ begin
+ tx86operand(operands[i]).opsize := S_ZMM;
+ tx86operand(operands[i]).size := OS_M512;
+ opsize := S_ZMM;
+
+ Message2(asmr_w_check_mem_operand_automap_multiple_size, std_op2str[opcode], '"512 bit memory operand"');
+ end;
+
+ msiMemRegSize:
+ begin
+ // mem-ref-size = register size
+ for j := 1 to ops do
begin
- if (tx86operand(operands[j]).opsize <> S_NO) and
- (tx86operand(operands[j]).size <> OS_NO) then
+ if operands[j].Opr.Typ = OPR_REGISTER then
begin
- tx86operand(operands[i]).opsize := tx86operand(operands[j]).opsize;
- tx86operand(operands[i]).size := tx86operand(operands[j]).size;
- break;
- end
- else Message(asmr_e_unable_to_determine_reference_size);
+ if (tx86operand(operands[j]).opsize <> S_NO) and
+ (tx86operand(operands[j]).size <> OS_NO) then
+ begin
+ tx86operand(operands[i]).opsize := tx86operand(operands[j]).opsize;
+ tx86operand(operands[i]).size := tx86operand(operands[j]).size;
+ break;
+ end
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
end;
end;
- end;
- msiMemRegx16y32:
- begin
- for j := 1 to ops do
- begin
- if operands[j].Opr.Typ = OPR_REGISTER then
- begin
- case getsubreg(operands[j].opr.reg) of
- R_SUBMMX: begin
- tx86operand(operands[i]).opsize := S_L;
- tx86operand(operands[i]).size := OS_M16;
- break;
- end;
- R_SUBMMY: begin
- tx86operand(operands[i]).opsize := S_Q;
- tx86operand(operands[i]).size := OS_M32;
- break;
- end;
- else Message(asmr_e_unable_to_determine_reference_size);
- end;
- end;
- end;
- end;
-
- msiMemRegx32y64:
- begin
- for j := 1 to ops do
- begin
- if operands[j].Opr.Typ = OPR_REGISTER then
- begin
- case getsubreg(operands[j].opr.reg) of
- R_SUBMMX: begin
- tx86operand(operands[i]).opsize := S_L;
- tx86operand(operands[i]).size := OS_M32;
- break;
- end;
- R_SUBMMY: begin
- tx86operand(operands[i]).opsize := S_Q;
- tx86operand(operands[i]).size := OS_M64;
- break;
- end;
- else Message(asmr_e_unable_to_determine_reference_size);
- end;
- end;
- end;
- end;
- msiMemRegx64y128:
- begin
+ msiMemRegx16y32:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_W;
+ tx86operand(operands[i]).size := OS_M16;
+ break;
+ end;
+ R_SUBMMY: begin
+ tx86operand(operands[i]).opsize := S_L;
+ tx86operand(operands[i]).size := OS_M32;
+ break;
+ end;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx16y32z64:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_W;
+ tx86operand(operands[i]).size := OS_M16;
+ break;
+ end;
+ R_SUBMMY: begin
+ tx86operand(operands[i]).opsize := S_L;
+ tx86operand(operands[i]).size := OS_M32;
+ break;
+ end;
+ R_SUBMMZ: begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ break;
+ end;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx32y64:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_L;
+ tx86operand(operands[i]).size := OS_M32;
+ break;
+ end;
+ R_SUBMMY: begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ break;
+ end;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx32y64z128:
for j := 1 to ops do
begin
if operands[j].Opr.Typ = OPR_REGISTER then
begin
case getsubreg(operands[j].opr.reg) of
R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_L;
+ tx86operand(operands[i]).size := OS_M32;
+ break;
+ end;
+ R_SUBMMY: begin
tx86operand(operands[i]).opsize := S_Q;
tx86operand(operands[i]).size := OS_M64;
break;
end;
- R_SUBMMY: begin
+ R_SUBMMZ: begin
tx86operand(operands[i]).opsize := S_XMM;
tx86operand(operands[i]).size := OS_M128;
break;
@@ -832,37 +1016,174 @@ begin
end;
end;
end;
- end;
- msiMemRegx64y256:
- begin
- for j := 1 to ops do
+ msiMemRegx64y128:
begin
- if operands[j].Opr.Typ = OPR_REGISTER then
+ for j := 1 to ops do
begin
- case getsubreg(operands[j].opr.reg) of
- R_SUBMMX: begin
- tx86operand(operands[i]).opsize := S_Q;
- tx86operand(operands[i]).size := OS_M64;
- break;
- end;
- R_SUBMMY: begin
- tx86operand(operands[i]).opsize := S_YMM;
- tx86operand(operands[i]).size := OS_M256;
- break;
- end;
- else Message(asmr_e_unable_to_determine_reference_size);
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ break;
+ end;
+ R_SUBMMY: begin
+ tx86operand(operands[i]).opsize := S_XMM;
+ tx86operand(operands[i]).size := OS_M128;
+ break;
+ end;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx64y128z256:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ break;
+ end;
+ R_SUBMMY: begin
+ tx86operand(operands[i]).opsize := S_XMM;
+ tx86operand(operands[i]).size := OS_M128;
+ break;
+ end;
+ R_SUBMMZ: begin
+ tx86operand(operands[i]).opsize := S_YMM;
+ tx86operand(operands[i]).size := OS_M256;
+ break;
+ end;
+
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx64y256:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ break;
+ end;
+ R_SUBMMY: begin
+ tx86operand(operands[i]).opsize := S_YMM;
+ tx86operand(operands[i]).size := OS_M256;
+ break;
+ end;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+ msiMemRegx64y256z512:
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ case getsubreg(operands[j].opr.reg) of
+ R_SUBMMX: begin
+ tx86operand(operands[i]).opsize := S_Q;
+ tx86operand(operands[i]).size := OS_M64;
+ break;
+ end;
+ R_SUBMMY: begin
+ tx86operand(operands[i]).opsize := S_YMM;
+ tx86operand(operands[i]).size := OS_M256;
+ break;
+ end;
+ R_SUBMMZ: begin
+ tx86operand(operands[i]).opsize := S_ZMM;
+ tx86operand(operands[i]).size := OS_M512;
+ break;
+ end;
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end;
+ end;
+
+ msiMemRegConst128,
+ msiMemRegConst256,
+ msiMemRegConst512:
+ begin
+ ExistConst := false;
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_CONSTANT then
+ begin
+ ExistConst := true;
+ break;
+ end;
+ end;
+
+ if ExistConst then
+ begin
+ for j := 1 to ops do
+ begin
+ if operands[j].Opr.Typ = OPR_REGISTER then
+ begin
+ if (tx86operand(operands[j]).opsize <> S_NO) and
+ (tx86operand(operands[j]).size <> OS_NO) then
+ begin
+ tx86operand(operands[i]).opsize := tx86operand(operands[j]).opsize;
+ tx86operand(operands[i]).size := tx86operand(operands[j]).size;
+ break;
+ end
+ else Message(asmr_e_unable_to_determine_reference_size);
+ end;
+ end;
+ end
+ else
+ begin
+ case MemRefInfo(opcode).MemRefSize of
+ msiMemRegConst128: begin
+ tx86operand(operands[i]).opsize := S_XMM;
+ tx86operand(operands[i]).size := OS_M128;
+ break;
+ end;
+ msiMemRegConst256: begin
+ tx86operand(operands[i]).opsize := S_YMM;
+ tx86operand(operands[i]).size := OS_M256;
+ break;
+ end;
+ msiMemRegConst512: begin
+ tx86operand(operands[i]).opsize := S_ZMM;
+ tx86operand(operands[i]).size := OS_M512;
+ break;
+ end;
+ else
+ Internalerror(2019081007);
end;
end;
end;
- end;
+
+
+
+
msiNoSize: ; // all memory-sizes are ok
msiUnkown,
msiUnsupported,
msiVMemMultiple,
msiVMemRegSize,
msiMultiple: Message(asmr_e_unable_to_determine_reference_size); // TODO individual message
-
+ else
+ Internalerror(2019081008);
end;
+ end;
OPR_CONSTANT:
case MemRefInfo(opcode).ConstSize of
csiMem8: begin
@@ -938,7 +1259,9 @@ begin
// in this case is we need the old handling ("S_NO")
// =>> ignore
if (tx86operand(operands[operand2]).opsize <> S_XMM) and
- (tx86operand(operands[operand2]).opsize <> S_YMM) then
+ (tx86operand(operands[operand2]).opsize <> S_YMM) and
+ (tx86operand(operands[operand2]).opsize <> S_ZMM) then
+
tx86operand(operands[i]).opsize:=tx86operand(operands[operand2]).opsize
else tx86operand(operands[operand2]).opsize := S_NO;
end;
@@ -991,6 +1314,64 @@ begin
end;
end;
end;
+
+ if MemRefInfo(opcode).ExistsSSEAVX then
+ begin
+ // validate broadcast-memory-operands
+ vbcst := 0;
+ mmregs := [];
+
+ for i := 1 to ops do
+ if operands[i].Opr.Typ in [OPR_REFERENCE, OPR_LOCAL] then vbcst := tx86operand(operands[i]).vbcst
+ else if operands[i].Opr.Typ = OPR_REGISTER then
+ begin
+ if getsubreg(operands[i].opr.reg) in [R_SUBMMX, R_SUBMMY, R_SUBMMZ] then
+ begin
+ include(mmregs, getsubreg(operands[i].opr.reg));
+ end;
+ end;
+
+ if vbcst <> 0 then
+ begin
+ // found broadcast-memory-operand (e.g. "{1to8}")
+ // check is correct
+
+ multiplicator := 0;
+ if mmregs = [R_SUBMMX] then multiplicator := 1
+ else if mmregs = [R_SUBMMY] then multiplicator := 2
+ else if mmregs = [R_SUBMMZ] then multiplicator := 4
+ else
+ begin
+ //TG TODO
+
+ end;
+
+ if MemRefInfo(opcode).BCSTTypes <> [] then
+ begin
+ str(MemRefInfo(opcode).BCSTXMMMultiplicator * multiplicator, bcst1);
+ str(vbcst, bcst2);
+
+ case vbcst of
+ 2: if not(bt1to2 in MemRefInfo(opcode).BCSTTypes) then
+ Message2(asmr_e_mismatch_broadcasting_elements, '1to' + bcst1, '1to' + bcst2);
+ 4: if not(bt1to4 in MemRefInfo(opcode).BCSTTypes) then
+ Message2(asmr_e_mismatch_broadcasting_elements, '1to' + bcst1, '1to' + bcst2);
+ 8: if not(bt1to8 in MemRefInfo(opcode).BCSTTypes) then
+ Message2(asmr_e_mismatch_broadcasting_elements, '1to' + bcst1, '1to' + bcst2);
+ 16: if not(bt1to16 in MemRefInfo(opcode).BCSTTypes) then
+ Message2(asmr_e_mismatch_broadcasting_elements, '1to' + bcst1, '1to' + bcst2);
+ end;
+ end
+ else if MemRefInfo(opcode).BCSTXMMMultiplicator * multiplicator <> vbcst then
+ begin
+ str(MemRefInfo(opcode).BCSTXMMMultiplicator * multiplicator, bcst1);
+ str(vbcst, bcst2);
+ Message2(asmr_e_mismatch_broadcasting_elements, '1to' + bcst1, '1to' + bcst2);
+ end;
+ end;
+ end;
+
+
end;
@@ -1221,8 +1602,9 @@ end;
function Tx86Instruction.ConcatInstruction(p : TAsmList) : tai;
var
- siz : topsize;
- i,asize : longint;
+ siz : topsize;
+ i : longint;
+ asize : int64;
ai : taicpu;
begin
ConcatInstruction:=nil;
@@ -1423,15 +1805,15 @@ begin
(target_info.system in [system_i386_linux,system_i386_FreeBSD,system_i386_android]) then
Message(asmr_w_enter_not_supported_by_linux);
-
-
-
ai:=taicpu.op_none(opcode,siz);
ai.fileinfo:=filepos;
ai.SetOperandOrder(op_att);
ai.Ops:=Ops;
ai.Allocate_oper(Ops);
for i:=1 to Ops do
+ begin
+ ai.oper[i-1]^.vopext := (operands[i] as tx86operand).vopext;
+
case operands[i].opr.typ of
OPR_CONSTANT :
ai.loadconst(i-1,operands[i].opr.val);
@@ -1453,8 +1835,11 @@ begin
end;
OPR_REFERENCE:
begin
- if (opcode<>A_XLAT) and not is_x86_string_op(opcode) then
+
+ if current_settings.optimizerswitches <> [] then
+ if (not(MemRefInfo(opcode).MemRefSize in MemRefSizeInfoVMems)) and (opcode<>A_XLAT) and not is_x86_string_op(opcode) then
optimize_ref(operands[i].opr.ref,true);
+
ai.loadref(i-1,operands[i].opr.ref);
if operands[i].size<>OS_NO then
begin
@@ -1484,6 +1869,7 @@ begin
if gas_needsuffix[opcode] in [attsufFPU,attsufFPUint] then
asize:=OT_BITS64
+ else if MemRefInfo(opcode).ExistsSSEAVX then asize:=OT_BITS64
{$ifdef i386}
else
asize:=OT_BITS32
@@ -1498,6 +1884,8 @@ begin
asize := OT_BITS128;
OS_M256,OS_MS256:
asize := OT_BITS256;
+ OS_M512,OS_MS512:
+ asize := OT_BITS512;
else
;
end;
@@ -1509,6 +1897,9 @@ begin
;
end;
+
+ end;
+
{ Condition ? }
if condition<>C_None then
ai.SetCondition(condition);
@@ -1525,4 +1916,104 @@ begin
result:=ai;
end;
+function Tx86Instruction.getstring: string;
+var
+ i : longint;
+ s, sval : string;
+ regnr: string;
+ addsize : boolean;
+begin
+ s:='['+std_op2str[opcode];
+ for i:=1 to ops do
+ begin
+ with operands[i] as Tx86Operand do
+ begin
+ if i=0 then
+ s:=s+' '
+ else
+ s:=s+',';
+ { type }
+ addsize:=false;
+
+ case operands[i].opr.typ of
+ OPR_CONSTANT : begin
+ str(operands[i].opr.val, sval);
+ s:=s+ sval;
+ end;
+ OPR_REGISTER : begin
+ regnr := '';
+ str(getsupreg(opr.reg),regnr);
+
+ if getsubreg(opr.reg)= R_SUBMMX then
+ s:=s+'xmmreg' + regnr
+ else
+ if getsubreg(opr.reg)= R_SUBMMY then
+ s:=s+'ymmreg' + regnr
+ else
+ if getsubreg(opr.reg)= R_SUBMMZ then
+ s:=s+'zmmreg' + regnr
+ else
+ if getregtype(opr.reg)= R_MMXREGISTER then
+ s:=s+'mmxreg'
+ else
+ if getregtype(opr.reg)= R_FPUREGISTER then
+ s:=s+'fpureg'
+ else
+ if getregtype(opr.reg)=R_INTREGISTER then
+ begin
+ s:=s+'reg';
+ addsize:=true;
+ end;
+ end;
+ OPR_LOCAL,
+ OPR_REFERENCE: begin
+ s:=s + 'mem';
+ addsize:=true;
+ end;
+ else s:=s + '???';
+ end;
+
+ if addsize then
+ begin
+ sval := '';
+ str(tcgsize2size[size], sval);
+
+ s := s + sval;
+ end;
+
+ if vopext <> 0 then
+ begin
+ str(vopext and $07, regnr);
+ if vopext and OTVE_VECTOR_WRITEMASK = OTVE_VECTOR_WRITEMASK then
+ s := s + ' {k' + regnr + '}';
+
+ if vopext and OTVE_VECTOR_ZERO = OTVE_VECTOR_ZERO then
+ s := s + ' {z}';
+
+ if vopext and OTVE_VECTOR_SAE = OTVE_VECTOR_SAE then
+ s := s + ' {sae}';
+
+
+ if vopext and OTVE_VECTOR_BCST = OTVE_VECTOR_BCST then
+ case vopext and OTVE_VECTOR_BCST_MASK of
+ OTVE_VECTOR_BCST2: s := s + ' {1to2}';
+ OTVE_VECTOR_BCST4: s := s + ' {1to4}';
+ OTVE_VECTOR_BCST8: s := s + ' {1to8}';
+ OTVE_VECTOR_BCST16: s := s + ' {1to16}';
+ end;
+
+ if vopext and OTVE_VECTOR_ER = OTVE_VECTOR_ER then
+ case vopext and OTVE_VECTOR_ER_MASK of
+ OTVE_VECTOR_RNSAE: s := s + ' {rn-sae}';
+ OTVE_VECTOR_RDSAE: s := s + ' {rd-sae}';
+ OTVE_VECTOR_RUSAE: s := s + ' {ru-sae}';
+ OTVE_VECTOR_RZSAE: s := s + ' {rz-sae}';
+ end;
+
+ end;
+ end;
+ end;
+ GetString:=s+']';
+end;
+
end.
diff --git a/compiler/x86/rax86int.pas b/compiler/x86/rax86int.pas
index 588cb74b8b..bb683e3d4d 100644
--- a/compiler/x86/rax86int.pas
+++ b/compiler/x86/rax86int.pas
@@ -40,12 +40,18 @@ Unit Rax86int;
AS_COMMA,AS_LBRACKET,AS_RBRACKET,AS_LPAREN,
AS_RPAREN,AS_COLON,AS_DOT,AS_PLUS,AS_MINUS,AS_STAR,
AS_SEPARATOR,AS_ID,AS_REGISTER,AS_OPCODE,AS_SLASH,
+ AS_LOPMASK,AS_VOPMASK,AS_LOPZEROMASK,AS_VOPZEROMASK,AS_LOPBCST,AS_OPBCST1TO2,AS_OPBCST1TO4,AS_OPBCST1TO8,AS_OPBCST1TO16,AS_LOPSAE,AS_OPSAE,
+ AS_LOPER,AS_OPRNSAE,AS_OPRDSAE,AS_OPRUSAE,AS_OPRZSAE,
{------------------ Assembler directives --------------------}
AS_ALIGN,AS_DB,AS_DW,AS_DD,AS_DQ,AS_PUBLIC,AS_END,
{------------------ Assembler Operators --------------------}
- AS_BYTE,AS_WORD,AS_DWORD,AS_QWORD,AS_TBYTE,AS_DQWORD,AS_OWORD,AS_XMMWORD,AS_YWORD,AS_YMMWORD,AS_NEAR,AS_FAR,
+ AS_BYTE,AS_WORD,AS_DWORD,AS_QWORD,AS_TBYTE,AS_DQWORD,AS_OWORD,AS_XMMWORD,AS_YWORD,AS_YMMWORD,AS_ZWORD,AS_ZMMWORD,AS_NEAR,AS_FAR,
AS_HIGH,AS_LOW,AS_OFFSET,AS_SIZEOF,AS_VMTOFFSET,AS_SEG,AS_TYPE,AS_PTR,AS_MOD,AS_SHL,AS_SHR,AS_NOT,
- AS_AND,AS_OR,AS_XOR,AS_WRT,AS___GOTPCREL,AS_TARGET_DIRECTIVE);
+ AS_AND,AS_OR,AS_XOR,AS_WRT,AS___GOTPCREL,AS_TARGET_DIRECTIVE,AS_RNSAE
+
+ );
+
+
type
{ input flags for BuildConstSymbolExpression }
@@ -66,9 +72,13 @@ Unit Rax86int;
cseof_hasofs
);
tconstsymbolexpressionoutputflags = set of tconstsymbolexpressionoutputflag;
+
+ { tx86intreader }
+
tx86intreader = class(tasmreader)
actasmpattern_origcase : string;
actasmtoken : tasmtoken;
+ actoperextention: string;
prevasmtoken : tasmtoken;
ActOpsize : topsize;
inexpression : boolean;
@@ -79,8 +89,9 @@ Unit Rax86int;
function is_register(const s:string):boolean;
function is_locallabel(const s:string):boolean;
function Assemble: tlinkedlist;override;
- procedure GetToken;
- function consume(t : tasmtoken):boolean;
+ procedure GetToken(check_operand_extention: boolean = false);
+ function consume(t : tasmtoken; check_operand_extention: boolean = false):boolean;
+ //procedure ConsumeOperExtention(oper: tx86operand; const aOperExtention: string);
procedure RecoverConsume(allowcomma:boolean);
procedure AddReferences(dest,src : tx86operand);
procedure SetSegmentOverride(oper:tx86operand;seg:tregister);
@@ -93,6 +104,8 @@ Unit Rax86int;
procedure BuildConstantOperand(oper: tx86operand);
procedure BuildOpCode(instr : tx86instruction);
procedure BuildConstant(constsize: byte);
+ procedure consume_voperand_ext(aop: tx86operand; aConsumeVOpExt: boolean = true);
+
function is_targetdirective(const s: string): boolean;virtual;
procedure HandleTargetDirective;virtual;
@@ -137,13 +150,15 @@ Unit Rax86int;
firstoperator = AS_BYTE;
lastoperator = AS___GOTPCREL;
+ OPEXT_STARTASMTOKEN: set of tasmtoken = [AS_LOPMASK,AS_LOPZEROMASK,AS_LOPBCST,AS_LOPSAE,AS_LOPER];
+
_asmdirectives : array[firstdirective..lastdirective] of tasmkeyword =
('ALIGN','DB','DW','DD','DQ','PUBLIC','END');
{ problems with shl,shr,not,and,or and xor, they are }
{ context sensitive. }
_asmoperators : array[firstoperator..lastoperator] of tasmkeyword = (
- 'BYTE','WORD','DWORD','QWORD','TBYTE','DQWORD','OWORD','XMMWORD','YWORD','YMMWORD','NEAR','FAR','HIGH',
+ 'BYTE','WORD','DWORD','QWORD','TBYTE','DQWORD','OWORD','XMMWORD','YWORD','YMMWORD','ZWORD','ZMMWORD','NEAR','FAR','HIGH',
'LOW','OFFSET','SIZEOF','VMTOFFSET','SEG','TYPE','PTR','MOD','SHL','SHR','NOT','AND',
'OR','XOR','WRT','GOTPCREL');
@@ -152,10 +167,12 @@ Unit Rax86int;
',','[',']','(',
')',':','.','+','-','*',
';','identifier','register','opcode','/',
+ '','','','','','','','','','','',
+ '','','','','',
'','','','','','','END',
- '','','','','','','','','','','','',
+ '','','','','','','','','','','','','','',
'','','','sizeof','vmtoffset','','type','ptr','mod','shl','shr','not',
- 'and','or','xor','wrt','..gotpcrel',''
+ 'and','or','xor','wrt','..gotpcrel','','{RN-SAE}'
);
constructor tx86intreader.create;
@@ -166,6 +183,8 @@ Unit Rax86int;
iasmops:=TFPHashList.create;
for i:=firstop to lastop do
iasmops.Add(upper(std_op2str[i]),Pointer(PtrInt(i)));
+
+ actoperextention := '';
end;
@@ -282,13 +301,18 @@ Unit Rax86int;
end;
- Procedure tx86intreader.GetToken;
+ Procedure tx86intreader.GetToken(check_operand_extention: boolean);
var
len : longint;
forcelabel : boolean;
srsym : tsym;
srsymtable : TSymtable;
+ scomment: string;
+ schar: char;
+ old_commentstyle: tcommentstyle;
begin
+ actoperextention := '';
+
c:=scanner.c;
{ save old token and reset new token }
prevasmtoken:=actasmtoken;
@@ -440,6 +464,85 @@ Unit Rax86int;
c:=current_scanner.asmgetchar;
end;
end;
+ //if prevasmtoken in [AS_LOPMASK,AS_LOPZEROMASK,AS_LOPBCST,AS_LOPSAE,AS_LOPER] then
+ if prevasmtoken in OPEXT_STARTASMTOKEN then
+ begin
+ if (prevasmtoken = AS_LOPER) and (c = '-') then
+ begin
+ actasmpattern := actasmpattern + c;
+ c:=current_scanner.asmgetchar;
+ while c in ['A'..'Z','a'..'z'] do
+ begin
+ actasmpattern:=actasmpattern + c;
+ c:=current_scanner.asmgetchar;
+ end;
+ end;
+
+
+ { allow spaces }
+ while (c in [' ',#9]) do
+ c:=current_scanner.asmgetchar;
+
+ if c = '}' then
+ begin
+ current_scanner.readchar;
+ case prevasmtoken of
+ AS_LOPMASK: if (length(actasmpattern) = 2) and
+ (actasmpattern[2] in ['1'..'7']) then
+ begin
+ actasmtoken := AS_VOPMASK;
+ end;
+ AS_LOPZEROMASK:
+ if (actasmpattern = 'z') or
+ (actasmpattern = 'Z') then
+ begin
+ actasmtoken := AS_VOPZEROMASK;
+ end;
+ AS_LOPBCST:
+ begin
+ actasmpattern_origcase:=actasmpattern;
+ uppervar(actasmpattern);
+
+ if (actasmpattern = '1TO2') then actasmtoken := AS_OPBCST1TO2
+ else if (actasmpattern = '1TO4') then actasmtoken := AS_OPBCST1TO4
+ else if (actasmpattern = '1TO8') then actasmtoken := AS_OPBCST1TO8
+ else if (actasmpattern = '1TO16') then actasmtoken := AS_OPBCST1TO16
+ else actasmpattern := actasmpattern_origcase;
+ end;
+ AS_LOPSAE:
+ begin
+ actasmpattern_origcase:=actasmpattern;
+ uppervar(actasmpattern);
+
+ if (actasmpattern = 'SAE') then actasmtoken := AS_OPSAE
+ else actasmpattern := actasmpattern_origcase;
+ end;
+ AS_LOPER:
+ begin
+ actasmpattern_origcase:=actasmpattern;
+ uppervar(actasmpattern);
+
+ if (actasmpattern = 'RD-SAE') then actasmtoken := AS_OPRDSAE
+ else if (actasmpattern = 'RN-SAE') then actasmtoken := AS_OPRNSAE
+ else if (actasmpattern = 'RU-SAE') then actasmtoken := AS_OPRUSAE
+ else if (actasmpattern = 'RZ-SAE') then actasmtoken := AS_OPRZSAE
+ else actasmpattern := actasmpattern_origcase;
+ end
+
+ else ; // is completely comment =>> nothing todo
+
+ end;
+ exit;
+ end
+ else
+ begin
+ if c = '{' then current_scanner.inc_comment_level;
+ current_scanner.skipcomment(false); // is comment
+ actasmpattern := '';
+ actasmtoken := AS_NONE;
+ exit;
+ end;
+ end;
if is_asmdirective(actasmpattern) then
exit;
if is_asmoperator(actasmpattern) then
@@ -709,52 +812,91 @@ Unit Rax86int;
'0'..'9':
begin
- actasmpattern:=c;
- c:=current_scanner.asmgetchar;
- { Get the possible characters }
- while c in ['0'..'9','A'..'F','a'..'f'] do
- begin
- actasmpattern:=actasmpattern + c;
+ if prevasmtoken = AS_LOPBCST then
+ begin
+ actasmpattern:=c;
+ c:=current_scanner.asmgetchar;
+ { Get the possible characters }
+ while c in ['1','2','4','6','8','t','T','o','O'] do
+ begin
+ actasmpattern:=actasmpattern + c;
+ c:=current_scanner.asmgetchar;
+ end;
+
+ while (c in [' ',#9]) do
c:=current_scanner.asmgetchar;
- end;
- { Get ending character }
- actasmpattern_origcase:=actasmpattern;
- uppervar(actasmpattern);
- c:=upcase(c);
- { possibly a binary number. }
- if (actasmpattern[length(actasmpattern)] = 'B') and (c <> 'H') then
- Begin
- { Delete the last binary specifier }
- delete(actasmpattern,length(actasmpattern),1);
- actasmpattern:=tostr(ParseVal(actasmpattern,2));
- actasmtoken:=AS_INTNUM;
+
+ if c = '}' then
+ begin
+ actasmpattern_origcase:=actasmpattern;
+ uppervar(actasmpattern);
+
+ if (actasmpattern = '1TO2') then actasmtoken := AS_OPBCST1TO2
+ else if (actasmpattern = '1TO4') then actasmtoken := AS_OPBCST1TO4
+ else if (actasmpattern = '1TO8') then actasmtoken := AS_OPBCST1TO8
+ else if (actasmpattern = '1TO16') then actasmtoken := AS_OPBCST1TO16
+ else actasmpattern := actasmpattern_origcase;
+ c:=current_scanner.asmgetchar;
+ end
+ else
+ begin
+ if c = '{' then current_scanner.inc_comment_level;
+ current_scanner.skipcomment(false); // is comment
+ end;
+
+ actasmpattern := '';
exit;
- end
+ end
else
- Begin
- case c of
- 'O' :
- Begin
- actasmpattern:=tostr(ParseVal(actasmpattern,8));
- actasmtoken:=AS_INTNUM;
- c:=current_scanner.asmgetchar;
- exit;
- end;
- 'H' :
- Begin
- actasmpattern:=tostr(ParseVal(actasmpattern,16));
- actasmtoken:=AS_INTNUM;
- c:=current_scanner.asmgetchar;
- exit;
- end;
- else { must be an integer number }
- begin
- actasmpattern:=tostr(ParseVal(actasmpattern,10));
- actasmtoken:=AS_INTNUM;
- exit;
- end;
+ begin
+
+ actasmpattern:=c;
+ c:=current_scanner.asmgetchar;
+ { Get the possible characters }
+ while c in ['0'..'9','A'..'F','a'..'f'] do
+ begin
+ actasmpattern:=actasmpattern + c;
+ c:=current_scanner.asmgetchar;
end;
- end;
+ { Get ending character }
+ actasmpattern_origcase:=actasmpattern;
+ uppervar(actasmpattern);
+ c:=upcase(c);
+ { possibly a binary number. }
+ if (actasmpattern[length(actasmpattern)] = 'B') and (c <> 'H') then
+ Begin
+ { Delete the last binary specifier }
+ delete(actasmpattern,length(actasmpattern),1);
+ actasmpattern:=tostr(ParseVal(actasmpattern,2));
+ actasmtoken:=AS_INTNUM;
+ exit;
+ end
+ else
+ Begin
+ case c of
+ 'O' :
+ Begin
+ actasmpattern:=tostr(ParseVal(actasmpattern,8));
+ actasmtoken:=AS_INTNUM;
+ c:=current_scanner.asmgetchar;
+ exit;
+ end;
+ 'H' :
+ Begin
+ actasmpattern:=tostr(ParseVal(actasmpattern,16));
+ actasmtoken:=AS_INTNUM;
+ c:=current_scanner.asmgetchar;
+ exit;
+ end;
+ else { must be an integer number }
+ begin
+ actasmpattern:=tostr(ParseVal(actasmpattern,10));
+ actasmtoken:=AS_INTNUM;
+ exit;
+ end;
+ end;
+ end;
+ end;
end;
#13,#10:
@@ -776,8 +918,47 @@ Unit Rax86int;
'{':
begin
- current_scanner.skipcomment(true);
- GetToken;
+ if not(check_operand_extention) then current_scanner.skipcomment(true)
+ else // exists operand extention e.g. AVX512 {k1..k7} or {z} or {1to8}
+ begin
+ case current_scanner.asmgetchar of
+ '{': begin
+ current_scanner.inc_comment_level;
+ current_scanner.skipcomment(true);
+ end;
+ '}': ; // local comment closed
+ 'k',
+ 'K': begin
+ actasmtoken := AS_LOPMASK;
+ exit;
+ end;
+ 'z',
+ 'Z': begin
+ actasmtoken := AS_LOPZEROMASK;
+ exit;
+ end;
+
+ '1': begin
+ actasmtoken := AS_LOPBCST;
+ exit;
+ end;
+ 's',
+ 'S': begin
+ actasmtoken := AS_LOPSAE;
+ exit;
+ end;
+ 'r',
+ 'R': begin
+ actasmtoken := AS_LOPER;
+ exit;
+ end;
+ else begin
+ current_scanner.skipcomment(false);
+ end;
+ end;
+ end;
+
+ GetToken(check_operand_extention);
end;
else
@@ -787,7 +968,7 @@ Unit Rax86int;
end;
- function tx86intreader.consume(t : tasmtoken):boolean;
+ function tx86intreader.consume(t : tasmtoken; check_operand_extention: boolean):boolean;
begin
Consume:=true;
if t<>actasmtoken then
@@ -796,10 +977,63 @@ Unit Rax86int;
Consume:=false;
end;
repeat
- gettoken;
+ gettoken(check_operand_extention);
until actasmtoken<>AS_NONE;
end;
+ //procedure tx86intreader.ConsumeOperExtention(oper: tx86operand; const aOperExtention: string);
+ //begin
+ // //if oper.reg
+ //end;
+
+ procedure tx86intreader.consume_voperand_ext(aop: tx86operand; aConsumeVOpExt: boolean);
+ var
+ kreg: tregister;
+ begin
+ Consume(actasmtoken, true);
+ if actasmtoken in [AS_VOPMASK, AS_VOPZEROMASK, AS_OPBCST1TO2, AS_OPBCST1TO4, AS_OPBCST1TO8, AS_OPBCST1TO16,
+ AS_OPSAE,AS_OPRNSAE,AS_OPRDSAE,AS_OPRUSAE,AS_OPRZSAE] then
+ begin
+ case actasmtoken of
+ AS_VOPMASK: begin
+ kreg := masm_regnum_search(lower(actasmpattern));
+ if (kreg >= NR_K1) and
+ (kreg <= NR_K7) then
+ begin
+ aop.vopext := aop.vopext or (tregisterrec(kreg).supreg and $07);
+ aop.vopext := aop.vopext or OTVE_VECTOR_WRITEMASK;
+ end;
+ end;
+ AS_VOPZEROMASK: aop.vopext := aop.vopext or OTVE_VECTOR_ZERO;
+ AS_OPBCST1TO2: begin
+ aop.vopext := aop.vopext or OTVE_VECTOR_BCST or OTVE_VECTOR_BCST2;
+ aop.vbcst := 2;
+ end;
+ AS_OPBCST1TO4: begin
+ aop.vopext := aop.vopext or OTVE_VECTOR_BCST or OTVE_VECTOR_BCST4;
+ aop.vbcst := 4;
+ end;
+ AS_OPBCST1TO8: begin
+ aop.vopext := aop.vopext or OTVE_VECTOR_BCST or OTVE_VECTOR_BCST8;
+ aop.vbcst := 8;
+ end;
+ AS_OPBCST1TO16: begin
+ aop.vopext := aop.vopext or OTVE_VECTOR_BCST or OTVE_VECTOR_BCST16;
+ aop.vbcst := 16;
+ end;
+ AS_OPSAE: aop.vopext := aop.vopext or OTVE_VECTOR_SAE;
+ AS_OPRNSAE: aop.vopext := aop.vopext or OTVE_VECTOR_RNSAE;
+ AS_OPRDSAE: aop.vopext := aop.vopext or OTVE_VECTOR_RDSAE;
+ AS_OPRUSAE: aop.vopext := aop.vopext or OTVE_VECTOR_RUSAE;
+ AS_OPRZSAE: aop.vopext := aop.vopext or OTVE_VECTOR_RZSAE;
+ else
+ Internalerror(2019081009);
+ end;
+
+ if aConsumeVOpExt then
+ Consume(actasmtoken, true);
+ end;
+ end;
procedure tx86intreader.RecoverConsume(allowcomma:boolean);
begin
@@ -1012,7 +1246,7 @@ Unit Rax86int;
while (actasmtoken=AS_DOT) do
begin
Consume(AS_DOT);
- if actasmtoken in [AS_BYTE,AS_ID,AS_WORD,AS_DWORD,AS_QWORD,AS_OWORD,AS_XMMWORD,AS_YWORD,AS_YMMWORD,AS_REGISTER] then
+ if actasmtoken in [AS_BYTE,AS_ID,AS_WORD,AS_DWORD,AS_QWORD,AS_OWORD,AS_XMMWORD,AS_YWORD,AS_YMMWORD,AS_ZWORD,AS_ZMMWORD,AS_REGISTER] then
begin
s:=s+'.'+actasmpattern;
consume(actasmtoken);
@@ -1780,7 +2014,14 @@ Unit Rax86int;
AS_REGISTER :
begin
hreg:=actasmregister;
- Consume(AS_REGISTER);
+
+ Consume(AS_REGISTER, true);
+
+ while actasmtoken in OPEXT_STARTASMTOKEN do
+ begin
+ consume_voperand_ext(oper);
+ end;
+
if actasmtoken=AS_COLON then
begin
Consume(AS_COLON);
@@ -1948,7 +2189,15 @@ Unit Rax86int;
begin
if GotPlus or GotStar or BracketlessReference then
Message(asmr_e_invalid_reference_syntax);
- Consume(AS_RBRACKET);
+
+ Consume(AS_RBRACKET, true);
+ while actasmtoken in OPEXT_STARTASMTOKEN do
+ begin
+ consume_voperand_ext(oper);
+ end;
+
+
+
if actasmtoken=AS_LBRACKET then
begin
tmpoper:=Tx86Operand.create;
@@ -2048,6 +2297,7 @@ Unit Rax86int;
end;
end;
+
var
expr,
hs : string;
@@ -2057,7 +2307,10 @@ Unit Rax86int;
toffset,
tsize : tcgint;
hastypecast: boolean;
+
begin
+ oper.vopext := 0;
+
expr:='';
repeat
if actasmtoken=AS_DOT then
@@ -2291,7 +2544,14 @@ Unit Rax86int;
{ is it a normal variable ? }
Begin
expr:=actasmpattern;
- Consume(AS_ID);
+ Consume(AS_ID, true);
+
+ while actasmtoken in OPEXT_STARTASMTOKEN do
+ begin
+ consume_voperand_ext(oper);
+ end;
+
+
{ typecasting? }
if SearchType(expr,l) then
begin
@@ -2353,7 +2613,16 @@ Unit Rax86int;
begin
{ save the type of register used. }
tempreg:=actasmregister;
- Consume(AS_REGISTER);
+ Consume(AS_REGISTER, true);
+
+ if (getregtype(tempreg) in [R_MMREGISTER, R_ADDRESSREGISTER]) then
+ begin
+ while actasmtoken in OPEXT_STARTASMTOKEN do
+ begin
+ consume_voperand_ext(oper);
+ end;
+ end;
+
if actasmtoken = AS_COLON then
Begin
Consume(AS_COLON);
@@ -2386,7 +2655,10 @@ Unit Rax86int;
AS_OWORD,
AS_XMMWORD,
AS_YWORD,
- AS_YMMWORD:
+ AS_YMMWORD,
+ AS_ZWORD,
+ AS_ZMMWORD
+ :
begin
{ Type specifier }
oper.hastype:=true;
@@ -2402,6 +2674,8 @@ Unit Rax86int;
AS_XMMWORD: oper.typesize:=16;
AS_YWORD,
AS_YMMWORD: oper.typesize:=32;
+ AS_ZWORD,
+ AS_ZMMWORD: oper.typesize:=64;
else
internalerror(2010061101);
end;
@@ -2446,6 +2720,9 @@ Unit Rax86int;
end;
end;
until false;
+
+
+
{ End of operand, update size if a typecast is forced }
if (oper.typesize<>0) and
(oper.opr.typ in [OPR_REFERENCE,OPR_LOCAL]) then
@@ -2599,7 +2876,7 @@ Unit Rax86int;
Message(asmr_e_too_many_operands)
else
Dec(operandnum);
- Consume(AS_COMMA);
+ Consume(AS_COMMA, true);
end;
{Far constant, i.e. jmp $0000:$11111111.}
@@ -2639,6 +2916,21 @@ Unit Rax86int;
end;
BuildOperand(instr.Operands[operandnum] as tx86operand,false);
end;
+ AS_LOPSAE,
+ AS_LOPER:
+ if operandnum < max_operands then
+ begin
+ consume_voperand_ext(instr.Operands[operandnum + 1] as tx86operand, false);
+ if actasmtoken in [AS_OPSAE,AS_OPRNSAE,AS_OPRDSAE,AS_OPRUSAE,AS_OPRZSAE] then
+ begin
+ consume(actasmtoken);
+ // ignore operand
+ if actasmtoken in [AS_END,AS_SEPARATOR,AS_COMMA] then inc(operandnum)
+ else Message(asmr_e_syntax_error);
+ end
+ else Message(asmr_e_syntax_error);
+ end
+ else Message(asmr_e_syntax_error);
else
BuildOperand(instr.Operands[operandnum] as tx86operand,false);
end; { end case }
diff --git a/compiler/x86/x86ins.dat b/compiler/x86/x86ins.dat
index 602100450d..6a48f1f3dd 100644
--- a/compiler/x86/x86ins.dat
+++ b/compiler/x86/x86ins.dat
@@ -1124,6 +1124,7 @@ void \325\1\xA5 386
xmmreg,xmmrm \334\2\x0F\x10\110 WILLAMETTE,SSE2
xmmrm,xmmreg \334\2\x0F\x11\101 WILLAMETTE,SSE2
+
[MOVSQ]
(Ch_RWRSI, Ch_WMemEDI, Ch_RWRDI, Ch_RDirFlag)
void \326\1\xA5 X86_64
@@ -3604,23 +3605,38 @@ xmmreg,xmmrm,imm8 \361\3\xf\x3A\x44\110\26 CLMUL,SANDY
[VADDPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x58\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x58\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x58\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x58\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x58\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x58\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\370\1\x58\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\352\361\370\1\x58\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x58\75\120 AVX512,TFV
+
[VADDPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x58\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x58\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x58\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x58\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x58\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x58\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\370\1\x58\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\370\1\x58\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x58\75\120 AVX512,TFV
+
[VADDSD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem64 \334\362\370\1\x58\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x58\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \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
+
[VADDSS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem32 \333\362\370\1\x58\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x58\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x58\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_er \333\350\362\370\1\x58\75\120 AVX,SANDYBRIDGE
+
+
[VADDSUBPD]
(Ch_All)
@@ -3634,19 +3650,22 @@ xmmreg,xmmreg,xmmrm \334\362\370\1\xD0\75\120 AVX,SA
[VAESDEC]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xDE\75\120 AVX,SANDYBRIDGE
+xmmreg,xmmreg,xmmrm \350\361\362\371\1\xDE\75\120 AVX,SANDYBRIDGE,TFV
+
[VAESDECLAST]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xDF\75\120 AVX,SANDYBRIDGE
+xmmreg,xmmreg,xmmrm \350\361\362\371\1\xDF\75\120 AVX,SANDYBRIDGE,TFV
+
[VAESENC]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xDC\75\120 AVX,SANDYBRIDGE
+xmmreg,xmmreg,xmmrm \350\361\362\371\1\xDC\75\120 AVX,SANDYBRIDGE,TFV
[VAESENCLAST]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xDD\75\120 AVX,SANDYBRIDGE
+xmmreg,xmmreg,xmmrm \350\361\362\371\1\xDD\75\120 AVX,SANDYBRIDGE,TFV
+
[VAESIMC]
(Ch_All)
@@ -3658,23 +3677,47 @@ xmmreg,xmmrm,imm8 \361\362\372\1\xDF\110\26 AVX,SA
[VANDNPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x55\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x55\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x55\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x55\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x55\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x55\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x55\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x55\75\120 AVX512,TFV
+
+
[VANDNPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x55\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x55\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x55\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x55\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x55\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x55\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\370\1\x55\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x55\75\120 AVX512,TFV
+
+
[VANDPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x54\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x54\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x54\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x54\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x54\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x54\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x54\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x54\75\120 AVX512,TFV
+
+
[VANDPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x54\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x54\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x54\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x54\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x54\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x54\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\370\1\x54\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x54\75\120 AVX512,TFV
+
+
[VBLENDPD]
(Ch_All)
@@ -3702,15 +3745,23 @@ ymmreg,mem128 \361\362\364\371\1\x1A\110 AVX,SA
[VBROADCASTSD]
(Ch_All)
-ymmreg,mem64 \361\362\364\371\1\x19\110 AVX,SANDYBRIDGE
-ymmreg,xmmreg \361\362\364\371\1\x19\110 AVX2
+ymmreg_mz,mem64 \350\352\361\362\364\371\1\x19\110 AVX,SANDYBRIDGE,T1S
+ymmreg_mz,xmmreg \350\352\361\362\364\371\1\x19\110 AVX2
+zmmreg_mz,mem64 \350\351\352\361\371\1\x19\110 AVX512,T1S
+zmmreg_mz,xmmreg \350\351\352\361\371\1\x19\110 AVX512
+
+
[VBROADCASTSS]
(Ch_All)
-ymmreg,mem32 \361\362\364\371\1\x18\110 AVX,SANDYBRIDGE
-xmmreg,mem32 \361\362\371\1\x18\110 AVX,SANDYBRIDGE
-ymmreg,xmmreg \361\362\364\371\1\x18\110 AVX2
-xmmreg,xmmreg \361\362\371\1\x18\110 AVX2
+xmmreg_mz,mem32 \350\361\362\371\1\x18\110 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg \350\361\362\371\1\x18\110 AVX2
+ymmreg_mz,mem32 \350\361\362\364\371\1\x18\110 AVX,SANDYBRIDGE,T1S
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x18\110 AVX2
+zmmreg_mz,mem32 \350\351\361\371\1\x18\110 AVX512,T1S
+zmmreg_mz,xmmreg \350\351\361\371\1\x18\110 AVX512
+
+
[VCMPEQPS]
(Ch_All)
@@ -4040,144 +4091,270 @@ ymmreg,ymmreg,ymmrm \361\362\364\370\1\xC2\75\120\1\x1F AVX,SAND
[VCMPPD]
(Ch_All)
-xmmreg,xmmreg,xmmrm,imm8 \361\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm,imm8 \361\362\364\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+kreg_m,xmmreg,xmmrm,imm8 \350\352\361\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,xmmreg,bmem64,imm8 \350\352\361\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,ymmreg,ymmrm,imm8 \350\352\361\364\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,ymmreg,bmem64,imm8 \350\352\361\364\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,zmmreg,mem512,imm8 \350\351\352\361\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,zmmreg,bmem64,imm8 \350\351\352\361\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,zmmreg,zmmreg_sae,imm8 \350\351\352\361\370\1\xC2\75\120\27 AVX512
+xmmreg,xmmreg,xmmrm,imm8 \361\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm,imm8 \361\362\364\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+
+
[VCMPPS]
(Ch_All)
-xmmreg,xmmreg,xmmrm,imm8 \362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm,imm8 \362\364\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+kreg_m,xmmreg,xmmrm,imm8 \350\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,xmmreg,bmem32,imm8 \350\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,ymmreg,ymmrm,imm8 \350\364\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,ymmreg,bmem32,imm8 \350\364\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,zmmreg,mem512,imm8 \350\351\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,zmmreg,bmem32,imm8 \350\351\370\1\xC2\75\120\27 AVX512,TFV
+kreg_m,zmmreg,zmmreg_sae,imm8 \350\351\370\1\xC2\75\120\27 AVX512
+xmmreg,xmmreg,xmmrm,imm8 \362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm,imm8 \362\364\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+
[VCMPSD]
(Ch_All)
-xmmreg,xmmreg,mem64,imm8 \334\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg,imm8 \334\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+kreg_m,xmmreg,mem64,imm8 \334\350\352\370\1\xC2\75\120\27 AVX512,T1S
+kreg_m,xmmreg,xmmreg_sae,imm8 \334\350\352\370\1\xC2\75\120\27 AVX512
+xmmreg,xmmreg,xmmreg,imm8 \334\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,mem64,imm8 \334\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+
[VCMPSS]
(Ch_All)
-xmmreg,xmmreg,mem64,imm8 \333\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg,imm8 \333\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE
+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
[VCOMISD]
(Ch_Rop1, Ch_Rop2, Ch_WFlags)
-xmmreg,mem64 \361\362\370\1\x2F\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\370\1\x2F\110 AVX,SANDYBRIDGE
+xmmreg,mem64 \350\352\361\362\370\1\x2F\110 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg_sae \350\352\361\362\370\1\x2F\110 AVX,SANDYBRIDGE
+
[VCOMISS]
(Ch_Rop1, Ch_Rop2, Ch_WFlags)
-xmmreg,mem32 \362\370\1\x2F\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \362\370\1\x2F\110 AVX,SANDYBRIDGE
+xmmreg,mem32 \350\362\370\1\x2F\110 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg_sae \350\362\370\1\x2F\110 AVX,SANDYBRIDGE
+
[VCVTDQ2PD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,mem64 \333\362\370\1\xE6\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \333\362\370\1\xE6\110 AVX,SANDYBRIDGE
-ymmreg,xmmreg \333\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
-ymmreg,mem128 \333\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
+xmmreg_mz,mem64 \333\350\362\370\1\xE6\110 AVX,SANDYBRIDGE,THV
+xmmreg_mz,xmmreg \333\350\362\370\1\xE6\110 AVX,SANDYBRIDGE
+xmmreg_mz,bmem32 \333\350\370\1\xE6\110 AVX512,BCST2,THV
+ymmreg_mz,mem128 \333\350\362\364\370\1\xE6\110 AVX,SANDYBRIDGE,THV
+ymmreg_mz,xmmreg \333\350\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
+ymmreg_mz,bmem32 \333\350\364\370\1\xE6\110 AVX512,BCST4,THV
+zmmreg_mz,mem256 \333\350\351\370\1\xE6\110 AVX512,THV
+zmmreg_mz,ymmreg_er \333\350\351\370\1\xE6\110 AVX512
+zmmreg_mz,bmem32 \333\350\351\370\1\xE6\110 AVX512,BCST8,THV
+
+
[VCVTDQ2PS]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \362\370\1\x5B\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \362\364\370\1\x5B\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \350\362\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32 \350\370\1\x5B\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\362\364\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,bmem32 \350\364\370\1\x5B\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\370\1\x5B\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\370\1\x5B\110 AVX512,TFV
+zmmreg_mz,zmmreg_er \350\351\370\1\x5B\110 AVX512
+
[VCVTPD2DQ,vcvtpd2dqM]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \334\362\370\1\xE6\110 AVX,SANDYBRIDGE
-xmmreg,ymmrm \334\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
+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,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,vcvtpd2psM]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \361\362\370\1\x5A\110 AVX,SANDYBRIDGE
-xmmreg,ymmrm \361\362\364\370\1\x5A\110 AVX,SANDYBRIDGE
+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,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
+
+[VCVTPH2PS]
+(Ch_Wop2, Ch_Rop1)
+xmmreg_mz,mem64 \350\361\362\371\1\x13\110 AVX,THVM
+xmmreg_mz,xmmreg \350\361\362\371\1\x13\110 AVX
+ymmreg_mz,mem128 \350\361\362\364\371\1\x13\110 AVX,THVM
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x13\110 AVX
+zmmreg_mz,mem256 \350\351\361\371\1\x13\110 AVX512,THVM
+zmmreg_mz,ymmreg_sae \350\351\361\371\1\x13\110 AVX512
+
[VCVTPS2DQ]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \361\362\370\1\x5B\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \361\362\364\370\1\x5B\110 AVX,SANDYBRIDGE
+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,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
+zmmreg_mz,zmmreg_er \350\351\361\370\1\x5B\110 AVX512
+
[VCVTPS2PD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,mem64 \362\370\1\x5A\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \362\370\1\x5A\110 AVX,SANDYBRIDGE
-ymmreg,xmmrm \362\364\370\1\x5A\110 AVX,SANDYBRIDGE
+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,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
+zmmreg_mz,bmem32 \350\351\370\1\x5A\110 AVX512,BCST8,THV
+
+
+[VCVTPS2PH]
+(Ch_Wop3, Ch_Rop2, Ch_Rop1)
+mem128_m,ymmreg,imm8 \350\361\362\364\372\1\x1D\101\26 AVX,THVM
+mem256_m,zmmreg_sae,imm8 \350\351\361\372\1\x1D\101\26 AVX512,THVM
+mem64_m,xmmreg,imm8 \350\361\362\372\1\x1D\101\26 AVX,THVM
+xmmreg_mz,xmmreg,imm8 \350\361\362\372\1\x1D\101\26 AVX
+xmmreg_mz,ymmreg,imm8 \350\361\362\364\372\1\x1D\101\26 AVX
+ymmreg_mz,zmmreg_sae,imm8 \350\351\361\372\1\x1D\101\26 AVX512
+
[VCVTSD2SI]
(Ch_Wop2, Ch_Rop1)
-reg32,mem64 \334\362\370\1\x2D\110 AVX,SANDYBRIDGE
-reg32,xmmreg \334\362\370\1\x2D\110 AVX,SANDYBRIDGE
-reg64,mem64 \334\362\363\370\1\x2D\110 AVX,SANDYBRIDGE
-reg64,xmmreg \334\362\363\370\1\x2D\110 AVX,SANDYBRIDGE
+reg32,mem64 \334\350\362\370\1\x2D\110 AVX,SANDYBRIDGE,T1F64
+reg32,xmmreg_er \334\350\362\370\1\x2D\110 AVX,SANDYBRIDGE
+reg64,mem64 \334\350\352\362\363\370\1\x2D\110 AVX,SANDYBRIDGE,T1F64
+reg64,xmmreg_er \334\350\352\362\363\370\1\x2D\110 AVX,SANDYBRIDGE
+
[VCVTSD2SS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem64 \334\362\370\1\x5A\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x5A\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x5A\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x5A\75\120 AVX,SANDYBRIDGE
+
[VCVTSI2SD,vcvtsi2sdX]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,rm32 \334\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,SD
-xmmreg,xmmreg,rm64 \334\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64
+xmmreg,xmmreg_er,reg32 \334\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,SD
+xmmreg,xmmreg,mem32 \334\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,SD,T1S
+xmmreg,xmmreg_er,reg64 \334\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64
+xmmreg,xmmreg,mem64 \334\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64,T1S
+
[VCVTSI2SS,vcvtsi2ssX]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,rm32 \333\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,SD
-xmmreg,xmmreg,rm64 \333\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64
+xmmreg,xmmreg_er,reg32 \333\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,SD
+xmmreg,xmmreg,mem32 \333\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,SD,T1S
+xmmreg,xmmreg_er,reg64 \333\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64
+xmmreg,xmmreg_er,mem64 \333\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64,T1S
+
[VCVTSS2SD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem32 \333\362\370\1\x5A\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x5A\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x5A\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \333\350\362\370\1\x5A\75\120 AVX,SANDYBRIDGE
+
[VCVTSS2SI]
(Ch_Wop2, Ch_Rop1)
-reg32,mem32 \333\362\370\1\x2D\110 AVX,SANDYBRIDGE
-reg32,xmmreg \333\362\370\1\x2D\110 AVX,SANDYBRIDGE
-reg64,mem32 \333\362\363\370\1\x2D\110 AVX,SANDYBRIDGE
-reg64,xmmreg \333\362\363\370\1\x2D\110 AVX,SANDYBRIDGE
+reg32,mem32 \333\350\362\370\1\x2D\110 AVX,SANDYBRIDGE,T1F32
+reg32,xmmreg_er \333\350\362\370\1\x2D\110 AVX,SANDYBRIDGE
+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,vcvttpd2dqM]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \361\362\370\1\xE6\110 AVX,SANDYBRIDGE
-xmmreg,ymmrm \361\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
+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,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
[VCVTTPS2DQ]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \333\362\370\1\x5B\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \333\362\364\370\1\x5B\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \333\350\362\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32 \333\350\370\1\x5B\110 AVX512,TFV
+ymmreg_mz,ymmrm \333\350\362\364\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,bmem32 \333\350\364\370\1\x5B\110 AVX512,TFV
+zmmreg_mz,mem512 \333\350\351\370\1\x5B\110 AVX512,TFV
+zmmreg_mz,bmem32 \333\350\351\370\1\x5B\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \333\350\351\370\1\x5B\110 AVX512
+
[VCVTTSD2SI]
(Ch_Wop2, Ch_Rop1)
-reg32,mem64 \334\362\370\1\x2C\110 AVX,SANDYBRIDGE
-reg32,xmmreg \334\362\370\1\x2C\110 AVX,SANDYBRIDGE
-reg64,mem64 \334\362\363\370\1\x2C\110 AVX,SANDYBRIDGE
-reg64,xmmreg \334\362\363\370\1\x2C\110 AVX,SANDYBRIDGE
+reg32,mem64 \334\350\362\370\1\x2C\110 AVX,SANDYBRIDGE,T1F64
+reg32,xmmreg_sae \334\350\362\370\1\x2C\110 AVX,SANDYBRIDGE
+reg64,mem64 \334\350\352\362\363\370\1\x2C\110 AVX,SANDYBRIDGE,T1F64
+reg64,xmmreg_sae \334\350\352\362\363\370\1\x2C\110 AVX,SANDYBRIDGE
+
[VCVTTSS2SI]
(Ch_Wop2, Ch_Rop1)
-reg32,mem32 \333\362\370\1\x2C\110 AVX,SANDYBRIDGE
-reg32,xmmreg \333\362\370\1\x2C\110 AVX,SANDYBRIDGE
-reg64,mem32 \333\362\363\370\1\x2C\110 AVX,SANDYBRIDGE
-reg64,xmmreg \333\362\363\370\1\x2C\110 AVX,SANDYBRIDGE
+reg32,mem32 \333\350\362\370\1\x2C\110 AVX,SANDYBRIDGE,T1F32
+reg32,xmmreg_sae \333\350\362\370\1\x2C\110 AVX,SANDYBRIDGE
+reg64,mem32 \333\350\352\362\363\370\1\x2C\110 AVX,SANDYBRIDGE,T1F32
+reg64,xmmreg_sae \333\350\352\362\363\370\1\x2C\110 AVX,SANDYBRIDGE
+
[VDIVPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x5E\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x5E\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x5E\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x5E\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x5E\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x5E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\352\361\370\1\x5E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x5E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\370\1\x5E\75\120 AVX512
+
[VDIVPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x5E\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x5E\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x5E\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x5E\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x5E\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x5E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\370\1\x5E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x5E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\370\1\x5E\75\120 AVX512
+
[VDIVSD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem64 \334\362\370\1\x5E\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x5E\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x5E\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x5E\75\120 AVX,SANDYBRIDGE
+
[VDIVSS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem32 \333\362\370\1\x5E\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x5E\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x5E\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_er \333\350\362\370\1\x5E\75\120 AVX,SANDYBRIDGE
+
[VDPPD]
(Ch_All)
@@ -4194,7 +4371,11 @@ xmmrm,ymmreg,imm8 \361\362\364\372\1\x19\101\26 AVX,SA
[VEXTRACTPS]
(Ch_All)
-rm32,xmmreg,imm8 \361\362\372\1\x17\101\26 AVX,SANDYBRIDGE
+mem32,xmmreg,imm8 \350\361\362\372\1\x17\101\26 AVX,SANDYBRIDGE,T1S
+reg32,xmmreg,imm8 \350\361\362\372\1\x17\101\26 AVX,SANDYBRIDGE
+reg64,xmmreg,imm8 \350\361\372\1\x17\101\26 AVX512
+
+
[VHADDPD]
(Ch_All)
@@ -4222,8 +4403,9 @@ ymmreg,ymmreg,xmmrm,imm8 \361\362\364\372\1\x18\75\120\27 AVX,SA
[VINSERTPS]
(Ch_All)
-xmmreg,xmmreg,mem32,imm8 \361\362\372\1\x21\75\120\27 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg,imm8 \361\362\372\1\x21\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,mem32,imm8 \350\361\362\372\1\x21\75\120\27 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg,xmmreg,imm8 \350\361\362\372\1\x21\75\120\27 AVX,SANDYBRIDGE
+
[VLDDQU]
(Ch_All)
@@ -4254,68 +4436,116 @@ xmmreg,xmmreg,mem128 \361\362\371\1\x2C\75\120 AVX,SA
[VMAXPD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x5F\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x5F\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x5F\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x5F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x5F\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x5F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae \350\351\352\361\370\1\x5F\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\352\361\370\1\x5F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x5F\75\120 AVX512,TFV
+
[VMAXPS]
(Ch_All)
-xmmreg,xmmreg,xmmrm \362\370\1\x5F\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x5F\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x5F\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x5F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x5F\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x5F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\370\1\x5F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x5F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae \350\351\370\1\x5F\75\120 AVX512
+
[VMAXSD]
(Ch_All)
-xmmreg,xmmreg,mem64 \334\362\370\1\x5F\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x5F\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x5F\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \334\350\352\362\370\1\x5F\75\120 AVX,SANDYBRIDGE
+
[VMAXSS]
(Ch_All)
-xmmreg,xmmreg,mem32 \333\362\370\1\x5F\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x5F\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x5F\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \333\350\362\370\1\x5F\75\120 AVX,SANDYBRIDGE
[VMINPD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x5D\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x5D\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x5D\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x5D\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x5D\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x5D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\352\361\370\1\x5D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x5D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae \350\351\352\361\370\1\x5D\75\120 AVX512
+
[VMINPS]
(Ch_All)
-xmmreg,xmmreg,xmmrm \362\370\1\x5D\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x5D\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x5D\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x5D\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x5D\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x5D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\370\1\x5D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x5D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae \350\351\370\1\x5D\75\120 AVX512
+
[VMINSD]
(Ch_All)
-xmmreg,xmmreg,mem64 \334\362\370\1\x5D\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x5D\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x5D\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \334\350\352\362\370\1\x5D\75\120 AVX,SANDYBRIDGE
+
[VMINSS]
(Ch_All)
-xmmreg,xmmreg,mem32 \333\362\370\1\x5D\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x5D\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x5D\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \333\350\362\370\1\x5D\75\120 AVX,SANDYBRIDGE
+
[VMOVAPD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \361\362\370\1\x28\110 AVX,SANDYBRIDGE
-xmmrm,xmmreg \361\362\370\1\x29\101 AVX,SANDYBRIDGE
-ymmreg,ymmrm \361\362\364\370\1\x28\110 AVX,SANDYBRIDGE
-ymmrm,ymmreg \361\362\364\370\1\x29\101 AVX,SANDYBRIDGE
+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
+
[VMOVAPS]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \362\370\1\x28\110 AVX,SANDYBRIDGE
-xmmrm,xmmreg \362\370\1\x29\101 AVX,SANDYBRIDGE
-ymmreg,ymmrm \362\364\370\1\x28\110 AVX,SANDYBRIDGE
-ymmrm,ymmreg \362\364\370\1\x29\101 AVX,SANDYBRIDGE
+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
+
[VMOVD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,rm32 \361\362\370\1\x6E\110 AVX,SANDYBRIDGE
-rm32,xmmreg \361\362\370\1\x7E\101 AVX,SANDYBRIDGE
+rm32,xmmreg \350\361\362\370\1\x7E\101 AVX,SANDYBRIDGE,T1S
+xmmreg,rm32 \350\361\362\370\1\x6E\110 AVX,SANDYBRIDGE,T1S
+
[VMOVDDUP]
(Ch_Wop2, Ch_Rop1)
-ymmreg,ymmrm \334\362\364\370\1\x12\110 AVX,SANDYBRIDGE
-xmmreg,mem64 \334\362\370\1\x12\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \334\362\370\1\x12\110 AVX,SANDYBRIDGE
+xmmreg_mz,mem64 \334\350\352\362\370\1\x12\110 AVX,SANDYBRIDGE,TMDDUP
+xmmreg_mz,xmmreg \334\350\352\362\370\1\x12\110 AVX,SANDYBRIDGE
+ymmreg_mz,ymmrm \334\350\352\362\364\370\1\x12\110 AVX,SANDYBRIDGE,TMDDUP
+zmmreg_mz,zmmrm \334\350\351\352\370\1\x12\110 AVX512,TMDDUP
+
[VMOVDQA]
(Ch_Wop2, Ch_Rop1)
@@ -4333,31 +4563,35 @@ ymmrm,ymmreg \333\362\364\370\1\x7F\101 AVX,SA
[VMOVHLPS]
(Ch_All)
-xmmreg,xmmreg,xmmreg \362\370\1\x12\75\120 AVX,SANDYBRIDGE
+xmmreg,xmmreg,xmmreg \350\362\370\1\x12\75\120 AVX,SANDYBRIDGE
[VMOVHPD]
(Ch_All)
-mem64,xmmreg \361\362\370\1\x17\101 AVX,SANDYBRIDGE
-xmmreg,xmmreg,mem64 \361\362\370\1\x16\75\120 AVX,SANDYBRIDGE
+mem64,xmmreg \350\352\361\362\370\1\x17\101 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg,mem64 \350\352\361\362\370\1\x16\75\120 AVX,SANDYBRIDGE,T1S
+
[VMOVHPS]
(Ch_All)
-xmmreg,xmmreg,mem64 \362\370\1\x16\75\120 AVX,SANDYBRIDGE
-mem64,xmmreg \362\370\1\x17\101 AVX,SANDYBRIDGE
+mem64,xmmreg \350\362\370\1\x17\101 AVX,SANDYBRIDGE,T2
+xmmreg,xmmreg,mem64 \350\362\370\1\x16\75\120 AVX,SANDYBRIDGE,T2
+
[VMOVLHPS]
(Ch_All)
-xmmreg,xmmreg,xmmreg \362\370\1\x16\75\120 AVX,SANDYBRIDGE
+xmmreg,xmmreg,xmmreg \350\362\370\1\x16\75\120 AVX,SANDYBRIDGE
[VMOVLPD]
(Ch_All)
-mem64,xmmreg \361\362\370\1\x13\101 AVX,SANDYBRIDGE
-xmmreg,xmmreg,mem64 \361\362\370\1\x12\75\120 AVX,SANDYBRIDGE
+mem64,xmmreg \350\352\361\362\370\1\x13\101 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg,mem64 \350\352\361\362\370\1\x12\75\120 AVX,SANDYBRIDGE,T1S
+
[VMOVLPS]
(Ch_All)
-mem64,xmmreg \362\370\1\x13\101 AVX,SANDYBRIDGE
-xmmreg,xmmreg,mem64 \362\370\1\x12\75\120 AVX,SANDYBRIDGE
+mem64,xmmreg \350\362\370\1\x13\101 AVX,SANDYBRIDGE,T2
+xmmreg,xmmreg,mem64 \350\362\370\1\x12\75\120 AVX,SANDYBRIDGE,T2
+
[VMOVMSKPD]
(Ch_All)
@@ -4375,72 +4609,99 @@ reg64,ymmreg \362\364\370\1\x50\110 AVX,SA
[VMOVNTDQ]
(Ch_Wop2, Ch_Rop1)
-mem128,xmmreg \361\362\370\1\xE7\101 AVX,SANDYBRIDGE
-mem256,ymmreg \361\362\364\370\1\xE7\101 AVX,SANDYBRIDGE
+mem128,xmmreg \350\361\362\370\1\xE7\101 AVX,SANDYBRIDGE,TFVM
+mem256,ymmreg \350\361\362\364\370\1\xE7\101 AVX,SANDYBRIDGE,TFVM
+mem512,zmmreg \350\351\361\370\1\xE7\101 AVX512,TFVM
[VMOVNTDQA]
(Ch_Wop2, Ch_Rop1)
-xmmreg,mem128 \361\362\371\1\x2A\110 AVX,SANDYBRIDGE
-ymmreg,mem256 \361\362\364\371\1\x2A\110 AVX2
+xmmreg,mem128 \350\361\362\371\1\x2A\110 AVX,SANDYBRIDGE,TFVM
+ymmreg,mem256 \350\361\362\364\371\1\x2A\110 AVX2,TFVM
+zmmreg,mem512 \350\351\361\371\1\x2A\110 AVX512,TFVM
+
[VMOVNTPD]
(Ch_Wop2, Ch_Rop1)
-mem256,ymmreg \361\362\364\370\1\x2B\101 AVX,SANDYBRIDGE
-mem128,xmmreg \361\362\370\1\x2B\101 AVX,SANDYBRIDGE
+mem128,xmmreg \350\352\361\362\370\1\x2B\101 AVX,SANDYBRIDGE,TFVM
+mem256,ymmreg \350\352\361\362\364\370\1\x2B\101 AVX,SANDYBRIDGE,TFVM
+mem512,zmmreg \350\351\352\361\370\1\x2B\101 AVX512,TFVM
+
[VMOVNTPS]
(Ch_Wop2, Ch_Rop1)
-mem128,ymmreg \362\364\370\1\x2B\101 AVX,SANDYBRIDGE
-mem128,xmmreg \362\370\1\x2B\101 AVX,SANDYBRIDGE
+mem128,xmmreg \350\362\370\1\x2B\101 AVX,SANDYBRIDGE,TFVM
+mem256,ymmreg \350\362\364\370\1\x2B\101 AVX,SANDYBRIDGE,TFVM
+mem512,zmmreg \350\351\370\1\x2B\101 AVX512,TFVM
+
[VMOVQ]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmreg \362\333\370\1\x7E\110 AVX,SANDYBRIDGE
-xmmreg,mem64 \362\333\370\1\x7E\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \362\361\370\1\xD6\101 AVX,SANDYBRIDGE
-mem64,xmmreg \362\361\370\1\xD6\101 AVX,SANDYBRIDGE
-rm64,xmmreg \362\361\363\370\1\x7E\101 AVX,SANDYBRIDGE,X86_64
-xmmreg,rm64 \362\361\363\370\1\x6E\110 AVX,SANDYBRIDGE,X86_64
+mem64,xmmreg \350\352\361\362\370\1\xD6\101 AVX,SANDYBRIDGE,T1S
+rm64,xmmreg \350\352\361\362\363\370\1\x7E\101 AVX,SANDYBRIDGE,X86_64,T1S
+xmmreg,mem64 \333\350\352\362\370\1\x7E\110 AVX,SANDYBRIDGE,T1S
+xmmreg,rm64 \350\352\361\362\363\370\1\x6E\110 AVX,SANDYBRIDGE,X86_64,T1S
+xmmreg,xmmreg \333\350\352\362\370\1\x7E\110 AVX,SANDYBRIDGE
+xmmreg,xmmreg \350\352\361\362\370\1\xD6\101 AVX,SANDYBRIDGE
+
[VMOVSD]
; the three ops must be handle by the compiler internally
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmreg,xmmreg \334\362\370\1\x10\75\120 AVX,SANDYBRIDGE
-xmmreg,mem64 \334\362\370\1\x10\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x11\75\102 AVX,SANDYBRIDGE
-mem64,xmmreg \334\362\370\1\x11\101 AVX,SANDYBRIDGE
+mem64_m,xmmreg \334\350\352\362\370\1\x11\101 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,mem64 \334\350\352\362\370\1\x10\110 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg \334\350\352\362\370\1\x11\75\102 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmreg \334\350\352\362\370\1\x10\75\120 AVX,SANDYBRIDGE
+
[VMOVSHDUP]
(Ch_All)
-xmmreg,xmmrm \333\362\370\1\x16\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \333\362\364\370\1\x16\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \333\350\362\370\1\x16\110 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm \333\350\362\364\370\1\x16\110 AVX,SANDYBRIDGE,TFVM
+zmmreg_mz,zmmrm \333\350\351\370\1\x16\110 AVX512,TFVM
+
[VMOVSLDUP]
(Ch_All)
-xmmreg,xmmrm \333\362\370\1\x12\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \333\362\364\370\1\x12\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \333\350\362\370\1\x12\110 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm \333\350\362\364\370\1\x12\110 AVX,SANDYBRIDGE,TFVM
+zmmreg_mz,zmmrm \333\350\351\370\1\x12\110 AVX512,TFVM
+
[VMOVSS]
; the three ops must be handle by the compiler internally
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmreg,xmmreg \333\362\370\1\x10\75\120 AVX,SANDYBRIDGE
-xmmreg,mem32 \333\362\370\1\x10\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x11\75\102 AVX,SANDYBRIDGE
-mem32,xmmreg \333\362\370\1\x11\101 AVX,SANDYBRIDGE
+mem32_m,xmmreg \333\350\362\370\1\x11\101 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,mem32 \333\350\362\370\1\x10\110 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg \333\350\362\370\1\x11\75\102 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmreg \333\350\362\370\1\x10\75\120 AVX,SANDYBRIDGE
+
[VMOVUPD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \361\362\370\1\x10\110 AVX,SANDYBRIDGE
-xmmrm,xmmreg \361\362\370\1\x11\101 AVX,SANDYBRIDGE
-ymmreg,ymmrm \361\362\364\370\1\x10\110 AVX,SANDYBRIDGE
-ymmrm,ymmreg \361\362\364\370\1\x11\101 AVX,SANDYBRIDGE
+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
+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)
-xmmreg,xmmrm \362\370\1\x10\110 AVX,SANDYBRIDGE
-xmmrm,xmmreg \362\370\1\x11\101 AVX,SANDYBRIDGE
-ymmreg,ymmrm \362\364\370\1\x10\110 AVX,SANDYBRIDGE
-ymmrm,ymmreg \362\364\370\1\x11\101 AVX,SANDYBRIDGE
+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
+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
+
[VMPSADBW]
(Ch_All)
@@ -4449,112 +4710,185 @@ ymmreg,ymmreg,ymmrm,imm8 \361\362\364\372\1\x42\75\120\27 AVX2
[VMULPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x59\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x59\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x59\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x59\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x59\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x59\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\352\361\370\1\x59\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x59\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\370\1\x59\75\120 AVX512
+
[VMULPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x59\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x59\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x59\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x59\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x59\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x59\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\370\1\x59\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x59\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\370\1\x59\75\120 AVX512
+
+
[VMULSD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem64 \334\362\370\1\x59\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x59\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x59\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x59\75\120 AVX,SANDYBRIDGE
+
[VMULSS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem32 \333\362\370\1\x59\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x59\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x59\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_er \333\350\362\370\1\x59\75\120 AVX,SANDYBRIDGE
+
[VORPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x56\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x56\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x56\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x56\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x56\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x56\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x56\75\120 AVX512,TFV
+
[VORPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x56\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x56\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x56\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x56\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x56\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x56\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\370\1\x56\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x56\75\120 AVX512,TFV
+
[VPABSB]
(Ch_All)
-xmmreg,xmmrm \361\362\371\1\x1C\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \361\362\364\371\1\x1C\110 AVX2
+xmmreg_mz,xmmrm \350\361\362\371\1\x1C\110 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm \350\361\362\364\371\1\x1C\110 AVX2,TFVM
+zmmreg_mz,zmmrm \350\351\361\371\1\x1C\110 AVX512,TFVM
+
[VPABSD]
(Ch_All)
-xmmreg,xmmrm \361\362\371\1\x1E\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \361\362\364\371\1\x1E\110 AVX2
+xmmreg_mz,xmmrm \350\361\362\371\1\x1E\110 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32 \350\361\371\1\x1E\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\361\362\364\371\1\x1E\110 AVX2,TFV
+ymmreg_mz,bmem32 \350\361\364\371\1\x1E\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\361\371\1\x1E\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\x1E\110 AVX512,TFV
+
[VPABSW]
(Ch_All)
-xmmreg,xmmrm \361\362\371\1\x1D\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \361\362\364\371\1\x1D\110 AVX2
+xmmreg_mz,xmmrm \350\361\362\371\1\x1D\110 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm \350\361\362\364\371\1\x1D\110 AVX2,TFVM
+zmmreg_mz,zmmrm \350\351\361\371\1\x1D\110 AVX512,TFVM
+
[VPACKSSDW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x6B\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x6B\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x6B\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\x6B\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x6B\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\x6B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x6B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\x6B\75\120 AVX512,TFV
+
[VPACKSSWB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x63\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x63\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x63\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x63\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x63\75\120 AVX512,TFVM
+
[VPACKUSDW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x2B\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x2B\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x2B\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x2B\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x2B\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x2B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x2B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x2B\75\120 AVX512,TFV
+
[VPACKUSWB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x67\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x67\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x67\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x67\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x67\75\120 AVX512,TFVM
+
[VPADDB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xFC\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xFC\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xFC\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xFC\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xFC\75\120 AVX512,TFVM
+
[VPADDD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xFE\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xFE\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xFE\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\xFE\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xFE\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\xFE\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xFE\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\xFE\75\120 AVX512,TFV
+
[VPADDQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xD4\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xD4\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\xD4\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\xD4\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\xD4\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\xD4\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\xD4\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\xD4\75\120 AVX512,TFV
+
[VPADDSB]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xEC\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xEC\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xEC\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xEC\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xEC\75\120 AVX512,TFVM
+
[VPADDSW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xED\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xED\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xED\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xED\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xED\75\120 AVX512,TFVM
+
[VPADDUSB]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xDC\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xDC\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xDC\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xDC\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xDC\75\120 AVX512,TFVM
+
[VPADDUSW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xDD\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xDD\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xDD\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xDD\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xDD\75\120 AVX512,TFVM
+
[VPADDW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xFD\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xFD\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xFD\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xFD\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xFD\75\120 AVX512,TFVM
+
[VPALIGNR]
(Ch_All)
-xmmreg,xmmreg,xmmrm,imm8 \361\362\372\1\x0F\75\120\27 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm,imm8 \361\362\364\372\1\x0F\75\120\27 AVX2
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\361\362\372\1\x0F\75\120\27 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\362\364\372\1\x0F\75\120\27 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\361\372\1\x0F\75\120\27 AVX512,TFVM
+
[VPAND]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
@@ -4568,13 +4902,17 @@ ymmreg,ymmreg,ymmrm \361\362\364\370\1\xDF\75\120 AVX2
[VPAVGB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE0\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xE0\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE0\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xE0\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xE0\75\120 AVX512,TFVM
+
[VPAVGW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE3\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xE3\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE3\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xE3\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xE3\75\120 AVX512,TFVM
+
[VPBLENDVB]
(Ch_All)
@@ -4587,28 +4925,53 @@ xmmreg,xmmreg,xmmrm,imm8 \361\362\372\1\x0E\75\120\27 AVX,SA
ymmreg,ymmreg,ymmrm,imm8 \361\362\364\372\1\x0E\75\120\27 AVX2
[VPCLMULQDQ]
-(Ch_All)
-xmmreg,xmmreg,xmmrm,imm8 \361\362\372\1\x44\75\120\27 AVX,SANDYBRIDGE
+(Ch_All, Ch_None)
+xmmreg,xmmreg,xmmrm,imm8 \350\361\362\372\1\x44\75\120\27 AVX,SANDYBRIDGE,TFV
+ymmreg,ymmreg,ymmrm,imm8 \350\361\364\372\1\x44\75\120\27 AVX512,TFV
+zmmreg,zmmreg,zmmrm,imm8 \350\351\361\372\1\x44\75\120\27 AVX512,TFV
+
[VPCMPEQB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x74\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x74\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\361\370\1\x74\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \350\361\364\370\1\x74\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \350\351\361\370\1\x74\75\120 AVX512,TFVM
+xmmreg,xmmreg,xmmrm \361\362\370\1\x74\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\370\1\x74\75\120 AVX2
+
[VPCMPEQD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x76\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x76\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\361\370\1\x76\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem32 \350\361\370\1\x76\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \350\361\364\370\1\x76\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem32 \350\361\364\370\1\x76\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \350\351\361\370\1\x76\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem32 \350\351\361\370\1\x76\75\120 AVX512,TFV
+xmmreg,xmmreg,xmmrm \361\362\370\1\x76\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\370\1\x76\75\120 AVX2
+
[VPCMPEQQ]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x29\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x29\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\352\361\371\1\x29\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem64 \350\352\361\371\1\x29\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \350\352\361\364\371\1\x29\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem64 \350\352\361\364\371\1\x29\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \350\351\352\361\371\1\x29\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem64 \350\351\352\361\371\1\x29\75\120 AVX512,TFV
+xmmreg,xmmreg,xmmrm \361\362\371\1\x29\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\371\1\x29\75\120 AVX2
+
[VPCMPEQW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x75\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x75\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\361\370\1\x75\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \350\361\364\370\1\x75\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \350\351\361\370\1\x75\75\120 AVX512,TFVM
+xmmreg,xmmreg,xmmrm \361\362\370\1\x75\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\370\1\x75\75\120 AVX2
+
[VPCMPESTRI]
(Ch_All)
@@ -4620,23 +4983,45 @@ xmmreg,xmmrm,imm8 \361\362\372\1\x60\110\26 AVX,SA
[VPCMPGTB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x64\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x64\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\361\370\1\x64\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \350\361\364\370\1\x64\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \350\351\361\370\1\x64\75\120 AVX512,TFVM
+xmmreg,xmmreg,xmmrm \361\362\370\1\x64\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\370\1\x64\75\120 AVX2
+
[VPCMPGTD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x66\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x66\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\361\370\1\x66\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem32 \350\361\370\1\x66\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \350\361\364\370\1\x66\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem32 \350\361\364\370\1\x66\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \350\351\361\370\1\x66\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem32 \350\351\361\370\1\x66\75\120 AVX512,TFV
+xmmreg,xmmreg,xmmrm \361\362\370\1\x66\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\370\1\x66\75\120 AVX2
+
[VPCMPGTQ]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x37\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x37\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\352\361\371\1\x37\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem64 \350\352\361\371\1\x37\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \350\352\361\364\371\1\x37\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem64 \350\352\361\364\371\1\x37\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \350\351\352\361\371\1\x37\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem64 \350\351\352\361\371\1\x37\75\120 AVX512,TFV
+xmmreg,xmmreg,xmmrm \361\362\371\1\x37\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\371\1\x37\75\120 AVX2
+
[VPCMPGTW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x65\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x65\75\120 AVX2
+kreg_m,xmmreg,xmmrm \350\361\370\1\x65\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \350\361\364\370\1\x65\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \350\351\361\370\1\x65\75\120 AVX512,TFVM
+xmmreg,xmmreg,xmmrm \361\362\370\1\x65\75\120 AVX,SANDYBRIDGE
+ymmreg,ymmreg,ymmrm \361\362\364\370\1\x65\75\120 AVX2
+
[VPCMPISTRI]
(Ch_All)
@@ -4652,39 +5037,64 @@ ymmreg,ymmreg,ymmrm,imm8 \361\362\364\372\1\x06\75\120\27 AVX,SA
[VPERMILPD]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x0D\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmrm,imm8 \361\362\372\1\x05\110\26 AVX,SANDYBRIDGE
-ymmreg,ymmrm,imm8 \361\362\364\372\1\x05\110\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\371\1\x0D\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\371\1\x0D\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x0D\75\120 AVX512,TFV
+xmmreg_mz,xmmrm,imm8 \350\352\361\362\372\1\x05\110\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\372\1\x05\110\26 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\371\1\x0D\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x0D\75\120 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\362\364\372\1\x05\110\26 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x05\110\26 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x0D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x0D\75\120 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x05\110\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x05\110\26 AVX512,TFV
+
[VPERMILPS]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x0C\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmrm,imm8 \361\362\372\1\x04\110\26 AVX,SANDYBRIDGE
-ymmreg,ymmrm,imm8 \361\362\364\372\1\x04\110\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\371\1\x0C\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x0C\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x0C\75\120 AVX512,TFV
+xmmreg_mz,xmmrm,imm8 \350\361\362\372\1\x04\110\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32,imm8 \350\361\372\1\x04\110\26 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x0C\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x0C\75\120 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\372\1\x04\110\26 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\372\1\x04\110\26 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x0C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x0C\75\120 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\361\372\1\x04\110\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\372\1\x04\110\26 AVX512,TFV
+
[VPEXTRB]
(Ch_All)
-reg32,xmmreg,imm8 \361\362\372\1\x14\101\26 AVX,SANDYBRIDGE
-reg64,xmmreg,imm8 \361\362\372\1\x14\101\26 AVX,SANDYBRIDGE
-mem8,xmmreg,imm8 \361\362\372\1\x14\101\26 AVX,SANDYBRIDGE
+mem8,xmmreg,imm8 \350\361\362\372\1\x14\101\26 AVX,SANDYBRIDGE,T1S
+reg16,xmmreg,imm8 \350\361\372\1\x14\101\26 AVX512
+reg32,xmmreg,imm8 \350\361\362\372\1\x14\101\26 AVX,SANDYBRIDGE
+reg64,xmmreg,imm8 \350\361\362\372\1\x14\101\26 AVX,SANDYBRIDGE
+reg8,xmmreg,imm8 \350\361\372\1\x14\101\26 AVX512
+
[VPEXTRD]
(Ch_All)
-rm32,xmmreg,imm8 \361\362\372\1\x16\101\26 AVX,SANDYBRIDGE
+rm32,xmmreg,imm8 \350\361\362\372\1\x16\101\26 AVX,SANDYBRIDGE,T1S
+
[VPEXTRQ]
(Ch_All)
-rm64,xmmreg,imm8 \361\362\363\372\1\x16\101\26 AVX,SANDYBRIDGE
+rm64,xmmreg,imm8 \350\352\361\362\363\372\1\x16\101\26 AVX,SANDYBRIDGE,T1S
+
[VPEXTRW]
(Ch_All)
-reg32,xmmreg,imm8 \361\362\370\1\xC5\110\26 AVX,SANDYBRIDGE
-reg64,xmmreg,imm8 \361\362\370\1\xC5\110\26 AVX,SANDYBRIDGE
-reg32,xmmreg,imm8 \361\362\372\1\x15\101\26 AVX,SANDYBRIDGE
-reg64,xmmreg,imm8 \361\362\372\1\x15\101\26 AVX,SANDYBRIDGE
-mem16,xmmreg,imm8 \361\362\372\1\x15\101\26 AVX,SANDYBRIDGE
+mem16,xmmreg,imm8 \350\361\362\372\1\x15\101\26 AVX,SANDYBRIDGE,T1S
+reg16,xmmreg,imm8 \350\361\362\372\1\x15\101\26 AVX,SANDYBRIDGE
+reg16,xmmreg,imm8 \350\361\362\370\1\xC5\110\26 AVX,SANDYBRIDGE
+reg32,xmmreg,imm8 \350\361\362\370\1\xC5\110\26 AVX,SANDYBRIDGE
+reg32,xmmreg,imm8 \350\361\362\372\1\x15\101\26 AVX,SANDYBRIDGE
+reg64,xmmreg,imm8 \350\361\362\372\1\x15\101\26 AVX,SANDYBRIDGE
+reg64,xmmreg,imm8 \350\361\362\370\1\xC5\110\26 AVX,SANDYBRIDGE
[VPHADDD]
@@ -4723,91 +5133,135 @@ ymmreg,ymmreg,ymmrm \361\362\364\371\1\x05\75\120 AVX2
[VPINSRB]
(Ch_All)
-xmmreg,xmmreg,reg32,imm8 \361\362\372\1\x20\75\120\27 AVX,SANDYBRIDGE
-xmmreg,xmmreg,mem8,imm8 \361\362\372\1\x20\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,reg32,imm8 \350\361\362\372\1\x20\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,mem8,imm8 \350\361\362\372\1\x20\75\120\27 AVX,SANDYBRIDGE,T1S
+
[VPINSRD]
(Ch_All)
-xmmreg,xmmreg,rm32,imm8 \361\362\372\1\x22\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,rm32,imm8 \350\361\362\372\1\x22\75\120\27 AVX,SANDYBRIDGE,T1S
+
[VPINSRQ]
(Ch_All)
-xmmreg,xmmreg,rm64,imm8 \361\362\363\372\1\x22\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,rm64,imm8 \350\352\361\362\363\372\1\x22\75\120\27 AVX,SANDYBRIDGE,T1S
+
[VPINSRW]
(Ch_All)
-xmmreg,xmmreg,reg32,imm8 \361\362\370\1\xC4\75\120\27 AVX,SANDYBRIDGE
-xmmreg,xmmreg,mem16,imm8 \361\362\370\1\xC4\75\120\27 AVX,SANDYBRIDGE
+xmmreg,xmmreg,mem16,imm8 \350\361\362\370\1\xC4\75\120\27 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg,reg32,imm8 \350\361\362\370\1\xC4\75\120\27 AVX,SANDYBRIDGE
+
[VPMADDUBSW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x04\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x04\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x04\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x04\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x04\75\120 AVX512,TFVM
+
[VPMADDWD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF5\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xF5\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xF5\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xF5\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xF5\75\120 AVX512,TFVM
+
[VPMAXSB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x3C\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x3C\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x3C\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x3C\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x3C\75\120 AVX512,TFVM
+
[VPMAXSD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x3D\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x3D\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x3D\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x3D\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x3D\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x3D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x3D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x3D\75\120 AVX512,TFV
+
[VPMAXSW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xEE\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xEE\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xEE\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xEE\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xEE\75\120 AVX512,TFVM
+
[VPMAXUB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xDE\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xDE\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xDE\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xDE\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xDE\75\120 AVX512,TFVM
+
[VPMAXUD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x3F\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x3F\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x3F\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x3F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x3F\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x3F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x3F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x3F\75\120 AVX512,TFV
+
[VPMAXUW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x3E\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x3E\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x3E\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x3E\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x3E\75\120 AVX512,TFVM
+
[VPMINSB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x38\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x38\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x38\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x38\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x38\75\120 AVX512,TFVM
+
[VPMINSD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x39\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x39\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x39\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x39\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x39\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x39\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x39\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x39\75\120 AVX512,TFV
+
[VPMINSW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xEA\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xEA\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xEA\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xEA\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xEA\75\120 AVX512,TFVM
+
[VPMINUB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xDA\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xDA\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xDA\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xDA\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xDA\75\120 AVX512,TFVM
+
[VPMINUD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x3B\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x3B\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x3B\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x3B\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x3B\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x3B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x3B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x3B\75\120 AVX512,TFV
+
[VPMINUW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x3A\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x3A\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x3A\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x3A\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x3A\75\120 AVX512,TFVM
+
[VPMOVMSKB]
(Ch_All)
@@ -4818,117 +5272,181 @@ reg64,ymmreg \361\362\364\370\1\xD7\110 AVX2
[VPMOVSXBD]
(Ch_All)
-xmmreg,mem32 \361\362\371\1\x21\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x21\110 AVX,SANDYBRIDGE
-ymmreg,xmmreg \361\362\364\371\1\x21\110 AVX2
-ymmreg,mem64 \361\362\364\371\1\x21\110 AVX2
+xmmreg_mz,mem32 \350\361\362\371\1\x21\110 AVX,SANDYBRIDGE,TQVM
+xmmreg_mz,xmmreg \350\361\362\371\1\x21\110 AVX,SANDYBRIDGE
+ymmreg_mz,mem64 \350\361\362\364\371\1\x21\110 AVX2,TQVM
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x21\110 AVX2
+zmmreg_mz,mem128 \350\351\361\371\1\x21\110 AVX512,TQVM
+zmmreg_mz,xmmreg \350\351\361\371\1\x21\110 AVX512
+
[VPMOVSXBQ]
(Ch_All)
-xmmreg,mem16 \361\362\371\1\x22\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x22\110 AVX,SANDYBRIDGE
-ymmreg,mem32 \361\362\364\371\1\x22\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x22\110 AVX2
+xmmreg_mz,mem16 \350\361\362\371\1\x22\110 AVX,SANDYBRIDGE,TOVM
+xmmreg_mz,xmmreg \350\361\362\371\1\x22\110 AVX,SANDYBRIDGE
+ymmreg_mz,mem32 \350\361\362\364\371\1\x22\110 AVX2,TOVM
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x22\110 AVX2
+zmmreg_mz,mem64 \350\351\361\371\1\x22\110 AVX512,TOVM
+zmmreg_mz,xmmreg \350\351\361\371\1\x22\110 AVX512
+
[VPMOVSXBW]
(Ch_All)
-xmmreg,mem64 \361\362\371\1\x20\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x20\110 AVX,SANDYBRIDGE
-ymmreg,xmmrm \361\362\364\371\1\x20\110 AVX2
+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
+
[VPMOVSXDQ]
(Ch_All)
-xmmreg,mem64 \361\362\371\1\x25\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x25\110 AVX,SANDYBRIDGE
-ymmreg,xmmrm \361\362\364\371\1\x25\110 AVX2
+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
+
[VPMOVSXWD]
(Ch_All)
-xmmreg,mem64 \361\362\371\1\x23\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x23\110 AVX,SANDYBRIDGE
-ymmreg,xmmrm \361\362\364\371\1\x23\110 AVX2
+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
+
[VPMOVSXWQ]
(Ch_All)
-xmmreg,mem32 \361\362\371\1\x24\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x24\110 AVX,SANDYBRIDGE
-ymmreg,mem64 \361\362\364\371\1\x24\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x24\110 AVX2
+xmmreg_mz,mem32 \350\361\362\371\1\x24\110 AVX,SANDYBRIDGE,TQVM
+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
+
[VPMOVZXBD]
(Ch_All)
-xmmreg,mem32 \361\362\371\1\x31\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x31\110 AVX,SANDYBRIDGE
-ymmreg,mem64 \361\362\364\371\1\x31\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x31\110 AVX2
+xmmreg_mz,mem32 \350\361\362\371\1\x31\110 AVX,SANDYBRIDGE,TQVM
+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
+
[VPMOVZXBQ]
(Ch_All)
-xmmreg,mem16 \361\362\371\1\x32\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x32\110 AVX,SANDYBRIDGE
-ymmreg,mem32 \361\362\364\371\1\x32\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x32\110 AVX2
+xmmreg_mz,mem16 \350\361\362\371\1\x32\110 AVX,SANDYBRIDGE,TOVM
+xmmreg_mz,xmmreg \350\361\362\371\1\x32\110 AVX,SANDYBRIDGE
+ymmreg_mz,mem32 \350\361\362\364\371\1\x32\110 AVX2,TOVM
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x32\110 AVX2
+zmmreg_mz,mem64 \350\351\361\371\1\x32\110 AVX512,TOVM
+zmmreg_mz,xmmreg \350\351\361\371\1\x32\110 AVX512
+
[VPMOVZXBW]
(Ch_All)
-xmmreg,mem64 \361\362\371\1\x30\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x30\110 AVX,SANDYBRIDGE
-ymmreg,xmmrm \361\362\364\371\1\x30\110 AVX2
+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
+
[VPMOVZXDQ]
(Ch_All)
-xmmreg,mem64 \361\362\371\1\x35\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x35\110 AVX,SANDYBRIDGE
-ymmreg,xmmrm \361\362\364\371\1\x35\110 AVX2
+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
+
[VPMOVZXWD]
(Ch_All)
-xmmreg,mem64 \361\362\371\1\x33\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x33\110 AVX,SANDYBRIDGE
-ymmreg,xmmrm \361\362\364\371\1\x33\110 AVX2
+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
+
[VPMOVZXWQ]
(Ch_All)
-xmmreg,mem32 \361\362\371\1\x34\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\371\1\x34\110 AVX,SANDYBRIDGE
-ymmreg,mem64 \361\362\364\371\1\x34\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x34\110 AVX2
+xmmreg_mz,mem32 \350\361\362\371\1\x34\110 AVX,SANDYBRIDGE,TQVM
+xmmreg_mz,xmmreg \350\361\362\371\1\x34\110 AVX,SANDYBRIDGE
+ymmreg_mz,mem64 \350\361\362\364\371\1\x34\110 AVX2,TQVM
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x34\110 AVX2
+zmmreg_mz,mem128 \350\351\361\371\1\x34\110 AVX512,TQVM
+zmmreg_mz,xmmreg \350\351\361\371\1\x34\110 AVX512
[VPMULDQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x28\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x28\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\371\1\x28\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x28\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\371\1\x28\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x28\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x28\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x28\75\120 AVX512,TFV
+
[VPMULHRSW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x0B\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x0B\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x0B\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x0B\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x0B\75\120 AVX512,TFVM
+
[VPMULHUW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE4\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xE4\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE4\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xE4\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xE4\75\120 AVX512,TFVM
+
[VPMULHW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE5\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xE5\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE5\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xE5\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xE5\75\120 AVX512,TFVM
+
[VPMULLD]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x40\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x40\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x40\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x40\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x40\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x40\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x40\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x40\75\120 AVX512,TFV
+
[VPMULLW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xD5\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xD5\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xD5\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xD5\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xD5\75\120 AVX512,TFVM
+
[VPMULUDQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF4\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xF4\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\xF4\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\xF4\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\xF4\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\xF4\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\xF4\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\xF4\75\120 AVX512,TFV
+
[VPOR]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
@@ -4937,28 +5455,41 @@ ymmreg,ymmreg,ymmrm \361\362\364\370\1\xEB\75\120 AVX2
[VPSADBW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF6\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xF6\75\120 AVX2
+xmmreg,xmmreg,xmmrm \350\361\362\370\1\xF6\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg,ymmreg,ymmrm \350\361\362\364\370\1\xF6\75\120 AVX2,TFVM
+zmmreg,zmmreg,zmmrm \350\351\361\370\1\xF6\75\120 AVX512,TFVM
+
[VPSHUFB]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x00\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x00\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x00\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x00\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x00\75\120 AVX512,TFVM
+
[VPSHUFD]
(Ch_All)
-xmmreg,xmmrm,imm8 \361\362\370\1\x70\110\26 AVX,SANDYBRIDGE
-ymmreg,ymmrm,imm8 \361\362\364\370\1\x70\110\26 AVX2
+xmmreg_mz,xmmrm,imm8 \350\361\362\370\1\x70\110\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32,imm8 \350\361\370\1\x70\110\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\370\1\x70\110\26 AVX2,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\370\1\x70\110\26 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x70\110\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\370\1\x70\110\26 AVX512,TFV
+
[VPSHUFHW]
(Ch_All)
-xmmreg,xmmrm,imm8 \333\362\370\1\x70\110\26 AVX,SANDYBRIDGE
-ymmreg,ymmrm,imm8 \333\362\364\370\1\x70\110\26 AVX2
+xmmreg_mz,xmmrm,imm8 \333\350\362\370\1\x70\110\26 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm,imm8 \333\350\362\364\370\1\x70\110\26 AVX2,TFVM
+zmmreg_mz,zmmrm,imm8 \333\350\351\370\1\x70\110\26 AVX512,TFVM
+
[VPSHUFLW]
(Ch_All)
-xmmreg,xmmrm,imm8 \334\362\370\1\x70\110\26 AVX,SANDYBRIDGE
-ymmreg,ymmrm,imm8 \334\362\364\370\1\x70\110\26 AVX2
+xmmreg_mz,xmmrm,imm8 \334\350\362\370\1\x70\110\26 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmrm,imm8 \334\350\362\364\370\1\x70\110\26 AVX2,TFVM
+zmmreg_mz,zmmrm,imm8 \334\350\351\370\1\x70\110\26 AVX512,TFVM
+
[VPSIGNB]
(Ch_All)
@@ -4977,112 +5508,180 @@ ymmreg,ymmreg,ymmrm \361\362\364\371\1\x09\75\120 AVX2
[VPSLLD]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x72\74\216\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF2\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x72\74\216\26 AVX2
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xF2\75\120 AVX2
+xmmreg_mz,xmmrm,imm8 \350\361\362\370\1\x72\74\216\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32,imm8 \350\361\370\1\x72\74\216\26 AVX512,TFV
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xF2\75\120 AVX,SANDYBRIDGE,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\370\1\x72\74\216\26 AVX2,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\370\1\x72\74\216\26 AVX512,TFV
+ymmreg_mz,ymmreg,xmmrm \350\361\362\364\370\1\xF2\75\120 AVX2,TMEM128
+zmmreg_mz,zmmreg,xmmrm \350\351\361\370\1\xF2\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x72\74\216\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\370\1\x72\74\216\26 AVX512,TFV
+
[VPSLLDQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x73\74\217\26 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x73\74\217\26 AVX2
+xmmreg,mem128,imm8 \350\361\370\1\x73\74\217\26 AVX512,TFVM
+xmmreg,xmmreg,imm8 \350\361\362\370\1\x73\74\217\26 AVX,SANDYBRIDGE,TFVM
+ymmreg,mem256,imm8 \350\361\364\370\1\x73\74\217\26 AVX512,TFVM
+ymmreg,ymmreg,imm8 \350\361\362\364\370\1\x73\74\217\26 AVX2,TFVM
+zmmreg,mem512,imm8 \350\351\361\370\1\x73\74\217\26 AVX512,TFVM
+zmmreg,zmmreg,imm8 \350\351\361\370\1\x73\74\217\26 AVX512,TFVM
[VPSLLQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF3\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,imm8 \361\362\370\1\x73\74\216\26 AVX,SANDYBRIDGE
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xF3\75\120 AVX2
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x73\74\216\26 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\xF3\75\120 AVX,SANDYBRIDGE,TMEM128
+xmmreg_mz,xmmrm,imm8 \350\352\361\362\370\1\x73\74\216\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\370\1\x73\74\216\26 AVX512,TFV
+ymmreg_mz,ymmreg,xmmrm \350\352\361\362\364\370\1\xF3\75\120 AVX2,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\352\361\362\364\370\1\x73\74\216\26 AVX2,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\370\1\x73\74\216\26 AVX512,TFV
+zmmreg_mz,zmmreg,xmmrm \350\351\352\361\370\1\xF3\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\370\1\x73\74\216\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\370\1\x73\74\216\26 AVX512,TFV
+
[VPSLLW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x71\74\216\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF1\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x71\74\216\26 AVX2
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xF1\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xF1\75\120 AVX,SANDYBRIDGE,TMEM128
+xmmreg_mz,xmmrm,imm8 \350\361\362\370\1\x71\74\216\26 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,xmmrm \350\361\362\364\370\1\xF1\75\120 AVX2,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\370\1\x71\74\216\26 AVX2,TFVM
+zmmreg_mz,zmmreg,xmmrm \350\351\361\370\1\xF1\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x71\74\216\26 AVX512,TFVM
[VPSRAD]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x72\74\214\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE2\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x72\74\214\26 AVX2
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xE2\75\120 AVX2
+xmmreg_mz,xmmrm,imm8 \350\361\362\370\1\x72\74\214\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32,imm8 \350\361\370\1\x72\74\214\26 AVX512,TFV
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE2\75\120 AVX,SANDYBRIDGE,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\370\1\x72\74\214\26 AVX2,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\370\1\x72\74\214\26 AVX512,TFV
+ymmreg_mz,ymmreg,xmmrm \350\361\362\364\370\1\xE2\75\120 AVX2,TMEM128
+zmmreg_mz,zmmreg,xmmrm \350\351\361\370\1\xE2\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x72\74\214\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\370\1\x72\74\214\26 AVX512,TFV
+
[VPSRAW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x71\74\214\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE1\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x71\74\214\26 AVX2
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xE1\75\120 AVX2
+xmmreg_mz,xmmrm,imm8 \350\361\362\370\1\x71\74\214\26 AVX,SANDYBRIDGE,TFVM
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE1\75\120 AVX,SANDYBRIDGE,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\370\1\x71\74\214\26 AVX2,TFVM
+ymmreg_mz,ymmreg,xmmrm \350\361\362\364\370\1\xE1\75\120 AVX2,TMEM128
+zmmreg_mz,zmmreg,xmmrm \350\351\361\370\1\xE1\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x71\74\214\26 AVX512,TFVM
+
[VPSRLD]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x72\74\212\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\370\1\xD2\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x72\74\212\26 AVX2
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xD2\75\120 AVX2
+xmmreg_mz,xmmrm,imm8 \350\361\362\370\1\x72\74\212\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32,imm8 \350\361\370\1\x72\74\212\26 AVX512,TFV
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xD2\75\120 AVX,SANDYBRIDGE,TMEM128
+ymmreg_mz,ymmreg,xmmrm \350\361\362\364\370\1\xD2\75\120 AVX2,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\370\1\x72\74\212\26 AVX2,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\370\1\x72\74\212\26 AVX512,TFV
+zmmreg_mz,zmmreg,xmmrm \350\351\361\370\1\xD2\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x72\74\212\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\370\1\x72\74\212\26 AVX512,TFV
[VPSRLDQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x73\74\213\26 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x73\74\213\26 AVX2
+xmmreg,mem128,imm8 \350\361\370\1\x73\74\213\26 AVX512,TFVM
+xmmreg,xmmreg,imm8 \350\361\362\370\1\x73\74\213\26 AVX,SANDYBRIDGE,TFVM
+ymmreg,mem256,imm8 \350\361\364\370\1\x73\74\213\26 AVX512,TFVM
+ymmreg,ymmreg,imm8 \350\361\362\364\370\1\x73\74\213\26 AVX2,TFVM
+zmmreg,zmmrm,imm8 \350\351\361\370\1\x73\74\213\26 AVX512,TFVM
+
+
[VPSRLQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x73\74\212\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\370\1\xD3\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x73\74\212\26 AVX2
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xD3\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\xD3\75\120 AVX,SANDYBRIDGE,TMEM128
+xmmreg_mz,xmmrm,imm8 \350\352\361\362\370\1\x73\74\212\26 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\370\1\x73\74\212\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\362\364\370\1\x73\74\212\26 AVX2,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\370\1\x73\74\212\26 AVX512,TFV
+ymmreg_mz,ymmreg,xmmrm \350\352\361\362\364\370\1\xD3\75\120 AVX2,TMEM128
+zmmreg_mz,zmmreg,xmmrm \350\351\352\361\370\1\xD3\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\370\1\x73\74\212\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\370\1\x73\74\212\26 AVX512,TFV
+
[VPSRLW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,imm8 \361\362\370\1\x71\74\212\26 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmrm \361\362\370\1\xD1\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,imm8 \361\362\364\370\1\x71\74\212\26 AVX2
-ymmreg,ymmreg,xmmrm \361\362\364\370\1\xD1\75\120 AVX2
+xmmreg_mz,xmmrm,imm8 \350\361\362\370\1\x71\74\212\26 AVX,SANDYBRIDGE,TFVM
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xD1\75\120 AVX,SANDYBRIDGE,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\361\362\364\370\1\x71\74\212\26 AVX2,TFVM
+ymmreg_mz,ymmreg,xmmrm \350\361\362\364\370\1\xD1\75\120 AVX2,TMEM128
+zmmreg_mz,zmmreg,xmmrm \350\351\361\370\1\xD1\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x71\74\212\26 AVX512,TFVM
+
[VPSUBB]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF8\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xF8\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xF8\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xF8\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xF8\75\120 AVX512,TFVM
+
[VPSUBD]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xFA\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xFA\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xFA\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\xFA\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xFA\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\xFA\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xFA\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\xFA\75\120 AVX512,TFV
+
[VPSUBQ]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xFB\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xFB\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\xFB\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\xFB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\xFB\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\xFB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\xFB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\xFB\75\120 AVX512,TFV
+
[VPSUBSB]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE8\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xE8\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE8\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xE8\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xE8\75\120 AVX512,TFVM
+
[VPSUBSW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xE9\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xE9\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xE9\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xE9\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xE9\75\120 AVX512,TFVM
+
[VPSUBUSB]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xD8\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xD8\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xD8\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xD8\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xD8\75\120 AVX512,TFVM
+
[VPSUBUSW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xD9\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xD9\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xD9\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xD9\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xD9\75\120 AVX512,TFVM
+
[VPSUBW]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
-xmmreg,xmmreg,xmmrm \361\362\370\1\xF9\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\xF9\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\xF9\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\xF9\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xF9\75\120 AVX512,TFVM
+
[VPTEST]
(Ch_All)
@@ -5091,43 +5690,71 @@ xmmreg,xmmrm \361\362\371\1\x17\110 AVX,SA
[VPUNPCKHBW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x68\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x68\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x68\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x68\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x68\75\120 AVX512,TFVM
+
[VPUNPCKHDQ]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x6A\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x6A\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x6A\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\x6A\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x6A\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\x6A\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x6A\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\x6A\75\120 AVX512,TFV
+
[VPUNPCKHQDQ]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x6D\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x6D\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x6D\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x6D\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x6D\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x6D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x6D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x6D\75\120 AVX512,TFV
+
[VPUNPCKHWD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x69\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x69\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x69\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x69\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x69\75\120 AVX512,TFVM
+
[VPUNPCKLBW]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x60\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x60\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x60\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x60\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x60\75\120 AVX512,TFVM
+
[VPUNPCKLDQ]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x62\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x62\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x62\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\x62\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x62\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\x62\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x62\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\x62\75\120 AVX512,TFV
+
[VPUNPCKLQDQ]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x6C\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x6C\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x6C\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x6C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x6C\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x6C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x6C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x6C\75\120 AVX512,TFV
+
[VPUNPCKLWD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x61\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x61\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\370\1\x61\75\120 AVX,SANDYBRIDGE,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\370\1\x61\75\120 AVX2,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\x61\75\120 AVX512,TFVM
+
[VPXOR]
(Ch_Rop1, Ch_Rop2, Ch_Wop3)
@@ -5176,33 +5803,57 @@ xmmreg,xmmreg,xmmreg \333\362\370\1\x52\75\120 AVX,SA
[VSHUFPD]
(Ch_All)
-xmmreg,xmmreg,xmmrm,imm8 \361\362\370\1\xC6\75\120\27 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm,imm8 \361\362\364\370\1\xC6\75\120\27 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\352\361\362\370\1\xC6\75\120\27 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64,imm8 \350\352\361\370\1\xC6\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\352\361\362\364\370\1\xC6\75\120\27 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64,imm8 \350\352\361\364\370\1\xC6\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\352\361\370\1\xC6\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64,imm8 \350\351\352\361\370\1\xC6\75\120\27 AVX512,TFV
+
[VSHUFPS]
(Ch_All)
-xmmreg,xmmreg,xmmrm,imm8 \362\370\1\xC6\75\120\27 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm,imm8 \362\364\370\1\xC6\75\120\27 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\362\370\1\xC6\75\120\27 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32,imm8 \350\370\1\xC6\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\362\364\370\1\xC6\75\120\27 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32,imm8 \350\364\370\1\xC6\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\370\1\xC6\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32,imm8 \350\351\370\1\xC6\75\120\27 AVX512,TFV
+
[VSQRTPD]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \361\362\370\1\x51\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \361\362\364\370\1\x51\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \350\352\361\362\370\1\x51\110 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem64 \350\352\361\370\1\x51\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\362\364\370\1\x51\110 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,bmem64 \350\352\361\364\370\1\x51\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\352\361\370\1\x51\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\370\1\x51\110 AVX512,TFV
+zmmreg_mz,zmmreg_er \350\351\352\361\370\1\x51\110 AVX512
+
[VSQRTPS]
(Ch_Wop2, Ch_Rop1)
-xmmreg,xmmrm \362\370\1\x51\110 AVX,SANDYBRIDGE
-ymmreg,ymmrm \362\364\370\1\x51\110 AVX,SANDYBRIDGE
+xmmreg_mz,xmmrm \350\362\370\1\x51\110 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,bmem32 \350\370\1\x51\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\362\364\370\1\x51\110 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,bmem32 \350\364\370\1\x51\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\370\1\x51\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\370\1\x51\110 AVX512,TFV
+zmmreg_mz,zmmreg_er \350\351\370\1\x51\110 AVX512
+
[VSQRTSD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem64 \334\362\370\1\x51\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x51\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x51\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x51\75\120 AVX,SANDYBRIDGE,T1S
+
[VSQRTSS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem32 \333\362\370\1\x51\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x51\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmreg_er \333\350\362\370\1\x51\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x51\75\120 AVX,SANDYBRIDGE,T1S
+
[VSTMXCSR]
(Ch_All)
@@ -5210,23 +5861,37 @@ mem32 \362\370\1\xAE\203 AVX,SA
[VSUBPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x5C\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x5C\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x5C\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x5C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x5C\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x5C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\352\361\370\1\x5C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x5C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\370\1\x5C\75\120 AVX512,TFV
+
[VSUBPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x5C\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x5C\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x5C\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x5C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x5C\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x5C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\370\1\x5C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x5C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\370\1\x5C\75\120 AVX512
+
[VSUBSD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem64 \334\362\370\1\x5C\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \334\362\370\1\x5C\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x5C\75\120 AVX,SANDYBRIDGE,T1S
+xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x5C\75\120 AVX,SANDYBRIDGE,T1S
+
[VSUBSS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,mem32 \333\362\370\1\x5C\75\120 AVX,SANDYBRIDGE
-xmmreg,xmmreg,xmmreg \333\362\370\1\x5C\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmreg_er \333\350\362\370\1\x5C\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x5C\75\120 AVX,SANDYBRIDGE,T1S
+
[VTESTPD]
(Ch_All)
@@ -5240,43 +5905,75 @@ xmmreg,xmmrm \361\362\371\1\x0E\110 AVX,SA
[VUCOMISD]
(Ch_Rop1, Ch_Rop2, Ch_WZeroFlag, Ch_WParityFlag, Ch_WCarryFlag, Ch_W0OverflowFlag, Ch_W0SignFlag, Ch_W0AuxiliaryFlag)
-xmmreg,mem64 \361\362\370\1\x2E\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \361\362\370\1\x2E\110 AVX,SANDYBRIDGE
+xmmreg,mem64 \350\352\361\362\370\1\x2E\110 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg_sae \350\352\361\362\370\1\x2E\110 AVX,SANDYBRIDGE
+
[VUCOMISS]
(Ch_Rop1, Ch_Rop2, Ch_WZeroFlag, Ch_WParityFlag, Ch_WCarryFlag, Ch_W0OverflowFlag, Ch_W0SignFlag, Ch_W0AuxiliaryFlag)
-xmmreg,mem32 \362\370\1\x2E\110 AVX,SANDYBRIDGE
-xmmreg,xmmreg \362\370\1\x2E\110 AVX,SANDYBRIDGE
+xmmreg,mem32 \350\362\370\1\x2E\110 AVX,SANDYBRIDGE,T1S
+xmmreg,xmmreg_sae \350\362\370\1\x2E\110 AVX,SANDYBRIDGE
+
[VUNPCKHPD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x15\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x15\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x15\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x15\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x15\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x15\75\120 AVX512,TFV
+
[VUNPCKHPS]
(Ch_All)
-xmmreg,xmmreg,xmmrm \362\370\1\x15\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x15\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x15\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x15\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x15\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\370\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x15\75\120 AVX512,TFV
+
[VUNPCKLPD]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x14\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x14\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x14\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x14\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x14\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x14\75\120 AVX512,TFV
+
[VUNPCKLPS]
(Ch_All)
-xmmreg,xmmreg,xmmrm \362\370\1\x14\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x14\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x14\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x14\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x14\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\370\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x14\75\120 AVX512,TFV
+
[VXORPD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\370\1\x57\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \361\362\364\370\1\x57\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\352\361\362\370\1\x57\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\x57\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\362\364\370\1\x57\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\x57\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\x57\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\x57\75\120 AVX512,TFV
+
[VXORPS]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \362\370\1\x57\75\120 AVX,SANDYBRIDGE
-ymmreg,ymmreg,ymmrm \362\364\370\1\x57\75\120 AVX,SANDYBRIDGE
+xmmreg_mz,xmmreg,xmmrm \350\362\370\1\x57\75\120 AVX,SANDYBRIDGE,TFV
+xmmreg_mz,xmmreg,bmem32 \350\370\1\x57\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\362\364\370\1\x57\75\120 AVX,SANDYBRIDGE,TFV
+ymmreg_mz,ymmreg,bmem32 \350\364\370\1\x57\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\370\1\x57\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x57\75\120 AVX512,TFV
+
[VZEROALL]
(Ch_All)
@@ -5400,31 +6097,70 @@ xmmreg,xmmreg,xmmrm,imm8 \361\362\372\1\x02\75\120\27 AVX2
[VPBROADCASTB]
(Ch_All)
-xmmreg,xmmreg \361\362\371\1\x78\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x78\110 AVX2
-xmmreg,mem8 \361\362\371\1\x78\110 AVX2
-ymmreg,mem8 \361\362\364\371\1\x78\110 AVX2
+xmmreg_mz,mem8 \350\361\362\371\1\x78\110 AVX2,T1S
+xmmreg_mz,xmmreg \350\361\362\371\1\x78\110 AVX2
+xmmreg_mz,reg16 \350\361\371\1\x7A\110 AVX512
+xmmreg_mz,reg32 \350\361\371\1\x7A\110 AVX512
+xmmreg_mz,reg64 \350\361\371\1\x7A\110 AVX512
+xmmreg_mz,reg8 \350\361\371\1\x7A\110 AVX512
+ymmreg_mz,mem8 \350\361\362\364\371\1\x78\110 AVX2,T1S
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x78\110 AVX2
+ymmreg_mz,reg16 \350\361\364\371\1\x7A\110 AVX512
+ymmreg_mz,reg32 \350\361\364\371\1\x7A\110 AVX512
+ymmreg_mz,reg64 \350\361\364\371\1\x7A\110 AVX512
+ymmreg_mz,reg8 \350\361\364\371\1\x7A\110 AVX512
+zmmreg_mz,mem8 \350\351\361\371\1\x78\110 AVX512,T1S
+zmmreg_mz,reg16 \350\351\361\371\1\x7A\110 AVX512
+zmmreg_mz,reg32 \350\351\361\371\1\x7A\110 AVX512
+zmmreg_mz,reg64 \350\351\361\371\1\x7A\110 AVX512
+zmmreg_mz,reg8 \350\351\361\371\1\x7A\110 AVX512
+zmmreg_mz,xmmreg \350\351\361\371\1\x78\110 AVX512
+
[VPBROADCASTD]
(Ch_All)
-ymmreg,xmmreg \361\362\364\371\1\x58\110 AVX2
-xmmreg,mem32 \361\362\371\1\x58\110 AVX2
-xmmreg,xmmreg \361\362\371\1\x58\110 AVX2
-ymmreg,mem32 \361\362\364\371\1\x58\110 AVX2
+xmmreg_mz,mem32 \350\361\362\371\1\x58\110 AVX2,T1S
+xmmreg_mz,xmmreg \350\361\362\371\1\x58\110 AVX2
+xmmreg_mz,reg32 \350\361\371\1\x7C\110 AVX512
+ymmreg_mz,mem32 \350\361\362\364\371\1\x58\110 AVX2,T1S
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x58\110 AVX2
+ymmreg_mz,reg32 \350\361\364\371\1\x7C\110 AVX512
+zmmreg_mz,mem32 \350\351\361\371\1\x58\110 AVX512,T1S
+zmmreg_mz,reg32 \350\351\361\371\1\x7C\110 AVX512
+zmmreg_mz,xmmreg \350\351\361\371\1\x58\110 AVX512
+
[VPBROADCASTQ]
(Ch_All)
-ymmreg,mem64 \361\362\364\371\1\x59\110 AVX2
-xmmreg,mem64 \361\362\371\1\x59\110 AVX2
-xmmreg,xmmreg \361\362\371\1\x59\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x59\110 AVX2
+xmmreg_mz,mem64 \350\352\361\362\371\1\x59\110 AVX2,T1S
+xmmreg_mz,xmmreg \350\352\361\362\371\1\x59\110 AVX2
+xmmreg_mz,reg64 \350\352\361\371\1\x7C\110 AVX512
+ymmreg_mz,mem64 \350\352\361\362\364\371\1\x59\110 AVX2,T1S
+ymmreg_mz,xmmreg \350\352\361\362\364\371\1\x59\110 AVX2
+ymmreg_mz,reg64 \350\352\361\364\371\1\x7C\110 AVX512
+zmmreg_mz,mem64 \350\351\352\361\371\1\x59\110 AVX512,T1S
+zmmreg_mz,reg64 \350\351\352\361\371\1\x7C\110 AVX512
+zmmreg_mz,xmmreg \350\351\352\361\371\1\x59\110 AVX512
+
[VPBROADCASTW]
(Ch_All)
-xmmreg,mem16 \361\362\371\1\x79\110 AVX2
-xmmreg,xmmreg \361\362\371\1\x79\110 AVX2
-ymmreg,mem16 \361\362\364\371\1\x79\110 AVX2
-ymmreg,xmmreg \361\362\364\371\1\x79\110 AVX2
+xmmreg_mz,mem16 \350\361\362\371\1\x79\110 AVX2,T1S
+xmmreg_mz,xmmreg \350\361\362\371\1\x79\110 AVX2
+xmmreg_mz,reg16 \350\361\371\1\x7B\110 AVX512
+xmmreg_mz,reg32 \350\361\371\1\x7B\110 AVX512
+xmmreg_mz,reg64 \350\361\371\1\x7B\110 AVX512
+ymmreg_mz,mem16 \350\361\362\364\371\1\x79\110 AVX2,T1S
+ymmreg_mz,xmmreg \350\361\362\364\371\1\x79\110 AVX2
+ymmreg_mz,reg16 \350\361\364\371\1\x7B\110 AVX512
+ymmreg_mz,reg32 \350\361\364\371\1\x7B\110 AVX512
+ymmreg_mz,reg64 \350\361\364\371\1\x7B\110 AVX512
+zmmreg_mz,mem16 \350\351\361\371\1\x79\110 AVX512,T1S
+zmmreg_mz,reg16 \350\351\361\371\1\x7B\110 AVX512
+zmmreg_mz,reg32 \350\351\361\371\1\x7B\110 AVX512
+zmmreg_mz,reg64 \350\351\361\371\1\x7B\110 AVX512
+zmmreg_mz,xmmreg \350\351\361\371\1\x79\110 AVX512
+
[VPERM2I128]
(Ch_All)
@@ -5432,19 +6168,44 @@ ymmreg,ymmreg,ymmrm,imm8 \361\362\364\372\1\x46\75\120\27 AVX2
[VPERMD]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x36\75\120 AVX2
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x36\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x36\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x36\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x36\75\120 AVX512,TFV
+
[VPERMPD]
(Ch_All)
-ymmreg,ymmrm,imm8 \361\362\363\364\372\1\x01\110\26 AVX2
+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,bmem64,imm8 \350\352\361\364\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]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x16\75\120 AVX2
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x16\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x16\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x16\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x16\75\120 AVX512,TFV
+
[VPERMQ]
(Ch_All)
-ymmreg,ymmrm,imm8 \361\362\363\364\372\1\x00\110\26 AVX2
+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
+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]
(Ch_All)
@@ -5462,68 +6223,125 @@ ymmreg,ymmreg,mem256 \361\362\363\364\371\1\x8C\75\120 AVX2
[VPSLLVD]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x47\75\120 AVX2
-xmmreg,xmmreg,xmmrm \361\362\371\1\x47\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x47\75\120 AVX2,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x47\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x47\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x47\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x47\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x47\75\120 AVX512,TFV
+
[VPSLLVQ]
(Ch_All)
-xmmreg,xmmreg,xmmrm \361\362\363\371\1\x47\75\120 AVX2
-ymmreg,ymmreg,ymmrm \361\362\363\364\371\1\x47\75\120 AVX2
+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,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
+
[VPSRAVD]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x46\75\120 AVX2
-xmmreg,xmmreg,xmmrm \361\362\371\1\x46\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x46\75\120 AVX2,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x46\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x46\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x46\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x46\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x46\75\120 AVX512,TFV
+
[VPSRLVD]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\364\371\1\x45\75\120 AVX2
-xmmreg,xmmreg,xmmrm \361\362\371\1\x45\75\120 AVX2
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x45\75\120 AVX2,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x45\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x45\75\120 AVX2,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x45\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x45\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x45\75\120 AVX512,TFV
+
[VPSRLVQ]
(Ch_All)
-ymmreg,ymmreg,ymmrm \361\362\363\364\371\1\x45\75\120 AVX2
-xmmreg,xmmreg,xmmrm \361\362\363\371\1\x45\75\120 AVX2
+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,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
+
[VGATHERDPD]
(Ch_All)
-xmmreg,xmem64,xmmreg \361\362\363\371\1\x92\76\110 AVX2
-ymmreg,xmem64,ymmreg \361\362\363\364\371\1\x92\76\110 AVX2
+xmmreg,xmem32,xmmreg \361\362\363\371\1\x92\76\110 AVX2
+xmmreg_m,xmem32 \350\352\361\371\1\x92\110 AVX512,T1S
+ymmreg,xmem32,ymmreg \361\362\363\364\371\1\x92\76\110 AVX2 I
+ymmreg_m,xmem32 \350\352\361\364\371\1\x92\110 AVX512,T1S
+zmmreg_m,ymem32 \350\351\352\361\371\1\x92\110 AVX512,T1S
+
+
[VGATHERDPS]
(Ch_All)
-xmmreg,xmem32,xmmreg \361\362\371\1\x92\76\110 AVX2
-ymmreg,ymem32,ymmreg \361\362\364\371\1\x92\76\110 AVX2
+xmmreg,xmem32,xmmreg \361\362\371\1\x92\76\110 AVX2
+xmmreg_m,xmem32 \350\361\371\1\x92\110 AVX512,T1S
+ymmreg,ymem32,ymmreg \361\362\364\371\1\x92\76\110 AVX2
+ymmreg_m,ymem32 \350\361\364\371\1\x92\110 AVX512,T1S
+zmmreg_m,zmem32 \350\351\361\371\1\x92\110 AVX512,T1S
+
[VGATHERQPD]
(Ch_All)
-xmmreg,xmem64,xmmreg \361\362\363\371\1\x93\76\110 AVX2
-ymmreg,ymem64,ymmreg \361\362\363\364\371\1\x93\76\110 AVX2
+xmmreg,xmem64,xmmreg \361\362\363\371\1\x93\76\110 AVX2
+xmmreg_m,xmem64 \350\352\361\371\1\x93\110 AVX512,T1S
+ymmreg,ymem64,ymmreg \361\362\363\364\371\1\x93\76\110 AVX2
+ymmreg_m,ymem64 \350\352\361\364\371\1\x93\110 AVX512,T1S
+zmmreg_m,zmem64 \350\351\352\361\371\1\x93\110 AVX512,T1S
+
[VGATHERQPS]
(Ch_All)
-xmmreg,xmem32,xmmreg \361\362\371\1\x93\76\110 AVX2
-xmmreg,ymem32,xmmreg \361\362\364\371\1\x93\76\110 AVX2
+xmmreg,xmem32,xmmreg \361\362\371\1\x93\76\110 AVX2
+xmmreg,ymem32,xmmreg \361\362\364\371\1\x93\76\110 AVX2
+xmmreg_m,xmem32 \350\361\371\1\x93\110 AVX512,T1S
+xmmreg_m,ymem32 \350\361\364\371\1\x93\110 AVX512,T1S
+ymmreg_m,zmem32 \350\351\361\371\1\x93\110 AVX512,T1S
+
[VPGATHERDD]
(Ch_All)
-xmmreg,xmem32,xmmreg \361\362\371\1\x90\76\110 AVX2
-ymmreg,ymem32,ymmreg \361\362\364\371\1\x90\76\110 AVX2
+xmmreg,xmem32,xmmreg \361\362\371\1\x90\76\110 AVX2
+xmmreg_m,xmem32 \350\361\371\1\x90\110 AVX512,T1S
+ymmreg,ymem32,ymmreg \361\362\364\371\1\x90\76\110 AVX2
+ymmreg_m,ymem32 \350\361\364\371\1\x90\110 AVX512,T1S
+zmmreg_m,zmem32 \350\351\361\371\1\x90\110 AVX512,T1S
+
[VPGATHERDQ]
(Ch_All)
-xmmreg,xmem64,xmmreg \361\362\363\371\1\x90\76\110 AVX2
-ymmreg,xmem64,ymmreg \361\362\363\364\371\1\x90\76\110 AVX2
+xmmreg,xmem64,xmmreg \361\362\363\371\1\x90\76\110 AVX2
+xmmreg_m,xmem64 \350\352\361\371\1\x90\110 AVX512,T1S
+ymmreg,xmem64,ymmreg \361\362\363\364\371\1\x90\76\110 AVX2
+ymmreg_m,xmem64 \350\352\361\364\371\1\x90\110 AVX512,T1S
+zmmreg_m,ymem64 \350\351\352\361\371\1\x90\110 AVX512,T1S
[VPGATHERQD]
(Ch_All)
-xmmreg,xmem32,xmmreg \361\362\371\1\x91\76\110 AVX2
-xmmreg,ymem32,xmmreg \361\362\364\371\1\x91\76\110 AVX2
+xmmreg,xmem32,xmmreg \361\362\371\1\x91\76\110 AVX2
+xmmreg,ymem32,xmmreg \361\362\364\371\1\x91\76\110 AVX2
+xmmreg_m,xmem32 \350\361\371\1\x91\110 AVX512,T1S
+xmmreg_m,ymem32 \350\361\364\371\1\x91\110 AVX512,T1S
+ymmreg_m,zmem32 \350\351\361\371\1\x91\110 AVX512,T1S
+
[VPGATHERQQ]
(Ch_All)
-xmmreg,xmem64,xmmreg \361\362\363\371\1\x91\76\110 AVX2
-ymmreg,ymem64,ymmreg \361\362\363\364\371\1\x91\76\110 AVX2
+xmmreg,xmem64,xmmreg \361\362\363\371\1\x91\76\110 AVX2
+xmmreg_m,xmem64 \350\352\361\371\1\x91\110 AVX512,T1S
+ymmreg,ymem64,ymmreg \361\362\363\364\371\1\x91\76\110 AVX2
+ymmreg_m,ymem64 \350\352\361\364\371\1\x91\110 AVX512,T1S
+zmmreg_m,zmem64 \350\351\352\361\371\1\x91\110 AVX512,T1S
+
;*******************************************************************************
;********** NEC V20/V30 ********************************************************
@@ -5604,286 +6422,491 @@ rm16,imm \2\x0F\x19\200\25 NEC,SW
;*******************************************************************************
;********** FMA ****************************************************************
;*******************************************************************************
-[VFMADD132PD]
+[VFMADDPD]
(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
+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
-[VFMADD213PD]
+[VFMADD132PD]
(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
+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,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
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\x98\75\120 AVX512
-[VFMADD231PD]
+[VFMADD132PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x98\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x98\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x98\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x98\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x98\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\x98\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x98\75\120 AVX512,TFV
-[VFMADDPD]
+[VFMADD132SD]
(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
+xmmreg_mz,xmmreg,mem64 \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
-[VFMADD132PS]
+[VFMADD132SS]
(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
+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
-[VFMADD213PS]
+[VFMADD213PD]
(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
+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,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
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xA8\75\120 AVX512
-[VFMADD231PS]
+[VFMADD213PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xA8\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xA8\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xA8\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xA8\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xA8\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xA8\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xA8\75\120 AVX512,TFV
-[VFMADD132SD]
+[VFMADD213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\x99\75\120 FMA
+xmmreg_mz,xmmreg,mem64 \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
-[VFMADD213SD]
+[VFMADD213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xa9\75\120 FMA
+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
-[VFMADD231SD]
+[VFMADD231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xb9\75\120 FMA
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xB8\75\120 AVX512,TFV
-[VFMADD132SS]
+[VFMADD231PS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x99\75\120 FMA
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xB8\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xB8\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xB8\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xB8\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xB8\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xB8\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xB8\75\120 AVX512,TFV
-[VFMADD213SS]
+[VFMADD231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xA9\75\120 FMA
+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
[VFMADD231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xb9\75\120 FMA
+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
[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
+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,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
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\x96\75\120 AVX512
-[VFMADDSUB213PD]
+[VFMADDSUB132PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x96\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x96\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x96\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x96\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\x96\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x96\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x96\75\120 AVX512
-[VFMADDSUB231PD]
+[VFMADDSUB213PD]
(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
+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,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
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xA6\75\120 AVX512
-[VFMADDSUB132PS]
+[VFMADDSUB213PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xA6\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xA6\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xA6\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xA6\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xA6\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xA6\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xA6\75\120 AVX512,TFV
-[VFMADDSUB213PS]
+[VFMADDSUB231PD]
(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
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xB6\75\120 AVX512,TFV
[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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xB6\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xB6\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xB6\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xB6\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xB6\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xB6\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xB6\75\120 AVX512
-[VFMSUBADD132PD]
+[VFMSUB132PD]
(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
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x9A\75\120 AVX512,TFV
-[VFMSUBADD213PD]
+[VFMSUB132PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x9A\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x9A\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x9A\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x9A\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x9A\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\x9A\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x9A\75\120 AVX512,TFV
-[VFMSUBADD231PD]
+[VFMSUB132SD]
(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
+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
-[VFMSUBADD132PS]
+[VFMSUB132SS]
(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
+xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9B\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9B\75\120 FMA
-[VFMSUBADD213PS]
+[VFMSUB213PD]
(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
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xAA\75\120 AVX512,TFV
-[VFMSUBADD231PS]
+[VFMSUB213PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xAA\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xAA\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xAA\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xAA\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xAA\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xAA\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xAA\75\120 AVX512,TFV
-[VFMSUB132PD]
+[VFMSUB213SD]
(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
+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
-[VFMSUB213PD]
+[VFMSUB213SS]
(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
+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
[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
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xBA\75\120 AVX512,TFV
-[VFMSUB132PS]
+[VFMSUB231PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xBA\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xBA\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xBA\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xBA\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xBA\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xBA\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBA\75\120 AVX512,TFV
-[VFMSUB213PS]
+[VFMSUB231SD]
(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
+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
-[VFMSUB231PS]
+[VFMSUB231SS]
(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
+xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xBB\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xBB\75\120 FMA
-[VFMSUB132SD]
+[VFMSUBADD132PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\x9B\75\120 FMA
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x97\75\120 AVX512,TFV
-[VFMSUB213SD]
+[VFMSUBADD132PS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xAB\75\120 FMA
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x97\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x97\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x97\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x97\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\x97\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x97\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x97\75\120 AVX512
-[VFMSUB231SD]
+[VFMSUBADD213PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xBB\75\120 FMA
+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,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
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\xA7\75\120 AVX512
-[VFMSUB132SS]
+[VFMSUBADD213PS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x9B\75\120 FMA
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xA7\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xA7\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xA7\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xA7\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xA7\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xA7\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xA7\75\120 AVX512,TFV
-[VFMSUB213SS]
+[VFMSUBADD231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xAB\75\120 FMA
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xB7\75\120 AVX512,TFV
-[VFMSUB231SS]
+[VFMSUBADD231PS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xBB\75\120 FMA
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xB7\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xB7\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xB7\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xB7\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xB7\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xB7\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xB7\75\120 AVX512,TFV
[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
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x9C\75\120 AVX512,TFV
-[VFNMADD213PD]
+[VFNMADD132PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x9C\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x9C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x9C\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x9C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\x9C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x9C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x9C\75\120 AVX512
-[VFNMADD231PD]
+[VFNMADD132SD]
(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
+xmmreg_mz,xmmreg,mem64 \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
-[VFNMADD132PS]
+[VFNMADD132SS]
(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
+xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9D\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9D\75\120 FMA
-[VFNMADD213PS]
+[VFNMADD213PD]
(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
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xAC\75\120 AVX512,TFV
-[VFNMADD231PS]
+[VFNMADD213PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xAC\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xAC\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xAC\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xAC\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xAC\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xAC\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xAC\75\120 AVX512
-[VFNMADD132SD]
+[VFNMADD213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\x9D\75\120 FMA
+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
-[VFNMADD213SD]
+[VFNMADD213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xAD\75\120 FMA
+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
-[VFNMADD231SD]
+[VFNMADD231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xBD\75\120 FMA
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xBC\75\120 AVX512,TFV
-[VFNMADD132SS]
+[VFNMADD231PS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x9D\75\120 FMA
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xBC\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xBC\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xBC\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xBC\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xBC\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xBC\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBC\75\120 AVX512,TFV
-[VFNMADD213SS]
+[VFNMADD231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xAD\75\120 FMA
+xmmreg,xmmreg,mem64 \361\362\363\371\1\xBD\75\120 FMA
+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,xmmrm \361\362\371\1\xBD\75\120 FMA
+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
[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
+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,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
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\x9E\75\120 AVX512
-[VFNMSUB213PD]
+[VFNMSUB132PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x9E\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x9E\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\x9E\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x9E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x9E\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\x9E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x9E\75\120 AVX512,TFV
-[VFNMSUB231PD]
+[VFNMSUB132SD]
(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
+xmmreg_mz,xmmreg,mem64 \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
-[VFNMSUB132PS]
+[VFNMSUB132SS]
(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
+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
-[VFNMSUB213PS]
+[VFNMSUB213PD]
(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
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xAE\75\120 AVX512,TFV
-[VFNMSUB231PS]
+[VFNMSUB213PS]
(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
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xAE\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xAE\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xAE\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xAE\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xAE\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xAE\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xAE\75\120 AVX512
-[VFNMSUB132SD]
+[VFNMSUB213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\x9F\75\120 FMA
+xmmreg_mz,xmmreg,mem64 \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
-[VFNMSUB213SD]
+[VFNMSUB213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xAF\75\120 FMA
+xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xAF\75\120 FMA,T1S
+xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xAF\75\120 FMA
-[VFNMSUB231SD]
+[VFNMSUB231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\363\1\xBF\75\120 FMA
+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,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
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xBE\75\120 AVX512,TFV
-[VFNMSUB132SS]
+[VFNMSUB231PS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\x9F\75\120 FMA
+xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xBE\75\120 FMA,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\xBE\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\362\364\371\1\xBE\75\120 FMA,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\xBE\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xBE\75\120 AVX512
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\xBE\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBE\75\120 AVX512,TFV
-[VFNMSUB213SS]
+[VFNMSUB231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xAF\75\120 FMA
+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
[VFNMSUB231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
-xmmreg,xmmreg,xmmrm \361\362\371\1\xBF\75\120 FMA
+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
+
;*******************************************************************************
;********** TSX ****************************************************************
@@ -5938,3 +6961,1984 @@ void \3\x0F\x01\xD0 XSAVE
(Ch_All)
mem \2\x0F\x0D\202 PREFETCHWT1
+
+;*******************************************************************************
+;********** AVX 512 - MASKRegister *********************************************
+;*******************************************************************************
+
+
+[KADDB]
+(Ch_All)
+kreg,kreg,kreg \361\362\364\370\1\x4A\75\120 AVX512
+
+[KADDD]
+(Ch_All)
+kreg,kreg,kreg \361\362\363\364\370\1\x4A\75\120 AVX512
+
+[KADDQ]
+(Ch_All)
+kreg,kreg,kreg \362\363\364\370\1\x4A\75\120 AVX512
+
+[KADDW]
+(Ch_All)
+kreg,kreg,kreg \362\364\370\1\x4A\75\120 AVX512
+
+[KANDB]
+(Ch_All)
+kreg,kreg,kreg \361\362\364\370\1\x41\75\120 AVX512
+
+[KANDD]
+(Ch_All)
+kreg,kreg,kreg \361\362\363\364\370\1\x41\75\120 AVX512
+
+[KANDNB]
+(Ch_All)
+kreg,kreg,kreg \361\362\364\370\1\x42\75\120 AVX512
+
+[KANDND]
+(Ch_All)
+kreg,kreg,kreg \361\362\363\364\370\1\x42\75\120 AVX512
+
+[KANDNQ]
+(Ch_All)
+kreg,kreg,kreg \362\363\364\370\1\x42\75\120 AVX512
+
+[KANDNW]
+(Ch_All)
+kreg,kreg,kreg \362\364\370\1\x42\75\120 AVX512
+
+[KANDQ]
+(Ch_All)
+kreg,kreg,kreg \362\363\364\370\1\x41\75\120 AVX512
+
+[KANDW]
+(Ch_All)
+kreg,kreg,kreg \362\364\370\1\x41\75\120 AVX512
+
+[KMOVB]
+(Ch_All)
+kreg,kreg \361\362\370\1\x90\110 AVX512
+kreg,mem8 \361\362\370\1\x90\110 AVX512
+kreg,reg32 \361\362\370\1\x92\110 AVX512
+mem8,kreg \361\362\370\1\x91\101 AVX512
+reg32,kreg \361\362\370\1\x93\110 AVX512
+
+[KMOVD]
+(Ch_All)
+kreg,kreg \361\362\363\370\1\x90\110 AVX512
+kreg,mem32 \361\362\363\370\1\x90\110 AVX512
+kreg,reg32 \334\362\370\1\x92\110 AVX512
+mem32,kreg \361\362\363\370\1\x91\101 AVX512
+reg32,kreg \334\362\370\1\x93\110 AVX512
+
+[KMOVQ]
+(Ch_All)
+kreg,kreg \362\363\370\1\x90\110 AVX512
+kreg,mem64 \362\363\370\1\x90\110 AVX512
+kreg,reg64 \334\362\363\370\1\x92\110 AVX512
+mem64,kreg \362\363\370\1\x91\101 AVX512
+reg64,kreg \334\362\363\370\1\x93\110 AVX512
+
+[KMOVW]
+(Ch_All)
+kreg,kreg \362\370\1\x90\110 AVX512
+kreg,mem16 \362\370\1\x90\110 AVX512
+kreg,reg32 \362\370\1\x92\110 AVX512
+mem16,kreg \362\370\1\x91\101 AVX512
+reg32,kreg \362\370\1\x93\110 AVX512
+
+[KNOTB]
+(Ch_All)
+kreg,kreg \361\362\370\1\x44\110 AVX512
+
+[KNOTD]
+(Ch_All)
+kreg,kreg \361\362\363\370\1\x44\110 AVX512
+
+[KNOTQ]
+(Ch_All)
+kreg,kreg \362\363\370\1\x44\110 AVX512
+
+[KNOTW]
+(Ch_All)
+kreg,kreg \362\370\1\x44\110 AVX512
+
+[KORB]
+(Ch_All)
+kreg,kreg,kreg \361\362\364\370\1\x45\75\120 AVX512
+
+[KORD]
+(Ch_All)
+kreg,kreg,kreg \361\362\363\364\370\1\x45\75\120 AVX512
+
+[KORQ]
+(Ch_All)
+kreg,kreg,kreg \362\363\364\370\1\x45\75\120 AVX512
+
+[KORTESTB]
+(Ch_All)
+kreg,kreg \361\362\370\1\x98\110 AVX512
+
+[KORTESTD]
+(Ch_All)
+kreg,kreg \361\362\363\370\1\x98\110 AVX512
+
+[KORTESTQ]
+(Ch_All)
+kreg,kreg \362\363\370\1\x98\110 AVX512
+
+[KORTESTW]
+(Ch_All)
+kreg,kreg \362\370\1\x98\110 AVX512
+
+[KORW]
+(Ch_All)
+kreg,kreg,kreg \362\364\370\1\x45\75\120 AVX512
+
+[KSHIFTLB]
+(Ch_All)
+kreg,kreg,imm8 \361\362\372\1\x32\110\26 AVX512
+
+[KSHIFTLD]
+(Ch_All)
+kreg,kreg,imm8 \361\362\372\1\x33\110\26 AVX512
+
+[KSHIFTLQ]
+(Ch_All)
+kreg,kreg,imm8 \361\362\363\372\1\x33\110\26 AVX512
+
+[KSHIFTLW]
+(Ch_All)
+kreg,kreg,imm8 \361\362\363\372\1\x32\110\26 AVX512
+
+[KSHIFTRB]
+(Ch_All)
+kreg,kreg,imm8 \361\362\372\1\x30\110\26 AVX512
+
+[KSHIFTRD]
+(Ch_All)
+kreg,kreg,imm8 \361\362\372\1\x31\110\26 AVX512
+
+[KSHIFTRQ]
+(Ch_All)
+kreg,kreg,imm8 \361\362\363\372\1\x31\110\26 AVX512
+
+[KSHIFTRW]
+(Ch_All)
+kreg,kreg,imm8 \361\362\363\372\1\x30\110\26 AVX512
+
+[KTESTB]
+(Ch_All)
+kreg,kreg \361\362\370\1\x99\110 AVX512
+
+[KTESTD]
+(Ch_All)
+kreg,kreg \361\362\363\370\1\x99\110 AVX512
+
+[KTESTQ]
+(Ch_All)
+kreg,kreg \362\363\370\1\x99\110 AVX512
+
+[KTESTW]
+(Ch_All)
+kreg,kreg \362\370\1\x99\110 AVX512
+
+[KUNPCKBW]
+(Ch_All)
+kreg,kreg,kreg \361\362\364\370\1\x4B\75\120 AVX512
+
+[KUNPCKDQ]
+(Ch_All)
+kreg,kreg,kreg \362\363\364\370\1\x4B\75\120 AVX512
+
+[KUNPCKWD]
+(Ch_All)
+kreg,kreg,kreg \362\364\370\1\x4B\75\120 AVX512
+
+[KXNORB]
+(Ch_All)
+kreg,kreg,kreg \361\362\364\370\1\x46\75\120 AVX512
+
+[KXNORD]
+(Ch_All)
+kreg,kreg,kreg \361\362\363\364\370\1\x46\75\120 AVX512
+
+[KXNORQ]
+(Ch_All)
+kreg,kreg,kreg \362\363\364\370\1\x46\75\120 AVX512
+
+[KXNORW]
+(Ch_All)
+kreg,kreg,kreg \362\364\370\1\x46\75\120 AVX512
+
+[KXORB]
+(Ch_All)
+kreg,kreg,kreg \361\362\364\370\1\x47\75\120 AVX512
+
+[KXORD]
+(Ch_All)
+kreg,kreg,kreg \361\362\363\364\370\1\x47\75\120 AVX512
+
+[KXORQ]
+(Ch_All)
+kreg,kreg,kreg \362\363\364\370\1\x47\75\120 AVX512
+
+[KXORW]
+(Ch_All)
+kreg,kreg,kreg \362\364\370\1\x47\75\120 AVX512
+
+
+;*******************************************************************************
+;*********************** AVX 512 *********************************************
+;*******************************************************************************
+
+
+
+[VALIGND]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\361\372\1\x03\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32,imm8 \350\361\372\1\x03\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\364\372\1\x03\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32,imm8 \350\361\364\372\1\x03\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\361\372\1\x03\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32,imm8 \350\351\361\372\1\x03\75\120\27 AVX512,TFV
+
+[VALIGNQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\352\361\372\1\x03\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64,imm8 \350\352\361\372\1\x03\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x03\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x03\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x03\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x03\75\120\27 AVX512,TFV
+
+[VBLENDMPD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x65\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x65\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x65\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x65\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x65\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x65\75\120 AVX512,TFV
+
+[VBLENDMPS]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x65\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x65\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x65\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x65\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x65\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x65\75\120 AVX512,TFV
+
+[VBROADCASTF32X2]
+(Ch_All)
+ymmreg_mz,xmmreg \350\361\364\371\1\x19\110 AVX512
+ymmreg_mz,mem64 \350\361\364\371\1\x19\110 AVX512,T2
+zmmreg_mz,xmmreg \350\351\361\371\1\x19\110 AVX512
+zmmreg_mz,mem64 \350\351\361\371\1\x19\110 AVX512,T2
+
+[VBROADCASTF32X4]
+(Ch_All)
+ymmreg_mz,mem128 \350\361\364\371\1\x1A\110 AVX512,T4
+zmmreg_mz,mem128 \350\351\361\371\1\x1A\110 AVX512,T4
+
+[VBROADCASTF32X8]
+(Ch_All)
+zmmreg_mz,mem256 \350\351\361\371\1\x1B\110 AVX512,T8
+
+[VBROADCASTF64X2]
+(Ch_All)
+ymmreg_mz,mem128 \350\352\361\364\371\1\x1A\110 AVX512,T2
+zmmreg_mz,mem128 \350\351\352\361\371\1\x1A\110 AVX512,T2
+
+[VBROADCASTF64X4]
+(Ch_All)
+zmmreg_mz,mem256 \350\351\352\361\371\1\x1B\110 AVX512,T4
+
+[VBROADCASTI32X2]
+(Ch_All)
+xmmreg_mz,xmmreg \350\361\371\1\x59\110 AVX512
+xmmreg_mz,mem64 \350\361\371\1\x59\110 AVX512,T2
+ymmreg_mz,xmmreg \350\361\364\371\1\x59\110 AVX512
+ymmreg_mz,mem64 \350\361\364\371\1\x59\110 AVX512,T2
+zmmreg_mz,xmmreg \350\351\361\371\1\x59\110 AVX512
+zmmreg_mz,mem64 \350\351\361\371\1\x59\110 AVX512,T2
+
+[VBROADCASTI32X4]
+(Ch_All)
+ymmreg_mz,mem128 \350\361\364\371\1\x5A\110 AVX512,T4
+zmmreg_mz,mem128 \350\351\361\371\1\x5A\110 AVX512,T4
+
+[VBROADCASTI32X8]
+(Ch_All)
+zmmreg_mz,mem256 \350\351\361\371\1\x5B\110 AVX512,T8
+
+[VBROADCASTI64X2]
+(Ch_All)
+ymmreg_mz,mem128 \350\352\361\364\371\1\x5A\110 AVX512,T2
+zmmreg_mz,mem128 \350\351\352\361\371\1\x5A\110 AVX512,T2
+
+[VBROADCASTI64X4]
+(Ch_All)
+zmmreg_mz,mem256 \350\351\352\361\371\1\x5B\110 AVX512,T4
+
+[VCOMPRESSPD]
+(Ch_All)
+mem128_m,xmmreg \350\352\361\371\1\x8A\101 AVX512,T1S
+mem256_m,ymmreg \350\352\361\364\371\1\x8A\101 AVX512,T1S
+mem512_m,zmmreg \350\351\352\361\371\1\x8A\101 AVX512,T1S
+
+[VCOMPRESSPS]
+(Ch_All)
+mem128_m,xmmreg \350\361\371\1\x8A\101 AVX512,T1S
+mem256_m,ymmreg \350\361\364\371\1\x8A\101 AVX512,T1S
+mem512_m,zmmreg \350\351\361\371\1\x8A\101 AVX512,T1S
+xmmreg_mz,xmmreg \350\361\371\1\x8A\101 AVX512
+ymmreg_mz,ymmreg \350\361\364\371\1\x8A\101 AVX512
+zmmreg_mz,zmmreg \350\351\361\371\1\x8A\101 AVX512
+
+[VCVTPD2QQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\370\1\x7B\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\370\1\x7B\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\370\1\x7B\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\370\1\x7B\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\352\361\370\1\x7B\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\370\1\x7B\110 AVX512,TFV
+zmmreg_mz,zmmreg_er \350\351\352\361\370\1\x7B\110 AVX512
+
+[VCVTPD2UDQ]
+(Ch_All)
+xmmreg_mz,mem128 \350\352\370\1\x79\110 AVX512,TFV
+xmmreg_mz,mem256 \350\352\364\370\1\x79\110 AVX512,TFV
+xmmreg_mz,xmmreg \350\352\370\1\x79\110 AVX512
+xmmreg_mz,bmem64 \350\352\370\1\x79\110 AVX512,BCST2,TFV
+xmmreg_mz,bmem64 \350\352\364\370\1\x79\110 AVX512,BCST4,TFV
+xmmreg_mz,ymmreg \350\352\364\370\1\x79\110 AVX512
+ymmreg_mz,mem512 \350\351\352\370\1\x79\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\351\352\370\1\x79\110 AVX512,BCST8,TFV
+ymmreg_mz,zmmreg_er \350\351\352\370\1\x79\110 AVX512
+
+[VCVTPD2UQQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\370\1\x79\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\370\1\x79\110 AVX512,BCST2,TFV
+ymmreg_mz,ymmrm \350\352\361\364\370\1\x79\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\370\1\x79\110 AVX512,BCST4,TFV
+zmmreg_mz,mem512 \350\351\352\361\370\1\x79\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\370\1\x79\110 AVX512,BCST8,TFV
+zmmreg_mz,zmmreg_er \350\351\352\361\370\1\x79\110 AVX512
+
+[VCVTPS2QQ]
+(Ch_All)
+xmmreg_mz,xmmreg \350\361\370\1\x7B\110 AVX512
+xmmreg_mz,mem64 \350\361\370\1\x7B\110 AVX512,THV
+xmmreg_mz,bmem32 \350\361\370\1\x7B\110 AVX512,BCST2,THV
+ymmreg_mz,xmmrm \350\361\364\370\1\x7B\110 AVX512,THV
+ymmreg_mz,bmem32 \350\361\364\370\1\x7B\110 AVX512,BCST4,THV
+zmmreg_mz,mem256 \350\351\361\370\1\x7B\110 AVX512,THV
+zmmreg_mz,bmem32 \350\351\361\370\1\x7B\110 AVX512,BCST8,THV
+zmmreg_mz,ymmreg_er \350\351\361\370\1\x7B\110 AVX512
+
+[VCVTPS2UDQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\370\1\x79\110 AVX512,TFV
+xmmreg_mz,bmem32 \350\370\1\x79\110 AVX512,BCST4,TFV
+ymmreg_mz,ymmrm \350\364\370\1\x79\110 AVX512,TFV
+ymmreg_mz,bmem32 \350\364\370\1\x79\110 AVX512,BCST8,TFV
+zmmreg_mz,mem512 \350\351\370\1\x79\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\370\1\x79\110 AVX512,BCST16,TFV
+zmmreg_mz,zmmreg_er \350\351\370\1\x79\110 AVX512
+
+[VCVTPS2UQQ]
+(Ch_All)
+xmmreg_mz,xmmreg \350\361\370\1\x79\110 AVX512
+xmmreg_mz,mem64 \350\361\370\1\x79\110 AVX512,THV
+xmmreg_mz,bmem32 \350\361\370\1\x79\110 AVX512,BCST2,THV
+ymmreg_mz,xmmrm \350\361\364\370\1\x79\110 AVX512,THV
+ymmreg_mz,bmem32 \350\361\364\370\1\x79\110 AVX512,BCST4,THV
+zmmreg_mz,mem256 \350\351\361\370\1\x79\110 AVX512,THV
+zmmreg_mz,bmem32 \350\351\361\370\1\x79\110 AVX512,BCST8,THV
+zmmreg_mz,ymmreg_er \350\351\361\370\1\x79\110 AVX512
+
+[VCVTQQ2PD]
+(Ch_All)
+xmmreg_mz,xmmrm \333\350\352\370\1\xE6\110 AVX512,TFV
+xmmreg_mz,bmem64 \333\350\352\370\1\xE6\110 AVX512,TFV
+ymmreg_mz,ymmrm \333\350\352\364\370\1\xE6\110 AVX512,TFV
+ymmreg_mz,bmem64 \333\350\352\364\370\1\xE6\110 AVX512,TFV
+zmmreg_mz,mem512 \333\350\351\352\370\1\xE6\110 AVX512,TFV
+zmmreg_mz,bmem64 \333\350\351\352\370\1\xE6\110 AVX512,TFV
+zmmreg_mz,zmmreg_er \333\350\351\352\370\1\xE6\110 AVX512
+
+[VCVTQQ2PS]
+(Ch_All)
+xmmreg_mz,mem128 \350\352\370\1\x5B\110 AVX512,TFV
+xmmreg_mz,mem256 \350\352\364\370\1\x5B\110 AVX512,TFV
+xmmreg_mz,xmmreg \350\352\370\1\x5B\110 AVX512
+xmmreg_mz,bmem64 \350\352\370\1\x5B\110 AVX512,BCST2,TFV
+xmmreg_mz,bmem64 \350\352\364\370\1\x5B\110 AVX512,BCST4,TFV
+xmmreg_mz,ymmreg \350\352\364\370\1\x5B\110 AVX512
+ymmreg_mz,mem512 \350\351\352\370\1\x5B\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\351\352\370\1\x5B\110 AVX512,BCST8,TFV
+ymmreg_mz,zmmreg_er \350\351\352\370\1\x5B\110 AVX512
+
+[VCVTSD2USI]
+(Ch_All)
+reg32,mem64 \334\350\370\1\x79\110 AVX512,T1F64
+reg32,xmmreg_er \334\350\370\1\x79\110 AVX512
+reg64,mem64 \334\350\352\370\1\x79\110 AVX512,T1F64
+reg64,xmmreg_er \334\350\352\370\1\x79\110 AVX512
+
+[VCVTSS2USI]
+(Ch_All)
+reg32,mem32 \333\350\370\1\x79\110 AVX512,T1F32
+reg32,xmmreg_er \333\350\370\1\x79\110 AVX512
+reg64,mem32 \333\350\352\370\1\x79\110 AVX512,T1F32
+reg64,xmmreg_er \333\350\352\370\1\x79\110 AVX512
+
+[VCVTTPD2QQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\370\1\x7A\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\370\1\x7A\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\370\1\x7A\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\352\361\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\352\361\370\1\x7A\110 AVX512
+
+[VCVTTPD2UDQ]
+(Ch_All)
+xmmreg_mz,mem128 \350\352\370\1\x78\110 AVX512,TFV
+xmmreg_mz,mem256 \350\352\364\370\1\x78\110 AVX512,TFV
+xmmreg_mz,xmmreg \350\352\370\1\x78\110 AVX512
+xmmreg_mz,bmem64 \350\352\370\1\x78\110 AVX512,BCST2,TFV
+xmmreg_mz,bmem64 \350\352\364\370\1\x78\110 AVX512,BCST4,TFV
+xmmreg_mz,ymmreg \350\352\364\370\1\x78\110 AVX512
+ymmreg_mz,mem512 \350\351\352\370\1\x78\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\351\352\370\1\x78\110 AVX512,BCST8,TFV
+ymmreg_mz,zmmreg_sae \350\351\352\370\1\x78\110 AVX512
+
+[VCVTTPD2UQQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\370\1\x78\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\370\1\x78\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\370\1\x78\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\370\1\x78\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\352\361\370\1\x78\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\370\1\x78\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\352\361\370\1\x78\110 AVX512
+
+[VCVTTPS2QQ]
+(Ch_All)
+xmmreg_mz,xmmreg \350\361\370\1\x7A\110 AVX512
+xmmreg_mz,mem64 \350\361\370\1\x7A\110 AVX512,THV
+xmmreg_mz,bmem32 \350\361\370\1\x7A\110 AVX512,BCST2,THV
+ymmreg_mz,xmmrm \350\361\364\370\1\x7A\110 AVX512,THV
+ymmreg_mz,bmem32 \350\361\364\370\1\x7A\110 AVX512,BCST4,THV
+zmmreg_mz,mem256 \350\351\361\370\1\x7A\110 AVX512,THV
+zmmreg_mz,bmem32 \350\351\361\370\1\x7A\110 AVX512,BCST8,THV
+zmmreg_mz,ymmreg_sae \350\351\361\370\1\x7A\110 AVX512
+
+[VCVTTPS2UDQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\370\1\x78\110 AVX512,TFV
+xmmreg_mz,bmem32 \350\370\1\x78\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\364\370\1\x78\110 AVX512,TFV
+ymmreg_mz,bmem32 \350\364\370\1\x78\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\370\1\x78\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\370\1\x78\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\370\1\x78\110 AVX512
+
+[VCVTTPS2UQQ]
+(Ch_All)
+xmmreg_mz,xmmreg \350\361\370\1\x78\110 AVX512
+xmmreg_mz,mem64 \350\361\370\1\x78\110 AVX512,THV
+xmmreg_mz,bmem32 \350\361\370\1\x78\110 AVX512,BCST2,THV
+ymmreg_mz,xmmrm \350\361\364\370\1\x78\110 AVX512,THV
+ymmreg_mz,bmem32 \350\361\364\370\1\x78\110 AVX512,BCST4,THV
+zmmreg_mz,mem256 \350\351\361\370\1\x78\110 AVX512,THV
+zmmreg_mz,bmem32 \350\351\361\370\1\x78\110 AVX512,BCST8,THV
+zmmreg_mz,ymmreg_sae \350\351\361\370\1\x78\110 AVX512
+
+[VCVTTSD2USI]
+(Ch_All)
+reg32,mem64 \334\350\370\1\x78\110 AVX512,T1F64
+reg32,xmmreg_sae \334\350\370\1\x78\110 AVX512
+reg64,mem64 \334\350\352\370\1\x78\110 AVX512,T1F64
+reg64,xmmreg_sae \334\350\352\370\1\x78\110 AVX512
+
+[VCVTTSS2USI]
+(Ch_All)
+reg32,mem32 \333\350\370\1\x78\110 AVX512,T1F32
+reg32,xmmreg_sae \333\350\370\1\x78\110 AVX512
+reg64,mem32 \333\350\352\370\1\x78\110 AVX512,T1F32
+reg64,xmmreg_sae \333\350\352\370\1\x78\110 AVX512
+
+[VCVTUDQ2PD]
+(Ch_All)
+xmmreg_mz,xmmreg \333\350\370\1\x7A\110 AVX512
+xmmreg_mz,mem64 \333\350\370\1\x7A\110 AVX512,THV
+xmmreg_mz,bmem32 \333\350\370\1\x7A\110 AVX512,BCST2,THV
+ymmreg_mz,xmmrm \333\350\364\370\1\x7A\110 AVX512,THV
+ymmreg_mz,bmem32 \333\350\364\370\1\x7A\110 AVX512,BCST4,THV
+zmmreg_mz,mem256 \333\350\351\370\1\x7A\110 AVX512,THV
+zmmreg_mz,bmem32 \333\350\351\370\1\x7A\110 AVX512,BCST8,THV
+zmmreg_mz,ymmreg_er \333\350\351\370\1\x7A\110 AVX512
+
+[VCVTUDQ2PS]
+(Ch_All)
+xmmreg_mz,xmmrm \334\350\370\1\x7A\110 AVX512,TFV
+xmmreg_mz,bmem32 \334\350\370\1\x7A\110 AVX512,TFV
+ymmreg_mz,ymmrm \334\350\364\370\1\x7A\110 AVX512,TFV
+ymmreg_mz,bmem32 \334\350\364\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,mem512 \334\350\351\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,bmem32 \334\350\351\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,zmmreg_er \334\350\351\370\1\x7A\110 AVX512
+
+[VCVTUQQ2PD]
+(Ch_All)
+xmmreg_mz,xmmrm \333\350\352\370\1\x7A\110 AVX512,TFV
+xmmreg_mz,bmem64 \333\350\352\370\1\x7A\110 AVX512,TFV
+ymmreg_mz,ymmrm \333\350\352\364\370\1\x7A\110 AVX512,TFV
+ymmreg_mz,bmem64 \333\350\352\364\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,mem512 \333\350\351\352\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,bmem64 \333\350\351\352\370\1\x7A\110 AVX512,TFV
+zmmreg_mz,zmmreg_er \333\350\351\352\370\1\x7A\110 AVX512
+
+[VCVTUQQ2PS]
+(Ch_All)
+xmmreg_mz,mem128 \334\350\352\370\1\x7A\110 AVX512,TFV
+xmmreg_mz,mem256 \334\350\352\364\370\1\x7A\110 AVX512,TFV
+xmmreg_mz,xmmreg \334\350\352\370\1\x7A\110 AVX512
+xmmreg_mz,bmem64 \334\350\352\370\1\x7A\110 AVX512,BCST2,TFV
+xmmreg_mz,bmem64 \334\350\352\364\370\1\x7A\110 AVX512,BCST4,TFV
+xmmreg_mz,ymmreg \334\350\352\364\370\1\x7A\110 AVX512
+ymmreg_mz,mem512 \334\350\351\352\370\1\x7A\110 AVX512,TFV
+ymmreg_mz,bmem64 \334\350\351\352\370\1\x7A\110 AVX512,BCST8,TFV
+ymmreg_mz,zmmreg_er \334\350\351\352\370\1\x7A\110 AVX512
+
+[VCVTUSI2SD]
+(Ch_All)
+xmmreg,xmmreg_er,rm64 \334\350\352\370\1\x7B\75\120 AVX512,T1S
+xmmreg,xmmreg_er,rm32 \334\350\370\1\x7B\75\120 AVX512,T1S
+
+[VCVTUSI2SS]
+(Ch_All)
+xmmreg,xmmreg_er,rm64 \333\350\352\370\1\x7B\75\120 AVX512,T1S
+xmmreg,xmmreg_er,rm32 \333\350\370\1\x7B\75\120 AVX512,T1S
+
+[VDBPSADBW]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\361\372\1\x42\75\120\27 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\364\372\1\x42\75\120\27 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\361\372\1\x42\75\120\27 AVX512,TFVM
+
+[VEXP2PD]
+(Ch_All)
+zmmreg_mz,mem512 \350\351\352\361\371\1\xC8\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\xC8\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\352\361\371\1\xC8\110 AVX512
+
+[VEXP2PS]
+(Ch_All)
+zmmreg_mz,mem512 \350\351\361\371\1\xC8\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\xC8\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\361\371\1\xC8\110 AVX512
+
+[VEXPANDPD]
+(Ch_All)
+xmmreg_mz,mem128 \350\352\361\371\1\x88\110 AVX512,T1S
+xmmreg_mz,xmmreg \350\352\361\371\1\x88\110 AVX512
+ymmreg_mz,mem256 \350\352\361\364\371\1\x88\110 AVX512,T1S
+ymmreg_mz,ymmreg \350\352\361\364\371\1\x88\110 AVX512
+zmmreg_mz,mem512 \350\351\352\361\371\1\x88\110 AVX512,T1S
+zmmreg_mz,zmmreg \350\351\352\361\371\1\x88\110 AVX512
+
+[VEXPANDPS]
+(Ch_All)
+xmmreg_mz,mem128 \350\361\371\1\x88\110 AVX512,T1S
+xmmreg_mz,xmmreg \350\361\371\1\x88\110 AVX512
+ymmreg_mz,mem256 \350\361\364\371\1\x88\110 AVX512,T1S
+ymmreg_mz,ymmreg \350\361\364\371\1\x88\110 AVX512
+zmmreg_mz,mem512 \350\351\361\371\1\x88\110 AVX512,T1S
+zmmreg_mz,zmmreg \350\351\361\371\1\x88\110 AVX512
+
+[VEXTRACTF32X4]
+(Ch_All)
+mem128_m,ymmreg,imm8 \350\361\364\372\1\x19\101\26 AVX512,T4
+mem128_m,zmmreg,imm8 \350\351\361\372\1\x19\101\26 AVX512,T4
+xmmreg_mz,ymmreg,imm8 \350\361\364\372\1\x19\101\26 AVX512
+xmmreg_mz,zmmreg,imm8 \350\351\361\372\1\x19\101\26 AVX512
+
+[VEXTRACTF32X8]
+(Ch_All)
+mem256_m,zmmreg,imm8 \350\351\361\372\1\x1B\101\26 AVX512,T8
+ymmreg_mz,zmmreg,imm8 \350\351\361\372\1\x1B\101\26 AVX512
+
+[VEXTRACTF64X2]
+(Ch_All)
+mem128_m,ymmreg,imm8 \350\352\361\364\372\1\x19\101\26 AVX512,T2
+mem128_m,zmmreg,imm8 \350\351\352\361\372\1\x19\101\26 AVX512,T2
+xmmreg_mz,ymmreg,imm8 \350\352\361\364\372\1\x19\101\26 AVX512
+xmmreg_mz,zmmreg,imm8 \350\351\352\361\372\1\x19\101\26 AVX512
+
+[VEXTRACTF64X4]
+(Ch_All)
+mem256_m,zmmreg,imm8 \350\351\352\361\372\1\x1B\101\26 AVX512,T4
+ymmreg_mz,zmmreg,imm8 \350\351\352\361\372\1\x1B\101\26 AVX512
+
+[VEXTRACTI32X4]
+(Ch_All)
+mem128_m,ymmreg,imm8 \350\361\364\372\1\x39\101\26 AVX512,T4
+mem128_m,zmmreg,imm8 \350\351\361\372\1\x39\101\26 AVX512,T4
+xmmreg_mz,ymmreg,imm8 \350\361\364\372\1\x39\101\26 AVX512
+xmmreg_mz,zmmreg,imm8 \350\351\361\372\1\x39\101\26 AVX512
+
+[VEXTRACTI32X8]
+(Ch_All)
+mem256_m,zmmreg,imm8 \350\351\361\372\1\x3B\101\26 AVX512,T8
+ymmreg_mz,zmmreg,imm8 \350\351\361\372\1\x3B\101\26 AVX512
+
+[VEXTRACTI64X2]
+(Ch_All)
+mem128_m,ymmreg,imm8 \350\352\361\364\372\1\x39\101\26 AVX512,T2
+mem128_m,zmmreg,imm8 \350\351\352\361\372\1\x39\101\26 AVX512,T2
+xmmreg_mz,ymmreg,imm8 \350\352\361\364\372\1\x39\101\26 AVX512
+xmmreg_mz,zmmreg,imm8 \350\351\352\361\372\1\x39\101\26 AVX512
+
+[VEXTRACTI64X4]
+(Ch_All)
+mem256_m,zmmreg,imm8 \350\351\352\361\372\1\x3B\101\26 AVX512,T4
+ymmreg_mz,zmmreg,imm8 \350\351\352\361\372\1\x3B\101\26 AVX512
+
+[VFIXUPIMMPD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\352\361\372\1\x54\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64,imm8 \350\352\361\372\1\x54\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x54\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x54\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,mem512,imm8 \350\351\352\361\372\1\x54\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x54\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae,imm8 \350\351\352\361\372\1\x54\75\120\27 AVX512
+
+[VFIXUPIMMPS]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\361\372\1\x54\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32,imm8 \350\361\372\1\x54\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\364\372\1\x54\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32,imm8 \350\361\364\372\1\x54\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,mem512,imm8 \350\351\361\372\1\x54\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32,imm8 \350\351\361\372\1\x54\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae,imm8 \350\351\361\372\1\x54\75\120\27 AVX512
+
+[VFIXUPIMMSD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64,imm8 \350\352\361\372\1\x55\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\352\361\372\1\x55\75\120\27 AVX512
+
+[VFIXUPIMMSS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32,imm8 \350\361\372\1\x55\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\361\372\1\x55\75\120\27 AVX512
+
+
+[VFPCLASSPD]
+(Ch_All)
+kreg_m,xmmrm,imm8 \350\352\361\372\1\x66\110\26 AVX512,TFV
+kreg_m,bmem64,imm8 \350\352\361\372\1\x66\110\26 AVX512,BCST2,TFV
+kreg_m,ymmrm,imm8 \350\352\361\364\372\1\x66\110\26 AVX512,TFV
+kreg_m,bmem64,imm8 \350\352\361\364\372\1\x66\110\26 AVX512,BCST4,TFV
+kreg_m,zmmrm,imm8 \350\351\352\361\372\1\x66\110\26 AVX512,TFV
+kreg_m,bmem64,imm8 \350\351\352\361\372\1\x66\110\26 AVX512,BCST8,TFV
+
+[VFPCLASSPS]
+(Ch_All)
+kreg_m,xmmrm,imm8 \350\361\372\1\x66\110\26 AVX512,TFV
+kreg_m,bmem32,imm8 \350\361\372\1\x66\110\26 AVX512,BCST4,TFV
+kreg_m,ymmrm,imm8 \350\361\364\372\1\x66\110\26 AVX512,TFV
+kreg_m,bmem32,imm8 \350\361\364\372\1\x66\110\26 AVX512,BCST8,TFV
+kreg_m,zmmrm,imm8 \350\351\361\372\1\x66\110\26 AVX512,TFV
+kreg_m,bmem32,imm8 \350\351\361\372\1\x66\110\26 AVX512,BCST16,TFV
+
+[VFPCLASSSD]
+(Ch_All)
+kreg_m,xmmreg,imm8 \350\352\361\372\1\x67\110\26 AVX512
+kreg_m,mem64,imm8 \350\352\361\372\1\x67\110\26 AVX512,T1S
+
+[VFPCLASSSS]
+(Ch_All)
+kreg_m,xmmreg,imm8 \350\361\372\1\x67\110\26 AVX512
+kreg_m,mem32,imm8 \350\361\372\1\x67\110\26 AVX512,T1S
+
+
+[VGETEXPPD]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\371\1\x42\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\371\1\x42\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\371\1\x42\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\371\1\x42\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\352\361\371\1\x42\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\x42\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\352\361\371\1\x42\110 AVX512
+
+[VGETEXPPS]
+(Ch_All)
+xmmreg_mz,xmmrm \350\361\371\1\x42\110 AVX512,TFV
+xmmreg_mz,bmem32 \350\361\371\1\x42\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\361\364\371\1\x42\110 AVX512,TFV
+ymmreg_mz,bmem32 \350\361\364\371\1\x42\110 AVX512,TFV
+zmmreg_mz,mem512 \350\351\361\371\1\x42\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\x42\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\361\371\1\x42\110 AVX512
+
+[VGETEXPSD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64 \350\352\361\371\1\x43\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \350\352\361\371\1\x43\75\120 AVX512
+
+[VGETEXPSS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32 \350\361\371\1\x43\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \350\361\371\1\x43\75\120 AVX512
+
+[VGETMANTPD]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\352\361\372\1\x26\110\26 AVX512,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\372\1\x26\110\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\364\372\1\x26\110\26 AVX512,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x26\110\26 AVX512,TFV
+zmmreg_mz,mem512,imm8 \350\351\352\361\372\1\x26\110\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x26\110\26 AVX512,TFV
+zmmreg_mz,zmmreg_sae,imm8 \350\351\352\361\372\1\x26\110\26 AVX512
+
+[VGETMANTPS]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\361\372\1\x26\110\26 AVX512,TFV
+xmmreg_mz,bmem32,imm8 \350\361\372\1\x26\110\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\361\364\372\1\x26\110\26 AVX512,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\372\1\x26\110\26 AVX512,TFV
+zmmreg_mz,mem512,imm8 \350\351\361\372\1\x26\110\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\372\1\x26\110\26 AVX512,TFV
+zmmreg_mz,zmmreg_sae,imm8 \350\351\361\372\1\x26\110\26 AVX512
+
+[VGETMANTSD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64,imm8 \350\352\361\372\1\x27\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\352\361\372\1\x27\75\120\27 AVX512
+
+[VGETMANTSS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32,imm8 \350\361\372\1\x27\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\361\372\1\x27\75\120\27 AVX512
+
+[VINSERTF32X4]
+(Ch_All)
+ymmreg_mz,ymmreg,xmmrm,imm8 \350\361\364\372\1\x18\75\120\27 AVX512,T4
+zmmreg_mz,zmmreg,xmmrm,imm8 \350\351\361\372\1\x18\75\120\27 AVX512,T4
+
+[VINSERTF32X8]
+(Ch_All)
+zmmreg_mz,zmmreg,ymmrm,imm8 \350\351\361\372\1\x1A\75\120\27 AVX512,T8
+
+[VINSERTF64X2]
+(Ch_All)
+ymmreg_mz,ymmreg,xmmrm,imm8 \350\352\361\364\372\1\x18\75\120\27 AVX512,T2
+zmmreg_mz,zmmreg,xmmrm,imm8 \350\351\352\361\372\1\x18\75\120\27 AVX512,T2
+
+[VINSERTF64X4]
+(Ch_All)
+zmmreg_mz,zmmreg,ymmrm,imm8 \350\351\352\361\372\1\x1A\75\120\27 AVX512,T4
+
+[VINSERTI32X4]
+(Ch_All)
+ymmreg_mz,ymmreg,xmmrm,imm8 \350\361\364\372\1\x38\75\120\27 AVX512,T4
+zmmreg_mz,zmmreg,xmmrm,imm8 \350\351\361\372\1\x38\75\120\27 AVX512,T4
+
+[VINSERTI32X8]
+(Ch_All)
+zmmreg_mz,zmmreg,ymmrm,imm8 \350\351\361\372\1\x3A\75\120\27 AVX512,T8
+
+[VINSERTI64X2]
+(Ch_All)
+ymmreg_mz,ymmreg,xmmrm,imm8 \350\352\361\364\372\1\x38\75\120\27 AVX512,T2
+zmmreg_mz,zmmreg,xmmrm,imm8 \350\351\352\361\372\1\x38\75\120\27 AVX512,T2
+
+[VINSERTI64X4]
+(Ch_All)
+zmmreg_mz,zmmreg,ymmrm,imm8 \350\351\352\361\372\1\x3A\75\120\27 AVX512,T4
+
+[VMOVDQA32]
+(Ch_All)
+xmmreg_mz,xmmrm \350\361\370\1\x6F\110 AVX512,TFVM
+xmmrm_mz,xmmreg \350\361\370\1\x7F\101 AVX512,TFVM
+ymmreg_mz,ymmrm \350\361\364\370\1\x6F\110 AVX512,TFVM
+ymmrm_mz,ymmreg \350\361\364\370\1\x7F\101 AVX512,TFVM
+zmmreg_mz,zmmrm \350\351\361\370\1\x6F\110 AVX512,TFVM
+zmmrm_mz,zmmreg \350\351\361\370\1\x7F\101 AVX512,TFVM
+
+[VMOVDQA64]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\370\1\x6F\110 AVX512,TFVM
+xmmrm_mz,xmmreg \350\352\361\370\1\x7F\101 AVX512,TFVM
+ymmreg_mz,ymmrm \350\352\361\364\370\1\x6F\110 AVX512,TFVM
+ymmrm_mz,ymmreg \350\352\361\364\370\1\x7F\101 AVX512,TFVM
+zmmreg_mz,zmmrm \350\351\352\361\370\1\x6F\110 AVX512,TFVM
+zmmrm_mz,zmmreg \350\351\352\361\370\1\x7F\101 AVX512,TFVM
+
+[VMOVDQU16]
+(Ch_All)
+xmmreg_mz,xmmrm \334\350\352\370\1\x6F\110 AVX512,TFVM
+xmmrm_mz,xmmreg \334\350\352\370\1\x7F\101 AVX512,TFVM
+ymmreg_mz,ymmrm \334\350\352\364\370\1\x6F\110 AVX512,TFVM
+ymmrm_mz,ymmreg \334\350\352\364\370\1\x7F\101 AVX512,TFVM
+zmmreg_mz,zmmrm \334\350\351\352\370\1\x6F\110 AVX512,TFVM
+zmmrm_mz,zmmreg \334\350\351\352\370\1\x7F\101 AVX512,TFVM
+
+[VMOVDQU32]
+(Ch_All)
+xmmreg_mz,xmmrm \333\350\370\1\x6F\110 AVX512,TFVM
+xmmrm_mz,xmmreg \333\350\370\1\x7F\101 AVX512,TFVM
+ymmreg_mz,ymmrm \333\350\364\370\1\x6F\110 AVX512,TFVM
+ymmrm_mz,ymmreg \333\350\364\370\1\x7F\101 AVX512,TFVM
+zmmreg_mz,zmmrm \333\350\351\370\1\x6F\110 AVX512,TFVM
+zmmrm_mz,zmmreg \333\350\351\370\1\x7F\101 AVX512,TFVM
+
+[VMOVDQU64]
+(Ch_All)
+xmmreg_mz,xmmrm \333\350\352\370\1\x6F\110 AVX512,TFVM
+xmmrm_mz,xmmreg \333\350\352\370\1\x7F\101 AVX512,TFVM
+ymmreg_mz,ymmrm \333\350\352\364\370\1\x6F\110 AVX512,TFVM
+ymmrm_mz,ymmreg \333\350\352\364\370\1\x7F\101 AVX512,TFVM
+zmmreg_mz,zmmrm \333\350\351\352\370\1\x6F\110 AVX512,TFVM
+zmmrm_mz,zmmreg \333\350\351\352\370\1\x7F\101 AVX512,TFVM
+
+[VMOVDQU8]
+(Ch_All)
+xmmreg_mz,xmmrm \334\350\370\1\x6F\110 AVX512,TFVM
+xmmrm_mz,xmmreg \334\350\370\1\x7F\101 AVX512,TFVM
+ymmreg_mz,ymmrm \334\350\364\370\1\x6F\110 AVX512,TFVM
+ymmrm_mz,ymmreg \334\350\364\370\1\x7F\101 AVX512,TFVM
+zmmreg_mz,zmmrm \334\350\351\370\1\x6F\110 AVX512,TFVM
+zmmrm_mz,zmmreg \334\350\351\370\1\x7F\101 AVX512,TFVM
+
+[VPABSQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\371\1\x1F\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\371\1\x1F\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\371\1\x1F\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\371\1\x1F\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\352\361\371\1\x1F\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\x1F\110 AVX512,TFV
+
+[VPANDD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\370\1\xDB\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\xDB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\370\1\xDB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\xDB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xDB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\xDB\75\120 AVX512,TFV
+
+[VPANDND]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\370\1\xDF\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\xDF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\370\1\xDF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\xDF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xDF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\xDF\75\120 AVX512,TFV
+
+[VPANDNQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\370\1\xDF\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\xDF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\370\1\xDF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\xDF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\xDF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\xDF\75\120 AVX512,TFV
+
+[VPANDQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\370\1\xDB\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\xDB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\370\1\xDB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\xDB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\xDB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\xDB\75\120 AVX512,TFV
+
+[VPBLENDMB]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x66\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x66\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x66\75\120 AVX512,TFVM
+
+[VPBLENDMD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x64\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x64\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x64\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x64\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x64\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x64\75\120 AVX512,TFV
+
+[VPBLENDMQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x64\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x64\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x64\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x64\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x64\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x64\75\120 AVX512,TFV
+
+[VPBLENDMW]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x66\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x66\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x66\75\120 AVX512,TFVM
+
+
+[VPCMPB]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\361\372\1\x3F\75\120\27 AVX512,TFVM
+kreg_m,ymmreg,ymmrm,imm8 \350\361\364\372\1\x3F\75\120\27 AVX512,TFVM
+kreg_m,zmmreg,zmmrm,imm8 \350\351\361\372\1\x3F\75\120\27 AVX512,TFVM
+
+[VPCMPD]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\361\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,xmmreg,bmem32,imm8 \350\361\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,ymmreg,ymmrm,imm8 \350\361\364\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,ymmreg,bmem32,imm8 \350\361\364\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,zmmreg,zmmrm,imm8 \350\351\361\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,zmmreg,bmem32,imm8 \350\351\361\372\1\x1F\75\120\27 AVX512,TFV
+
+[VPCMPQ]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\352\361\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,xmmreg,bmem64,imm8 \350\352\361\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x1F\75\120\27 AVX512,TFV
+kreg_m,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x1F\75\120\27 AVX512,TFV
+
+[VPCMPUB]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\361\372\1\x3E\75\120\27 AVX512,TFVM
+kreg_m,ymmreg,ymmrm,imm8 \350\361\364\372\1\x3E\75\120\27 AVX512,TFVM
+kreg_m,zmmreg,zmmrm,imm8 \350\351\361\372\1\x3E\75\120\27 AVX512,TFVM
+
+[VPCMPUD]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\361\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,xmmreg,bmem32,imm8 \350\361\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,ymmreg,ymmrm,imm8 \350\361\364\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,ymmreg,bmem32,imm8 \350\361\364\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,zmmreg,zmmrm,imm8 \350\351\361\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,zmmreg,bmem32,imm8 \350\351\361\372\1\x1E\75\120\27 AVX512,TFV
+
+[VPCMPUQ]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\352\361\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,xmmreg,bmem64,imm8 \350\352\361\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x1E\75\120\27 AVX512,TFV
+kreg_m,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x1E\75\120\27 AVX512,TFV
+
+[VPCMPUW]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\352\361\372\1\x3E\75\120\27 AVX512,TFVM
+kreg_m,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x3E\75\120\27 AVX512,TFVM
+kreg_m,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x3E\75\120\27 AVX512,TFVM
+
+[VPCMPW]
+(Ch_All)
+kreg_m,xmmreg,xmmrm,imm8 \350\352\361\372\1\x3F\75\120\27 AVX512,TFVM
+kreg_m,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x3F\75\120\27 AVX512,TFVM
+kreg_m,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x3F\75\120\27 AVX512,TFVM
+
+[VPCOMPRESSD]
+(Ch_All)
+mem128_m,xmmreg \350\361\371\1\x8B\101 AVX512,T1S
+mem256_m,ymmreg \350\361\364\371\1\x8B\101 AVX512,T1S
+mem512_m,zmmreg \350\351\361\371\1\x8B\101 AVX512,T1S
+xmmreg_mz,xmmreg \350\361\371\1\x8B\101 AVX512
+ymmreg_mz,ymmreg \350\361\364\371\1\x8B\101 AVX512
+zmmreg_mz,zmmreg \350\351\361\371\1\x8B\101 AVX512
+
+[VPCOMPRESSQ]
+(Ch_All)
+mem128_m,xmmreg \350\352\361\371\1\x8B\101 AVX512,T1S
+mem256_m,ymmreg \350\352\361\364\371\1\x8B\101 AVX512,T1S
+mem512_m,zmmreg \350\351\352\361\371\1\x8B\101 AVX512,T1S
+xmmreg_mz,xmmreg \350\352\361\371\1\x8B\101 AVX512
+ymmreg_mz,ymmreg \350\352\361\364\371\1\x8B\101 AVX512
+zmmreg_mz,zmmreg \350\351\352\361\371\1\x8B\101 AVX512
+
+[VPCONFLICTD]
+(Ch_All)
+xmmreg_mz,xmmrm \350\361\371\1\xC4\110 AVX512,TFV
+xmmreg_mz,bmem32 \350\361\371\1\xC4\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\361\364\371\1\xC4\110 AVX512,TFV
+ymmreg_mz,bmem32 \350\361\364\371\1\xC4\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\361\371\1\xC4\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\xC4\110 AVX512,TFV
+
+[VPCONFLICTQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\371\1\xC4\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\371\1\xC4\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\371\1\xC4\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\371\1\xC4\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\352\361\371\1\xC4\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\xC4\110 AVX512,TFV
+
+[VPERMB]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x8D\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x8D\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x8D\75\120 AVX512,TFVM
+
+[VPERMI2B]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x75\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x75\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x75\75\120 AVX512,TFVM
+
+[VPERMI2D]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x76\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x76\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x76\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x76\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x76\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x76\75\120 AVX512,TFV
+
+[VPERMI2PD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x77\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x77\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x77\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x77\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x77\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x77\75\120 AVX512,TFV
+
+[VPERMI2PS]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x77\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x77\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x77\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x77\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x77\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x77\75\120 AVX512,TFV
+
+[VPERMI2Q]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x76\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x76\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x76\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x76\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x76\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x76\75\120 AVX512,TFV
+
+[VPERMI2W]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x75\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x75\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x75\75\120 AVX512,TFVM
+
+[VPERMT2B]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x7D\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x7D\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x7D\75\120 AVX512,TFVM
+
+[VPERMT2D]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x7E\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x7E\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x7E\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x7E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x7E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x7E\75\120 AVX512,TFV
+
+[VPERMT2PD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x7F\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x7F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x7F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x7F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x7F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x7F\75\120 AVX512,TFV
+
+[VPERMT2PS]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x7F\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x7F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x7F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x7F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x7F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x7F\75\120 AVX512,TFV
+
+[VPERMT2Q]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x7E\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x7E\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x7E\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x7E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x7E\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x7E\75\120 AVX512,TFV
+
+[VPERMT2W]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x7D\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x7D\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x7D\75\120 AVX512,TFVM
+
+[VPERMW]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x8D\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x8D\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x8D\75\120 AVX512,TFVM
+
+[VPEXPANDD]
+(Ch_All)
+xmmreg_mz,mem128 \350\361\371\1\x89\110 AVX512,T1S
+xmmreg_mz,xmmreg \350\361\371\1\x89\110 AVX512
+ymmreg_mz,mem256 \350\361\364\371\1\x89\110 AVX512,T1S
+ymmreg_mz,ymmreg \350\361\364\371\1\x89\110 AVX512
+zmmreg_mz,mem512 \350\351\361\371\1\x89\110 AVX512,T1S
+zmmreg_mz,zmmreg \350\351\361\371\1\x89\110 AVX512
+
+[VPEXPANDQ]
+(Ch_All)
+xmmreg_mz,mem128 \350\352\361\371\1\x89\110 AVX512,T1S
+xmmreg_mz,xmmreg \350\352\361\371\1\x89\110 AVX512
+ymmreg_mz,mem256 \350\352\361\364\371\1\x89\110 AVX512,T1S
+ymmreg_mz,ymmreg \350\352\361\364\371\1\x89\110 AVX512
+zmmreg_mz,mem512 \350\351\352\361\371\1\x89\110 AVX512,T1S
+zmmreg_mz,zmmreg \350\351\352\361\371\1\x89\110 AVX512
+
+[VPLZCNTD]
+(Ch_All)
+xmmreg_mz,xmmrm \350\361\371\1\x44\110 AVX512,TFV
+xmmreg_mz,bmem32 \350\361\371\1\x44\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\361\364\371\1\x44\110 AVX512,TFV
+ymmreg_mz,bmem32 \350\361\364\371\1\x44\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\361\371\1\x44\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\x44\110 AVX512,TFV
+
+[VPLZCNTQ]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\371\1\x44\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\371\1\x44\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\371\1\x44\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\371\1\x44\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\352\361\371\1\x44\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\x44\110 AVX512,TFV
+
+[VPMADD52HUQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\xB5\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xB5\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\xB5\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xB5\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\xB5\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xB5\75\120 AVX512,TFV
+
+[VPMADD52LUQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\xB4\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\xB4\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\xB4\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\xB4\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\xB4\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\xB4\75\120 AVX512,TFV
+
+[VPMAXSQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x3D\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x3D\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x3D\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x3D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x3D\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x3D\75\120 AVX512,TFV
+
+[VPMAXUQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x3F\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x3F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x3F\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x3F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x3F\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x3F\75\120 AVX512,TFV
+
+[VPMINSQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x39\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x39\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x39\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x39\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x39\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x39\75\120 AVX512,TFV
+
+[VPMINUQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x3B\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x3B\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x3B\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x3B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x3B\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x3B\75\120 AVX512,TFV
+
+[VPMOVB2M]
+(Ch_All)
+kreg,xmmreg \333\350\371\1\x29\110 AVX512
+kreg,ymmreg \333\350\364\371\1\x29\110 AVX512
+kreg,zmmreg \333\350\351\371\1\x29\110 AVX512
+
+[VPMOVD2M]
+(Ch_All)
+kreg,xmmreg \333\350\371\1\x39\110 AVX512
+kreg,ymmreg \333\350\364\371\1\x39\110 AVX512
+kreg,zmmreg \333\350\351\371\1\x39\110 AVX512
+
+[VPMOVDB]
+(Ch_All)
+mem128_m,zmmreg \333\350\351\371\1\x31\101 AVX512,TQVM
+mem32_m,xmmreg \333\350\371\1\x31\101 AVX512,TQVM
+mem64_m,ymmreg \333\350\364\371\1\x31\101 AVX512,TQVM
+xmmreg_mz,xmmreg \333\350\371\1\x31\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x31\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x31\101 AVX512
+
+[VPMOVDW]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x33\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x33\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x33\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x33\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x33\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x33\101 AVX512
+
+[VPMOVM2B]
+(Ch_All)
+xmmreg,kreg \333\350\371\1\x28\110 AVX512
+ymmreg,kreg \333\350\364\371\1\x28\110 AVX512
+zmmreg,kreg \333\350\351\371\1\x28\110 AVX512
+
+[VPMOVM2D]
+(Ch_All)
+xmmreg,kreg \333\350\371\1\x38\110 AVX512
+ymmreg,kreg \333\350\364\371\1\x38\110 AVX512
+zmmreg,kreg \333\350\351\371\1\x38\110 AVX512
+
+[VPMOVM2Q]
+(Ch_All)
+xmmreg,kreg \333\350\352\371\1\x38\110 AVX512
+ymmreg,kreg \333\350\352\364\371\1\x38\110 AVX512
+zmmreg,kreg \333\350\351\352\371\1\x38\110 AVX512
+
+[VPMOVM2W]
+(Ch_All)
+xmmreg,kreg \333\350\352\371\1\x28\110 AVX512
+ymmreg,kreg \333\350\352\364\371\1\x28\110 AVX512
+zmmreg,kreg \333\350\351\352\371\1\x28\110 AVX512
+
+[VPMOVQ2M]
+(Ch_All)
+kreg,xmmreg \333\350\352\371\1\x39\110 AVX512
+kreg,ymmreg \333\350\352\364\371\1\x39\110 AVX512
+kreg,zmmreg \333\350\351\352\371\1\x39\110 AVX512
+
+[VPMOVQB]
+(Ch_All)
+mem16_m,xmmreg \333\350\371\1\x32\101 AVX512,TOVM
+mem32_m,ymmreg \333\350\364\371\1\x32\101 AVX512,TOVM
+mem64_m,zmmreg \333\350\351\371\1\x32\101 AVX512,TOVM
+xmmreg_mz,xmmreg \333\350\371\1\x32\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x32\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x32\101 AVX512
+
+[VPMOVQD]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x35\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x35\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x35\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x35\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x35\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x35\101 AVX512
+
+[VPMOVQW]
+(Ch_All)
+mem128_m,zmmreg \333\350\351\371\1\x34\101 AVX512,TQVM
+mem32_m,xmmreg \333\350\371\1\x34\101 AVX512,TQVM
+mem64_m,ymmreg \333\350\364\371\1\x34\101 AVX512,TQVM
+xmmreg_mz,xmmreg \333\350\371\1\x34\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x34\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x34\101 AVX512
+
+[VPMOVSDB]
+(Ch_All)
+mem128_m,zmmreg \333\350\351\371\1\x21\101 AVX512,TQVM
+mem32_m,xmmreg \333\350\371\1\x21\101 AVX512,TQVM
+mem64_m,ymmreg \333\350\364\371\1\x21\101 AVX512,TQVM
+xmmreg_mz,xmmreg \333\350\371\1\x21\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x21\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x21\101 AVX512
+
+[VPMOVSDW]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x23\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x23\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x23\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x23\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x23\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x23\101 AVX512
+
+[VPMOVSQB]
+(Ch_All)
+mem16_m,xmmreg \333\350\371\1\x22\101 AVX512,TOVM
+mem32_m,ymmreg \333\350\364\371\1\x22\101 AVX512,TOVM
+mem64_m,zmmreg \333\350\351\371\1\x22\101 AVX512,TOVM
+xmmreg_mz,xmmreg \333\350\371\1\x22\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x22\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x22\101 AVX512
+
+[VPMOVSQD]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x25\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x25\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x25\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x25\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x25\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x25\101 AVX512
+
+[VPMOVSQW]
+(Ch_All)
+mem128_m,zmmreg \333\350\351\371\1\x24\101 AVX512,TQVM
+mem32_m,xmmreg \333\350\371\1\x24\101 AVX512,TQVM
+mem64_m,ymmreg \333\350\364\371\1\x24\101 AVX512,TQVM
+xmmreg_mz,xmmreg \333\350\371\1\x24\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x24\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x24\101 AVX512
+
+[VPMOVSWB]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x20\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x20\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x20\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x20\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x20\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x20\101 AVX512
+
+[VPMOVUSDB]
+(Ch_All)
+mem128_m,zmmreg \333\350\351\371\1\x11\101 AVX512,TQVM
+mem32_m,xmmreg \333\350\371\1\x11\101 AVX512,TQVM
+mem64_m,ymmreg \333\350\364\371\1\x11\101 AVX512,TQVM
+xmmreg_mz,xmmreg \333\350\371\1\x11\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x11\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x11\101 AVX512
+
+[VPMOVUSDW]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x13\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x13\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x13\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x13\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x13\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x13\101 AVX512
+
+[VPMOVUSQB]
+(Ch_All)
+mem16_m,xmmreg \333\350\371\1\x12\101 AVX512,TOVM
+mem32_m,ymmreg \333\350\364\371\1\x12\101 AVX512,TOVM
+mem64_m,zmmreg \333\350\351\371\1\x12\101 AVX512,TOVM
+xmmreg_mz,xmmreg \333\350\371\1\x12\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x12\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x12\101 AVX512
+
+[VPMOVUSQD]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x15\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x15\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x15\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x15\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x15\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x15\101 AVX512
+
+[VPMOVUSQW]
+(Ch_All)
+mem128_m,zmmreg \333\350\351\371\1\x14\101 AVX512,TQVM
+mem32_m,xmmreg \333\350\371\1\x14\101 AVX512,TQVM
+mem64_m,ymmreg \333\350\364\371\1\x14\101 AVX512,TQVM
+xmmreg_mz,xmmreg \333\350\371\1\x14\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x14\101 AVX512
+xmmreg_mz,zmmreg \333\350\351\371\1\x14\101 AVX512
+
+[VPMOVUSWB]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x10\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x10\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x10\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x10\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x10\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x10\101 AVX512
+
+[VPMOVW2M]
+(Ch_All)
+kreg,xmmreg \333\350\352\371\1\x29\110 AVX512
+kreg,ymmreg \333\350\352\364\371\1\x29\110 AVX512
+kreg,zmmreg \333\350\351\352\371\1\x29\110 AVX512
+
+[VPMOVWB]
+(Ch_All)
+mem128_m,ymmreg \333\350\364\371\1\x30\101 AVX512,THVM
+mem256_m,zmmreg \333\350\351\371\1\x30\101 AVX512,THVM
+mem64_m,xmmreg \333\350\371\1\x30\101 AVX512,THVM
+xmmreg_mz,xmmreg \333\350\371\1\x30\101 AVX512
+xmmreg_mz,ymmreg \333\350\364\371\1\x30\101 AVX512
+ymmreg_mz,zmmreg \333\350\351\371\1\x30\101 AVX512
+
+[VPMULLQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x40\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x40\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x40\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x40\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x40\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x40\75\120 AVX512,TFV
+
+[VPMULTISHIFTQB]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x83\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x83\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x83\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x83\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x83\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x83\75\120 AVX512,TFV
+
+[VPORD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\370\1\xEB\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\xEB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\370\1\xEB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\xEB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xEB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\xEB\75\120 AVX512,TFV
+
+[VPORQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\370\1\xEB\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\xEB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\370\1\xEB\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\xEB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\xEB\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\xEB\75\120 AVX512,TFV
+
+[VPROLD]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\361\370\1\x72\74\211\26 AVX512,TFV
+xmmreg_mz,bmem32,imm8 \350\361\370\1\x72\74\211\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\361\364\370\1\x72\74\211\26 AVX512,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\370\1\x72\74\211\26 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x72\74\211\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\370\1\x72\74\211\26 AVX512,TFV
+
+[VPROLQ]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\352\361\370\1\x72\74\211\26 AVX512,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\370\1\x72\74\211\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\364\370\1\x72\74\211\26 AVX512,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\370\1\x72\74\211\26 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\370\1\x72\74\211\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\370\1\x72\74\211\26 AVX512,TFV
+
+[VPROLVD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x15\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x15\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x15\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x15\75\120 AVX512,TFV
+
+[VPROLVQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x15\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x15\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x15\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x15\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x15\75\120 AVX512,TFV
+
+[VPRORD]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\361\370\1\x72\74\210\26 AVX512,TFV
+xmmreg_mz,bmem32,imm8 \350\361\370\1\x72\74\210\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\361\364\370\1\x72\74\210\26 AVX512,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\370\1\x72\74\210\26 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\361\370\1\x72\74\210\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\370\1\x72\74\210\26 AVX512,TFV
+
+[VPRORQ]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\352\361\370\1\x72\74\210\26 AVX512,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\370\1\x72\74\210\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\364\370\1\x72\74\210\26 AVX512,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\370\1\x72\74\210\26 AVX512,TFV
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\370\1\x72\74\210\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\370\1\x72\74\210\26 AVX512,TFV
+
+[VPRORVD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x14\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x14\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x14\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\371\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x14\75\120 AVX512,TFV
+
+[VPRORVQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x14\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x14\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x14\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x14\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x14\75\120 AVX512,TFV
+
+[VPSCATTERDD]
+(Ch_All)
+xmem32_m,xmmreg \350\361\371\1\xA0\101 AVX512,T1S
+ymem32_m,ymmreg \350\361\364\371\1\xA0\101 AVX512,T1S
+zmem32_m,zmmreg \350\351\361\371\1\xA0\101 AVX512,T1S
+
+[VPSCATTERDQ]
+(Ch_All)
+xmem64_m,xmmreg \350\352\361\371\1\xA0\101 AVX512,T1S
+xmem64_m,ymmreg \350\352\361\364\371\1\xA0\101 AVX512,T1S
+ymem64_m,zmmreg \350\351\352\361\371\1\xA0\101 AVX512,T1S
+
+[VPSCATTERQD]
+(Ch_All)
+xmem32_m,xmmreg \350\361\371\1\xA1\101 AVX512,T1S
+ymem32_m,xmmreg \350\361\364\371\1\xA1\101 AVX512,T1S
+zmem32_m,ymmreg \350\351\361\371\1\xA1\101 AVX512,T1S
+
+[VPSCATTERQQ]
+(Ch_All)
+xmem64_m,xmmreg \350\352\361\371\1\xA1\101 AVX512,T1S
+ymem64_m,ymmreg \350\352\361\364\371\1\xA1\101 AVX512,T1S
+zmem64_m,zmmreg \350\351\352\361\371\1\xA1\101 AVX512,T1S
+
+[VPSLLVW]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x12\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x12\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x12\75\120 AVX512,TFVM
+
+[VPSRAQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\370\1\xE2\75\120 AVX512,TMEM128
+xmmreg_mz,xmmrm,imm8 \350\352\361\370\1\x72\74\214\26 AVX512,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\370\1\x72\74\214\26 AVX512,TFV
+ymmreg_mz,ymmreg,xmmrm \350\352\361\364\370\1\xE2\75\120 AVX512,TMEM128
+ymmreg_mz,ymmrm,imm8 \350\352\361\364\370\1\x72\74\214\26 AVX512,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\370\1\x72\74\214\26 AVX512,TFV
+zmmreg_mz,zmmreg,xmmrm \350\351\352\361\370\1\xE2\75\120 AVX512,TMEM128
+zmmreg_mz,zmmrm,imm8 \350\351\352\361\370\1\x72\74\214\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\370\1\x72\74\214\26 AVX512,TFV
+
+[VPSRAVQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x46\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x46\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x46\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x46\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x46\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x46\75\120 AVX512,TFV
+
+[VPSRAVW]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x11\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x11\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x11\75\120 AVX512,TFVM
+
+[VPSRLVW]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x10\75\120 AVX512,TFVM
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x10\75\120 AVX512,TFVM
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x10\75\120 AVX512,TFVM
+
+[VPTERNLOGD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\361\372\1\x25\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32,imm8 \350\361\372\1\x25\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\364\372\1\x25\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32,imm8 \350\361\364\372\1\x25\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\361\372\1\x25\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32,imm8 \350\351\361\372\1\x25\75\120\27 AVX512,TFV
+
+[VPTERNLOGQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\352\361\372\1\x25\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64,imm8 \350\352\361\372\1\x25\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x25\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x25\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x25\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x25\75\120\27 AVX512,TFV
+
+[VPTESTMB]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \350\361\371\1\x26\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \350\361\364\371\1\x26\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \350\351\361\371\1\x26\75\120 AVX512,TFVM
+
+[VPTESTMD]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \350\361\371\1\x27\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem32 \350\361\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \350\361\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem32 \350\361\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \350\351\361\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem32 \350\351\361\371\1\x27\75\120 AVX512,TFV
+
+[VPTESTMQ]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \350\352\361\371\1\x27\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem64 \350\352\361\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \350\352\361\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem64 \350\352\361\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \350\351\352\361\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem64 \350\351\352\361\371\1\x27\75\120 AVX512,TFV
+
+[VPTESTMW]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \350\352\361\371\1\x26\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \350\352\361\364\371\1\x26\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \350\351\352\361\371\1\x26\75\120 AVX512,TFVM
+
+[VPTESTNMB]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \333\350\371\1\x26\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \333\350\364\371\1\x26\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \333\350\351\371\1\x26\75\120 AVX512,TFVM
+
+[VPTESTNMD]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \333\350\371\1\x27\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem32 \333\350\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \333\350\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem32 \333\350\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \333\350\351\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem32 \333\350\351\371\1\x27\75\120 AVX512,TFV
+
+[VPTESTNMQ]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \333\350\352\371\1\x27\75\120 AVX512,TFV
+kreg_m,xmmreg,bmem64 \333\350\352\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,ymmrm \333\350\352\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,ymmreg,bmem64 \333\350\352\364\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,zmmrm \333\350\351\352\371\1\x27\75\120 AVX512,TFV
+kreg_m,zmmreg,bmem64 \333\350\351\352\371\1\x27\75\120 AVX512,TFV
+
+[VPTESTNMW]
+(Ch_All)
+kreg_m,xmmreg,xmmrm \333\350\352\371\1\x26\75\120 AVX512,TFVM
+kreg_m,ymmreg,ymmrm \333\350\352\364\371\1\x26\75\120 AVX512,TFVM
+kreg_m,zmmreg,zmmrm \333\350\351\352\371\1\x26\75\120 AVX512,TFVM
+
+[VPXORD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\370\1\xEF\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\370\1\xEF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\370\1\xEF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\370\1\xEF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\361\370\1\xEF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\370\1\xEF\75\120 AVX512,TFV
+
+[VPXORQ]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\370\1\xEF\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\370\1\xEF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\370\1\xEF\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\370\1\xEF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm \350\351\352\361\370\1\xEF\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\370\1\xEF\75\120 AVX512,TFV
+
+[VRANGEPD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\352\361\372\1\x50\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64,imm8 \350\352\361\372\1\x50\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x50\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x50\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,mem512,imm8 \350\351\352\361\372\1\x50\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x50\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae,imm8 \350\351\352\361\372\1\x50\75\120\27 AVX512
+
+[VRANGEPS]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm,imm8 \350\361\372\1\x50\75\120\27 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32,imm8 \350\361\372\1\x50\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\364\372\1\x50\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32,imm8 \350\361\364\372\1\x50\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,mem512,imm8 \350\351\361\372\1\x50\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32,imm8 \350\351\361\372\1\x50\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_sae,imm8 \350\351\361\372\1\x50\75\120\27 AVX512
+
+[VRANGESD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64,imm8 \350\352\361\372\1\x51\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\352\361\372\1\x51\75\120\27 AVX512
+
+[VRANGESS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32,imm8 \350\361\372\1\x51\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\361\372\1\x51\75\120\27 AVX512
+
+[VRCP14PD]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\371\1\x4C\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\371\1\x4C\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\371\1\x4C\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\371\1\x4C\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\352\361\371\1\x4C\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\x4C\110 AVX512,TFV
+
+[VRCP14PS]
+(Ch_All)
+xmmreg_mz,xmmrm \350\361\371\1\x4C\110 AVX512,TFV
+xmmreg_mz,bmem32 \350\361\371\1\x4C\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\361\364\371\1\x4C\110 AVX512,TFV
+ymmreg_mz,bmem32 \350\361\364\371\1\x4C\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\361\371\1\x4C\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\x4C\110 AVX512,TFV
+
+[VRCP14SD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64 \350\352\361\371\1\x4D\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg \350\352\361\371\1\x4D\75\120 AVX512
+
+[VRCP14SS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32 \350\361\371\1\x4D\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg \350\361\371\1\x4D\75\120 AVX512
+
+[VRCP28PD]
+(Ch_All)
+zmmreg_mz,mem512 \350\351\352\361\371\1\xCA\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\xCA\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\352\361\371\1\xCA\110 AVX512
+
+[VRCP28PS]
+(Ch_All)
+zmmreg_mz,mem512 \350\351\361\371\1\xCA\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\xCA\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\361\371\1\xCA\110 AVX512
+
+[VRCP28SD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64 \350\352\361\371\1\xCB\75\120 AVX512,T1S
+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\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \350\361\371\1\xCB\75\120 AVX512
+
+[VREDUCEPD]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\352\361\372\1\x56\110\26 AVX512,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\372\1\x56\110\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\364\372\1\x56\110\26 AVX512,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x56\110\26 AVX512,TFV
+zmmreg_mz,mem512,imm8 \350\351\352\361\372\1\x56\110\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x56\110\26 AVX512,TFV
+zmmreg_mz,zmmreg_sae,imm8 \350\351\352\361\372\1\x56\110\26 AVX512
+
+[VREDUCEPS]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\361\372\1\x56\110\26 AVX512,TFV
+xmmreg_mz,bmem32,imm8 \350\361\372\1\x56\110\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\361\364\372\1\x56\110\26 AVX512,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\372\1\x56\110\26 AVX512,TFV
+zmmreg_mz,mem512,imm8 \350\351\361\372\1\x56\110\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\372\1\x56\110\26 AVX512,TFV
+zmmreg_mz,zmmreg_sae,imm8 \350\351\361\372\1\x56\110\26 AVX512
+
+[VREDUCESD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64,imm8 \350\352\361\372\1\x57\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\352\361\372\1\x57\75\120\27 AVX512
+
+[VREDUCESS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32,imm8 \350\361\372\1\x57\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\361\372\1\x57\75\120\27 AVX512
+
+[VRNDSCALEPD]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\352\361\372\1\x09\110\26 AVX512,TFV
+xmmreg_mz,bmem64,imm8 \350\352\361\372\1\x09\110\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\352\361\364\372\1\x09\110\26 AVX512,TFV
+ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x09\110\26 AVX512,TFV
+zmmreg_mz,mem512,imm8 \350\351\352\361\372\1\x09\110\26 AVX512,TFV
+zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x09\110\26 AVX512,TFV
+zmmreg_mz,zmmreg_sae,imm8 \350\351\352\361\372\1\x09\110\26 AVX512
+
+[VRNDSCALEPS]
+(Ch_All)
+xmmreg_mz,xmmrm,imm8 \350\361\372\1\x08\110\26 AVX512,TFV
+xmmreg_mz,bmem32,imm8 \350\361\372\1\x08\110\26 AVX512,TFV
+ymmreg_mz,ymmrm,imm8 \350\361\364\372\1\x08\110\26 AVX512,TFV
+ymmreg_mz,bmem32,imm8 \350\361\364\372\1\x08\110\26 AVX512,TFV
+zmmreg_mz,mem512,imm8 \350\351\361\372\1\x08\110\26 AVX512,TFV
+zmmreg_mz,bmem32,imm8 \350\351\361\372\1\x08\110\26 AVX512,TFV
+zmmreg_mz,zmmreg_sae,imm8 \350\351\361\372\1\x08\110\26 AVX512
+
+[VRNDSCALESD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64,imm8 \350\352\361\372\1\x0B\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\352\361\372\1\x0B\75\120\27 AVX512
+
+[VRNDSCALESS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32,imm8 \350\361\372\1\x0A\75\120\27 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae,imm8 \350\361\372\1\x0A\75\120\27 AVX512
+
+[VRSQRT14PD]
+(Ch_All)
+xmmreg_mz,xmmrm \350\352\361\371\1\x4E\110 AVX512,TFV
+xmmreg_mz,bmem64 \350\352\361\371\1\x4E\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\352\361\364\371\1\x4E\110 AVX512,TFV
+ymmreg_mz,bmem64 \350\352\361\364\371\1\x4E\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\352\361\371\1\x4E\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\x4E\110 AVX512,TFV
+
+[VRSQRT14PS]
+(Ch_All)
+xmmreg_mz,xmmrm \350\361\371\1\x4E\110 AVX512,TFV
+xmmreg_mz,bmem32 \350\361\371\1\x4E\110 AVX512,TFV
+ymmreg_mz,ymmrm \350\361\364\371\1\x4E\110 AVX512,TFV
+ymmreg_mz,bmem32 \350\361\364\371\1\x4E\110 AVX512,TFV
+zmmreg_mz,zmmrm \350\351\361\371\1\x4E\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\x4E\110 AVX512,TFV
+
+[VRSQRT14SD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmreg \350\352\361\371\1\x4F\75\120 AVX512
+xmmreg_mz,xmmreg,mem64 \350\352\361\371\1\x4F\75\120 AVX512,T1S
+
+[VRSQRT14SS]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmreg \350\361\371\1\x4F\75\120 AVX512
+xmmreg_mz,xmmreg,mem32 \350\361\371\1\x4F\75\120 AVX512,T1S
+
+[VRSQRT28PD]
+(Ch_All)
+zmmreg_mz,mem512 \350\351\352\361\371\1\xCC\110 AVX512,TFV
+zmmreg_mz,bmem64 \350\351\352\361\371\1\xCC\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\352\361\371\1\xCC\110 AVX512
+
+[VRSQRT28PS]
+(Ch_All)
+zmmreg_mz,mem512 \350\351\361\371\1\xCC\110 AVX512,TFV
+zmmreg_mz,bmem32 \350\351\361\371\1\xCC\110 AVX512,TFV
+zmmreg_mz,zmmreg_sae \350\351\361\371\1\xCC\110 AVX512
+
+[VRSQRT28SD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64 \350\352\361\371\1\xCD\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \350\352\361\371\1\xCD\75\120 AVX512
+
+[VRSQRT28SS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32 \350\361\371\1\xCD\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_sae \350\361\371\1\xCD\75\120 AVX512
+
+[VSCALEFPD]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\352\361\371\1\x2C\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem64 \350\352\361\371\1\x2C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x2C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x2C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\352\361\371\1\x2C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x2C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\352\361\371\1\x2C\75\120 AVX512
+
+[VSCALEFPS]
+(Ch_All)
+xmmreg_mz,xmmreg,xmmrm \350\361\371\1\x2C\75\120 AVX512,TFV
+xmmreg_mz,xmmreg,bmem32 \350\361\371\1\x2C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,ymmrm \350\361\364\371\1\x2C\75\120 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32 \350\361\364\371\1\x2C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,mem512 \350\351\361\371\1\x2C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x2C\75\120 AVX512,TFV
+zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x2C\75\120 AVX512
+
+[VSCALEFSD]
+(Ch_All)
+xmmreg_mz,xmmreg,mem64 \350\352\361\371\1\x2D\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_er \350\352\361\371\1\x2D\75\120 AVX512
+
+[VSCALEFSS]
+(Ch_All)
+xmmreg_mz,xmmreg,mem32 \350\361\371\1\x2D\75\120 AVX512,T1S
+xmmreg_mz,xmmreg,xmmreg_er \350\361\371\1\x2D\75\120 AVX512
+
+[VSCATTERDPD]
+(Ch_All)
+xmem64_m,xmmreg \350\352\361\371\1\xA2\101 AVX512,T1S
+xmem64_m,ymmreg \350\352\361\364\371\1\xA2\101 AVX512,T1S
+ymem64_m,zmmreg \350\351\352\361\371\1\xA2\101 AVX512,T1S
+
+[VSCATTERDPS]
+(Ch_All)
+xmem32_m,xmmreg \350\361\371\1\xA2\101 AVX512,T1S
+ymem32_m,ymmreg \350\361\364\371\1\xA2\101 AVX512,T1S
+zmem32_m,zmmreg \350\351\361\371\1\xA2\101 AVX512,T1S
+
+
+[VSCATTERQPD]
+(Ch_All)
+xmem64_m,xmmreg \350\352\361\371\1\xA3\101 AVX512,T1S
+ymem64_m,ymmreg \350\352\361\364\371\1\xA3\101 AVX512,T1S
+zmem64_m,zmmreg \350\351\352\361\371\1\xA3\101 AVX512,T1S
+
+[VSCATTERQPS]
+(Ch_All)
+xmem32_m,xmmreg \350\361\371\1\xA3\101 AVX512,T1S
+ymem32_m,xmmreg \350\361\364\371\1\xA3\101 AVX512,T1S
+zmem32_m,ymmreg \350\351\361\371\1\xA3\101 AVX512,T1S
+
+[VSHUFF32X4]
+(Ch_All)
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\364\372\1\x23\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32,imm8 \350\361\364\372\1\x23\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\361\372\1\x23\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32,imm8 \350\351\361\372\1\x23\75\120\27 AVX512,TFV
+
+[VSHUFF64X2]
+(Ch_All)
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x23\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x23\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x23\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x23\75\120\27 AVX512,TFV
+
+[VSHUFI32X4]
+(Ch_All)
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\361\364\372\1\x43\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem32,imm8 \350\361\364\372\1\x43\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\361\372\1\x43\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem32,imm8 \350\351\361\372\1\x43\75\120\27 AVX512,TFV
+
+[VSHUFI64X2]
+(Ch_All)
+ymmreg_mz,ymmreg,ymmrm,imm8 \350\352\361\364\372\1\x43\75\120\27 AVX512,TFV
+ymmreg_mz,ymmreg,bmem64,imm8 \350\352\361\364\372\1\x43\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,zmmrm,imm8 \350\351\352\361\372\1\x43\75\120\27 AVX512,TFV
+zmmreg_mz,zmmreg,bmem64,imm8 \350\351\352\361\372\1\x43\75\120\27 AVX512,TFV
+
diff --git a/compiler/x86/x86reg.dat b/compiler/x86/x86reg.dat
index bd94e9b2fc..db0cf68e50 100644
--- a/compiler/x86/x86reg.dat
+++ b/compiler/x86/x86reg.dat
@@ -159,6 +159,22 @@ NR_XMM12,$040C000c,xmm12,%xmm12,xmm12,xmm12,-1,-1,-1,29,OT_XMMREG,4,64
NR_XMM13,$040C000d,xmm13,%xmm13,xmm13,xmm13,-1,-1,-1,30,OT_XMMREG,5,64
NR_XMM14,$040C000e,xmm14,%xmm14,xmm14,xmm14,-1,-1,-1,31,OT_XMMREG,6,64
NR_XMM15,$040C000f,xmm15,%xmm15,xmm15,xmm15,-1,-1,-1,32,OT_XMMREG,7,64
+NR_XMM16,$040C0010,xmm16,%xmm16,xmm16,xmm16,-1,-1,-1,67,OT_XMMREG,0,64
+NR_XMM17,$040C0011,xmm17,%xmm17,xmm17,xmm17,-1,-1,-1,68,OT_XMMREG,1,64
+NR_XMM18,$040C0012,xmm18,%xmm18,xmm18,xmm18,-1,-1,-1,69,OT_XMMREG,2,64
+NR_XMM19,$040C0013,xmm19,%xmm19,xmm19,xmm19,-1,-1,-1,70,OT_XMMREG,3,64
+NR_XMM20,$040C0014,xmm20,%xmm20,xmm20,xmm20,-1,-1,-1,71,OT_XMMREG,4,64
+NR_XMM21,$040C0015,xmm21,%xmm21,xmm21,xmm21,-1,-1,-1,72,OT_XMMREG,5,64
+NR_XMM22,$040C0016,xmm22,%xmm22,xmm22,xmm22,-1,-1,-1,73,OT_XMMREG,6,64
+NR_XMM23,$040C0017,xmm23,%xmm23,xmm23,xmm23,-1,-1,-1,74,OT_XMMREG,7,64
+NR_XMM24,$040C0018,xmm24,%xmm24,xmm24,xmm24,-1,-1,-1,75,OT_XMMREG,0,64
+NR_XMM25,$040C0019,xmm25,%xmm25,xmm25,xmm25,-1,-1,-1,76,OT_XMMREG,1,64
+NR_XMM26,$040C001A,xmm26,%xmm26,xmm26,xmm26,-1,-1,-1,77,OT_XMMREG,2,64
+NR_XMM27,$040C001B,xmm27,%xmm27,xmm27,xmm27,-1,-1,-1,78,OT_XMMREG,3,64
+NR_XMM28,$040C001C,xmm28,%xmm28,xmm28,xmm28,-1,-1,-1,79,OT_XMMREG,4,64
+NR_XMM29,$040C001D,xmm29,%xmm29,xmm29,xmm29,-1,-1,-1,80,OT_XMMREG,5,64
+NR_XMM30,$040C001E,xmm30,%xmm30,xmm30,xmm30,-1,-1,-1,81,OT_XMMREG,6,64
+NR_XMM31,$040C001F,xmm31,%xmm31,xmm31,xmm31,-1,-1,-1,82,OT_XMMREG,7,64
NR_YMM0,$040D0000,ymm0,%ymm0,ymm0,ymm0,21,-1,21,17,OT_YMMREG,0
NR_YMM1,$040D0001,ymm1,%ymm1,ymm1,ymm1,22,-1,22,18,OT_YMMREG,1
@@ -176,3 +192,68 @@ NR_YMM12,$040D000c,ymm12,%ymm12,ymm12,ymm12,-1,-1,-1,29,OT_YMMREG,4,64
NR_YMM13,$040D000d,ymm13,%ymm13,ymm13,ymm13,-1,-1,-1,30,OT_YMMREG,5,64
NR_YMM14,$040D000e,ymm14,%ymm14,ymm14,ymm14,-1,-1,-1,31,OT_YMMREG,6,64
NR_YMM15,$040D000f,ymm15,%ymm15,ymm15,ymm15,-1,-1,-1,32,OT_YMMREG,7,64
+NR_YMM16,$040D0010,ymm16,%ymm16,ymm16,ymm16,-1,-1,-1,67,OT_YMMREG,0,64
+NR_YMM17,$040D0011,ymm17,%ymm17,ymm17,ymm17,-1,-1,-1,68,OT_YMMREG,1,64
+NR_YMM18,$040D0012,ymm18,%ymm18,ymm18,ymm18,-1,-1,-1,69,OT_YMMREG,2,64
+NR_YMM19,$040D0013,ymm19,%ymm19,ymm19,ymm19,-1,-1,-1,70,OT_YMMREG,3,64
+NR_YMM20,$040D0014,ymm20,%ymm20,ymm20,ymm20,-1,-1,-1,71,OT_YMMREG,4,64
+NR_YMM21,$040D0015,ymm21,%ymm21,ymm21,ymm21,-1,-1,-1,72,OT_YMMREG,5,64
+NR_YMM22,$040D0016,ymm22,%ymm22,ymm22,ymm22,-1,-1,-1,73,OT_YMMREG,6,64
+NR_YMM23,$040D0017,ymm23,%ymm23,ymm23,ymm23,-1,-1,-1,74,OT_YMMREG,7,64
+NR_YMM24,$040D0018,ymm24,%ymm24,ymm24,ymm24,-1,-1,-1,75,OT_YMMREG,0,64
+NR_YMM25,$040D0019,ymm25,%ymm25,ymm25,ymm25,-1,-1,-1,76,OT_YMMREG,1,64
+NR_YMM26,$040D001a,ymm26,%ymm26,ymm26,ymm26,-1,-1,-1,77,OT_YMMREG,2,64
+NR_YMM27,$040D001b,ymm27,%ymm27,ymm27,ymm27,-1,-1,-1,78,OT_YMMREG,3,64
+NR_YMM28,$040D001c,ymm28,%ymm28,ymm28,ymm28,-1,-1,-1,79,OT_YMMREG,4,64
+NR_YMM29,$040D001d,ymm29,%ymm29,ymm29,ymm29,-1,-1,-1,80,OT_YMMREG,5,64
+NR_YMM30,$040D001e,ymm30,%ymm30,ymm30,ymm30,-1,-1,-1,81,OT_YMMREG,6,64
+NR_YMM31,$040D001f,ymm31,%ymm31,ymm31,ymm31,-1,-1,-1,82,OT_YMMREG,7,64
+
+
+NR_ZMM0,$040E0000,zmm0,%zmm0,zmm0,zmm0,21,-1,21,17,OT_ZMMREG,0
+NR_ZMM1,$040E0001,zmm1,%zmm1,zmm1,zmm1,22,-1,22,18,OT_ZMMREG,1
+NR_ZMM2,$040E0002,zmm2,%zmm2,zmm2,zmm2,23,-1,23,19,OT_ZMMREG,2
+NR_ZMM3,$040E0003,zmm3,%zmm3,zmm3,zmm3,24,-1,24,20,OT_ZMMREG,3
+NR_ZMM4,$040E0004,zmm4,%zmm4,zmm4,zmm4,25,-1,25,21,OT_ZMMREG,4
+NR_ZMM5,$040E0005,zmm5,%zmm5,zmm5,zmm5,26,-1,26,22,OT_ZMMREG,5
+NR_ZMM6,$040E0006,zmm6,%zmm6,zmm6,zmm6,27,-1,27,23,OT_ZMMREG,6
+NR_ZMM7,$040E0007,zmm7,%zmm7,zmm7,zmm7,28,-1,28,24,OT_ZMMREG,7
+NR_ZMM8,$040E0008,zmm8,%zmm8,zmm8,zmm8,-1,-1,-1,25,OT_ZMMREG,0,64
+NR_ZMM9,$040E0009,zmm9,%zmm9,zmm9,zmm9,-1,-1,-1,26,OT_ZMMREG,1,64
+NR_ZMM10,$040E000A,zmm10,%zmm10,zmm10,zmm10,-1,-1,-1,27,OT_ZMMREG,2,64
+NR_ZMM11,$040E000B,zmm11,%zmm11,zmm11,zmm11,-1,-1,-1,28,OT_ZMMREG,3,64
+NR_ZMM12,$040E000C,zmm12,%zmm12,zmm12,zmm12,-1,-1,-1,29,OT_ZMMREG,4,64
+NR_ZMM13,$040E000D,zmm13,%zmm13,zmm13,zmm13,-1,-1,-1,30,OT_ZMMREG,5,64
+NR_ZMM14,$040E000E,zmm14,%zmm14,zmm14,zmm14,-1,-1,-1,31,OT_ZMMREG,6,64
+NR_ZMM15,$040E000F,zmm15,%zmm15,zmm15,zmm15,-1,-1,-1,32,OT_ZMMREG,7,64
+NR_ZMM16,$040E0010,zmm16,%zmm16,zmm16,zmm16,-1,-1,-1,67,OT_ZMMREG,0,64
+NR_ZMM17,$040E0011,zmm17,%zmm17,zmm17,zmm17,-1,-1,-1,68,OT_ZMMREG,1,64
+NR_ZMM18,$040E0012,zmm18,%zmm18,zmm18,zmm18,-1,-1,-1,69,OT_ZMMREG,2,64
+NR_ZMM19,$040E0013,zmm19,%zmm19,zmm19,zmm19,-1,-1,-1,70,OT_ZMMREG,3,64
+NR_ZMM20,$040E0014,zmm20,%zmm20,zmm20,zmm20,-1,-1,-1,71,OT_ZMMREG,4,64
+NR_ZMM21,$040E0015,zmm21,%zmm21,zmm21,zmm21,-1,-1,-1,72,OT_ZMMREG,5,64
+NR_ZMM22,$040E0016,zmm22,%zmm22,zmm22,zmm22,-1,-1,-1,73,OT_ZMMREG,6,64
+NR_ZMM23,$040E0017,zmm23,%zmm23,zmm23,zmm23,-1,-1,-1,74,OT_ZMMREG,7,64
+NR_ZMM24,$040E0018,zmm24,%zmm24,zmm24,zmm24,-1,-1,-1,75,OT_ZMMREG,0,64
+NR_ZMM25,$040E0019,zmm25,%zmm25,zmm25,zmm25,-1,-1,-1,76,OT_ZMMREG,1,64
+NR_ZMM26,$040E001A,zmm26,%zmm26,zmm26,zmm26,-1,-1,-1,77,OT_ZMMREG,2,64
+NR_ZMM27,$040E001B,zmm27,%zmm27,zmm27,zmm27,-1,-1,-1,78,OT_ZMMREG,3,64
+NR_ZMM28,$040E001C,zmm28,%zmm28,zmm28,zmm28,-1,-1,-1,79,OT_ZMMREG,4,64
+NR_ZMM29,$040E001D,zmm29,%zmm29,zmm29,zmm29,-1,-1,-1,80,OT_ZMMREG,5,64
+NR_ZMM30,$040E001E,zmm30,%zmm30,zmm30,zmm30,-1,-1,-1,81,OT_ZMMREG,6,64
+NR_ZMM31,$040E001F,zmm31,%zmm31,zmm31,zmm31,-1,-1,-1,82,OT_ZMMREG,7,64
+
+NR_K0,$06000000,k0,%k0,k0,k0,-1,-1,118,118,OT_KREG,0
+NR_K1,$06000001,k1,%k1,k1,k1,-1,-1,119,119,OT_KREG,1
+NR_K2,$06000002,k2,%k2,k2,k2,-1,-1,120,120,OT_KREG,2
+NR_K3,$06000003,k3,%k3,k3,k3,-1,-1,121,121,OT_KREG,3
+NR_K4,$06000004,k4,%k4,k4,k4,-1,-1,122,122,OT_KREG,4
+NR_K5,$06000005,k5,%k5,k5,k5,-1,-1,123,123,OT_KREG,5
+NR_K6,$06000006,k6,%k6,k6,k6,-1,-1,124,124,OT_KREG,6
+NR_K7,$06000007,k7,%k7,k7,k7,-1,-1,125,125,OT_KREG,7
+
+; NR_BND0,$07000000,bnd0,%bnd0,bnd0,bnd0,-1,126,126,OT_REG_BND,0
+; NR_BND1,$07000001,bnd1,%bnd1,bnd1,bnd1,-1,127,127,OT_REG_BND,1
+; NR_BND2,$07000002,bnd2,%bnd2,bnd2,bnd2,-1,128,128,OT_REG_BND,2
+; NR_BND3,$07000003,bnd3,%bnd3,bnd3,bnd3,-1,129,129,OT_REG_BND,3
+
diff --git a/compiler/x86_64/r8664ari.inc b/compiler/x86_64/r8664ari.inc
index 85b53356b6..cd7ade7414 100644
--- a/compiler/x86_64/r8664ari.inc
+++ b/compiler/x86_64/r8664ari.inc
@@ -45,6 +45,14 @@
73,
74,
84,
+216,
+217,
+218,
+219,
+220,
+221,
+222,
+223,
112,
113,
114,
@@ -125,29 +133,93 @@
133,
134,
135,
-122,
-123,
-124,
-125,
-126,
-127,
-128,
-129,
136,
137,
-146,
-147,
-148,
-149,
-150,
-151,
138,
139,
+122,
140,
141,
142,
143,
144,
145,
+146,
+147,
+148,
+149,
+123,
+150,
+151,
+124,
+125,
+126,
+127,
+128,
+129,
+152,
+153,
+162,
+163,
+164,
+165,
+166,
+167,
+168,
+169,
+170,
+171,
+154,
+172,
+173,
+174,
+175,
+176,
+177,
+178,
+179,
+180,
+181,
+155,
+182,
+183,
+156,
+157,
+158,
+159,
+160,
+161,
81,
+184,
+185,
+194,
+195,
+196,
+197,
+198,
+199,
+200,
+201,
+202,
+203,
+186,
+204,
+205,
+206,
+207,
+208,
+209,
+210,
+211,
+212,
+213,
+187,
+214,
+215,
+188,
+189,
+190,
+191,
+192,
+193,
0
diff --git a/compiler/x86_64/r8664att.inc b/compiler/x86_64/r8664att.inc
index b06dc99208..ea88dbe10a 100644
--- a/compiler/x86_64/r8664att.inc
+++ b/compiler/x86_64/r8664att.inc
@@ -135,6 +135,22 @@
'%xmm13',
'%xmm14',
'%xmm15',
+'%xmm16',
+'%xmm17',
+'%xmm18',
+'%xmm19',
+'%xmm20',
+'%xmm21',
+'%xmm22',
+'%xmm23',
+'%xmm24',
+'%xmm25',
+'%xmm26',
+'%xmm27',
+'%xmm28',
+'%xmm29',
+'%xmm30',
+'%xmm31',
'%ymm0',
'%ymm1',
'%ymm2',
@@ -150,4 +166,60 @@
'%ymm12',
'%ymm13',
'%ymm14',
-'%ymm15'
+'%ymm15',
+'%ymm16',
+'%ymm17',
+'%ymm18',
+'%ymm19',
+'%ymm20',
+'%ymm21',
+'%ymm22',
+'%ymm23',
+'%ymm24',
+'%ymm25',
+'%ymm26',
+'%ymm27',
+'%ymm28',
+'%ymm29',
+'%ymm30',
+'%ymm31',
+'%zmm0',
+'%zmm1',
+'%zmm2',
+'%zmm3',
+'%zmm4',
+'%zmm5',
+'%zmm6',
+'%zmm7',
+'%zmm8',
+'%zmm9',
+'%zmm10',
+'%zmm11',
+'%zmm12',
+'%zmm13',
+'%zmm14',
+'%zmm15',
+'%zmm16',
+'%zmm17',
+'%zmm18',
+'%zmm19',
+'%zmm20',
+'%zmm21',
+'%zmm22',
+'%zmm23',
+'%zmm24',
+'%zmm25',
+'%zmm26',
+'%zmm27',
+'%zmm28',
+'%zmm29',
+'%zmm30',
+'%zmm31',
+'%k0',
+'%k1',
+'%k2',
+'%k3',
+'%k4',
+'%k5',
+'%k6',
+'%k7'
diff --git a/compiler/x86_64/r8664con.inc b/compiler/x86_64/r8664con.inc
index 55c3e76a5c..4ee6235466 100644
--- a/compiler/x86_64/r8664con.inc
+++ b/compiler/x86_64/r8664con.inc
@@ -135,6 +135,22 @@ NR_XMM12 = tregister($040C000c);
NR_XMM13 = tregister($040C000d);
NR_XMM14 = tregister($040C000e);
NR_XMM15 = tregister($040C000f);
+NR_XMM16 = tregister($040C0010);
+NR_XMM17 = tregister($040C0011);
+NR_XMM18 = tregister($040C0012);
+NR_XMM19 = tregister($040C0013);
+NR_XMM20 = tregister($040C0014);
+NR_XMM21 = tregister($040C0015);
+NR_XMM22 = tregister($040C0016);
+NR_XMM23 = tregister($040C0017);
+NR_XMM24 = tregister($040C0018);
+NR_XMM25 = tregister($040C0019);
+NR_XMM26 = tregister($040C001A);
+NR_XMM27 = tregister($040C001B);
+NR_XMM28 = tregister($040C001C);
+NR_XMM29 = tregister($040C001D);
+NR_XMM30 = tregister($040C001E);
+NR_XMM31 = tregister($040C001F);
NR_YMM0 = tregister($040D0000);
NR_YMM1 = tregister($040D0001);
NR_YMM2 = tregister($040D0002);
@@ -151,3 +167,59 @@ NR_YMM12 = tregister($040D000c);
NR_YMM13 = tregister($040D000d);
NR_YMM14 = tregister($040D000e);
NR_YMM15 = tregister($040D000f);
+NR_YMM16 = tregister($040D0010);
+NR_YMM17 = tregister($040D0011);
+NR_YMM18 = tregister($040D0012);
+NR_YMM19 = tregister($040D0013);
+NR_YMM20 = tregister($040D0014);
+NR_YMM21 = tregister($040D0015);
+NR_YMM22 = tregister($040D0016);
+NR_YMM23 = tregister($040D0017);
+NR_YMM24 = tregister($040D0018);
+NR_YMM25 = tregister($040D0019);
+NR_YMM26 = tregister($040D001a);
+NR_YMM27 = tregister($040D001b);
+NR_YMM28 = tregister($040D001c);
+NR_YMM29 = tregister($040D001d);
+NR_YMM30 = tregister($040D001e);
+NR_YMM31 = tregister($040D001f);
+NR_ZMM0 = tregister($040E0000);
+NR_ZMM1 = tregister($040E0001);
+NR_ZMM2 = tregister($040E0002);
+NR_ZMM3 = tregister($040E0003);
+NR_ZMM4 = tregister($040E0004);
+NR_ZMM5 = tregister($040E0005);
+NR_ZMM6 = tregister($040E0006);
+NR_ZMM7 = tregister($040E0007);
+NR_ZMM8 = tregister($040E0008);
+NR_ZMM9 = tregister($040E0009);
+NR_ZMM10 = tregister($040E000A);
+NR_ZMM11 = tregister($040E000B);
+NR_ZMM12 = tregister($040E000C);
+NR_ZMM13 = tregister($040E000D);
+NR_ZMM14 = tregister($040E000E);
+NR_ZMM15 = tregister($040E000F);
+NR_ZMM16 = tregister($040E0010);
+NR_ZMM17 = tregister($040E0011);
+NR_ZMM18 = tregister($040E0012);
+NR_ZMM19 = tregister($040E0013);
+NR_ZMM20 = tregister($040E0014);
+NR_ZMM21 = tregister($040E0015);
+NR_ZMM22 = tregister($040E0016);
+NR_ZMM23 = tregister($040E0017);
+NR_ZMM24 = tregister($040E0018);
+NR_ZMM25 = tregister($040E0019);
+NR_ZMM26 = tregister($040E001A);
+NR_ZMM27 = tregister($040E001B);
+NR_ZMM28 = tregister($040E001C);
+NR_ZMM29 = tregister($040E001D);
+NR_ZMM30 = tregister($040E001E);
+NR_ZMM31 = tregister($040E001F);
+NR_K0 = tregister($06000000);
+NR_K1 = tregister($06000001);
+NR_K2 = tregister($06000002);
+NR_K3 = tregister($06000003);
+NR_K4 = tregister($06000004);
+NR_K5 = tregister($06000005);
+NR_K6 = tregister($06000006);
+NR_K7 = tregister($06000007);
diff --git a/compiler/x86_64/r8664dwrf.inc b/compiler/x86_64/r8664dwrf.inc
index 6687449748..a391385c06 100644
--- a/compiler/x86_64/r8664dwrf.inc
+++ b/compiler/x86_64/r8664dwrf.inc
@@ -135,6 +135,22 @@
30,
31,
32,
+67,
+68,
+69,
+70,
+71,
+72,
+73,
+74,
+75,
+76,
+77,
+78,
+79,
+80,
+81,
+82,
17,
18,
19,
@@ -150,4 +166,60 @@
29,
30,
31,
-32
+32,
+67,
+68,
+69,
+70,
+71,
+72,
+73,
+74,
+75,
+76,
+77,
+78,
+79,
+80,
+81,
+82,
+17,
+18,
+19,
+20,
+21,
+22,
+23,
+24,
+25,
+26,
+27,
+28,
+29,
+30,
+31,
+32,
+67,
+68,
+69,
+70,
+71,
+72,
+73,
+74,
+75,
+76,
+77,
+78,
+79,
+80,
+81,
+82,
+118,
+119,
+120,
+121,
+122,
+123,
+124,
+125
diff --git a/compiler/x86_64/r8664int.inc b/compiler/x86_64/r8664int.inc
index 94ef60f4db..4d992d153d 100644
--- a/compiler/x86_64/r8664int.inc
+++ b/compiler/x86_64/r8664int.inc
@@ -135,6 +135,22 @@
'xmm13',
'xmm14',
'xmm15',
+'xmm16',
+'xmm17',
+'xmm18',
+'xmm19',
+'xmm20',
+'xmm21',
+'xmm22',
+'xmm23',
+'xmm24',
+'xmm25',
+'xmm26',
+'xmm27',
+'xmm28',
+'xmm29',
+'xmm30',
+'xmm31',
'ymm0',
'ymm1',
'ymm2',
@@ -150,4 +166,60 @@
'ymm12',
'ymm13',
'ymm14',
-'ymm15'
+'ymm15',
+'ymm16',
+'ymm17',
+'ymm18',
+'ymm19',
+'ymm20',
+'ymm21',
+'ymm22',
+'ymm23',
+'ymm24',
+'ymm25',
+'ymm26',
+'ymm27',
+'ymm28',
+'ymm29',
+'ymm30',
+'ymm31',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'zmm8',
+'zmm9',
+'zmm10',
+'zmm11',
+'zmm12',
+'zmm13',
+'zmm14',
+'zmm15',
+'zmm16',
+'zmm17',
+'zmm18',
+'zmm19',
+'zmm20',
+'zmm21',
+'zmm22',
+'zmm23',
+'zmm24',
+'zmm25',
+'zmm26',
+'zmm27',
+'zmm28',
+'zmm29',
+'zmm30',
+'zmm31',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/x86_64/r8664iri.inc b/compiler/x86_64/r8664iri.inc
index aa7503d5cd..3f48baa79f 100644
--- a/compiler/x86_64/r8664iri.inc
+++ b/compiler/x86_64/r8664iri.inc
@@ -46,6 +46,14 @@
73,
74,
84,
+216,
+217,
+218,
+219,
+220,
+221,
+222,
+223,
112,
113,
114,
@@ -126,28 +134,92 @@
133,
134,
135,
-122,
-123,
-124,
-125,
-126,
-127,
-128,
-129,
136,
137,
-146,
-147,
-148,
-149,
-150,
-151,
138,
139,
+122,
140,
141,
142,
143,
144,
145,
-81
+146,
+147,
+148,
+149,
+123,
+150,
+151,
+124,
+125,
+126,
+127,
+128,
+129,
+152,
+153,
+162,
+163,
+164,
+165,
+166,
+167,
+168,
+169,
+170,
+171,
+154,
+172,
+173,
+174,
+175,
+176,
+177,
+178,
+179,
+180,
+181,
+155,
+182,
+183,
+156,
+157,
+158,
+159,
+160,
+161,
+81,
+184,
+185,
+194,
+195,
+196,
+197,
+198,
+199,
+200,
+201,
+202,
+203,
+186,
+204,
+205,
+206,
+207,
+208,
+209,
+210,
+211,
+212,
+213,
+187,
+214,
+215,
+188,
+189,
+190,
+191,
+192,
+193
diff --git a/compiler/x86_64/r8664nasm.inc b/compiler/x86_64/r8664nasm.inc
index dffd83b9f5..f167c537c3 100644
--- a/compiler/x86_64/r8664nasm.inc
+++ b/compiler/x86_64/r8664nasm.inc
@@ -135,6 +135,22 @@
'xmm13',
'xmm14',
'xmm15',
+'xmm16',
+'xmm17',
+'xmm18',
+'xmm19',
+'xmm20',
+'xmm21',
+'xmm22',
+'xmm23',
+'xmm24',
+'xmm25',
+'xmm26',
+'xmm27',
+'xmm28',
+'xmm29',
+'xmm30',
+'xmm31',
'ymm0',
'ymm1',
'ymm2',
@@ -150,4 +166,60 @@
'ymm12',
'ymm13',
'ymm14',
-'ymm15'
+'ymm15',
+'ymm16',
+'ymm17',
+'ymm18',
+'ymm19',
+'ymm20',
+'ymm21',
+'ymm22',
+'ymm23',
+'ymm24',
+'ymm25',
+'ymm26',
+'ymm27',
+'ymm28',
+'ymm29',
+'ymm30',
+'ymm31',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'zmm8',
+'zmm9',
+'zmm10',
+'zmm11',
+'zmm12',
+'zmm13',
+'zmm14',
+'zmm15',
+'zmm16',
+'zmm17',
+'zmm18',
+'zmm19',
+'zmm20',
+'zmm21',
+'zmm22',
+'zmm23',
+'zmm24',
+'zmm25',
+'zmm26',
+'zmm27',
+'zmm28',
+'zmm29',
+'zmm30',
+'zmm31',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/x86_64/r8664nor.inc b/compiler/x86_64/r8664nor.inc
index fce6a32861..12879bbca4 100644
--- a/compiler/x86_64/r8664nor.inc
+++ b/compiler/x86_64/r8664nor.inc
@@ -1,2 +1,2 @@
{ don't edit, this file is generated from x86reg.dat }
-152
+224
diff --git a/compiler/x86_64/r8664num.inc b/compiler/x86_64/r8664num.inc
index e389770371..c066dc0173 100644
--- a/compiler/x86_64/r8664num.inc
+++ b/compiler/x86_64/r8664num.inc
@@ -135,6 +135,22 @@ tregister($040C000c),
tregister($040C000d),
tregister($040C000e),
tregister($040C000f),
+tregister($040C0010),
+tregister($040C0011),
+tregister($040C0012),
+tregister($040C0013),
+tregister($040C0014),
+tregister($040C0015),
+tregister($040C0016),
+tregister($040C0017),
+tregister($040C0018),
+tregister($040C0019),
+tregister($040C001A),
+tregister($040C001B),
+tregister($040C001C),
+tregister($040C001D),
+tregister($040C001E),
+tregister($040C001F),
tregister($040D0000),
tregister($040D0001),
tregister($040D0002),
@@ -150,4 +166,60 @@ tregister($040D000b),
tregister($040D000c),
tregister($040D000d),
tregister($040D000e),
-tregister($040D000f)
+tregister($040D000f),
+tregister($040D0010),
+tregister($040D0011),
+tregister($040D0012),
+tregister($040D0013),
+tregister($040D0014),
+tregister($040D0015),
+tregister($040D0016),
+tregister($040D0017),
+tregister($040D0018),
+tregister($040D0019),
+tregister($040D001a),
+tregister($040D001b),
+tregister($040D001c),
+tregister($040D001d),
+tregister($040D001e),
+tregister($040D001f),
+tregister($040E0000),
+tregister($040E0001),
+tregister($040E0002),
+tregister($040E0003),
+tregister($040E0004),
+tregister($040E0005),
+tregister($040E0006),
+tregister($040E0007),
+tregister($040E0008),
+tregister($040E0009),
+tregister($040E000A),
+tregister($040E000B),
+tregister($040E000C),
+tregister($040E000D),
+tregister($040E000E),
+tregister($040E000F),
+tregister($040E0010),
+tregister($040E0011),
+tregister($040E0012),
+tregister($040E0013),
+tregister($040E0014),
+tregister($040E0015),
+tregister($040E0016),
+tregister($040E0017),
+tregister($040E0018),
+tregister($040E0019),
+tregister($040E001A),
+tregister($040E001B),
+tregister($040E001C),
+tregister($040E001D),
+tregister($040E001E),
+tregister($040E001F),
+tregister($06000000),
+tregister($06000001),
+tregister($06000002),
+tregister($06000003),
+tregister($06000004),
+tregister($06000005),
+tregister($06000006),
+tregister($06000007)
diff --git a/compiler/x86_64/r8664ot.inc b/compiler/x86_64/r8664ot.inc
index 86cea26bae..8262361f69 100644
--- a/compiler/x86_64/r8664ot.inc
+++ b/compiler/x86_64/r8664ot.inc
@@ -135,6 +135,39 @@ OT_XMMREG,
OT_XMMREG,
OT_XMMREG,
OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_XMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
+OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
@@ -150,4 +183,43 @@ OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
OT_YMMREG,
-OT_YMMREG
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_ZMMREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG,
+OT_KREG
diff --git a/compiler/x86_64/r8664rni.inc b/compiler/x86_64/r8664rni.inc
index d826b3e194..ebf55926fa 100644
--- a/compiler/x86_64/r8664rni.inc
+++ b/compiler/x86_64/r8664rni.inc
@@ -117,6 +117,70 @@
149,
150,
151,
+152,
+153,
+154,
+155,
+156,
+157,
+158,
+159,
+160,
+161,
+162,
+163,
+164,
+165,
+166,
+167,
+168,
+169,
+170,
+171,
+172,
+173,
+174,
+175,
+176,
+177,
+178,
+179,
+180,
+181,
+182,
+183,
+184,
+185,
+186,
+187,
+188,
+189,
+190,
+191,
+192,
+193,
+194,
+195,
+196,
+197,
+198,
+199,
+200,
+201,
+202,
+203,
+204,
+205,
+206,
+207,
+208,
+209,
+210,
+211,
+212,
+213,
+214,
+215,
69,
70,
71,
@@ -150,4 +214,12 @@
82,
83,
84,
-85
+85,
+216,
+217,
+218,
+219,
+220,
+221,
+222,
+223
diff --git a/compiler/x86_64/r8664sri.inc b/compiler/x86_64/r8664sri.inc
index aa7503d5cd..3f48baa79f 100644
--- a/compiler/x86_64/r8664sri.inc
+++ b/compiler/x86_64/r8664sri.inc
@@ -46,6 +46,14 @@
73,
74,
84,
+216,
+217,
+218,
+219,
+220,
+221,
+222,
+223,
112,
113,
114,
@@ -126,28 +134,92 @@
133,
134,
135,
-122,
-123,
-124,
-125,
-126,
-127,
-128,
-129,
136,
137,
-146,
-147,
-148,
-149,
-150,
-151,
138,
139,
+122,
140,
141,
142,
143,
144,
145,
-81
+146,
+147,
+148,
+149,
+123,
+150,
+151,
+124,
+125,
+126,
+127,
+128,
+129,
+152,
+153,
+162,
+163,
+164,
+165,
+166,
+167,
+168,
+169,
+170,
+171,
+154,
+172,
+173,
+174,
+175,
+176,
+177,
+178,
+179,
+180,
+181,
+155,
+182,
+183,
+156,
+157,
+158,
+159,
+160,
+161,
+81,
+184,
+185,
+194,
+195,
+196,
+197,
+198,
+199,
+200,
+201,
+202,
+203,
+186,
+204,
+205,
+206,
+207,
+208,
+209,
+210,
+211,
+212,
+213,
+187,
+214,
+215,
+188,
+189,
+190,
+191,
+192,
+193
diff --git a/compiler/x86_64/r8664stab.inc b/compiler/x86_64/r8664stab.inc
index 6687449748..a391385c06 100644
--- a/compiler/x86_64/r8664stab.inc
+++ b/compiler/x86_64/r8664stab.inc
@@ -135,6 +135,22 @@
30,
31,
32,
+67,
+68,
+69,
+70,
+71,
+72,
+73,
+74,
+75,
+76,
+77,
+78,
+79,
+80,
+81,
+82,
17,
18,
19,
@@ -150,4 +166,60 @@
29,
30,
31,
-32
+32,
+67,
+68,
+69,
+70,
+71,
+72,
+73,
+74,
+75,
+76,
+77,
+78,
+79,
+80,
+81,
+82,
+17,
+18,
+19,
+20,
+21,
+22,
+23,
+24,
+25,
+26,
+27,
+28,
+29,
+30,
+31,
+32,
+67,
+68,
+69,
+70,
+71,
+72,
+73,
+74,
+75,
+76,
+77,
+78,
+79,
+80,
+81,
+82,
+118,
+119,
+120,
+121,
+122,
+123,
+124,
+125
diff --git a/compiler/x86_64/r8664std.inc b/compiler/x86_64/r8664std.inc
index 94ef60f4db..4d992d153d 100644
--- a/compiler/x86_64/r8664std.inc
+++ b/compiler/x86_64/r8664std.inc
@@ -135,6 +135,22 @@
'xmm13',
'xmm14',
'xmm15',
+'xmm16',
+'xmm17',
+'xmm18',
+'xmm19',
+'xmm20',
+'xmm21',
+'xmm22',
+'xmm23',
+'xmm24',
+'xmm25',
+'xmm26',
+'xmm27',
+'xmm28',
+'xmm29',
+'xmm30',
+'xmm31',
'ymm0',
'ymm1',
'ymm2',
@@ -150,4 +166,60 @@
'ymm12',
'ymm13',
'ymm14',
-'ymm15'
+'ymm15',
+'ymm16',
+'ymm17',
+'ymm18',
+'ymm19',
+'ymm20',
+'ymm21',
+'ymm22',
+'ymm23',
+'ymm24',
+'ymm25',
+'ymm26',
+'ymm27',
+'ymm28',
+'ymm29',
+'ymm30',
+'ymm31',
+'zmm0',
+'zmm1',
+'zmm2',
+'zmm3',
+'zmm4',
+'zmm5',
+'zmm6',
+'zmm7',
+'zmm8',
+'zmm9',
+'zmm10',
+'zmm11',
+'zmm12',
+'zmm13',
+'zmm14',
+'zmm15',
+'zmm16',
+'zmm17',
+'zmm18',
+'zmm19',
+'zmm20',
+'zmm21',
+'zmm22',
+'zmm23',
+'zmm24',
+'zmm25',
+'zmm26',
+'zmm27',
+'zmm28',
+'zmm29',
+'zmm30',
+'zmm31',
+'k0',
+'k1',
+'k2',
+'k3',
+'k4',
+'k5',
+'k6',
+'k7'
diff --git a/compiler/x86_64/x8664ats.inc b/compiler/x86_64/x8664ats.inc
index 66480db0a4..2882fd47c5 100644
--- a/compiler/x86_64/x8664ats.inc
+++ b/compiler/x86_64/x8664ats.inc
@@ -783,6 +783,8 @@ attsufNONE,
attsufNONE,
attsufNONE,
attsufNONE,
+attsufNONE,
+attsufNONE,
attsufINT,
attsufINT,
attsufNONE,
@@ -1119,5 +1121,283 @@ attsufNONE,
attsufNONE,
attsufNONE,
attsufNONE,
-attsufINT
+attsufINT,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE,
+attsufNONE
);
diff --git a/compiler/x86_64/x8664att.inc b/compiler/x86_64/x8664att.inc
index a12456dd19..c604963f4c 100644
--- a/compiler/x86_64/x8664att.inc
+++ b/compiler/x86_64/x8664att.inc
@@ -779,8 +779,10 @@
'vcvtdq2ps',
'vcvtpd2dq',
'vcvtpd2ps',
+'vcvtph2ps',
'vcvtps2dq',
'vcvtps2pd',
+'vcvtps2ph',
'vcvtsd2si',
'vcvtsd2ss',
'vcvtsi2sd',
@@ -1049,66 +1051,66 @@
'vpgatherdq',
'vpgatherqd',
'vpgatherqq',
-'vfmadd132pd',
-'vfmadd213pd',
-'vfmadd231pd',
'vfmaddpd',
+'vfmadd132pd',
'vfmadd132ps',
-'vfmadd213ps',
-'vfmadd231ps',
'vfmadd132sd',
-'vfmadd213sd',
-'vfmadd231sd',
'vfmadd132ss',
+'vfmadd213pd',
+'vfmadd213ps',
+'vfmadd213sd',
'vfmadd213ss',
+'vfmadd231pd',
+'vfmadd231ps',
+'vfmadd231sd',
'vfmadd231ss',
'vfmaddsub132pd',
-'vfmaddsub213pd',
-'vfmaddsub231pd',
'vfmaddsub132ps',
+'vfmaddsub213pd',
'vfmaddsub213ps',
+'vfmaddsub231pd',
'vfmaddsub231ps',
-'vfmsubadd132pd',
-'vfmsubadd213pd',
-'vfmsubadd231pd',
-'vfmsubadd132ps',
-'vfmsubadd213ps',
-'vfmsubadd231ps',
'vfmsub132pd',
-'vfmsub213pd',
-'vfmsub231pd',
'vfmsub132ps',
-'vfmsub213ps',
-'vfmsub231ps',
'vfmsub132sd',
-'vfmsub213sd',
-'vfmsub231sd',
'vfmsub132ss',
+'vfmsub213pd',
+'vfmsub213ps',
+'vfmsub213sd',
'vfmsub213ss',
+'vfmsub231pd',
+'vfmsub231ps',
+'vfmsub231sd',
'vfmsub231ss',
+'vfmsubadd132pd',
+'vfmsubadd132ps',
+'vfmsubadd213pd',
+'vfmsubadd213ps',
+'vfmsubadd231pd',
+'vfmsubadd231ps',
'vfnmadd132pd',
-'vfnmadd213pd',
-'vfnmadd231pd',
'vfnmadd132ps',
-'vfnmadd213ps',
-'vfnmadd231ps',
'vfnmadd132sd',
-'vfnmadd213sd',
-'vfnmadd231sd',
'vfnmadd132ss',
+'vfnmadd213pd',
+'vfnmadd213ps',
+'vfnmadd213sd',
'vfnmadd213ss',
+'vfnmadd231pd',
+'vfnmadd231ps',
+'vfnmadd231sd',
'vfnmadd231ss',
'vfnmsub132pd',
-'vfnmsub213pd',
-'vfnmsub231pd',
'vfnmsub132ps',
-'vfnmsub213ps',
-'vfnmsub231ps',
'vfnmsub132sd',
-'vfnmsub213sd',
-'vfnmsub231sd',
'vfnmsub132ss',
+'vfnmsub213pd',
+'vfnmsub213ps',
+'vfnmsub213sd',
'vfnmsub213ss',
+'vfnmsub231pd',
+'vfnmsub231ps',
+'vfnmsub231sd',
'vfnmsub231ss',
'xacquire',
'xrelease',
@@ -1119,5 +1121,283 @@
'rdrand',
'rdseed',
'xgetbv',
-'prefetchwt1'
+'prefetchwt1',
+'kaddb',
+'kaddd',
+'kaddq',
+'kaddw',
+'kandb',
+'kandd',
+'kandnb',
+'kandnd',
+'kandnq',
+'kandnw',
+'kandq',
+'kandw',
+'kmovb',
+'kmovd',
+'kmovq',
+'kmovw',
+'knotb',
+'knotd',
+'knotq',
+'knotw',
+'korb',
+'kord',
+'korq',
+'kortestb',
+'kortestd',
+'kortestq',
+'kortestw',
+'korw',
+'kshiftlb',
+'kshiftld',
+'kshiftlq',
+'kshiftlw',
+'kshiftrb',
+'kshiftrd',
+'kshiftrq',
+'kshiftrw',
+'ktestb',
+'ktestd',
+'ktestq',
+'ktestw',
+'kunpckbw',
+'kunpckdq',
+'kunpckwd',
+'kxnorb',
+'kxnord',
+'kxnorq',
+'kxnorw',
+'kxorb',
+'kxord',
+'kxorq',
+'kxorw',
+'valignd',
+'valignq',
+'vblendmpd',
+'vblendmps',
+'vbroadcastf32x2',
+'vbroadcastf32x4',
+'vbroadcastf32x8',
+'vbroadcastf64x2',
+'vbroadcastf64x4',
+'vbroadcasti32x2',
+'vbroadcasti32x4',
+'vbroadcasti32x8',
+'vbroadcasti64x2',
+'vbroadcasti64x4',
+'vcompresspd',
+'vcompressps',
+'vcvtpd2qq',
+'vcvtpd2udq',
+'vcvtpd2uqq',
+'vcvtps2qq',
+'vcvtps2udq',
+'vcvtps2uqq',
+'vcvtqq2pd',
+'vcvtqq2ps',
+'vcvtsd2usi',
+'vcvtss2usi',
+'vcvttpd2qq',
+'vcvttpd2udq',
+'vcvttpd2uqq',
+'vcvttps2qq',
+'vcvttps2udq',
+'vcvttps2uqq',
+'vcvttsd2usi',
+'vcvttss2usi',
+'vcvtudq2pd',
+'vcvtudq2ps',
+'vcvtuqq2pd',
+'vcvtuqq2ps',
+'vcvtusi2sd',
+'vcvtusi2ss',
+'vdbpsadbw',
+'vexp2pd',
+'vexp2ps',
+'vexpandpd',
+'vexpandps',
+'vextractf32x4',
+'vextractf32x8',
+'vextractf64x2',
+'vextractf64x4',
+'vextracti32x4',
+'vextracti32x8',
+'vextracti64x2',
+'vextracti64x4',
+'vfixupimmpd',
+'vfixupimmps',
+'vfixupimmsd',
+'vfixupimmss',
+'vfpclasspd',
+'vfpclassps',
+'vfpclasssd',
+'vfpclassss',
+'vgetexppd',
+'vgetexpps',
+'vgetexpsd',
+'vgetexpss',
+'vgetmantpd',
+'vgetmantps',
+'vgetmantsd',
+'vgetmantss',
+'vinsertf32x4',
+'vinsertf32x8',
+'vinsertf64x2',
+'vinsertf64x4',
+'vinserti32x4',
+'vinserti32x8',
+'vinserti64x2',
+'vinserti64x4',
+'vmovdqa32',
+'vmovdqa64',
+'vmovdqu16',
+'vmovdqu32',
+'vmovdqu64',
+'vmovdqu8',
+'vpabsq',
+'vpandd',
+'vpandnd',
+'vpandnq',
+'vpandq',
+'vpblendmb',
+'vpblendmd',
+'vpblendmq',
+'vpblendmw',
+'vpcmpb',
+'vpcmpd',
+'vpcmpq',
+'vpcmpub',
+'vpcmpud',
+'vpcmpuq',
+'vpcmpuw',
+'vpcmpw',
+'vpcompressd',
+'vpcompressq',
+'vpconflictd',
+'vpconflictq',
+'vpermb',
+'vpermi2b',
+'vpermi2d',
+'vpermi2pd',
+'vpermi2ps',
+'vpermi2q',
+'vpermi2w',
+'vpermt2b',
+'vpermt2d',
+'vpermt2pd',
+'vpermt2ps',
+'vpermt2q',
+'vpermt2w',
+'vpermw',
+'vpexpandd',
+'vpexpandq',
+'vplzcntd',
+'vplzcntq',
+'vpmadd52huq',
+'vpmadd52luq',
+'vpmaxsq',
+'vpmaxuq',
+'vpminsq',
+'vpminuq',
+'vpmovb2m',
+'vpmovd2m',
+'vpmovdb',
+'vpmovdw',
+'vpmovm2b',
+'vpmovm2d',
+'vpmovm2q',
+'vpmovm2w',
+'vpmovq2m',
+'vpmovqb',
+'vpmovqd',
+'vpmovqw',
+'vpmovsdb',
+'vpmovsdw',
+'vpmovsqb',
+'vpmovsqd',
+'vpmovsqw',
+'vpmovswb',
+'vpmovusdb',
+'vpmovusdw',
+'vpmovusqb',
+'vpmovusqd',
+'vpmovusqw',
+'vpmovuswb',
+'vpmovw2m',
+'vpmovwb',
+'vpmullq',
+'vpmultishiftqb',
+'vpord',
+'vporq',
+'vprold',
+'vprolq',
+'vprolvd',
+'vprolvq',
+'vprord',
+'vprorq',
+'vprorvd',
+'vprorvq',
+'vpscatterdd',
+'vpscatterdq',
+'vpscatterqd',
+'vpscatterqq',
+'vpsllvw',
+'vpsraq',
+'vpsravq',
+'vpsravw',
+'vpsrlvw',
+'vpternlogd',
+'vpternlogq',
+'vptestmb',
+'vptestmd',
+'vptestmq',
+'vptestmw',
+'vptestnmb',
+'vptestnmd',
+'vptestnmq',
+'vptestnmw',
+'vpxord',
+'vpxorq',
+'vrangepd',
+'vrangeps',
+'vrangesd',
+'vrangess',
+'vrcp14pd',
+'vrcp14ps',
+'vrcp14sd',
+'vrcp14ss',
+'vrcp28pd',
+'vrcp28ps',
+'vrcp28sd',
+'vrcp28ss',
+'vreducepd',
+'vreduceps',
+'vreducesd',
+'vreducess',
+'vrndscalepd',
+'vrndscaleps',
+'vrndscalesd',
+'vrndscaless',
+'vrsqrt14pd',
+'vrsqrt14ps',
+'vrsqrt14sd',
+'vrsqrt14ss',
+'vrsqrt28pd',
+'vrsqrt28ps',
+'vrsqrt28sd',
+'vrsqrt28ss',
+'vscalefpd',
+'vscalefps',
+'vscalefsd',
+'vscalefss',
+'vscatterdpd',
+'vscatterdps',
+'vscatterqpd',
+'vscatterqps',
+'vshuff32x4',
+'vshuff64x2',
+'vshufi32x4',
+'vshufi64x2'
);
diff --git a/compiler/x86_64/x8664int.inc b/compiler/x86_64/x8664int.inc
index b251e8f145..3319b851ea 100644
--- a/compiler/x86_64/x8664int.inc
+++ b/compiler/x86_64/x8664int.inc
@@ -779,8 +779,10 @@
'vcvtdq2ps',
'vcvtpd2dq',
'vcvtpd2ps',
+'vcvtph2ps',
'vcvtps2dq',
'vcvtps2pd',
+'vcvtps2ph',
'vcvtsd2si',
'vcvtsd2ss',
'vcvtsi2sd',
@@ -1049,66 +1051,66 @@
'vpgatherdq',
'vpgatherqd',
'vpgatherqq',
-'vfmadd132pd',
-'vfmadd213pd',
-'vfmadd231pd',
'vfmaddpd',
+'vfmadd132pd',
'vfmadd132ps',
-'vfmadd213ps',
-'vfmadd231ps',
'vfmadd132sd',
-'vfmadd213sd',
-'vfmadd231sd',
'vfmadd132ss',
+'vfmadd213pd',
+'vfmadd213ps',
+'vfmadd213sd',
'vfmadd213ss',
+'vfmadd231pd',
+'vfmadd231ps',
+'vfmadd231sd',
'vfmadd231ss',
'vfmaddsub132pd',
-'vfmaddsub213pd',
-'vfmaddsub231pd',
'vfmaddsub132ps',
+'vfmaddsub213pd',
'vfmaddsub213ps',
+'vfmaddsub231pd',
'vfmaddsub231ps',
-'vfmsubadd132pd',
-'vfmsubadd213pd',
-'vfmsubadd231pd',
-'vfmsubadd132ps',
-'vfmsubadd213ps',
-'vfmsubadd231ps',
'vfmsub132pd',
-'vfmsub213pd',
-'vfmsub231pd',
'vfmsub132ps',
-'vfmsub213ps',
-'vfmsub231ps',
'vfmsub132sd',
-'vfmsub213sd',
-'vfmsub231sd',
'vfmsub132ss',
+'vfmsub213pd',
+'vfmsub213ps',
+'vfmsub213sd',
'vfmsub213ss',
+'vfmsub231pd',
+'vfmsub231ps',
+'vfmsub231sd',
'vfmsub231ss',
+'vfmsubadd132pd',
+'vfmsubadd132ps',
+'vfmsubadd213pd',
+'vfmsubadd213ps',
+'vfmsubadd231pd',
+'vfmsubadd231ps',
'vfnmadd132pd',
-'vfnmadd213pd',
-'vfnmadd231pd',
'vfnmadd132ps',
-'vfnmadd213ps',
-'vfnmadd231ps',
'vfnmadd132sd',
-'vfnmadd213sd',
-'vfnmadd231sd',
'vfnmadd132ss',
+'vfnmadd213pd',
+'vfnmadd213ps',
+'vfnmadd213sd',
'vfnmadd213ss',
+'vfnmadd231pd',
+'vfnmadd231ps',
+'vfnmadd231sd',
'vfnmadd231ss',
'vfnmsub132pd',
-'vfnmsub213pd',
-'vfnmsub231pd',
'vfnmsub132ps',
-'vfnmsub213ps',
-'vfnmsub231ps',
'vfnmsub132sd',
-'vfnmsub213sd',
-'vfnmsub231sd',
'vfnmsub132ss',
+'vfnmsub213pd',
+'vfnmsub213ps',
+'vfnmsub213sd',
'vfnmsub213ss',
+'vfnmsub231pd',
+'vfnmsub231ps',
+'vfnmsub231sd',
'vfnmsub231ss',
'xacquire',
'xrelease',
@@ -1119,5 +1121,283 @@
'rdrand',
'rdseed',
'xgetbv',
-'prefetchwt1'
+'prefetchwt1',
+'kaddb',
+'kaddd',
+'kaddq',
+'kaddw',
+'kandb',
+'kandd',
+'kandnb',
+'kandnd',
+'kandnq',
+'kandnw',
+'kandq',
+'kandw',
+'kmovb',
+'kmovd',
+'kmovq',
+'kmovw',
+'knotb',
+'knotd',
+'knotq',
+'knotw',
+'korb',
+'kord',
+'korq',
+'kortestb',
+'kortestd',
+'kortestq',
+'kortestw',
+'korw',
+'kshiftlb',
+'kshiftld',
+'kshiftlq',
+'kshiftlw',
+'kshiftrb',
+'kshiftrd',
+'kshiftrq',
+'kshiftrw',
+'ktestb',
+'ktestd',
+'ktestq',
+'ktestw',
+'kunpckbw',
+'kunpckdq',
+'kunpckwd',
+'kxnorb',
+'kxnord',
+'kxnorq',
+'kxnorw',
+'kxorb',
+'kxord',
+'kxorq',
+'kxorw',
+'valignd',
+'valignq',
+'vblendmpd',
+'vblendmps',
+'vbroadcastf32x2',
+'vbroadcastf32x4',
+'vbroadcastf32x8',
+'vbroadcastf64x2',
+'vbroadcastf64x4',
+'vbroadcasti32x2',
+'vbroadcasti32x4',
+'vbroadcasti32x8',
+'vbroadcasti64x2',
+'vbroadcasti64x4',
+'vcompresspd',
+'vcompressps',
+'vcvtpd2qq',
+'vcvtpd2udq',
+'vcvtpd2uqq',
+'vcvtps2qq',
+'vcvtps2udq',
+'vcvtps2uqq',
+'vcvtqq2pd',
+'vcvtqq2ps',
+'vcvtsd2usi',
+'vcvtss2usi',
+'vcvttpd2qq',
+'vcvttpd2udq',
+'vcvttpd2uqq',
+'vcvttps2qq',
+'vcvttps2udq',
+'vcvttps2uqq',
+'vcvttsd2usi',
+'vcvttss2usi',
+'vcvtudq2pd',
+'vcvtudq2ps',
+'vcvtuqq2pd',
+'vcvtuqq2ps',
+'vcvtusi2sd',
+'vcvtusi2ss',
+'vdbpsadbw',
+'vexp2pd',
+'vexp2ps',
+'vexpandpd',
+'vexpandps',
+'vextractf32x4',
+'vextractf32x8',
+'vextractf64x2',
+'vextractf64x4',
+'vextracti32x4',
+'vextracti32x8',
+'vextracti64x2',
+'vextracti64x4',
+'vfixupimmpd',
+'vfixupimmps',
+'vfixupimmsd',
+'vfixupimmss',
+'vfpclasspd',
+'vfpclassps',
+'vfpclasssd',
+'vfpclassss',
+'vgetexppd',
+'vgetexpps',
+'vgetexpsd',
+'vgetexpss',
+'vgetmantpd',
+'vgetmantps',
+'vgetmantsd',
+'vgetmantss',
+'vinsertf32x4',
+'vinsertf32x8',
+'vinsertf64x2',
+'vinsertf64x4',
+'vinserti32x4',
+'vinserti32x8',
+'vinserti64x2',
+'vinserti64x4',
+'vmovdqa32',
+'vmovdqa64',
+'vmovdqu16',
+'vmovdqu32',
+'vmovdqu64',
+'vmovdqu8',
+'vpabsq',
+'vpandd',
+'vpandnd',
+'vpandnq',
+'vpandq',
+'vpblendmb',
+'vpblendmd',
+'vpblendmq',
+'vpblendmw',
+'vpcmpb',
+'vpcmpd',
+'vpcmpq',
+'vpcmpub',
+'vpcmpud',
+'vpcmpuq',
+'vpcmpuw',
+'vpcmpw',
+'vpcompressd',
+'vpcompressq',
+'vpconflictd',
+'vpconflictq',
+'vpermb',
+'vpermi2b',
+'vpermi2d',
+'vpermi2pd',
+'vpermi2ps',
+'vpermi2q',
+'vpermi2w',
+'vpermt2b',
+'vpermt2d',
+'vpermt2pd',
+'vpermt2ps',
+'vpermt2q',
+'vpermt2w',
+'vpermw',
+'vpexpandd',
+'vpexpandq',
+'vplzcntd',
+'vplzcntq',
+'vpmadd52huq',
+'vpmadd52luq',
+'vpmaxsq',
+'vpmaxuq',
+'vpminsq',
+'vpminuq',
+'vpmovb2m',
+'vpmovd2m',
+'vpmovdb',
+'vpmovdw',
+'vpmovm2b',
+'vpmovm2d',
+'vpmovm2q',
+'vpmovm2w',
+'vpmovq2m',
+'vpmovqb',
+'vpmovqd',
+'vpmovqw',
+'vpmovsdb',
+'vpmovsdw',
+'vpmovsqb',
+'vpmovsqd',
+'vpmovsqw',
+'vpmovswb',
+'vpmovusdb',
+'vpmovusdw',
+'vpmovusqb',
+'vpmovusqd',
+'vpmovusqw',
+'vpmovuswb',
+'vpmovw2m',
+'vpmovwb',
+'vpmullq',
+'vpmultishiftqb',
+'vpord',
+'vporq',
+'vprold',
+'vprolq',
+'vprolvd',
+'vprolvq',
+'vprord',
+'vprorq',
+'vprorvd',
+'vprorvq',
+'vpscatterdd',
+'vpscatterdq',
+'vpscatterqd',
+'vpscatterqq',
+'vpsllvw',
+'vpsraq',
+'vpsravq',
+'vpsravw',
+'vpsrlvw',
+'vpternlogd',
+'vpternlogq',
+'vptestmb',
+'vptestmd',
+'vptestmq',
+'vptestmw',
+'vptestnmb',
+'vptestnmd',
+'vptestnmq',
+'vptestnmw',
+'vpxord',
+'vpxorq',
+'vrangepd',
+'vrangeps',
+'vrangesd',
+'vrangess',
+'vrcp14pd',
+'vrcp14ps',
+'vrcp14sd',
+'vrcp14ss',
+'vrcp28pd',
+'vrcp28ps',
+'vrcp28sd',
+'vrcp28ss',
+'vreducepd',
+'vreduceps',
+'vreducesd',
+'vreducess',
+'vrndscalepd',
+'vrndscaleps',
+'vrndscalesd',
+'vrndscaless',
+'vrsqrt14pd',
+'vrsqrt14ps',
+'vrsqrt14sd',
+'vrsqrt14ss',
+'vrsqrt28pd',
+'vrsqrt28ps',
+'vrsqrt28sd',
+'vrsqrt28ss',
+'vscalefpd',
+'vscalefps',
+'vscalefsd',
+'vscalefss',
+'vscatterdpd',
+'vscatterdps',
+'vscatterqpd',
+'vscatterqps',
+'vshuff32x4',
+'vshuff64x2',
+'vshufi32x4',
+'vshufi64x2'
);
diff --git a/compiler/x86_64/x8664nop.inc b/compiler/x86_64/x8664nop.inc
index b87615cd0e..9ae12e45f6 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 }
-2191;
+4117;
diff --git a/compiler/x86_64/x8664op.inc b/compiler/x86_64/x8664op.inc
index 91f9c2e5b7..6128a6619e 100644
--- a/compiler/x86_64/x8664op.inc
+++ b/compiler/x86_64/x8664op.inc
@@ -779,8 +779,10 @@ A_VCVTDQ2PD,
A_VCVTDQ2PS,
A_VCVTPD2DQ,
A_VCVTPD2PS,
+A_VCVTPH2PS,
A_VCVTPS2DQ,
A_VCVTPS2PD,
+A_VCVTPS2PH,
A_VCVTSD2SI,
A_VCVTSD2SS,
A_VCVTSI2SD,
@@ -1049,66 +1051,66 @@ A_VPGATHERDD,
A_VPGATHERDQ,
A_VPGATHERQD,
A_VPGATHERQQ,
-A_VFMADD132PD,
-A_VFMADD213PD,
-A_VFMADD231PD,
A_VFMADDPD,
+A_VFMADD132PD,
A_VFMADD132PS,
-A_VFMADD213PS,
-A_VFMADD231PS,
A_VFMADD132SD,
-A_VFMADD213SD,
-A_VFMADD231SD,
A_VFMADD132SS,
+A_VFMADD213PD,
+A_VFMADD213PS,
+A_VFMADD213SD,
A_VFMADD213SS,
+A_VFMADD231PD,
+A_VFMADD231PS,
+A_VFMADD231SD,
A_VFMADD231SS,
A_VFMADDSUB132PD,
-A_VFMADDSUB213PD,
-A_VFMADDSUB231PD,
A_VFMADDSUB132PS,
+A_VFMADDSUB213PD,
A_VFMADDSUB213PS,
+A_VFMADDSUB231PD,
A_VFMADDSUB231PS,
-A_VFMSUBADD132PD,
-A_VFMSUBADD213PD,
-A_VFMSUBADD231PD,
-A_VFMSUBADD132PS,
-A_VFMSUBADD213PS,
-A_VFMSUBADD231PS,
A_VFMSUB132PD,
-A_VFMSUB213PD,
-A_VFMSUB231PD,
A_VFMSUB132PS,
-A_VFMSUB213PS,
-A_VFMSUB231PS,
A_VFMSUB132SD,
-A_VFMSUB213SD,
-A_VFMSUB231SD,
A_VFMSUB132SS,
+A_VFMSUB213PD,
+A_VFMSUB213PS,
+A_VFMSUB213SD,
A_VFMSUB213SS,
+A_VFMSUB231PD,
+A_VFMSUB231PS,
+A_VFMSUB231SD,
A_VFMSUB231SS,
+A_VFMSUBADD132PD,
+A_VFMSUBADD132PS,
+A_VFMSUBADD213PD,
+A_VFMSUBADD213PS,
+A_VFMSUBADD231PD,
+A_VFMSUBADD231PS,
A_VFNMADD132PD,
-A_VFNMADD213PD,
-A_VFNMADD231PD,
A_VFNMADD132PS,
-A_VFNMADD213PS,
-A_VFNMADD231PS,
A_VFNMADD132SD,
-A_VFNMADD213SD,
-A_VFNMADD231SD,
A_VFNMADD132SS,
+A_VFNMADD213PD,
+A_VFNMADD213PS,
+A_VFNMADD213SD,
A_VFNMADD213SS,
+A_VFNMADD231PD,
+A_VFNMADD231PS,
+A_VFNMADD231SD,
A_VFNMADD231SS,
A_VFNMSUB132PD,
-A_VFNMSUB213PD,
-A_VFNMSUB231PD,
A_VFNMSUB132PS,
-A_VFNMSUB213PS,
-A_VFNMSUB231PS,
A_VFNMSUB132SD,
-A_VFNMSUB213SD,
-A_VFNMSUB231SD,
A_VFNMSUB132SS,
+A_VFNMSUB213PD,
+A_VFNMSUB213PS,
+A_VFNMSUB213SD,
A_VFNMSUB213SS,
+A_VFNMSUB231PD,
+A_VFNMSUB231PS,
+A_VFNMSUB231SD,
A_VFNMSUB231SS,
A_XACQUIRE,
A_XRELEASE,
@@ -1119,5 +1121,283 @@ A_XTEST,
A_RDRAND,
A_RDSEED,
A_XGETBV,
-A_PREFETCHWT1
+A_PREFETCHWT1,
+A_KADDB,
+A_KADDD,
+A_KADDQ,
+A_KADDW,
+A_KANDB,
+A_KANDD,
+A_KANDNB,
+A_KANDND,
+A_KANDNQ,
+A_KANDNW,
+A_KANDQ,
+A_KANDW,
+A_KMOVB,
+A_KMOVD,
+A_KMOVQ,
+A_KMOVW,
+A_KNOTB,
+A_KNOTD,
+A_KNOTQ,
+A_KNOTW,
+A_KORB,
+A_KORD,
+A_KORQ,
+A_KORTESTB,
+A_KORTESTD,
+A_KORTESTQ,
+A_KORTESTW,
+A_KORW,
+A_KSHIFTLB,
+A_KSHIFTLD,
+A_KSHIFTLQ,
+A_KSHIFTLW,
+A_KSHIFTRB,
+A_KSHIFTRD,
+A_KSHIFTRQ,
+A_KSHIFTRW,
+A_KTESTB,
+A_KTESTD,
+A_KTESTQ,
+A_KTESTW,
+A_KUNPCKBW,
+A_KUNPCKDQ,
+A_KUNPCKWD,
+A_KXNORB,
+A_KXNORD,
+A_KXNORQ,
+A_KXNORW,
+A_KXORB,
+A_KXORD,
+A_KXORQ,
+A_KXORW,
+A_VALIGND,
+A_VALIGNQ,
+A_VBLENDMPD,
+A_VBLENDMPS,
+A_VBROADCASTF32X2,
+A_VBROADCASTF32X4,
+A_VBROADCASTF32X8,
+A_VBROADCASTF64X2,
+A_VBROADCASTF64X4,
+A_VBROADCASTI32X2,
+A_VBROADCASTI32X4,
+A_VBROADCASTI32X8,
+A_VBROADCASTI64X2,
+A_VBROADCASTI64X4,
+A_VCOMPRESSPD,
+A_VCOMPRESSPS,
+A_VCVTPD2QQ,
+A_VCVTPD2UDQ,
+A_VCVTPD2UQQ,
+A_VCVTPS2QQ,
+A_VCVTPS2UDQ,
+A_VCVTPS2UQQ,
+A_VCVTQQ2PD,
+A_VCVTQQ2PS,
+A_VCVTSD2USI,
+A_VCVTSS2USI,
+A_VCVTTPD2QQ,
+A_VCVTTPD2UDQ,
+A_VCVTTPD2UQQ,
+A_VCVTTPS2QQ,
+A_VCVTTPS2UDQ,
+A_VCVTTPS2UQQ,
+A_VCVTTSD2USI,
+A_VCVTTSS2USI,
+A_VCVTUDQ2PD,
+A_VCVTUDQ2PS,
+A_VCVTUQQ2PD,
+A_VCVTUQQ2PS,
+A_VCVTUSI2SD,
+A_VCVTUSI2SS,
+A_VDBPSADBW,
+A_VEXP2PD,
+A_VEXP2PS,
+A_VEXPANDPD,
+A_VEXPANDPS,
+A_VEXTRACTF32X4,
+A_VEXTRACTF32X8,
+A_VEXTRACTF64X2,
+A_VEXTRACTF64X4,
+A_VEXTRACTI32X4,
+A_VEXTRACTI32X8,
+A_VEXTRACTI64X2,
+A_VEXTRACTI64X4,
+A_VFIXUPIMMPD,
+A_VFIXUPIMMPS,
+A_VFIXUPIMMSD,
+A_VFIXUPIMMSS,
+A_VFPCLASSPD,
+A_VFPCLASSPS,
+A_VFPCLASSSD,
+A_VFPCLASSSS,
+A_VGETEXPPD,
+A_VGETEXPPS,
+A_VGETEXPSD,
+A_VGETEXPSS,
+A_VGETMANTPD,
+A_VGETMANTPS,
+A_VGETMANTSD,
+A_VGETMANTSS,
+A_VINSERTF32X4,
+A_VINSERTF32X8,
+A_VINSERTF64X2,
+A_VINSERTF64X4,
+A_VINSERTI32X4,
+A_VINSERTI32X8,
+A_VINSERTI64X2,
+A_VINSERTI64X4,
+A_VMOVDQA32,
+A_VMOVDQA64,
+A_VMOVDQU16,
+A_VMOVDQU32,
+A_VMOVDQU64,
+A_VMOVDQU8,
+A_VPABSQ,
+A_VPANDD,
+A_VPANDND,
+A_VPANDNQ,
+A_VPANDQ,
+A_VPBLENDMB,
+A_VPBLENDMD,
+A_VPBLENDMQ,
+A_VPBLENDMW,
+A_VPCMPB,
+A_VPCMPD,
+A_VPCMPQ,
+A_VPCMPUB,
+A_VPCMPUD,
+A_VPCMPUQ,
+A_VPCMPUW,
+A_VPCMPW,
+A_VPCOMPRESSD,
+A_VPCOMPRESSQ,
+A_VPCONFLICTD,
+A_VPCONFLICTQ,
+A_VPERMB,
+A_VPERMI2B,
+A_VPERMI2D,
+A_VPERMI2PD,
+A_VPERMI2PS,
+A_VPERMI2Q,
+A_VPERMI2W,
+A_VPERMT2B,
+A_VPERMT2D,
+A_VPERMT2PD,
+A_VPERMT2PS,
+A_VPERMT2Q,
+A_VPERMT2W,
+A_VPERMW,
+A_VPEXPANDD,
+A_VPEXPANDQ,
+A_VPLZCNTD,
+A_VPLZCNTQ,
+A_VPMADD52HUQ,
+A_VPMADD52LUQ,
+A_VPMAXSQ,
+A_VPMAXUQ,
+A_VPMINSQ,
+A_VPMINUQ,
+A_VPMOVB2M,
+A_VPMOVD2M,
+A_VPMOVDB,
+A_VPMOVDW,
+A_VPMOVM2B,
+A_VPMOVM2D,
+A_VPMOVM2Q,
+A_VPMOVM2W,
+A_VPMOVQ2M,
+A_VPMOVQB,
+A_VPMOVQD,
+A_VPMOVQW,
+A_VPMOVSDB,
+A_VPMOVSDW,
+A_VPMOVSQB,
+A_VPMOVSQD,
+A_VPMOVSQW,
+A_VPMOVSWB,
+A_VPMOVUSDB,
+A_VPMOVUSDW,
+A_VPMOVUSQB,
+A_VPMOVUSQD,
+A_VPMOVUSQW,
+A_VPMOVUSWB,
+A_VPMOVW2M,
+A_VPMOVWB,
+A_VPMULLQ,
+A_VPMULTISHIFTQB,
+A_VPORD,
+A_VPORQ,
+A_VPROLD,
+A_VPROLQ,
+A_VPROLVD,
+A_VPROLVQ,
+A_VPRORD,
+A_VPRORQ,
+A_VPRORVD,
+A_VPRORVQ,
+A_VPSCATTERDD,
+A_VPSCATTERDQ,
+A_VPSCATTERQD,
+A_VPSCATTERQQ,
+A_VPSLLVW,
+A_VPSRAQ,
+A_VPSRAVQ,
+A_VPSRAVW,
+A_VPSRLVW,
+A_VPTERNLOGD,
+A_VPTERNLOGQ,
+A_VPTESTMB,
+A_VPTESTMD,
+A_VPTESTMQ,
+A_VPTESTMW,
+A_VPTESTNMB,
+A_VPTESTNMD,
+A_VPTESTNMQ,
+A_VPTESTNMW,
+A_VPXORD,
+A_VPXORQ,
+A_VRANGEPD,
+A_VRANGEPS,
+A_VRANGESD,
+A_VRANGESS,
+A_VRCP14PD,
+A_VRCP14PS,
+A_VRCP14SD,
+A_VRCP14SS,
+A_VRCP28PD,
+A_VRCP28PS,
+A_VRCP28SD,
+A_VRCP28SS,
+A_VREDUCEPD,
+A_VREDUCEPS,
+A_VREDUCESD,
+A_VREDUCESS,
+A_VRNDSCALEPD,
+A_VRNDSCALEPS,
+A_VRNDSCALESD,
+A_VRNDSCALESS,
+A_VRSQRT14PD,
+A_VRSQRT14PS,
+A_VRSQRT14SD,
+A_VRSQRT14SS,
+A_VRSQRT28PD,
+A_VRSQRT28PS,
+A_VRSQRT28SD,
+A_VRSQRT28SS,
+A_VSCALEFPD,
+A_VSCALEFPS,
+A_VSCALEFSD,
+A_VSCALEFSS,
+A_VSCATTERDPD,
+A_VSCATTERDPS,
+A_VSCATTERQPD,
+A_VSCATTERQPS,
+A_VSHUFF32X4,
+A_VSHUFF64X2,
+A_VSHUFI32X4,
+A_VSHUFI64X2
);
diff --git a/compiler/x86_64/x8664pro.inc b/compiler/x86_64/x8664pro.inc
index 2611ff18d0..c2b515b760 100644
--- a/compiler/x86_64/x8664pro.inc
+++ b/compiler/x86_64/x8664pro.inc
@@ -783,6 +783,8 @@
(Ch: [Ch_Wop2, Ch_Rop1]),
(Ch: [Ch_Wop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
+(Ch: [Ch_Wop2, Ch_Rop1]),
+(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
(Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]),
@@ -872,7 +874,7 @@
(Ch: [Ch_All]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
-(Ch: [Ch_All]),
+(Ch: [Ch_All, Ch_None]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
(Ch: [Ch_All]),
@@ -1119,5 +1121,283 @@
(Ch: [Ch_Wop1, Ch_WFlags]),
(Ch: [Ch_Wop1, Ch_WFlags]),
(Ch: [Ch_WEAX, Ch_WEDX, Ch_RECX]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
+(Ch: [Ch_All]),
(Ch: [Ch_All])
);
diff --git a/compiler/x86_64/x8664tab.inc b/compiler/x86_64/x8664tab.inc
index 5019f3849d..9f024689ad 100644
--- a/compiler/x86_64/x8664tab.inc
+++ b/compiler/x86_64/x8664tab.inc
@@ -9033,57 +9033,127 @@
(
opcode : A_VADDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VADDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VADDPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VADDPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VADDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#88#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VADDSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VADDSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#88#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VADDSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#88#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#88#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VADDSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#88#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#88#61#80;
flags : [if_avx,if_sandybridge]
),
(
@@ -9118,29 +9188,29 @@
opcode : A_VAESDEC;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#222#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#222#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESDECLAST;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#223#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#223#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESENC;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#220#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#220#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESENCLAST;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#221#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#221#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VAESIMC;
@@ -9159,58 +9229,170 @@
(
opcode : A_VANDNPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDNPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDNPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDNPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#85#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#85#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDNPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#85#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VANDPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VANDPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#84#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#84#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VANDPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#84#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VBLENDPD;
@@ -9278,46 +9460,74 @@
(
opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#25#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#25#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#25#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#25#72;
flags : [if_avx2]
),
(
- opcode : A_VBROADCASTSS;
+ opcode : A_VBROADCASTSD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#24#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#25#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#25#72;
+ flags : [if_avx512]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#24#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#24#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#24#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#24#72;
flags : [if_avx2]
),
(
opcode : A_VBROADCASTSS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#24#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#24#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#24#72;
flags : [if_avx2]
),
(
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#233#241#249#1#24#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VBROADCASTSS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#24#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCMPEQPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
@@ -10216,6 +10426,55 @@
(
opcode : A_VCMPPD;
ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPPD;
+ ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
code : #241#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
@@ -10230,6 +10489,55 @@
(
opcode : A_VCMPPS;
ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#244#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPPS;
+ ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
code : #242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
@@ -10244,28 +10552,56 @@
(
opcode : A_VCMPSD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ optypes : (ot_kreg_m,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #220#232#234#248#1#194#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCMPSD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #220#232#234#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCMPSD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
code : #220#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCMPSD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
code : #220#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);
+ optypes : (ot_kreg_m,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #219#232#248#1#194#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCMPSS;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #219#232#248#1#194#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ 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_xmmreg,ot_immediate or ot_bits8);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
code : #219#242#248#1#194#61#80#23;
flags : [if_avx,if_sandybridge]
),
@@ -10273,385 +10609,910 @@
opcode : A_VCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#248#1#47#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#47#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCOMISD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#47#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#234#241#242#248#1#47#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #242#248#1#47#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#47#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCOMISS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#47#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#242#248#1#47#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #219#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #219#232#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#248#1#230#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #219#242#244#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#230#72;
+ flags : [if_avx512,if_bcst2,if_thv]
),
(
opcode : A_VCVTDQ2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits128,ot_none,ot_none);
- code : #219#242#244#248#1#230#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #219#232#242#244#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#244#248#1#230#72;
flags : [if_avx,if_sandybridge]
),
(
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
opcode : A_VCVTDQ2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTDQ2PS;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#91#72;
+ flags : [if_avx512]
),
(
opcode : A_VCVTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #220#242#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_ymmrm,ot_none,ot_none);
- code : #220#242#244#248#1#230#72;
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#234#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#242#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);
+ 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_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#90#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPD2PS;
ops : 2;
- optypes : (ot_xmmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#90#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#90#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#90#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#90#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#19#72;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#19#72;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#242#244#249#1#19#72;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#19#72;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#19#72;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPH2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#19#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#91#72;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,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]
),
(
opcode : A_VCVTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#91#72;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #242#248#1#90#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#242#248#1#90#72;
+ flags : [if_avx,if_sandybridge,if_thv]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#242#248#1#90#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTPS2PD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#244#248#1#90#72;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#90#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#90#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#29#65#22;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#29#65#22;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#29#65#22;
+ flags : [if_avx,if_thvm]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#29#65#22;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#29#65#22;
+ flags : [if_avx]
+ ),
+ (
+ opcode : A_VCVTPS2PH;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#29#65#22;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTSD2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#242#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#45#72;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#242#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#243#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#234#242#243#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTSD2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#243#248#1#45#72;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#234#242#243#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSD2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#90#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#90#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCVTSD2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#90#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#90#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSI2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
- code : #220#242#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
+ code : #220#232#242#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_sd]
),
(
opcode : A_VCVTSI2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits64,ot_none);
- code : #220#242#243#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #220#232#242#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_sd,if_t1s]
+ ),
+ (
+ opcode : A_VCVTSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg64,ot_none);
+ code : #220#232#234#242#243#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_x86_64]
),
(
+ opcode : A_VCVTSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#243#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_x86_64,if_t1s]
+ ),
+ (
opcode : A_VCVTSI2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
- code : #219#242#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
+ code : #219#232#242#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_sd]
),
(
opcode : A_VCVTSI2SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits64,ot_none);
- code : #219#242#243#248#1#42#61#80;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_sd,if_t1s]
+ ),
+ (
+ opcode : A_VCVTSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg64,ot_none);
+ code : #219#232#234#242#243#248#1#42#61#80;
flags : [if_avx,if_sandybridge,if_x86_64]
),
(
+ opcode : A_VCVTSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits64,ot_none);
+ code : #219#232#234#242#243#248#1#42#61#80;
+ flags : [if_avx,if_sandybridge,if_x86_64,if_t1s]
+ ),
+ (
opcode : A_VCVTSS2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#90#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#90#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VCVTSS2SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#90#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#90#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#45#72;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#242#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#243#248#1#45#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#243#248#1#45#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTSS2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #219#242#243#248#1#45#72;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#234#242#243#248#1#45#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#230#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#242#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);
+ 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_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#230#72;
+ flags : [if_avx,if_sandybridge,if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#230#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
),
(
opcode : A_VCVTTPD2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#230#72;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#230#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#230#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VCVTTPS2DQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VCVTTPS2DQ;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#91#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#91#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2DQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #219#232#233#248#1#91#72;
+ flags : [if_avx512]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#242#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#44#72;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#242#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#243#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #220#232#234#242#243#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f64]
),
(
opcode : A_VCVTTSD2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#243#248#1#44#72;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#234#242#243#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#242#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
- optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#44#72;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#242#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#243#248#1#44#72;
- flags : [if_avx,if_sandybridge]
+ code : #219#232#234#242#243#248#1#44#72;
+ flags : [if_avx,if_sandybridge,if_t1f32]
),
(
opcode : A_VCVTTSS2SI;
ops : 2;
- optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
- code : #219#242#243#248#1#44#72;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#234#242#243#248#1#44#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VDIVPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VDIVPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#94#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VDIVPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VDIVPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VDIVPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#94#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VDIVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VDIVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#94#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#94#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VDIVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#94#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#94#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VDIVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#94#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#94#61#80;
flags : [if_avx,if_sandybridge]
),
(
@@ -10685,11 +11546,25 @@
(
opcode : A_VEXTRACTPS;
ops : 3;
- optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#23#65#22;
+ optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#23#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VEXTRACTPS;
+ ops : 3;
+ optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#23#65#22;
flags : [if_avx,if_sandybridge]
),
(
+ opcode : A_VEXTRACTPS;
+ ops : 3;
+ optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#23#65#22;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VHADDPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
@@ -10756,14 +11631,14 @@
opcode : A_VINSERTPS;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
- code : #241#242#250#1#33#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#33#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VINSERTPS;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8);
- code : #241#242#250#1#33#61#80#23;
+ code : #232#241#242#250#1#33#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
@@ -10853,205 +11728,464 @@
(
opcode : A_VMAXPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMAXPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VMAXPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMAXPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMAXPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#248#1#95#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#95#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #220#232#234#242#248#1#95#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMAXSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#95#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#95#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMAXSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#95#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#95#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMINPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMINPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#234#241#248#1#93#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMINPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMINPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMINPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_none);
+ code : #232#233#248#1#93#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#93#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #220#232#234#242#248#1#93#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMINSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#93#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#93#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMINSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#93#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #219#232#242#248#1#93#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVAPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#40#72;
+ optypes : (ot_mem128_m,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);
+ 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);
+ 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);
+ 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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#41#65;
+ 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,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#40#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#41#65;
+ 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);
+ 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_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#40#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#41#65;
+ optypes : (ot_mem256_m,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);
+ 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);
+ 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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#40#72;
+ 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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#41#65;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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_VMOVD;
+ opcode : A_VMOVAPS;
ops : 2;
- optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
- code : #241#242#248#1#110#72;
+ 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);
+ 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);
- code : #241#242#248#1#126#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#126#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VMOVD;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#248#1#110#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #220#242#244#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#242#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tmddup]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#18#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#242#248#1#18#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVDDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#234#242#244#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tmddup]
+ ),
+ (
+ opcode : A_VMOVDDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#234#248#1#18#72;
+ flags : [if_avx512,if_tmddup]
),
(
opcode : A_VMOVDQA;
@@ -11113,71 +12247,71 @@
opcode : A_VMOVHLPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #242#248#1#18#61#80;
+ code : #232#242#248#1#18#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVHPD;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#23#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#23#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVHPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#248#1#22#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#22#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVHPS;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #242#248#1#22#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
+ code : #232#242#248#1#23#65;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVHPS;
- ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#23#65;
- flags : [if_avx,if_sandybridge]
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#242#248#1#22#61#80;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVLHPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #242#248#1#22#61#80;
+ code : #232#242#248#1#22#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVLPD;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#19#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#19#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVLPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #241#242#248#1#18#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#18#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVLPS;
ops : 2;
optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#19#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#19#65;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVLPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #242#248#1#18#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#18#61#80;
+ flags : [if_avx,if_sandybridge,if_t2]
),
(
opcode : A_VMOVMSKPD;
@@ -11239,241 +12373,353 @@
opcode : A_VMOVNTDQ;
ops : 2;
optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#231#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#231#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTDQ;
ops : 2;
optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#231#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#244#248#1#231#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTDQ;
+ ops : 2;
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#248#1#231#65;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVNTDQA;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_none,ot_none);
- code : #241#242#249#1#42#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#249#1#42#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTDQA;
ops : 2;
optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_none,ot_none);
- code : #241#242#244#249#1#42#72;
- flags : [if_avx2]
+ code : #232#241#242#244#249#1#42#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTDQA;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#42#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTPD;
+ ops : 2;
+ optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPD;
ops : 2;
optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#244#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPD;
ops : 2;
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#248#1#43#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVNTPS;
+ ops : 2;
optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPS;
ops : 2;
- optypes : (ot_memory or ot_bits128,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits256,ot_ymmreg,ot_none,ot_none);
+ code : #232#242#244#248#1#43#65;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVNTPS;
ops : 2;
- optypes : (ot_memory or ot_bits128,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#43#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits512,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#248#1#43#65;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#219#248#1#126#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#214#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #242#219#248#1#126#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_rm_gpr or ot_bits64,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#243#248#1#126#65;
+ flags : [if_avx,if_sandybridge,if_x86_64,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#241#248#1#214#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #219#232#234#242#248#1#126#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#241#248#1#214#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg,ot_rm_gpr or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#243#248#1#110#72;
+ flags : [if_avx,if_sandybridge,if_x86_64,if_t1s]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_rm_gpr or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #242#241#243#248#1#126#65;
- flags : [if_avx,if_sandybridge,if_x86_64]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#242#248#1#126#72;
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVQ;
ops : 2;
- optypes : (ot_xmmreg,ot_rm_gpr or ot_bits64,ot_none,ot_none);
- code : #242#241#243#248#1#110#72;
- flags : [if_avx,if_sandybridge,if_x86_64]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#248#1#214#65;
+ flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSD;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#16#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#242#248#1#17#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #220#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#17#61#66;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #220#232#234#242#248#1#17#61#66;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSD;
- ops : 2;
- optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_none,ot_none);
- code : #220#242#248#1#17#65;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #220#232#234#242#248#1#16#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSHDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#22#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#22#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVSHDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#22#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#22#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVSHDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#22#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVSLDUP;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #219#242#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#242#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VMOVSLDUP;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #219#242#244#248#1#18#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#242#244#248#1#18#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVSLDUP;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#18#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VMOVSS;
- ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#16#61#80;
- flags : [if_avx,if_sandybridge]
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#242#248#1#17#65;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSS;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #219#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMOVSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#17#61#66;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #219#232#242#248#1#17#61#66;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVSS;
- ops : 2;
- optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_none,ot_none);
- code : #219#242#248#1#17#65;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #219#232#242#248#1#16#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMOVUPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem256_m,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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#16#72;
+ optypes : (ot_mem512_m,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #241#242#244#248#1#17#65;
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
opcode : A_VMOVUPS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#16#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem128_m,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_xmmrm,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#17#65;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_mem256_m,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_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#16#72;
+ optypes : (ot_mem512_m,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_ymmrm,ot_ymmreg,ot_none,ot_none);
- code : #242#244#248#1#17#65;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#16#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ 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]
+ ),
+ (
+ 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]
+ ),
+ (
opcode : A_VMPSADBW;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
@@ -11490,303 +12736,653 @@
(
opcode : A_VMULPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMULPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#89#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMULPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VMULPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VMULPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#89#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VMULSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMULSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#89#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#89#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VMULSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#89#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#89#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VMULSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#89#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#89#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VORPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VORPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VORPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#86#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#86#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#86#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPABSB;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#28#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#28#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPABSB;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#28#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#28#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#28#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPABSD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#30#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#30#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPABSD;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#30#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#30#72;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#30#72;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPABSW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#249#1#29#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#242#249#1#29#72;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPABSW;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#249#1#29#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#242#244#249#1#29#72;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#29#72;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPACKSSDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#107#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#107#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPACKSSDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#107#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#107#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKSSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#107#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPACKSSWB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#99#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#99#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPACKSSWB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#99#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#99#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPACKSSWB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#99#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPACKUSDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#43#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#43#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPACKUSDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#43#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#43#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPACKUSDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#43#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPACKUSWB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#103#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#103#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPACKUSWB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#103#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#103#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPACKUSWB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#103#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#252#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#252#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#252#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#252#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#252#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#254#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#254#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPADDD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#254#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#254#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#254#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPADDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#212#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#212#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPADDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#212#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#212#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPADDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#212#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPADDSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#236#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#236#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#236#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#236#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#236#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#237#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#237#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#237#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#237#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#237#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDUSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#220#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#220#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDUSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#220#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#220#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDUSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#220#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDUSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#221#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#221#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDUSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#221#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#221#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDUSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#221#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPADDW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#253#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#253#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPADDW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#253#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#253#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPADDW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#253#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPALIGNR;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#250#1#15#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#242#250#1#15#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPALIGNR;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #241#242#244#250#1#15#61#80#23;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#242#244#250#1#15#61#80#23;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPALIGNR;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#15#61#80#23;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPAND;
@@ -11819,30 +13415,44 @@
(
opcode : A_VPAVGB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#224#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#224#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPAVGB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#224#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#224#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPAVGB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#224#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPAVGW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#227#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#227#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPAVGW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#227#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#227#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPAVGW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#227#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPBLENDVB;
@@ -11876,8 +13486,43 @@
opcode : A_VPCLMULQDQ;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#250#1#68#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#68#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPCLMULQDQ;
+ ops : 4;
+ optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#68#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCLMULQDQ;
+ ops : 4;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#68#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#116#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPCMPEQB;
@@ -11896,6 +13541,48 @@
(
opcode : A_VPCMPEQD;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQD;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#118#61#80;
flags : [if_avx,if_sandybridge]
@@ -11910,6 +13597,48 @@
(
opcode : A_VPCMPEQQ;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#41#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPEQQ;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#249#1#41#61#80;
flags : [if_avx,if_sandybridge]
@@ -11924,6 +13653,27 @@
(
opcode : A_VPCMPEQW;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPEQW;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#117#61#80;
flags : [if_avx,if_sandybridge]
@@ -11952,6 +13702,27 @@
(
opcode : A_VPCMPGTB;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#100#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTB;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#100#61#80;
flags : [if_avx,if_sandybridge]
@@ -11966,6 +13737,48 @@
(
opcode : A_VPCMPGTD;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#102#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTD;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#102#61#80;
flags : [if_avx,if_sandybridge]
@@ -11980,6 +13793,48 @@
(
opcode : A_VPCMPGTQ;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#55#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPGTQ;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#249#1#55#61#80;
flags : [if_avx,if_sandybridge]
@@ -11994,6 +13849,27 @@
(
opcode : A_VPCMPGTW;
ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#101#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPGTW;
+ ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
code : #241#242#248#1#101#61#80;
flags : [if_avx,if_sandybridge]
@@ -12029,127 +13905,267 @@
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#13#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#249#1#13#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#5#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#250#1#5#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#250#1#5#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#13#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#249#1#13#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#250#1#5#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#13#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#5#72#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#12#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#12#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#4#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#250#1#4#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#4#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPERMILPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#12#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#12#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#250#1#4#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#12#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMILPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#4#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPEXTRB;
+ ops : 3;
+ optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#20#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRB;
+ ops : 3;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#20#65#22;
+ flags : [if_avx512]
),
(
opcode : A_VPEXTRB;
ops : 3;
optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
+ code : #232#241#242#250#1#20#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRB;
ops : 3;
optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
+ code : #232#241#242#250#1#20#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRB;
ops : 3;
- optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#20#65#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_reg8,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#20#65#22;
+ flags : [if_avx512]
),
(
opcode : A_VPEXTRD;
ops : 3;
optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#22#65#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#22#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPEXTRQ;
ops : 3;
optypes : (ot_rm_gpr or ot_bits64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#250#1#22#65#22;
+ code : #232#234#241#242#243#250#1#22#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRW;
+ ops : 3;
+ optypes : (ot_memory or ot_bits16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#21#65#22;
+ flags : [if_avx,if_sandybridge,if_t1s]
+ ),
+ (
+ opcode : A_VPEXTRW;
+ ops : 3;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#197#72#22;
+ optypes : (ot_reg16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#197#72#22;
+ optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
optypes : (ot_reg32,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ code : #232#241#242#250#1#21#65#22;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPEXTRW;
ops : 3;
- optypes : (ot_memory or ot_bits16,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#250#1#21#65#22;
+ optypes : (ot_reg64,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#197#72#22;
flags : [if_avx,if_sandybridge]
),
(
@@ -12247,239 +14263,421 @@
opcode : A_VPINSRB;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
- code : #241#242#250#1#32#61#80#23;
+ code : #232#241#242#250#1#32#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPINSRB;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits8,ot_immediate or ot_bits8);
- code : #241#242#250#1#32#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#32#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRD;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits32,ot_immediate or ot_bits8);
- code : #241#242#250#1#34#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#250#1#34#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRQ;
ops : 4;
optypes : (ot_xmmreg,ot_xmmreg,ot_rm_gpr or ot_bits64,ot_immediate or ot_bits8);
- code : #241#242#243#250#1#34#61#80#23;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#243#250#1#34#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRW;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
- code : #241#242#248#1#196#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits16,ot_immediate or ot_bits8);
+ code : #232#241#242#248#1#196#61#80#23;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VPINSRW;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits16,ot_immediate or ot_bits8);
- code : #241#242#248#1#196#61#80#23;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_immediate or ot_bits8);
+ code : #232#241#242#248#1#196#61#80#23;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMADDUBSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#4#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#4#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMADDUBSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#4#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#4#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMADDUBSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#4#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMADDWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#245#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#245#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMADDWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#245#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#245#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMADDWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#245#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#60#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#60#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#60#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#60#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#60#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#61#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#61#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMAXSD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#61#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#61#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMAXSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#238#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#238#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#238#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#238#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#238#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXUB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#222#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#222#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXUB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#222#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#222#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXUB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#222#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMAXUD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#63#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#63#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMAXUD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#63#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#63#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMAXUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#62#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#62#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMAXUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#62#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#62#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMAXUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#62#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#56#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#56#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#56#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#56#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#56#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#57#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#57#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMINSD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#57#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#57#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMINSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#234#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#234#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#234#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#234#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#234#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINUB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#218#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#218#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINUB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#218#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#218#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINUB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#218#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMINUD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#59#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#59#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMINUD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#59#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#59#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMINUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#58#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#58#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMINUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#58#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#58#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMINUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#58#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMOVMSKB;
@@ -12512,394 +14710,716 @@
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#33#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#33#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#33#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#33#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#33#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#33#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVSXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#33#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#33#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#33#72;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#33#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#34#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#34#72;
+ flags : [if_avx,if_sandybridge,if_tovm]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#34#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#34#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#34#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#34#72;
+ flags : [if_avx2,if_tovm]
),
(
opcode : A_VPMOVSXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#34#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#34#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#34#72;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#34#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#32#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#32#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#32#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#32#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXBW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#32#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#37#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#37#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#37#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#37#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXDQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#37#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#35#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#35#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#35#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#35#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXWD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#35#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#36#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#36#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#36#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#36#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#36#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#36#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVSXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#36#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#36#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVSXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#49#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#49#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#49#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#49#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#49#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#49#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVZXBD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#49#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#49#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXBD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,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,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#50#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#50#72;
+ flags : [if_avx,if_sandybridge,if_tovm]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#50#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#50#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#50#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#50#72;
+ flags : [if_avx2,if_tovm]
),
(
opcode : A_VPMOVZXBQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#50#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#50#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#50#72;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVZXBQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#50#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#48#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#48#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#48#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#48#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXBW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#48#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#53#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#53#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#53#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#53#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXDQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#53#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#51#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#249#1#51#72;
+ flags : [if_avx,if_sandybridge,if_thvm]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#51#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#51#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXWD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#244#249#1#51#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,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);
+ 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,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#52#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#52#72;
+ flags : [if_avx,if_sandybridge,if_tqvm]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#52#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#52#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#52#72;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#242#244#249#1#52#72;
+ flags : [if_avx2,if_tqvm]
),
(
opcode : A_VPMOVZXWQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#52#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#52#72;
flags : [if_avx2]
),
(
+ opcode : A_VPMOVZXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#52#72;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVZXWQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#52#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPMULDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#40#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#249#1#40#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#40#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#249#1#40#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#40#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMULHRSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#11#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#11#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHRSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#11#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#11#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHRSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#11#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULHUW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#228#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#228#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHUW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#228#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#228#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHUW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#228#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULHW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#229#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#229#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULHW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#229#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#229#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULHW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#229#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#64#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#64#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#64#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#64#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMULLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#213#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#213#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPMULLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#213#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#213#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPMULLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#213#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPMULUDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#244#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#244#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPMULUDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#244#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#244#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULUDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#244#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPOR;
@@ -12919,71 +15439,127 @@
opcode : A_VPSADBW;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#246#61#80;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#246#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSADBW;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#246#61#80;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#246#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSADBW;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#246#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#0#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#0#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#0#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#0#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#0#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSHUFD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSHUFD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#112#72#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSHUFHW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #219#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFHW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #219#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFHW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #219#232#233#248#1#112#72#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSHUFLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
- code : #220#242#248#1#112#72#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#242#248#1#112#72#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSHUFLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #220#242#244#248#1#112#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#242#244#248#1#112#72#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSHUFLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #220#232#233#248#1#112#72#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSIGNB;
@@ -13030,366 +15606,730 @@
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#242#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#242#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#242#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#142#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#242#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#242#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#143#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#115#60#143#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLDQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#143#22;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#115#60#143#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#143#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#243#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#243#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#248#1#115#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#243#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#244#248#1#243#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#248#1#115#60#142#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#243#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#142#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#142#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#241#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#241#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#142#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#142#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#241#61#80;
+ flags : [if_avx2,if_tmem128]
),
(
opcode : A_VPSLLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#241#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#142#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#241#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSLLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#142#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#140#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#140#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#226#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#140#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#226#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRAD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#226#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#140#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#226#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#140#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#140#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#225#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#225#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#140#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#140#22;
+ flags : [if_avx2,if_tfvm]
),
(
opcode : A_VPSRAW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#225#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#225#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#225#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#140#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#114#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#114#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#210#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#114#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#210#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#210#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#210#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#114#60#138#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#210#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#139#22;
- flags : [if_avx,if_sandybridge]
+ code : #232#241#242#248#1#115#60#139#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLDQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#139#22;
- flags : [if_avx2]
+ code : #232#241#242#244#248#1#115#60#139#22;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#115#60#139#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#115#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#211#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#211#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#248#1#115#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#115#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#211#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#244#248#1#115#60#138#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#244#248#1#211#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#211#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#115#60#138#22;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#248#1#113#60#138#22;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#248#1#113#60#138#22;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#209#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#209#61#80;
+ flags : [if_avx,if_sandybridge,if_tmem128]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
- code : #241#242#244#248#1#113#60#138#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#242#244#248#1#113#60#138#22;
+ flags : [if_avx2,if_tfvm]
),
(
opcode : A_VPSRLW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_xmmrm,ot_none);
- code : #241#242#244#248#1#209#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#244#248#1#209#61#80;
+ flags : [if_avx2,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#241#248#1#209#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRLW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#113#60#138#22;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#248#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#248#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#248#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#248#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#248#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#250#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#250#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSUBD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#250#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#250#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#250#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSUBQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#251#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#251#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPSUBQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#251#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#251#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSUBQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#251#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSUBSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#232#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#232#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#232#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#232#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#232#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#233#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#233#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#233#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#233#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#233#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBUSB;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#216#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#216#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBUSB;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#216#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#216#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBUSB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#216#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBUSW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#217#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#217#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBUSW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#217#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#217#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBUSW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#217#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPSUBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#249#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#249#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPSUBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#249#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#249#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPSUBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#249#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPTEST;
@@ -13408,114 +16348,254 @@
(
opcode : A_VPUNPCKHBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#104#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#104#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKHBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#104#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#104#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKHBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#104#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKHDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#106#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#106#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKHDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#106#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#106#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#106#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKHQDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#109#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#109#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKHQDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#109#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#109#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKHQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#109#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKHWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#105#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#105#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKHWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#105#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#105#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKHWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#105#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKLBW;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#96#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#96#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKLBW;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#96#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#96#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKLBW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#96#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPUNPCKLDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#98#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#98#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKLDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#98#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#98#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#98#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKLQDQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#108#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#108#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VPUNPCKLQDQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#108#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#108#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPUNPCKLQDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#108#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPUNPCKLWD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#97#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#248#1#97#61#80;
+ flags : [if_avx,if_sandybridge,if_tfvm]
),
(
opcode : A_VPUNPCKLWD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#97#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#248#1#97#61#80;
+ flags : [if_avx2,if_tfvm]
+ ),
+ (
+ opcode : A_VPUNPCKLWD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#97#61#80;
+ flags : [if_avx512,if_tfvm]
),
(
opcode : A_VPXOR;
@@ -13646,86 +16726,212 @@
(
opcode : A_VSHUFPD;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #241#242#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#242#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSHUFPD;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #241#242#244#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#242#244#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSHUFPS;
ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
- code : #242#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#242#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSHUFPS;
ops : 4;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
- code : #242#244#248#1#198#61#80#23;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#242#244#248#1#198#61#80#23;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#244#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#248#1#198#61#80#23;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSQRTPD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #241#242#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#242#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSQRTPD;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #241#242#244#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#242#244#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#81#72;
+ flags : [if_avx512]
),
(
opcode : A_VSQRTPS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
- code : #242#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#242#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSQRTPS;
ops : 2;
- optypes : (ot_ymmreg,ot_ymmrm,ot_none,ot_none);
- code : #242#244#248#1#81#72;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#242#244#248#1#81#72;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSQRTPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#81#72;
+ flags : [if_avx512]
),
(
opcode : A_VSQRTSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#81#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#81#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSQRTSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#81#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#81#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSQRTSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#81#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#81#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSQRTSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#81#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#81#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSTMXCSR;
@@ -13737,58 +16943,128 @@
(
opcode : A_VSUBPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSUBPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VSUBPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VSUBPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSUBPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#248#1#92#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VSUBSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none);
- code : #220#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #220#232#234#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSUBSD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #220#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #220#232#234#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VSUBSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
- code : #219#242#248#1#92#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #219#232#242#248#1#92#61#80;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VSUBSS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
- code : #219#242#248#1#92#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #219#232#242#248#1#92#61#80;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VTESTPD;
@@ -13822,113 +17098,281 @@
opcode : A_VUCOMISD;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#248#1#46#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#234#241#242#248#1#46#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VUCOMISD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#248#1#46#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#234#241#242#248#1#46#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VUCOMISS;
ops : 2;
optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #242#248#1#46#72;
- flags : [if_avx,if_sandybridge]
+ code : #232#242#248#1#46#72;
+ flags : [if_avx,if_sandybridge,if_t1s]
),
(
opcode : A_VUCOMISS;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #242#248#1#46#72;
+ optypes : (ot_xmmreg,ot_xmmreg_sae,ot_none,ot_none);
+ code : #232#242#248#1#46#72;
flags : [if_avx,if_sandybridge]
),
(
opcode : A_VUNPCKHPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKHPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKHPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKHPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#21#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#21#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKHPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#21#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKLPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKLPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VUNPCKLPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VUNPCKLPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#20#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#20#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VUNPCKLPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#20#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VXORPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VXORPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#244#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VXORPS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #242#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#242#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
),
(
opcode : A_VXORPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #242#244#248#1#87#61#80;
- flags : [if_avx,if_sandybridge]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#242#244#248#1#87#61#80;
+ flags : [if_avx,if_sandybridge,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#244#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VXORPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#248#1#87#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VZEROALL;
@@ -14199,116 +17643,361 @@
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#120#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#241#242#249#1#120#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#120#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#120#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits8,ot_none,ot_none);
- code : #241#242#249#1#120#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
),
(
opcode : A_VPBROADCASTB;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits8,ot_none,ot_none);
- code : #241#242#244#249#1#120#72;
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#241#242#244#249#1#120#72;
+ flags : [if_avx2,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#120#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#241#244#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #232#233#241#249#1#120#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg8,ot_none,ot_none);
+ code : #232#233#241#249#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTB;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#88#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#249#1#88#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#249#1#88#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#88#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#88#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#124#72;
+ flags : [if_avx512]
),
(
opcode : A_VPBROADCASTD;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits32,ot_none,ot_none);
- code : #241#242#244#249#1#88#72;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#241#242#244#249#1#88#72;
+ flags : [if_avx2,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#88#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #232#233#241#249#1#88#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#88#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#244#249#1#89#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#249#1#89#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_none,ot_none);
- code : #241#242#249#1#89#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#249#1#89#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#89#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#234#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#89#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTQ;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#89#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#242#244#249#1#89#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#89#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#124#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#249#1#121#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#249#1#121#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#249#1#121#72;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#249#1#121#72;
flags : [if_avx2]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_ymmreg,ot_memory or ot_bits16,ot_none,ot_none);
- code : #241#242#244#249#1#121#72;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#241#242#244#249#1#121#72;
+ flags : [if_avx2,if_t1s]
),
(
opcode : A_VPBROADCASTW;
ops : 2;
- optypes : (ot_ymmreg,ot_xmmreg,ot_none,ot_none);
- code : #241#242#244#249#1#121#72;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#242#244#249#1#121#72;
flags : [if_avx2]
),
(
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#241#244#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #232#233#241#249#1#121#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg16,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg32,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_reg64,ot_none,ot_none);
+ code : #232#233#241#249#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPBROADCASTW;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VPERM2I128;
ops : 4;
optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
@@ -14318,30 +18007,177 @@
(
opcode : A_VPERMD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#54#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#54#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#54#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#244#250#1#1#72#22;
- flags : [if_avx2]
+ 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);
+ 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_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#1#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMPS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#22#61#80;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#22#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#22#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPERMQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
- code : #241#242#243#244#250#1#0#72#22;
- flags : [if_avx2]
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#242#243#244#250#1#0#72#22;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPERMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#0#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ 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;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPMASKMOVD;
@@ -14402,88 +18238,249 @@
(
opcode : A_VPSLLVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSLLVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSLLVQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#243#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSLLVQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#243#244#249#1#71#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#71#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSLLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#71#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRAVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#70#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#70#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRAVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#70#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#70#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLVD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRLVD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VPSRLVQ;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#243#244#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
),
(
opcode : A_VPSRLVQ;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#243#249#1#69#61#80;
- flags : [if_avx2]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#69#61#80;
+ flags : [if_avx2,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#69#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VGATHERDPD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
+ optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
code : #241#242#243#249#1#146#62#72;
flags : [if_avx2]
),
(
opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#234#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPD;
ops : 3;
- optypes : (ot_ymmreg,ot_xmem64,ot_ymmreg,ot_none);
+ optypes : (ot_ymmreg,ot_xmem32,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#146#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#234#241#244#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#233#234#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERDPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14492,12 +18489,33 @@
),
(
opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPS;
ops : 3;
optypes : (ot_ymmreg,ot_ymem32,ot_ymmreg,ot_none);
code : #241#242#244#249#1#146#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#146#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERQPD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14506,12 +18524,33 @@
),
(
opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPD;
ops : 3;
optypes : (ot_ymmreg,ot_ymem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#147#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VGATHERQPS;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14526,6 +18565,27 @@
flags : [if_avx2]
),
(
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGATHERQPS;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#147#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERDD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14534,12 +18594,33 @@
),
(
opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDD;
ops : 3;
optypes : (ot_ymmreg,ot_ymem32,ot_ymmreg,ot_none);
code : #241#242#244#249#1#144#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDD;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERDQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14548,12 +18629,33 @@
),
(
opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDQ;
ops : 3;
optypes : (ot_ymmreg,ot_xmem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#144#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#144#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERQD;
ops : 3;
optypes : (ot_xmmreg,ot_xmem32,ot_xmmreg,ot_none);
@@ -14568,6 +18670,27 @@
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem32,ot_none,ot_none);
+ code : #232#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_ymem32,ot_none,ot_none);
+ code : #232#241#244#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQD;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_zmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
opcode : A_VPGATHERQQ;
ops : 3;
optypes : (ot_xmmreg,ot_xmem64,ot_xmmreg,ot_none);
@@ -14576,696 +18699,2145 @@
),
(
opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_m,ot_xmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQQ;
ops : 3;
optypes : (ot_ymmreg,ot_ymem64,ot_ymmreg,ot_none);
code : #241#242#243#244#249#1#145#62#72;
flags : [if_avx2]
),
(
+ opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_m,ot_ymem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPGATHERQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_m,ot_zmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#145#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFMADDPD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_xmmreg);
+ code : #241#242#250#1#105#61#80#247;
+ flags : [if_fma4]
+ ),
+ (
+ opcode : A_VFMADDPD;
+ ops : 4;
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_xmmrm);
+ code : #241#242#250#243#1#105#61#88#246;
+ flags : [if_fma4]
+ ),
+ (
opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD213PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD213PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PD;
+ opcode : A_VFMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDPD;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_xmmreg);
- code : #241#242#250#1#105#61#80#247;
- flags : [if_fma4]
+ opcode : A_VFMADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#152#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMADDPD;
- ops : 4;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_xmmrm);
- code : #241#242#250#243#1#105#61#88#246;
- flags : [if_fma4]
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADD132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#152#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADD132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#152#61#80;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#152#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#152#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#153#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMADD213PS;
+ opcode : A_VFMADD132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#168#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#153#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#168#61#80;
+ flags : [if_avx512]
+ ),
+ (
opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#168#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD231PS;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADD231PS;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#184#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#168#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADD132SD;
+ opcode : A_VFMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#153#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#168#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#169#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#169#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFMADD231SD;
+ opcode : A_VFMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#169#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMADD132SS;
+ opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#153#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#169#61#80;
flags : [if_fma]
),
(
opcode : A_VFMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#169#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#169#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#184#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#184#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADD231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#185#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMADD231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#185#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#185#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB213PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMADDSUB213PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PD;
+ opcode : A_VFMADDSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#150#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFMADDSUB132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#150#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#150#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#150#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#166#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#166#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMADDSUB231PS;
+ opcode : A_VFMADDSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#166#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#166#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMADDSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#182#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD132PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD132PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#182#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD213PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD213PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PD;
+ opcode : A_VFMADDSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#182#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUBADD132PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD132PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#151#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD213PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUBADD213PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#167#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUBADD231PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUBADD231PS;
+ opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#183#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#154#61#80;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#154#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#154#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#155#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMSUB132PD;
+ opcode : A_VFMSUB132SD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#154#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB132SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#155#61#80;
flags : [if_fma]
),
(
opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB231PD;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUB231PD;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB132PS;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#154#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFMSUB132PS;
+ opcode : A_VFMSUB213PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#154#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#170#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB231PS;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#170#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFMSUB231PS;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#186#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFMSUB132SD;
+ opcode : A_VFMSUB213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#155#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#170#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#171#61#80;
flags : [if_fma]
),
(
- opcode : A_VFMSUB231SD;
+ opcode : A_VFMSUB213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#187#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#171#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFMSUB132SS;
+ opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#155#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#171#61#80;
flags : [if_fma]
),
(
opcode : A_VFMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#171#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#171#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#186#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#186#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUB231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#187#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#187#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#187#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFMSUB231SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#187#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#151#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#151#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#167#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#167#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#167#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#183#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFMSUBADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#183#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD213PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD213PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD231PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512]
),
(
- opcode : A_VFNMADD231PD;
+ opcode : A_VFNMADD132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFNMADD132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#156#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMADD132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#156#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#156#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#156#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#157#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMADD213PS;
+ opcode : A_VFNMADD132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#172#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#157#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD132SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#157#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#172#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD231PS;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMADD231PS;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#188#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#172#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMADD132SD;
+ opcode : A_VFNMADD213PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#157#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#172#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#173#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMADD231SD;
+ opcode : A_VFNMADD213SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#189#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#173#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFNMADD132SS;
+ opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#157#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#173#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMADD213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#173#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#173#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#188#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMADD231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#188#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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]
+ ),
+ (
+ opcode : A_VFNMADD231SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#189#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMADD231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
+ optypes : (ot_xmmreg,ot_xmmreg,ot_xmmreg,ot_none);
code : #241#242#249#1#189#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB213PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#174#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMSUB213PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#174#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB231PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB231PD;
+ opcode : A_VFNMSUB132PD;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#243#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#158#61#80;
+ flags : [if_avx512]
),
(
opcode : A_VFNMSUB132PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#158#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
),
(
opcode : A_VFNMSUB132PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#158#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#158#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB132PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#158#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB132SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#159#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB213PS;
+ opcode : A_VFNMSUB132SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#174#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#159#61#80;
flags : [if_fma]
),
(
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMSUB213PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#174#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#174#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB213PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#174#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ 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;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#175#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB231PS;
+ opcode : A_VFNMSUB213SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#190#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#175#61#80;
+ flags : [if_fma,if_t1s]
+ ),
+ (
+ opcode : A_VFNMSUB213SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#175#61#80;
flags : [if_fma]
),
(
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#242#243#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#242#243#244#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_ymmreg,ot_ymmreg,ot_ymmrm,ot_none);
- code : #241#242#244#249#1#190#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#242#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
),
(
- opcode : A_VFNMSUB132SD;
+ opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#159#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
),
(
- opcode : A_VFNMSUB213SD;
+ opcode : A_VFNMSUB231PS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#175#61#80;
- flags : [if_fma]
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#242#244#249#1#190#61#80;
+ flags : [if_fma,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFNMSUB231PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#190#61#80;
+ flags : [if_avx512,if_tfv]
),
(
opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#243#1#191#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#242#243#249#1#191#61#80;
flags : [if_fma]
),
(
- opcode : A_VFNMSUB132SS;
+ opcode : A_VFNMSUB231SD;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#159#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#242#243#249#1#191#61#80;
+ flags : [if_fma,if_t1s]
),
(
- opcode : A_VFNMSUB213SS;
+ opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#175#61#80;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#242#249#1#191#61#80;
flags : [if_fma]
),
(
opcode : A_VFNMSUB231SS;
ops : 3;
- optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none);
- code : #241#242#249#1#191#61#80;
- flags : [if_fma]
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#242#249#1#191#61#80;
+ flags : [if_fma,if_t1s]
),
(
opcode : A_XACQUIRE;
@@ -15336,5 +20908,7915 @@
optypes : (ot_memory,ot_none,ot_none,ot_none);
code : #2#15#13#130;
flags : [if_prefetchwt1]
+ ),
+ (
+ opcode : A_KADDB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KADDW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#74#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDND;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDNW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#66#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KANDW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#65#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits8,ot_none,ot_none);
+ code : #241#242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #241#242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_memory or ot_bits8,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVB;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #241#242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #220#242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_memory or ot_bits32,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVD;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #220#242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #242#243#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg64,ot_none,ot_none);
+ code : #220#242#243#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_memory or ot_bits64,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVQ;
+ ops : 2;
+ optypes : (ot_reg64,ot_kreg,ot_none,ot_none);
+ code : #220#242#243#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_memory or ot_bits16,ot_none,ot_none);
+ code : #242#248#1#144#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_kreg,ot_reg32,ot_none,ot_none);
+ code : #242#248#1#146#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_memory or ot_bits16,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#145#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KMOVW;
+ ops : 2;
+ optypes : (ot_reg32,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#147#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KNOTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#68#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORTESTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#152#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#69#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#50#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#51#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#51#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTLW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#50#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#48#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#250#1#49#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#49#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KSHIFTRW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_immediate or ot_bits8,ot_none);
+ code : #241#242#243#250#1#48#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTB;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTD;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #241#242#243#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTQ;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#243#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KTESTW;
+ ops : 2;
+ optypes : (ot_kreg,ot_kreg,ot_none,ot_none);
+ code : #242#248#1#153#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKBW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKDQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KUNPCKWD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#75#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXNORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#70#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORB;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORD;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #241#242#243#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORQ;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#243#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_KXORW;
+ ops : 3;
+ optypes : (ot_kreg,ot_kreg,ot_kreg,ot_none);
+ code : #242#244#248#1#71#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGND;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VALIGNQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#3#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBLENDMPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#101#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#25#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#244#249#1#25#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#25#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTF32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#25#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF32X4;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#244#249#1#26#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTF32X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#26#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTF32X8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#27#72;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VBROADCASTF64X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#244#249#1#26#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF64X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#234#241#249#1#26#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTF64X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#234#241#249#1#27#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#244#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#89#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VBROADCASTI32X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#233#241#249#1#89#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI32X4;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#244#249#1#90#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#241#249#1#90#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VBROADCASTI32X8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#249#1#91#72;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VBROADCASTI64X2;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#244#249#1#90#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI64X2;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#233#234#241#249#1#90#72;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VBROADCASTI64X4;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#234#241#249#1#91#72;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPD;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#138#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCOMPRESSPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#138#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#123#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#123#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#123#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#244#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512,if_bcst16,if_tfv]
+ ),
+ (
+ opcode : A_VCVTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#121#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#121#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #232#233#241#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#244#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #219#232#233#234#248#1#230#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#91#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #232#233#234#248#1#91#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#248#1#121#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#248#1#121#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #220#232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#248#1#121#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#234#248#1#121#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_er,ot_none,ot_none);
+ code : #219#232#234#248#1#121#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#248#1#120#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#244#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPD2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2QQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#244#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTTPS2UDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#248#1#120#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#248#1#120#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTTPS2UQQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_sae,ot_none,ot_none);
+ code : #232#233#241#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#248#1#120#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #220#232#234#248#1#120#72;
+ flags : [if_avx512,if_t1f64]
+ ),
+ (
+ opcode : A_VCVTTSD2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #220#232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#248#1#120#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg32,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_memory or ot_bits32,ot_none,ot_none);
+ code : #219#232#234#248#1#120#72;
+ flags : [if_avx512,if_t1f32]
+ ),
+ (
+ opcode : A_VCVTTSS2USI;
+ ops : 2;
+ optypes : (ot_reg64,ot_xmmreg_sae,ot_none,ot_none);
+ code : #219#232#234#248#1#120#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits64,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#244#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_thv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none);
+ code : #219#232#233#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUDQ2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #219#232#233#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#248#1#122#72;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#234#244#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VCVTUQQ2PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg_er,ot_none,ot_none);
+ code : #220#232#233#234#248#1#122#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VCVTUSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits64,ot_none);
+ code : #220#232#234#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SD;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
+ code : #220#232#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits64,ot_none);
+ code : #219#232#234#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VCVTUSI2SS;
+ ops : 3;
+ optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
+ code : #219#232#248#1#123#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VDBPSADBW;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#66#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#200#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VEXP2PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#200#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#234#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#234#241#244#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none);
+ code : #232#241#244#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#136#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VEXPANDPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#136#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#25#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#25#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF32X8;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#27#65#22;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VEXTRACTF32X8;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#27#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#25#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#25#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#25#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTF64X4;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#27#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTF64X4;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#27#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#57#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#57#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X4;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI32X8;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#59#65#22;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VEXTRACTI32X8;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#59#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#57#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#57#65#22;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X2;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#57#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VEXTRACTI64X4;
+ ops : 3;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#59#65#22;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VEXTRACTI64X4;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#59#65#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#84#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFIXUPIMMPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#84#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#85#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFIXUPIMMSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#85#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFIXUPIMMSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#85#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFIXUPIMMSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#85#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst2,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst4,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#102#72#22;
+ flags : [if_avx512,if_bcst8,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#102#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSPS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#102#72#22;
+ flags : [if_avx512,if_bcst16,if_tfv]
+ ),
+ (
+ opcode : A_VFPCLASSSD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#103#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSSD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_memory or ot_bits64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#103#72#22;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VFPCLASSSS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#103#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VFPCLASSSS;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_memory or ot_bits32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#103#72#22;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#66#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETEXPPS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#66#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#67#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#234#241#249#1#67#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETEXPSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#67#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETEXPSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#67#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#38#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VGETMANTPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#38#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#39#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETMANTSD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#39#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VGETMANTSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#39#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VGETMANTSS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#39#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VINSERTF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#24#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#24#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTF32X8;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#26#61#80#23;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VINSERTF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#24#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#24#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTF64X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#26#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#56#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#56#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VINSERTI32X8;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#58#61#80#23;
+ flags : [if_avx512,if_t8]
+ ),
+ (
+ opcode : A_VINSERTI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#56#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#56#61#80#23;
+ flags : [if_avx512,if_t2]
+ ),
+ (
+ opcode : A_VINSERTI64X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#58#61#80#23;
+ flags : [if_avx512,if_t4]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA32;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQA64;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#234#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#234#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU16;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #220#232#233#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU32;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #219#232#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #219#232#234#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #219#232#233#234#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU64;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #220#232#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_xmmrm_mz,ot_xmmreg,ot_none,ot_none);
+ code : #220#232#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #220#232#244#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_ymmrm_mz,ot_ymmreg,ot_none,ot_none);
+ code : #220#232#244#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #220#232#233#248#1#111#72;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VMOVDQU8;
+ ops : 2;
+ optypes : (ot_zmmrm_mz,ot_zmmreg,ot_none,ot_none);
+ code : #220#232#233#248#1#127#65;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPABSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#31#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDND;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDNQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#223#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPANDQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#219#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#100#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPBLENDMW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#102#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#31#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUB;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUD;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUQ;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#30#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPUW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#62#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCMPW;
+ ops : 4;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#63#61#80#23;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#139#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCOMPRESSQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#139#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPCONFLICTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#196#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2B;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#119#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#118#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMI2W;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#117#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2B;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2D;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2PS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#127#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2Q;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#126#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMT2W;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#125#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPERMW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#141#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none);
+ code : #232#241#249#1#137#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none);
+ 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#72;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPEXPANDQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#137#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPLZCNTQ;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#68#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52HUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#181#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMADD52LUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#180#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#61#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMAXUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#63#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINSQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#57#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMINUQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#59#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVB2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVD2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#49#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#49#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#51#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#51#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#244#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2B;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#244#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2D;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2Q;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#56#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_xmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_ymmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVM2W;
+ ops : 2;
+ optypes : (ot_zmmreg,ot_kreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#40#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQ2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#57#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#50#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#50#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#53#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#53#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#52#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#52#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#33#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#33#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#35#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#35#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#34#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#34#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#37#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#37#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#36#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#36#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#32#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVSWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#32#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#17#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#17#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#19#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSDW;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#19#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem16_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#18#65;
+ flags : [if_avx512,if_tovm]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#18#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#21#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#21#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#20#65;
+ flags : [if_avx512,if_tqvm]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSQW;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#20#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#16#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVUSWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#16#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#234#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#234#244#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVW2M;
+ ops : 2;
+ optypes : (ot_kreg,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#234#249#1#41#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem128_m,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem256_m,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_mem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#48#65;
+ flags : [if_avx512,if_thvm]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none);
+ code : #219#232#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_ymmreg,ot_none,ot_none);
+ code : #219#232#244#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMOVWB;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_zmmreg,ot_none,ot_none);
+ code : #219#232#233#249#1#48#65;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#64#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPMULTISHIFTQB;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#131#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#235#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#137#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPROLVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#21#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#136#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPRORVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#20#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDD;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERDQ;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#160#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQD;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSCATTERQQ;
+ ops : 2;
+ optypes : (ot_zmem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#161#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSLLVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#18#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#244#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_xmmrm,ot_none);
+ code : #232#233#234#241#248#1#226#61#80;
+ flags : [if_avx512,if_tmem128]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#248#1#114#60#140#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#70#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRAVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#17#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPSRLVW;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#16#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTERNLOGQ;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#37#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMB;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem32,ot_none);
+ code : #219#232#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem32,ot_none);
+ code : #219#232#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMD;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem32,ot_none);
+ code : #219#232#233#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_bmem64,ot_none);
+ code : #219#232#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#234#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_bmem64,ot_none);
+ code : #219#232#234#244#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMQ;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_bmem64,ot_none);
+ code : #219#232#233#234#249#1#39#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #219#232#234#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #219#232#234#244#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPTESTNMW;
+ ops : 3;
+ optypes : (ot_kreg_m,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #219#232#233#234#249#1#38#61#80;
+ flags : [if_avx512,if_tfvm]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_none);
+ code : #232#233#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VPXORQ;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#248#1#239#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPD;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#80#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_immediate or ot_bits8);
+ code : #232#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRANGEPS;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#80#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#81#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRANGESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#81#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRANGESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#81#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRANGESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#81#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#76#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP14SD;
+ ops : 3;
+ 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_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#77#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#241#249#1#77#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#202#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRCP28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#202#72;
+ flags : [if_avx512]
+ ),
+ (
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ 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#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRCP28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#203#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#86#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VREDUCEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#86#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#87#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VREDUCESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#87#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VREDUCESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#87#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VREDUCESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#87#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#234#241#244#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#234#241#250#1#9#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#241#244#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRNDSCALEPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_immediate or ot_bits8,ot_none);
+ code : #232#233#241#250#1#8#72#22;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#11#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRNDSCALESD;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#234#241#250#1#11#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRNDSCALESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_immediate or ot_bits8);
+ code : #232#241#250#1#10#61#80#23;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRNDSCALESS;
+ ops : 4;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_immediate or ot_bits8);
+ code : #232#241#250#1#10#61#80#23;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#234#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#234#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_xmmrm,ot_none,ot_none);
+ code : #232#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_xmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_ymmrm,ot_none,ot_none);
+ code : #232#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_ymmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#241#244#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmrm,ot_none,ot_none);
+ code : #232#233#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#78#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT14SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#234#241#249#1#79#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#79#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg,ot_none);
+ code : #232#241#249#1#79#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT14SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#79#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem64,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PD;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#234#241#249#1#204#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_bmem32,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VRSQRT28PS;
+ ops : 2;
+ optypes : (ot_zmmreg_mz,ot_zmmreg_sae,ot_none,ot_none);
+ code : #232#233#241#249#1#204#72;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#205#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28SD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#234#241#249#1#205#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VRSQRT28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#205#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VRSQRT28SS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_sae,ot_none);
+ code : #232#241#249#1#205#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem64,ot_none);
+ code : #232#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#234#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_none);
+ code : #232#234#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPD;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#234#241#249#1#44#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmrm,ot_none);
+ code : #232#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_bmem32,ot_none);
+ code : #232#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_none);
+ code : #232#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_none);
+ code : #232#241#244#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_memory or ot_bits512,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSCALEFPS;
+ ops : 3;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmreg_er,ot_none);
+ code : #232#233#241#249#1#44#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits64,ot_none);
+ code : #232#234#241#249#1#45#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCALEFSD;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#234#241#249#1#45#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCALEFSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_memory or ot_bits32,ot_none);
+ code : #232#241#249#1#45#61#80;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCALEFSS;
+ ops : 3;
+ optypes : (ot_xmmreg_mz,ot_xmmreg,ot_xmmreg_er,ot_none);
+ code : #232#241#249#1#45#61#80;
+ flags : [if_avx512]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPD;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERDPS;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#162#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_xmem64_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#234#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_ymem64_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#234#241#244#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPD;
+ ops : 2;
+ optypes : (ot_zmem64_m,ot_zmmreg,ot_none,ot_none);
+ code : #232#233#234#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_xmem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_ymem32_m,ot_xmmreg,ot_none,ot_none);
+ code : #232#241#244#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSCATTERQPS;
+ ops : 2;
+ optypes : (ot_zmem32_m,ot_ymmreg,ot_none,ot_none);
+ code : #232#233#241#249#1#163#65;
+ flags : [if_avx512,if_t1s]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFF64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#35#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI32X4;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem32,ot_immediate or ot_bits8);
+ code : #232#233#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_ymmrm,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_ymmreg_mz,ot_ymmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#234#241#244#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_zmmrm,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
+ ),
+ (
+ opcode : A_VSHUFI64X2;
+ ops : 4;
+ optypes : (ot_zmmreg_mz,ot_zmmreg,ot_bmem64,ot_immediate or ot_bits8);
+ code : #232#233#234#241#250#1#67#61#80#23;
+ flags : [if_avx512,if_tfv]
)
);
diff --git a/tests/test/units/character/tissurrogatepair.pp b/tests/test/units/character/tissurrogatepair.pp
index 5491cf06ad..5a6b8735bc 100644
--- a/tests/test/units/character/tissurrogatepair.pp
+++ b/tests/test/units/character/tissurrogatepair.pp
@@ -17,6 +17,10 @@ uses
{$ifndef FPC}
type UnicodeChar = WideChar;
{$endif}
+
+const
+ { test only a spare grid, else the test runs too long (testing all combinations means dist=1) }
+ dist = 8;
procedure DoError(ACode : Integer; ACodePoint1, ACodePoint2 : Integer); overload;
begin
@@ -40,12 +44,12 @@ begin
end;
Inc(e);
- for i := Low(Word) to High(Word) do begin
- if (i < HIGH_SURROGATE_BEGIN) or (i > HIGH_SURROGATE_END) then begin
- for j := Low(Word) to High(Word) do begin
- if (j < LOW_SURROGATE_BEGIN) or (j > LOW_SURROGATE_END) then begin
- if TCharacter.IsSurrogatePair(UnicodeChar(i),UnicodeChar(j)) then
- DoError(e,i,j);
+ for i := Low(Word) to High(Word) div dist do begin
+ if (i*dist < HIGH_SURROGATE_BEGIN) or (i*dist > HIGH_SURROGATE_END) then begin
+ for j := Low(Word) to High(Word) div dist do begin
+ if (j*dist < LOW_SURROGATE_BEGIN) or (j*dist > LOW_SURROGATE_END) then begin
+ if TCharacter.IsSurrogatePair(UnicodeChar(i*dist),UnicodeChar(j*dist)) then
+ DoError(e,i*dist,j*dist);
end;
end;
end;
diff --git a/tests/test/units/character/tissurrogatepair2.pp b/tests/test/units/character/tissurrogatepair2.pp
index 39ee6e3cdc..c909379153 100644
--- a/tests/test/units/character/tissurrogatepair2.pp
+++ b/tests/test/units/character/tissurrogatepair2.pp
@@ -17,6 +17,10 @@ uses
{$ifndef FPC}
type UnicodeChar = WideChar;
{$endif}
+
+const
+ { test only a spare grid, else the test runs too long (testing all combinations means dist=1) }
+ dist = 8;
procedure DoError(ACode : Integer; ACodePoint1, ACodePoint2 : Integer); overload;
begin
@@ -44,14 +48,14 @@ begin
end;
Inc(e);
- for i := Low(Word) to High(Word) do begin
- if (i < HIGH_SURROGATE_BEGIN) or (i > HIGH_SURROGATE_END) then begin
- for j := Low(Word) to High(Word) do begin
- if (j < LOW_SURROGATE_BEGIN) or (j > LOW_SURROGATE_END) then begin
- s[5] := UnicodeChar(i);
- s[6] := UnicodeChar(j);
+ for i := Low(Word) to High(Word) div dist do begin
+ if (i*dist < HIGH_SURROGATE_BEGIN) or (i*dist > HIGH_SURROGATE_END) then begin
+ for j := Low(Word) to High(Word) div dist do begin
+ if (j*dist < LOW_SURROGATE_BEGIN) or (j*dist > LOW_SURROGATE_END) then begin
+ s[5] := UnicodeChar(i*dist);
+ s[6] := UnicodeChar(j*dist);
if TCharacter.IsSurrogatePair(s,5) then
- DoError(e,i,j);
+ DoError(e,i*dist,j*dist);
end;
end;
end;
diff --git a/tests/utils/avx/asmtestgenerator.pas b/tests/utils/avx/asmtestgenerator.pas
index 0e39e83144..befbe9e16c 100644
--- a/tests/utils/avx/asmtestgenerator.pas
+++ b/tests/utils/avx/asmtestgenerator.pas
@@ -27,9 +27,10 @@ interface
uses BaseList, Classes;
type
- TOpType = (otUnknown, otXMMReg, otXMMRM, otXMMRM16, otXMMRM8, otYMMReg, otYMMRM, otEAX, otRAX, otMem32,
- otMem8, otMem16, otMem64, otMem128, otMem256, otREG64, otREG32, otREG16, otRM32, otRM64, otIMM8,
- otXMEM32, otXMEM64, otYMEM32, otYMEM64);
+ TOpType = (otUnknown, otXMMReg, otXMMRM, otXMMRM16, otXMMRM8, otYMMReg, otYMMRM, otZMMReg, otZMMRM, otEAX, otRAX, otMem32,
+ otMem8, otMem16, otMem64, otMem128, otMem256, otMem512, otREG64, otREG32, otREG16, otREG8, otRM32, otRM64, otIMM8,
+ otXMEM32, otXMEM64, otYMEM32, otYMEM64, otZMEM32, otZMEM64,
+ otB32, otB64, otKREG);
TOperandListItem = class(TObject)
private
@@ -63,7 +64,8 @@ type
TAsmTestGenerator = class(TObject)
private
- FReg16Base : TStringList;
+ FReg8 : TStringList;
+ FReg16 : TStringList;
FReg32Base : TStringList;
FReg32Index : TStringList;
FReg64Base : TStringList;
@@ -72,20 +74,27 @@ type
FReg6432Index : TStringList;
FReg32XMMIndex : TStringList;
FReg32YMMIndex : TStringList;
+ FReg32ZMMIndex : TStringList;
FReg64XMMIndex : TStringList;
FReg64YMMIndex : TStringList;
+ FReg64ZMMIndex : TStringList;
+ FRegKREG : TStringList;
Fx64: boolean;
+ FAVX512: boolean;
+ FSAE: boolean;
- procedure MemRegBaseIndexCombi(const aPrefix: String; aSLBaseReg, aSLIndexReg, aRList: TStringList);
- procedure VectorMemRegBaseIndexCombi(const aPrefix: String; aSLBaseReg, aSLIndexReg, aRList: TStringList);
+ procedure MemRegBaseIndexCombi(const aPrefix, aSuffix: String; aSLBaseReg, aSLIndexReg, aRList: TStringList);
+ procedure VectorMemRegBaseIndexCombi(const aPrefix, aSuffix: String; aSLBaseReg, aSLIndexReg, aRList: TStringList);
function InternalCalcTestData(const aInst, aOp1, aOp2, aOp3, aOp4: String): TStringList;
public
constructor Create;
destructor Destroy; override;
- class procedure CalcTestData(aX64: boolean; const aInst, aOp1, aOp2, aOp3, aOp4: String; aSL: TStringList);
+ class procedure CalcTestData(aX64, aAVX512, aSAE: boolean; const aInst, aOp1, aOp2, aOp3, aOp4: String; aSL: TStringList);
+
+ class procedure CalcTestInstFile;
property x64: boolean read Fx64;
end;
@@ -94,6 +103,363 @@ implementation
uses SysUtils, Dialogs;
+const
+ instabentries = {$i ../../../compiler/x86_64/x8664nop.inc}
+
+type
+ TAsmOp={$i ../../../compiler/x86_64/x8664op.inc}
+
+ op2strtable=array[tasmop] of string[16];
+
+ {Instruction flags }
+ tinsflag = (
+ { please keep these in order and in sync with IF_SMASK }
+ IF_SM, { size match first two operands }
+ IF_SM2,
+ IF_SB, { unsized operands can't be non-byte }
+ IF_SW, { unsized operands can't be non-word }
+ IF_SD, { unsized operands can't be nondword }
+
+ { unsized argument spec }
+ { please keep these in order and in sync with IF_ARMASK }
+ IF_AR0, { SB, SW, SD applies to argument 0 }
+ IF_AR1, { SB, SW, SD applies to argument 1 }
+ IF_AR2, { SB, SW, SD applies to argument 2 }
+
+ IF_PRIV, { it's a privileged instruction }
+ IF_SMM, { it's only valid in SMM }
+ IF_PROT, { it's protected mode only }
+ IF_NOX86_64, { removed instruction in x86_64 }
+ IF_UNDOC, { it's an undocumented instruction }
+ IF_FPU, { it's an FPU instruction }
+ IF_MMX, { it's an MMX instruction }
+ { it's a 3DNow! instruction }
+ IF_3DNOW,
+ { it's a SSE (KNI, MMX2) instruction }
+ IF_SSE,
+ { SSE2 instructions }
+ IF_SSE2,
+ { SSE3 instructions }
+ IF_SSE3,
+ { SSE64 instructions }
+ IF_SSE64,
+ { SVM instructions }
+ IF_SVM,
+ { SSE4 instructions }
+ IF_SSE4,
+ IF_SSSE3,
+ IF_SSE41,
+ IF_SSE42,
+ IF_MOVBE,
+ IF_CLMUL,
+ IF_AVX,
+ IF_AVX2,
+ IF_AVX512,
+ IF_BMI1,
+ IF_BMI2,
+ { Intel ADX (Multi-Precision Add-Carry Instruction Extensions) }
+ IF_ADX,
+ IF_16BITONLY,
+ IF_FMA,
+ IF_FMA4,
+ IF_TSX,
+ IF_RAND,
+ IF_XSAVE,
+ IF_PREFETCHWT1,
+
+ { mask for processor level }
+ { please keep these in order and in sync with IF_PLEVEL }
+ IF_8086, { 8086 instruction }
+ IF_186, { 186+ instruction }
+ IF_286, { 286+ instruction }
+ IF_386, { 386+ instruction }
+ IF_486, { 486+ instruction }
+ IF_PENT, { Pentium instruction }
+ IF_P6, { P6 instruction }
+ IF_KATMAI, { Katmai instructions }
+ IF_WILLAMETTE, { Willamette instructions }
+ IF_PRESCOTT, { Prescott instructions }
+ IF_X86_64,
+ IF_SANDYBRIDGE, { Sandybridge-specific instruction }
+ IF_NEC, { NEC V20/V30 instruction }
+
+ { the following are not strictly part of the processor level, because
+ they are never used standalone, but always in combination with a
+ separate processor level flag. Therefore, they use bits outside of
+ IF_PLEVEL, otherwise they would mess up the processor level they're
+ used in combination with.
+ The following combinations are currently used:
+ [IF_AMD, IF_P6],
+ [IF_CYRIX, IF_486],
+ [IF_CYRIX, IF_PENT],
+ [IF_CYRIX, IF_P6] }
+ IF_CYRIX, { Cyrix, Centaur or VIA-specific instruction }
+ IF_AMD, { AMD-specific instruction }
+
+ { added flags }
+ IF_PRE, { it's a prefix instruction }
+ IF_PASS2, { if the instruction can change in a second pass }
+ IF_IMM4, { immediate operand is a nibble (must be in range [0..15]) }
+ IF_IMM3, { immediate operand is a triad (must be in range [0..7]) }
+
+ IF_BCST2,
+ IF_BCST4,
+ IF_BCST8,
+ IF_BCST16,
+ IF_T2, { disp8 - tuple - 2 }
+ IF_T4, { disp8 - tuple - 4 }
+ IF_T8, { disp8 - tuple - 8 }
+ IF_T1S, { disp8 - tuple - 1 scalar }
+ IF_T1F32,
+ IF_T1F64,
+ IF_TMDDUP,
+ IF_TFV, { disp8 - tuple - full vector }
+ IF_TFVM, { disp8 - tuple - full vector memory }
+ IF_TQVM,
+ IF_TMEM128,
+ IF_THV,
+ IF_THVM,
+ IF_TOVM
+
+
+ );
+ tinsflags=set of tinsflag;
+
+
+ tinsentry=packed record
+ opcode : tasmop;
+ ops : byte;
+ //optypes : array[0..max_operands-1] of longint;
+ optypes : array[0..3] of int64; //TG
+ code : array[0..11] of char;
+ flags : tinsflags;
+ end;
+ pinsentry=^tinsentry;
+
+const
+ OT_NONE = $00000000;
+
+ { Bits 0..7: sizes }
+ OT_BITS8 = $00000001;
+ OT_BITS16 = $00000002;
+ OT_BITS32 = $00000004;
+ OT_BITS64 = $00000008; { x86_64 and FPU }
+ //OT_BITS128 = $10000000; { 16 byte SSE }
+ //OT_BITS256 = $20000000; { 32 byte AVX }
+ //OT_BITS512 = $40000000; { 64 byte AVX512 }
+ OT_BITS128 = $20000000; { 16 byte SSE }
+ OT_BITS256 = $40000000; { 32 byte AVX }
+ OT_BITS512 = $80000000; { 64 byte AVX512 }
+
+ OT_VECTORMASK = $1000000000; { OPTIONAL VECTORMASK AVX512}
+ OT_VECTORZERO = $2000000000; { OPTIONAL ZERO-FLAG AVX512}
+ OT_VECTORBCST = $4000000000; { BROADCAST-MEM-FLAG AVX512}
+ OT_VECTORSAE = $8000000000; { OPTIONAL SAE-FLAG AVX512}
+ OT_VECTORER = $10000000000; { OPTIONAL ER-FLAG-FLAG AVX512}
+
+
+ OT_BITSB32 = OT_BITS32 or OT_VECTORBCST;
+ OT_BITSB64 = OT_BITS64 or OT_VECTORBCST;
+
+
+ OT_VECTOR_EXT_MASK = OT_VECTORMASK or OT_VECTORZERO or OT_VECTORBCST;
+
+ OT_BITS80 = $00000010; { FPU only }
+ OT_FAR = $00000020; { this means 16:16 or 16:32, like in CALL/JMP }
+ OT_NEAR = $00000040;
+ OT_SHORT = $00000080;
+
+ { TODO: FAR/NEAR/SHORT are sizes too, they should be included into size mask,
+ 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);
+
+ { Bits 8..11: modifiers }
+ OT_SIGNED = $00000100; { the operand need to be signed -128-127 }
+ OT_TO = $00000200; { reverse effect in FADD, FSUB &c }
+ OT_COLON = $00000400; { operand is followed by a colon }
+ OT_MODIFIER_MASK = $00000F00;
+
+ { Bits 12..15: type of operand }
+ OT_REGISTER = $00001000;
+ OT_IMMEDIATE = $00002000;
+ OT_MEMORY = $0000C000; { always includes 'OT_REGMEM' bit as well }
+ OT_REGMEM = $00008000; { for r/m, ie EA, operands }
+ OT_TYPE_MASK = OT_REGISTER or OT_IMMEDIATE or OT_MEMORY or OT_REGMEM;
+
+ OT_REGNORM = OT_REGISTER or OT_REGMEM; { 'normal' reg, qualifies as EA }
+
+ { Bits 20..22, 24..26: register classes
+ otf_* consts are not used alone, only to build other constants. }
+ otf_reg_cdt = $00100000;
+ otf_reg_gpr = $00200000;
+ otf_reg_sreg = $00400000;
+ otf_reg_k = $00800000;
+ otf_reg_fpu = $01000000;
+ otf_reg_mmx = $02000000;
+ otf_reg_xmm = $04000000;
+ otf_reg_ymm = $08000000;
+ otf_reg_zmm = $10000000;
+
+
+ otf_reg_extra_mask = $0F000000;
+ { Bits 16..19: subclasses, meaning depends on classes field }
+ otf_sub0 = $00010000;
+ otf_sub1 = $00020000;
+ otf_sub2 = $00040000;
+ otf_sub3 = $00080000;
+ OT_REG_SMASK = otf_sub0 or otf_sub1 or otf_sub2 or otf_sub3;
+
+ //OT_REG_EXTRA_MASK = $0F000000;
+ OT_REG_EXTRA_MASK = $1F000000;
+
+ OT_REG_TYPMASK = otf_reg_cdt or otf_reg_gpr or otf_reg_sreg or otf_reg_k or otf_reg_extra_mask;
+ { register class 0: CRx, DRx and TRx }
+ OT_REG_CDT = OT_REGISTER or otf_reg_cdt or OT_BITS64;
+ OT_REG_CREG = OT_REG_CDT or otf_sub0; { CRn }
+ OT_REG_DREG = OT_REG_CDT or otf_sub1; { DRn }
+ OT_REG_TREG = OT_REG_CDT or otf_sub2; { TRn }
+ OT_REG_CR4 = OT_REG_CDT or otf_sub3; { CR4 (Pentium only) }
+
+ { register class 1: general-purpose registers }
+ OT_REG_GPR = OT_REGNORM or otf_reg_gpr;
+ OT_RM_GPR = OT_REGMEM or otf_reg_gpr;
+ OT_REG8 = OT_REG_GPR or OT_BITS8; { 8-bit GPR }
+ OT_REG16 = OT_REG_GPR or OT_BITS16;
+ OT_REG32 = OT_REG_GPR or OT_BITS32;
+ OT_REG64 = OT_REG_GPR or OT_BITS64;
+
+ { GPR subclass 0: accumulator: AL, AX, EAX or RAX }
+ OT_REG_ACCUM = OT_REG_GPR or otf_sub0;
+ OT_REG_AL = OT_REG_ACCUM or OT_BITS8;
+ OT_REG_AX = OT_REG_ACCUM or OT_BITS16;
+ OT_REG_EAX = OT_REG_ACCUM or OT_BITS32;
+ OT_REG_RAX = OT_REG_ACCUM or OT_BITS64;
+ { GPR subclass 1: counter: CL, CX, ECX or RCX }
+ OT_REG_COUNT = OT_REG_GPR or otf_sub1;
+ OT_REG_CL = OT_REG_COUNT or OT_BITS8;
+ OT_REG_CX = OT_REG_COUNT or OT_BITS16;
+ OT_REG_ECX = OT_REG_COUNT or OT_BITS32;
+ OT_REG_RCX = OT_REG_COUNT or OT_BITS64;
+ { GPR subclass 2: data register: DL, DX, EDX or RDX }
+ OT_REG_DX = OT_REG_GPR or otf_sub2 or OT_BITS16;
+ OT_REG_EDX = OT_REG_GPR or otf_sub2 or OT_BITS32;
+
+ { register class 2: Segment registers }
+ OT_REG_SREG = OT_REGISTER or otf_reg_sreg or OT_BITS16;
+ OT_REG_CS = OT_REG_SREG or otf_sub0; { CS }
+ OT_REG_DESS = OT_REG_SREG or otf_sub1; { DS, ES, SS (non-CS 86 registers) }
+ OT_REG_FSGS = OT_REG_SREG or otf_sub2; { FS, GS (386 extended registers) }
+
+ { register class 3: FPU registers }
+ OT_FPUREG = OT_REGISTER or otf_reg_fpu;
+ OT_FPU0 = OT_FPUREG or otf_sub0; { FPU stack register zero }
+
+ { register class 4: MMX (both reg and r/m) }
+ OT_MMXREG = OT_REGNORM or otf_reg_mmx;
+ OT_MMXRM = OT_REGMEM or otf_reg_mmx;
+
+ { register class 5: XMM (both reg and r/m) }
+ OT_XMMREG = OT_REGNORM or otf_reg_xmm;
+ OT_XMMRM = OT_REGMEM or otf_reg_xmm;
+ OT_XMEM32 = OT_REGNORM or otf_reg_xmm or otf_reg_gpr or OT_BITS32;
+ OT_XMEM32_M = OT_XMEM32 or OT_VECTORMASK;
+ OT_XMEM64 = OT_REGNORM or otf_reg_xmm or otf_reg_gpr or OT_BITS64;
+ OT_XMEM64_M = OT_XMEM64 or OT_VECTORMASK;
+
+ OT_XMMREG_M = OT_XMMREG or OT_VECTORMASK;
+ OT_XMMREG_MZ = OT_XMMREG or OT_VECTORMASK or OT_VECTORZERO;
+ OT_XMMRM_MZ = OT_XMMRM or OT_VECTORMASK or OT_VECTORZERO;
+ OT_XMMREG_SAE = OT_XMMREG or OT_VECTORSAE;
+ OT_XMMRM_SAE = OT_XMMRM or OT_VECTORSAE;
+ OT_XMMREG_ER = OT_XMMREG or OT_VECTORER;
+ OT_XMMRM_ER = OT_XMMRM or OT_VECTORER;
+
+
+
+ { register class 5: YMM (both reg and r/m) }
+ OT_YMMREG = OT_REGNORM or otf_reg_ymm;
+ OT_YMMRM = OT_REGMEM or otf_reg_ymm;
+ OT_YMEM32 = OT_REGNORM or otf_reg_ymm or otf_reg_gpr or OT_BITS32;
+ OT_YMEM32_M = OT_YMEM32 or OT_VECTORMASK;
+ OT_YMEM64 = OT_REGNORM or otf_reg_ymm or otf_reg_gpr or OT_BITS64;
+ OT_YMEM64_M = OT_YMEM64 or OT_VECTORMASK;
+
+ OT_YMMREG_M = OT_YMMREG or OT_VECTORMASK;
+ OT_YMMREG_MZ = OT_YMMREG or OT_VECTORMASK or OT_VECTORZERO;
+ OT_YMMRM_MZ = OT_YMMRM or OT_VECTORMASK or OT_VECTORZERO;
+ OT_YMMREG_SAE = OT_YMMREG or OT_VECTORSAE;
+ OT_YMMRM_SAE = OT_YMMRM or OT_VECTORSAE;
+ OT_YMMREG_ER = OT_YMMREG or OT_VECTORER;
+ OT_YMMRM_ER = OT_YMMRM or OT_VECTORER;
+
+
+ { register class 5: ZMM (both reg and r/m) }
+ OT_ZMMREG = OT_REGNORM or otf_reg_zmm;
+ OT_ZMMRM = OT_REGMEM or otf_reg_zmm;
+ OT_ZMEM32 = OT_REGNORM or otf_reg_zmm or otf_reg_gpr or OT_BITS32;
+ OT_ZMEM32_M = OT_ZMEM32 or OT_VECTORMASK;
+ OT_ZMEM64 = OT_REGNORM or otf_reg_zmm or otf_reg_gpr or OT_BITS64;
+ OT_ZMEM64_M = OT_ZMEM64 or OT_VECTORMASK;
+
+ OT_ZMMREG_M = OT_ZMMREG or OT_VECTORMASK;
+ OT_ZMMREG_MZ = OT_ZMMREG or OT_VECTORMASK or OT_VECTORZERO;
+ OT_ZMMRM_MZ = OT_ZMMRM or OT_VECTORMASK or OT_VECTORZERO;
+ OT_ZMMREG_SAE = OT_ZMMREG or OT_VECTORSAE;
+ OT_ZMMRM_SAE = OT_ZMMRM or OT_VECTORSAE;
+ OT_ZMMREG_ER = OT_ZMMREG or OT_VECTORER;
+ OT_ZMMRM_ER = OT_ZMMRM or OT_VECTORER;
+
+
+ OT_KREG = OT_REGNORM or otf_reg_k;
+ OT_KREG_M = OT_KREG or OT_VECTORMASK;
+
+ { Vector-Memory operands }
+ OT_VMEM_ANY = OT_XMEM32 or OT_XMEM64 or OT_YMEM32 or OT_YMEM64 or OT_ZMEM32 or OT_ZMEM64;
+
+ { Memory operands }
+ OT_MEM8 = OT_MEMORY or OT_BITS8;
+ OT_MEM16 = OT_MEMORY or OT_BITS16;
+ OT_MEM16_M = OT_MEM16 or OT_VECTORMASK;
+ OT_MEM32 = OT_MEMORY or OT_BITS32;
+ OT_MEM32_M = OT_MEMORY or OT_BITS32 or OT_VECTORMASK;
+ OT_BMEM32 = OT_MEMORY or OT_BITS32 or OT_VECTORBCST;
+ OT_BMEM32_SAE= OT_MEMORY or OT_BITS32 or OT_VECTORBCST or OT_VECTORSAE;
+ OT_MEM64 = OT_MEMORY or OT_BITS64;
+ OT_MEM64_M = OT_MEMORY or OT_BITS64 or OT_VECTORMASK;
+ OT_BMEM64 = OT_MEMORY or OT_BITS64 or OT_VECTORBCST;
+ OT_BMEM64_SAE= OT_MEMORY or OT_BITS64 or OT_VECTORBCST or OT_VECTORSAE;
+ OT_MEM128 = OT_MEMORY or OT_BITS128;
+ OT_MEM128_M = OT_MEMORY or OT_BITS128 or OT_VECTORMASK;
+ OT_MEM256 = OT_MEMORY or OT_BITS256;
+ OT_MEM256_M = OT_MEMORY or OT_BITS256 or OT_VECTORMASK;
+ OT_MEM512 = OT_MEMORY or OT_BITS512;
+ OT_MEM512_M = OT_MEMORY or OT_BITS512 or OT_VECTORMASK;
+ OT_MEM80 = OT_MEMORY or OT_BITS80;
+
+
+
+
+ OT_MEM_OFFS = OT_MEMORY or otf_sub0; { special type of EA }
+ { simple [address] offset }
+
+ { Matches any type of r/m operand }
+ OT_MEMORY_ANY = OT_MEMORY or OT_RM_GPR or OT_XMMRM or OT_MMXRM or OT_YMMRM or OT_ZMMRM or OT_REG_EXTRA_MASK;
+
+ { Immediate operands }
+ OT_IMM8 = OT_IMMEDIATE or OT_BITS8;
+ OT_IMM16 = OT_IMMEDIATE or OT_BITS16;
+ OT_IMM32 = OT_IMMEDIATE or OT_BITS32;
+ OT_IMM64 = OT_IMMEDIATE or OT_BITS64;
+
+ OT_ONENESS = otf_sub0; { special type of immediate operand }
+ OT_UNITY = OT_IMMEDIATE or OT_ONENESS; { for shift/rotate instructions }
+
+ std_op2str:op2strtable={$i ../../../compiler/x86_64/x8664int.inc}
+
+ InsTab:array[0..instabentries-1] of TInsEntry={$i ../../../compiler/x86_64/x8664tab.inc}
+
{ TOperandListItem }
constructor TOperandListItem.Create;
@@ -129,6 +495,7 @@ end;
function TAsmTestGenerator.InternalCalcTestData(const aInst, aOp1, aOp2, aOp3,
aOp4: String): TStringList;
var
+ i: integer;
Item: TOperandListItem;
OItem1: TOperandListItem;
OItem2: TOperandListItem;
@@ -141,6 +508,7 @@ var
il_Op3: integer;
il_Op4: integer;
+ sSuffix: string;
sl_Operand: String;
sl_Inst : String;
sl_RegCombi: String;
@@ -174,11 +542,31 @@ begin
OItem4 := TOperandListItem.Create;
try
- UsePrefix := (aInst = 'VCVTPD2DQ') OR
- (aInst = 'VCVTPD2PS') OR
- (aInst = 'VCVTSI2SD') OR
- (aInst = 'VCVTSI2SS') OR
- (aInst = 'VCVTTPD2DQ');
+ UsePrefix := (UpperCase(aInst) = 'VCVTPD2DQ') OR
+ (UpperCase(aInst) = 'VCVTPD2PS') OR
+ (UpperCase(aInst) = 'VCVTSI2SD') OR
+ (UpperCase(aInst) = 'VCVTSI2SS') OR
+ (UpperCase(aInst) = 'VCVTTPD2DQ') or
+ (UpperCase(aInst) = 'VPMOVZXWQ') or
+ (UpperCase(aInst) = 'VCVTPD2UDQ') or
+ (UpperCase(aInst) = 'VCVTPD2UDQ') or
+ (UpperCase(aInst) = 'VCVTTPD2UDQ') or
+ (UpperCase(aInst) = 'VCVTUQQ2PS') or
+ (UpperCase(aInst) = 'VCVTQQ2PS') or
+ (UpperCase(aInst) = 'VCVTUSI2SD') or
+ (UpperCase(aInst) = 'VCVTUSI2SS') or
+ (UpperCase(aInst) = 'VFPCLASSPD') or
+ (UpperCase(aInst) = 'VFPCLASSPS') or
+ (UpperCase(aInst) = 'VCMPSS')
+
+ ;
+
+
+ //TG TODO delete
+ if aInst = 'vpmovw2m' then
+ begin
+ sSuffix := sSuffix;
+ end;
for il_Op := 1 to 4 do
begin
@@ -205,46 +593,58 @@ begin
sl_Operand := PrepareOperandTyp(sl_Operand);
- if AnsiSameText(sl_Operand, 'XMMREG') then
+ if (AnsiSameText(sl_Operand, 'XMMREG')) or
+ (AnsiSameText(sl_Operand, 'XMMREG_M')) or
+ (AnsiSameText(sl_Operand, 'XMMREG_MZ')) or
+ (AnsiSameText(sl_Operand, 'XMMREG_ER')) or
+ (AnsiSameText(sl_Operand, 'XMMREG_SAE')) then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otXMMReg;
Item.OpActive := true;
- Item.Values.Add('XMM0');
- Item.Values.Add('XMM1');
- Item.Values.Add('XMM2');
- Item.Values.Add('XMM3');
- Item.Values.Add('XMM4');
- Item.Values.Add('XMM5');
- Item.Values.Add('XMM6');
- Item.Values.Add('XMM7');
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', sl_Operand) > 0 then sSuffix := ', {ru-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM1' + sSuffix);
+ Item.Values.Add('XMM2' + sSuffix);
+ Item.Values.Add('XMM3' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM5' + sSuffix);
+ Item.Values.Add('XMM6' + sSuffix);
+ Item.Values.Add('XMM7' + sSuffix);
if x64 then
begin
- if aOp4 <> 'XMMREG' then
+ Item.Values.Clear;
+ if FAVX512 then
begin
- Item.Values.Add('XMM8');
- Item.Values.Add('XMM9');
- Item.Values.Add('XMM10');
- Item.Values.Add('XMM11');
- Item.Values.Add('XMM12');
- Item.Values.Add('XMM13');
- Item.Values.Add('XMM14');
- Item.Values.Add('XMM15');
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM9' + sSuffix);
+ Item.Values.Add('XMM18' + sSuffix);
+ Item.Values.Add('XMM27' + sSuffix);
+ Item.Values.Add('XMM31' + sSuffix);
end
else
begin
- Item.Values.Clear;
-
- Item.Values.Add('XMM0');
- Item.Values.Add('XMM7');
- Item.Values.Add('XMM8');
- Item.Values.Add('XMM15');
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM8' + sSuffix);
+ Item.Values.Add('XMM12' + sSuffix);
+ Item.Values.Add('XMM15' + sSuffix);
end;
end;
end
- else if AnsiSameText(sl_Operand, 'XMMRM') then
+ else if (AnsiSameText(sl_Operand, 'XMMRM')) or
+ (AnsiSameText(sl_Operand, 'XMMRM_M')) or
+ (AnsiSameText(sl_Operand, 'XMMRM_MZ')) or
+ (AnsiSameText(sl_Operand, 'XMMRM_ER')) or
+ (AnsiSameText(sl_Operand, 'XMMRM_SAE')) then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otXMMRM;
@@ -252,38 +652,55 @@ begin
if UsePrefix then sl_Prefix := 'oword ';
- Item.Values.Add('XMM0');
- Item.Values.Add('XMM1');
- Item.Values.Add('XMM2');
- Item.Values.Add('XMM3');
- Item.Values.Add('XMM4');
- Item.Values.Add('XMM5');
- Item.Values.Add('XMM6');
- Item.Values.Add('XMM7');
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ', {rd-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM1' + sSuffix);
+ Item.Values.Add('XMM2' + sSuffix);
+ Item.Values.Add('XMM3' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM5' + sSuffix);
+ Item.Values.Add('XMM6' + sSuffix);
+ Item.Values.Add('XMM7' + sSuffix);
if x64 then
begin
- Item.Values.Add('XMM8');
- Item.Values.Add('XMM9');
- Item.Values.Add('XMM10');
- Item.Values.Add('XMM11');
- Item.Values.Add('XMM12');
- Item.Values.Add('XMM13');
- Item.Values.Add('XMM14');
- Item.Values.Add('XMM15');
-
- //Item.Values.Add('[RIP]');
- //Item.Values.Add('[RIP + 16]');
+ Item.Values.Clear;
+ if FAVX512 then
+ begin
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM9' + sSuffix);
+ Item.Values.Add('XMM18' + sSuffix);
+ Item.Values.Add('XMM27' + sSuffix);
+ Item.Values.Add('XMM31' + sSuffix);
+ end
+ else
+ begin
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM8' + sSuffix);
+ Item.Values.Add('XMM12' + sSuffix);
+ Item.Values.Add('XMM15' + sSuffix);
+ end;
- MemRegBaseIndexCombi(sl_Prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
else
begin
- MemRegBaseIndexCombi(sl_Prefix, FReg32Base, FReg32Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg32Base, FReg32Index, Item.Values);
end;
end
- else if AnsiSameText(sl_Operand, 'XMMRM8') then
+ else if (AnsiSameText(sl_Operand, 'XMMRM8')) or
+ (AnsiSameText(sl_Operand, 'XMMRM8_M')) or
+ (AnsiSameText(sl_Operand, 'XMMRM8_MZ')) or
+ (AnsiSameText(sl_Operand, 'XMMRM8_ER')) or
+ (AnsiSameText(sl_Operand, 'XMMRM8_SAE')) then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otXMMRM8;
@@ -291,38 +708,59 @@ begin
if UsePrefix then sl_Prefix := 'byte ';
- Item.Values.Add('XMM0');
- Item.Values.Add('XMM1');
- Item.Values.Add('XMM2');
- Item.Values.Add('XMM3');
- Item.Values.Add('XMM4');
- Item.Values.Add('XMM5');
- Item.Values.Add('XMM6');
- Item.Values.Add('XMM7');
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ', {rd-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM1' + sSuffix);
+ Item.Values.Add('XMM2' + sSuffix);
+ Item.Values.Add('XMM3' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM5' + sSuffix);
+ Item.Values.Add('XMM6' + sSuffix);
+ Item.Values.Add('XMM7' + sSuffix);
if x64 then
begin
- Item.Values.Add('XMM8');
- Item.Values.Add('XMM9');
- Item.Values.Add('XMM10');
- Item.Values.Add('XMM11');
- Item.Values.Add('XMM12');
- Item.Values.Add('XMM13');
- Item.Values.Add('XMM14');
- Item.Values.Add('XMM15');
+ Item.Values.Clear;
+ if FAVX512 then
+ begin
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM9' + sSuffix);
+ Item.Values.Add('XMM18' + sSuffix);
+ Item.Values.Add('XMM27' + sSuffix);
+ Item.Values.Add('XMM31' + sSuffix);
+ end
+ else
+ begin
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM8' + sSuffix);
+ Item.Values.Add('XMM12' + sSuffix);
+ Item.Values.Add('XMM15' + sSuffix);
+ end;
//Item.Values.Add('[RIP]');
//Item.Values.Add('[RIP + 16]');
- MemRegBaseIndexCombi(sl_Prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
else
begin
- MemRegBaseIndexCombi(sl_Prefix, FReg32Base, FReg32Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg32Base, FReg32Index, Item.Values);
end;
end
- else if AnsiSameText(sl_Operand, 'XMMRM16') then
+ else if (AnsiSameText(sl_Operand, 'XMMRM16')) or
+ (AnsiSameText(sl_Operand, 'XMMRM16_M')) or
+ (AnsiSameText(sl_Operand, 'XMMRM16_MZ')) or
+ (AnsiSameText(sl_Operand, 'XMMRM16_ER')) or
+ (AnsiSameText(sl_Operand, 'XMMRM16_SAE'))
+ then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otXMMRM16;
@@ -330,77 +768,107 @@ begin
if UsePrefix then sl_Prefix := 'word ';
- Item.Values.Add('XMM0');
- Item.Values.Add('XMM1');
- Item.Values.Add('XMM2');
- Item.Values.Add('XMM3');
- Item.Values.Add('XMM4');
- Item.Values.Add('XMM5');
- Item.Values.Add('XMM6');
- Item.Values.Add('XMM7');
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ', {rd-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM1' + sSuffix);
+ Item.Values.Add('XMM2' + sSuffix);
+ Item.Values.Add('XMM3' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM5' + sSuffix);
+ Item.Values.Add('XMM6' + sSuffix);
+ Item.Values.Add('XMM7' + sSuffix);
if x64 then
begin
- Item.Values.Add('XMM8');
- Item.Values.Add('XMM9');
- Item.Values.Add('XMM10');
- Item.Values.Add('XMM11');
- Item.Values.Add('XMM12');
- Item.Values.Add('XMM13');
- Item.Values.Add('XMM14');
- Item.Values.Add('XMM15');
+ Item.Values.Clear;
+ if FAVX512 then
+ begin
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM9' + sSuffix);
+ Item.Values.Add('XMM18' + sSuffix);
+ Item.Values.Add('XMM27' + sSuffix);
+ Item.Values.Add('XMM31' + sSuffix);
+ end
+ else
+ begin
+ Item.Values.Add('XMM0' + sSuffix);
+ Item.Values.Add('XMM4' + sSuffix);
+ Item.Values.Add('XMM8' + sSuffix);
+ Item.Values.Add('XMM12' + sSuffix);
+ Item.Values.Add('XMM15' + sSuffix);
+ end;
//Item.Values.Add('[RIP]');
//Item.Values.Add('[RIP + 16]');
- MemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_prefix, '', FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
else
begin
- MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ MemRegBaseIndexCombi(sl_prefix, '', FReg32Base, FReg32Index, Item.Values);
end;
end
- else if AnsiSameText(sl_Operand, 'YMMREG') then
+ else if (AnsiSameText(sl_Operand, 'YMMREG')) or
+ (AnsiSameText(sl_Operand, 'YMMREG_M')) or
+ (AnsiSameText(sl_Operand, 'YMMREG_MZ')) or
+ (AnsiSameText(sl_Operand, 'YMMREG_ER')) or
+ (AnsiSameText(sl_Operand, 'YMMREG_SAE'))
+ then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otYMMReg;
Item.OpActive := true;
- Item.Values.Add('YMM0');
- Item.Values.Add('YMM1');
- Item.Values.Add('YMM2');
- Item.Values.Add('YMM3');
- Item.Values.Add('YMM4');
- Item.Values.Add('YMM5');
- Item.Values.Add('YMM6');
- Item.Values.Add('YMM7');
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ', {rd-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('YMM0' + sSuffix);
+ Item.Values.Add('YMM1' + sSuffix);
+ Item.Values.Add('YMM2' + sSuffix);
+ Item.Values.Add('YMM3' + sSuffix);
+ Item.Values.Add('YMM4' + sSuffix);
+ Item.Values.Add('YMM5' + sSuffix);
+ Item.Values.Add('YMM6' + sSuffix);
+ Item.Values.Add('YMM7' + sSuffix);
if x64 then
begin
- if aOp4 <> 'YMMREG' then
+ Item.Values.Clear;
+ if FAVX512 then
begin
- Item.Values.Add('YMM8');
- Item.Values.Add('YMM9');
- Item.Values.Add('YMM10');
- Item.Values.Add('YMM11');
- Item.Values.Add('YMM12');
- Item.Values.Add('YMM13');
- Item.Values.Add('YMM14');
- Item.Values.Add('YMM15');
+ Item.Values.Add('YMM0' + sSuffix);
+ Item.Values.Add('YMM9' + sSuffix);
+ Item.Values.Add('YMM18' + sSuffix);
+ Item.Values.Add('YMM27' + sSuffix);
+ Item.Values.Add('YMM31' + sSuffix);
end
else
begin
- Item.Values.Clear;
-
- Item.Values.Add('YMM0');
- Item.Values.Add('YMM7');
- Item.Values.Add('YMM8');
- Item.Values.Add('YMM15');
+ Item.Values.Add('YMM0' + sSuffix);
+ Item.Values.Add('YMM4' + sSuffix);
+ Item.Values.Add('YMM8' + sSuffix);
+ Item.Values.Add('YMM12' + sSuffix);
+ Item.Values.Add('YMM15' + sSuffix);
end;
end;
end
- else if AnsiSameText(sl_Operand, 'YMMRM') then
+ else if (AnsiSameText(sl_Operand, 'YMMRM')) or
+ (AnsiSameText(sl_Operand, 'YMMRM_M')) or
+ (AnsiSameText(sl_Operand, 'YMMRM_MZ')) or
+ (AnsiSameText(sl_Operand, 'YMMRM_ER')) or
+ (AnsiSameText(sl_Operand, 'YMMRM_SAE'))
+ then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otYMMRM;
@@ -408,32 +876,153 @@ begin
if UsePrefix then sl_Prefix := 'yword ';
- Item.Values.Add('YMM0');
- Item.Values.Add('YMM1');
- Item.Values.Add('YMM2');
- Item.Values.Add('YMM3');
- Item.Values.Add('YMM4');
- Item.Values.Add('YMM5');
- Item.Values.Add('YMM6');
- Item.Values.Add('YMM7');
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ', {rd-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('YMM0' + sSuffix);
+ Item.Values.Add('YMM1' + sSuffix);
+ Item.Values.Add('YMM2' + sSuffix);
+ Item.Values.Add('YMM3' + sSuffix);
+ Item.Values.Add('YMM4' + sSuffix);
+ Item.Values.Add('YMM5' + sSuffix);
+ Item.Values.Add('YMM6' + sSuffix);
+ Item.Values.Add('YMM7' + sSuffix);
+
+ if x64 then
+ begin
+ Item.Values.Clear;
+ if FAVX512 then
+ begin
+ Item.Values.Add('YMM0' + sSuffix);
+ Item.Values.Add('YMM9' + sSuffix);
+ Item.Values.Add('YMM18' + sSuffix);
+ Item.Values.Add('YMM27' + sSuffix);
+ Item.Values.Add('YMM31' + sSuffix);
+ end
+ else
+ begin
+ Item.Values.Add('YMM0' + sSuffix);
+ Item.Values.Add('YMM4' + sSuffix);
+ Item.Values.Add('YMM8' + sSuffix);
+ Item.Values.Add('YMM12' + sSuffix);
+ Item.Values.Add('YMM15' + sSuffix);
+ end;
+
+ MemRegBaseIndexCombi(sl_prefix, '', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg32Base, FReg32Index, Item.Values);
+ end;
+ end
+ else if (AnsiSameText(sl_Operand, 'ZMMREG')) or
+ (AnsiSameText(sl_Operand, 'ZMMREG_M')) or
+ (AnsiSameText(sl_Operand, 'ZMMREG_MZ')) or
+ (AnsiSameText(sl_Operand, 'ZMMREG_ER')) or
+ (AnsiSameText(sl_Operand, 'ZMMREG_SAE'))
+ then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otZMMReg;
+ Item.OpActive := true;
+
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ', {rd-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('ZMM0' + sSuffix);
+ Item.Values.Add('ZMM1' + sSuffix);
+ Item.Values.Add('ZMM2' + sSuffix);
+ Item.Values.Add('ZMM3' + sSuffix);
+ Item.Values.Add('ZMM4' + sSuffix);
+ Item.Values.Add('ZMM5' + sSuffix);
+ Item.Values.Add('ZMM6' + sSuffix);
+ Item.Values.Add('ZMM7' + sSuffix);
+
+ if x64 then
+ begin
+ Item.Values.Clear;
+ if FAVX512 then
+ begin
+ Item.Values.Add('ZMM0' + sSuffix);
+ Item.Values.Add('ZMM9' + sSuffix);
+ Item.Values.Add('ZMM18' + sSuffix);
+ Item.Values.Add('ZMM27' + sSuffix);
+ Item.Values.Add('ZMM31' + sSuffix);
+ end
+ else
+ begin
+ Item.Values.Add('ZMM0' + sSuffix);
+ Item.Values.Add('ZMM4' + sSuffix);
+ Item.Values.Add('ZMM8' + sSuffix);
+ Item.Values.Add('ZMM12' + sSuffix);
+ Item.Values.Add('ZMM15' + sSuffix);
+ end;
+ end;
+ end
+ else if (AnsiSameText(sl_Operand, 'ZMMRM')) or
+ (AnsiSameText(sl_Operand, 'ZMMRM_M')) or
+ (AnsiSameText(sl_Operand, 'ZMMRM_MZ')) or
+ (AnsiSameText(sl_Operand, 'XMMRM_ER')) or
+ (AnsiSameText(sl_Operand, 'XMMRM_SAE'))
+ then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otZMMRM;
+ Item.OpActive := true;
+
+ if UsePrefix then sl_Prefix := 'zword ';
+
+ sSuffix := '';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}'
+ else if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if Pos('_ER', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ', {rd-sae}'
+ else if FSAE and (Pos('_SAE', AnsiUppercase(sl_Operand)) > 0) then sSuffix := ', {sae}';
+
+ Item.Values.Add('ZMM0' + sSuffix);
+ Item.Values.Add('ZMM1' + sSuffix);
+ Item.Values.Add('ZMM2' + sSuffix);
+ Item.Values.Add('ZMM3' + sSuffix);
+ Item.Values.Add('ZMM4' + sSuffix);
+ Item.Values.Add('ZMM5' + sSuffix);
+ Item.Values.Add('ZMM6' + sSuffix);
+ Item.Values.Add('ZMM7' + sSuffix);
if x64 then
begin
- Item.Values.Add('YMM8');
- Item.Values.Add('YMM9');
- Item.Values.Add('YMM10');
- Item.Values.Add('YMM11');
- Item.Values.Add('YMM12');
- Item.Values.Add('YMM13');
- Item.Values.Add('YMM14');
- Item.Values.Add('YMM15');
-
- MemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64Index, Item.Values);
+ Item.Values.Clear;
+ if FAVX512 then
+ begin
+ Item.Values.Add('ZMM0' + sSuffix);
+ Item.Values.Add('ZMM9' + sSuffix);
+ Item.Values.Add('ZMM18' + sSuffix);
+ Item.Values.Add('ZMM27' + sSuffix);
+ Item.Values.Add('ZMM31' + sSuffix);
+ end
+ else
+ begin
+ Item.Values.Add('ZMM0' + sSuffix);
+ Item.Values.Add('ZMM4' + sSuffix);
+ Item.Values.Add('ZMM8' + sSuffix);
+ Item.Values.Add('ZMM12' + sSuffix);
+ Item.Values.Add('ZMM15' + sSuffix);
+ end;
+
+ MemRegBaseIndexCombi(sl_prefix, '', FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
else
begin
- MemRegBaseIndexCombi(sl_Prefix, FReg32Base, FReg32Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg32Base, FReg32Index, Item.Values);
end;
end
else if AnsiSameText(sl_Operand, 'MEM8') then
@@ -442,16 +1031,22 @@ begin
Item.OpTyp := otMEM8;
Item.OpActive := true;
- if UsePrefix then sl_Prefix := 'byte ';
- if x64 then
+
+ if UsePrefix then sl_Prefix := 'byte ';
+
+
+ sSuffix := '';
+
+ if x64 then
begin
- MemRegBaseIndexCombi(sl_Prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_prefix, '', FReg32Base, FReg32Index, Item.Values);
end
- else if AnsiSameText(sl_Operand, 'MEM16') then
+ else if AnsiSameText(sl_Operand, 'MEM16') or
+ AnsiSameText(sl_Operand, 'MEM16_M') then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otMEM16;
@@ -459,14 +1054,19 @@ begin
if UsePrefix then sl_Prefix := 'word ';
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
if x64 then
begin
- MemRegBaseIndexCombi(sl_Prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, sSuffix, FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_Prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_Prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
end
- else if AnsiSameText(sl_Operand, 'MEM32') then
+ else if AnsiSameText(sl_Operand, 'MEM32') or
+ AnsiSameText(sl_Operand, 'MEM32_M') or
+ AnsiSameText(sl_Operand, 'MEM32_MZ') then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otMEM32;
@@ -474,14 +1074,22 @@ begin
if UsePrefix then sl_Prefix := 'dword ';
+ sSuffix := '';
+
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}';
+
+
if x64 then
begin
- MemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
end
- else if AnsiSameText(sl_Operand, 'MEM64') then
+ else if (AnsiSameText(sl_Operand, 'MEM64')) or
+ (AnsiSameText(sl_Operand, 'MEM64_M')) or
+ (AnsiSameText(sl_Operand, 'MEM64_MZ')) then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otMEM64;
@@ -489,14 +1097,20 @@ begin
if UsePrefix then sl_Prefix := 'qword ';
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}';
+
if x64 then
begin
- MemRegBaseIndexCombi(sl_Prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, sSuffix, FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
end
- else if AnsiSameText(sl_Operand, 'MEM128') then
+ else if (AnsiSameText(sl_Operand, 'MEM128')) or
+ (AnsiSameText(sl_Operand, 'MEM128_M')) or
+ (AnsiSameText(sl_Operand, 'MEM128_MZ')) then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otMEM128;
@@ -504,14 +1118,20 @@ begin
if UsePrefix then sl_Prefix := 'oword ';
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}';
+
if x64 then
begin
- MemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
end
- else if AnsiSameText(sl_Operand, 'MEM256') then
+ else if (AnsiSameText(sl_Operand, 'MEM256')) or
+ (AnsiSameText(sl_Operand, 'MEM256_M')) or
+ (AnsiSameText(sl_Operand, 'MEM256_MZ')) then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otMEM256;
@@ -519,12 +1139,51 @@ begin
if UsePrefix then sl_Prefix := 'yword ';
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}';
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
+ end
+ else if (AnsiSameText(sl_Operand, 'MEM512')) or
+ (AnsiSameText(sl_Operand, 'MEM512_M')) or
+ (AnsiSameText(sl_Operand, 'MEM512_MZ')) then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otMEM512;
+ Item.OpActive := true;
+
+ if UsePrefix then sl_Prefix := 'zword ';
+
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+ if Pos('_MZ', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1} {z}';
+
+
if x64 then
begin
- MemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, 'REG8') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otREG8;
+ Item.OpActive := true;
+
+ if x64 then
+ begin
+ Item.Values.AddStrings(FReg8);
+ end
+ else Item.Values.AddStrings(FReg8);
end
else if AnsiSameText(sl_Operand, 'REG16') then
begin
@@ -534,9 +1193,9 @@ begin
if x64 then
begin
- Item.Values.AddStrings(FReg16Base);
+ Item.Values.AddStrings(FReg16);
end
- else Item.Values.AddStrings(FReg16Base);
+ else Item.Values.AddStrings(FReg16);
end
else if AnsiSameText(sl_Operand, 'REG32') then
begin
@@ -573,10 +1232,10 @@ begin
if x64 then
begin
- MemRegBaseIndexCombi(sl_Prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_prefix, '', FReg32Base, FReg32Index, Item.Values);
end
else if AnsiSameText(sl_Operand, 'RM64') then
begin
@@ -591,10 +1250,10 @@ begin
if x64 then
begin
Item.Values.AddStrings(FReg64Base);
- MemRegBaseIndexCombi(sl_Prefix, FReg64Base, FReg64Index, Item.Values);
+ MemRegBaseIndexCombi(sl_Prefix, '', FReg64Base, FReg64Index, Item.Values);
//MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
end
- else MemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32Index, Item.Values);
+ else MemRegBaseIndexCombi(sl_prefix, '', FReg32Base, FReg32Index, Item.Values);
end
else if AnsiSameText(sl_Operand, 'IMM8') then
begin
@@ -604,7 +1263,8 @@ begin
Item.Values.Add('0');
end
- else if AnsiSameText(sl_Operand, 'XMEM32') then
+ else if AnsiSameText(sl_Operand, 'XMEM32') or
+ AnsiSameText(sl_Operand, 'XMEM32_M') then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otXMEM32;
@@ -612,33 +1272,51 @@ begin
if UsePrefix then sl_Prefix := 'oword ';
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
if x64 then
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64XMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64XMMIndex, Item.Values);
end
else
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32XMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32XMMIndex, Item.Values);
end;
end
- else if AnsiSameText(sl_Operand, 'XMEM64') then
+ else if AnsiSameText(sl_Operand, 'XMEM64') or
+ AnsiSameText(sl_Operand, 'XMEM64_M') then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otXMEM64;
Item.OpActive := true;
- if UsePrefix then sl_Prefix := 'oword ';
+ //if UsePrefix then sl_Prefix := 'oword ';
+ //
+ //if x64 then
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64XMMIndex, Item.Values);
+ //end
+ //else
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32XMMIndex, Item.Values);
+ //end;
+
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
if x64 then
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64XMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64XMMIndex, Item.Values);
end
else
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32XMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32XMMIndex, Item.Values);
end;
+
end
- else if AnsiSameText(sl_Operand, 'YMEM32') then
+ else if AnsiSameText(sl_Operand, 'YMEM32') or
+ AnsiSameText(sl_Operand, 'YMEM32_M') then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otYMEM32;
@@ -646,16 +1324,30 @@ begin
if UsePrefix then sl_Prefix := 'yword ';
+ //if x64 then
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64YMMIndex, Item.Values);
+ //end
+ //else
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32YMMIndex, Item.Values);
+ //end;
+
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
if x64 then
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64YMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64YMMIndex, Item.Values);
end
else
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32YMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32YMMIndex, Item.Values);
end;
+
end
- else if AnsiSameText(sl_Operand, 'YMEM64') then
+ else if AnsiSameText(sl_Operand, 'YMEM64') or
+ AnsiSameText(sl_Operand, 'YMEM64_M') then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otYMEM64;
@@ -663,18 +1355,218 @@ begin
if UsePrefix then sl_Prefix := 'yword ';
+ //if x64 then
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64YMMIndex, Item.Values);
+ //end
+ //else
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32YMMIndex, Item.Values);
+ //end;
+
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if x64 then
+ begin
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64YMMIndex, Item.Values);
+ end
+ else
+ begin
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32YMMIndex, Item.Values);
+ end;
+
+ end
+ else if AnsiSameText(sl_Operand, 'ZMEM32') or
+ AnsiSameText(sl_Operand, 'ZMEM32_M') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otZMEM32;
+ Item.OpActive := true;
+
+ if UsePrefix then sl_Prefix := 'zword ';
+
+ //if x64 then
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64ZMMIndex, Item.Values);
+ //end
+ //else
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32ZMMIndex, Item.Values);
+ //end;
+
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
if x64 then
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64YMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64ZMMIndex, Item.Values);
end
else
begin
- VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32YMMIndex, Item.Values);
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32ZMMIndex, Item.Values);
end;
+
end
+ else if AnsiSameText(sl_Operand, 'ZMEM64') or
+ AnsiSameText(sl_Operand, 'ZMEM64_M') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otZMEM64;
+ Item.OpActive := true;
+ if UsePrefix then sl_Prefix := 'zword ';
- else
+ //if x64 then
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg64Base, FReg64ZMMIndex, Item.Values);
+ //end
+ //else
+ //begin
+ // VectorMemRegBaseIndexCombi(sl_prefix, FReg32Base, FReg32ZMMIndex, Item.Values);
+ //end;
+
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if x64 then
+ begin
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg64Base, FReg64ZMMIndex, Item.Values);
+ end
+ else
+ begin
+ VectorMemRegBaseIndexCombi(sl_prefix, sSuffix, FReg32Base, FReg32ZMMIndex, Item.Values);
+ end;
+
+ end
+ else if AnsiSameText(sl_Operand, '2B32') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB32;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to2}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to2}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, '4B32') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB32;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to4}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to4}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, '8B32') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB32;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to8}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to8}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, '16B32') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB32;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to16}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to16}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, '2B64') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB64;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to2}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to2}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, '4B64') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB64;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to4}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to4}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, '8B64') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB64;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to8}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to8}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, '16B64') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otB64;
+ Item.OpActive := true;
+
+
+ if x64 then
+ begin
+ MemRegBaseIndexCombi(sl_Prefix, ' {1to16}', FReg64Base, FReg64Index, Item.Values);
+ //MemRegBaseIndexCombi(FReg6432Base, FReg6432Index, Item.Values);
+ end
+ else MemRegBaseIndexCombi(sl_prefix, ' {1to16}', FReg32Base, FReg32Index, Item.Values);
+ end
+ else if AnsiSameText(sl_Operand, 'KREG') or
+ AnsiSameText(sl_Operand, 'KREG_M') then
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otKREG;
+ Item.OpActive := true;
+
+ sSuffix := '';
+ if Pos('_M', AnsiUppercase(sl_Operand)) > 0 then sSuffix := ' {k1}';
+
+ if UsePrefix then sl_Prefix := '';
+
+ for i := 0 to FRegKREG.Count - 1 do
+ Item.Values.Add(FRegKREG[i] + sSuffix);
+ end
+ else if trim(sl_Operand) = '' then
begin
Item.OpNumber := il_Op;
Item.OpTyp := otUnknown;
@@ -682,6 +1574,14 @@ begin
Item.Values.Add('');
end
+ else
+ begin
+ Item.OpNumber := il_Op;
+ Item.OpTyp := otUnknown;
+ Item.OpActive := false;
+
+ Item.Values.Add('?' + sl_Operand);
+ end
end;
@@ -840,8 +1740,11 @@ begin
inherited;
FX64 := true;
+ FAVX512 := false;
+
+ FReg8 := TStringList.Create;
+ FReg16 := TStringList.Create;
- FReg16Base := TStringList.Create;
FReg32Base := TStringList.Create;
FReg32Index := TStringList.Create;
FReg64Base := TStringList.Create;
@@ -850,26 +1753,30 @@ begin
FReg6432Index := TStringList.Create;
FReg32XMMIndex := TStringList.Create;
FReg32YMMIndex := TStringList.Create;
+ FReg32ZMMIndex := TStringList.Create;
FReg64XMMIndex := TStringList.Create;
FReg64YMMIndex := TStringList.Create;
+ FReg64ZMMIndex := TStringList.Create;
+ FRegKREG := TStringList.Create;
+
+ FReg8.Add('AL');
+ FReg8.Add('BL');
+ FReg8.Add('CL');
+ FReg8.Add('DL');
- FReg16Base.Add('AX');
- FReg16Base.Add('BX');
- FReg16Base.Add('CX');
- FReg16Base.Add('DX');
- FReg16Base.Add('SP');
- FReg16Base.Add('BP');
- FReg16Base.Add('DI');
- FReg16Base.Add('SI');
-
+ FReg16.Add('AX');
+ FReg16.Add('BX');
+ FReg16.Add('CX');
+ FReg16.Add('DX');
+
FReg32Base.Add('EAX');
FReg32Base.Add('EBX');
FReg32Base.Add('ECX');
FReg32Base.Add('EDX');
- FReg32Base.Add('ESP');
- FReg32Base.Add('EBP');
+ //FReg32Base.Add('ESP');
+ //FReg32Base.Add('EBP');
FReg32Base.Add('EDI');
FReg32Base.Add('ESI');
@@ -878,7 +1785,7 @@ begin
FReg32Index.Add('EBX');
FReg32Index.Add('ECX');
FReg32Index.Add('EDX');
- FReg32Index.Add('EBP');
+ //FReg32Index.Add('EBP');
FReg32Index.Add('EDI');
FReg32Index.Add('ESI');
@@ -887,8 +1794,8 @@ begin
FReg64Base.Add('RBX');
FReg64Base.Add('RCX');
FReg64Base.Add('RDX');
- FReg64Base.Add('RSP');
- FReg64Base.Add('RBP');
+ //FReg64Base.Add('RSP');
+ //FReg64Base.Add('RBP');
FReg64Base.Add('RDI');
FReg64Base.Add('RSI');
FReg64Base.Add('R8');
@@ -904,7 +1811,7 @@ begin
FReg64Index.Add('RBX');
FReg64Index.Add('RCX');
FReg64Index.Add('RDX');
- FReg64Index.Add('RBP');
+ //FReg64Index.Add('RBP');
FReg64Index.Add('RDI');
FReg64Index.Add('RSI');
FReg64Index.Add('R8');
@@ -921,7 +1828,7 @@ begin
FReg6432Base.Add('ECX');
FReg6432Base.Add('EDX');
FReg6432Base.Add('ESP');
- FReg6432Base.Add('EBP');
+ //FReg6432Base.Add('EBP');
FReg6432Base.Add('EDI');
FReg6432Base.Add('ESI');
FReg6432Base.Add('R8D');
@@ -937,7 +1844,7 @@ begin
FReg6432Index.Add('EBX');
FReg6432Index.Add('ECX');
FReg6432Index.Add('EDX');
- FReg6432Index.Add('EBP');
+ //FReg6432Index.Add('EBP');
FReg6432Index.Add('EDI');
FReg6432Index.Add('ESI');
FReg6432Index.Add('R8D');
@@ -967,6 +1874,16 @@ begin
FReg32YMMIndex.ADD('YMM6');
FReg32YMMIndex.ADD('YMM7');
+ FReg32ZMMIndex.ADD('ZMM0');
+ FReg32ZMMIndex.ADD('ZMM1');
+ FReg32ZMMIndex.ADD('ZMM2');
+ FReg32ZMMIndex.ADD('ZMM3');
+ FReg32ZMMIndex.ADD('ZMM4');
+ FReg32ZMMIndex.ADD('ZMM5');
+ FReg32ZMMIndex.ADD('ZMM6');
+ FReg32ZMMIndex.ADD('ZMM7');
+
+
FReg64XMMIndex.ADD('XMM0');
FReg64XMMIndex.ADD('XMM1');
FReg64XMMIndex.ADD('XMM2');
@@ -1002,10 +1919,55 @@ begin
FReg64YMMIndex.ADD('YMM14');
FReg64YMMIndex.ADD('YMM15');
+ FReg64ZMMIndex.ADD('ZMM0');
+ FReg64ZMMIndex.ADD('ZMM1');
+ FReg64ZMMIndex.ADD('ZMM2');
+ FReg64ZMMIndex.ADD('ZMM3');
+ FReg64ZMMIndex.ADD('ZMM4');
+ FReg64ZMMIndex.ADD('ZMM5');
+ FReg64ZMMIndex.ADD('ZMM6');
+ FReg64ZMMIndex.ADD('ZMM7');
+ FReg64ZMMIndex.ADD('ZMM8');
+ FReg64ZMMIndex.ADD('ZMM9');
+ FReg64ZMMIndex.ADD('ZMM10');
+ FReg64ZMMIndex.ADD('ZMM11');
+ FReg64ZMMIndex.ADD('ZMM12');
+ FReg64ZMMIndex.ADD('ZMM13');
+ FReg64ZMMIndex.ADD('ZMM14');
+ FReg64ZMMIndex.ADD('ZMM15');
+ FReg64ZMMIndex.ADD('ZMM16');
+ FReg64ZMMIndex.ADD('ZMM17');
+ FReg64ZMMIndex.ADD('ZMM18');
+ FReg64ZMMIndex.ADD('ZMM19');
+ FReg64ZMMIndex.ADD('ZMM20');
+ FReg64ZMMIndex.ADD('ZMM21');
+ FReg64ZMMIndex.ADD('ZMM22');
+ FReg64ZMMIndex.ADD('ZMM23');
+ FReg64ZMMIndex.ADD('ZMM24');
+ FReg64ZMMIndex.ADD('ZMM25');
+ FReg64ZMMIndex.ADD('ZMM26');
+ FReg64ZMMIndex.ADD('ZMM27');
+ FReg64ZMMIndex.ADD('ZMM28');
+ FReg64ZMMIndex.ADD('ZMM29');
+ FReg64ZMMIndex.ADD('ZMM30');
+ FReg64ZMMIndex.ADD('ZMM31');
+
+ FRegKREG.ADD('K0');
+ FRegKREG.ADD('K1');
+ FRegKREG.ADD('K2');
+ FRegKREG.ADD('K3');
+ FRegKREG.ADD('K4');
+ FRegKREG.ADD('K5');
+ FRegKREG.ADD('K6');
+ FRegKREG.ADD('K7');
+
end;
destructor TAsmTestGenerator.Destroy;
begin
+ FreeAndNil(FReg8);
+ FreeAndNil(FReg16);
+
FreeAndNil(FReg32Base);
FreeAndNil(FReg32Index);
FreeAndNil(FReg64Base);
@@ -1015,13 +1977,17 @@ begin
FreeAndNil(FReg32XMMIndex);
FreeAndNil(FReg32YMMIndex);
+ FreeAndNil(FReg32ZMMIndex);
FreeAndNil(FReg64XMMIndex);
FreeAndNil(FReg64YMMIndex);
+ FreeAndNil(FReg64ZMMIndex);
+
+ FreeAndnil(FRegKREG);
inherited;
end;
-procedure TAsmTestGenerator.MemRegBaseIndexCombi(const aPrefix: String; aSLBaseReg,
+procedure TAsmTestGenerator.MemRegBaseIndexCombi(const aPrefix, aSuffix: String; aSLBaseReg,
aSLIndexReg, aRList: TStringList);
var
il_Base: integer;
@@ -1030,24 +1996,29 @@ begin
for il_Base := 0 to aSLBaseReg.Count - 1 do
begin
- aRList.Add(format(aPrefix + '[%s]', [aSLBaseReg[il_Base]]));
+ aRList.Add(format(aPrefix + '[%s]%s', [aSLBaseReg[il_Base], aSuffix]));
for il_Index := 0 to aSLIndexReg.Count - 1 do
begin
- aRList.Add(format(aPrefix + '[%s + %s]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ aRList.Add(format(aPrefix + '[%s + %s]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s + $10]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s + $40]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s - $10]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s - $40]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+
- aRList.Add(format(aPrefix + '[%s + %s * 2]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 4]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 8]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ aRList.Add(format(aPrefix + '[%s + %s * 2]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s * 4]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s * 8]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
- aRList.Add(format(aPrefix + '[%s + %s * 2 + 16]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 4 + 32]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 8 + 48]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ aRList.Add(format(aPrefix + '[%s + %s * 2 + 16]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s * 4 + 32]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s * 8 + 64]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
end;
end;
end;
-procedure TAsmTestGenerator.VectorMemRegBaseIndexCombi(const aPrefix: String;
+procedure TAsmTestGenerator.VectorMemRegBaseIndexCombi(const aPrefix, aSuffix: String;
aSLBaseReg, aSLIndexReg, aRList: TStringList);
var
il_Base: integer;
@@ -1074,25 +2045,25 @@ begin
for il_Index := 0 to aSLIndexReg.Count - 1 do
begin
- aRList.Add(format(aPrefix + '[%s + %s]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ aRList.Add(format(aPrefix + '[%s + %s]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
- aRList.Add(format(aPrefix + '[%s + %s * 2]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 4]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 8]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ aRList.Add(format(aPrefix + '[%s + %s * 2]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s * 4]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
+ aRList.Add(format(aPrefix + '[%s + %s * 8]%s', [aSLBaseReg[il_Base], aSLIndexReg[il_Index], aSuffix]));
- aRList.Add(format(aPrefix + '[%s + %s * 2 + 16]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 4 + 32]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s * 8 + 48]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ //aRList.Add(format(aPrefix + '[%s + %s * 2 + 16]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ //aRList.Add(format(aPrefix + '[%s + %s * 4 + 32]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
+ //aRList.Add(format(aPrefix + '[%s + %s * 8 + 48]', [aSLBaseReg[il_Base], aSLIndexReg[il_Index]]));
- aRList.Add(format(aPrefix + '[%s + %s]', [aSLIndexReg[il_Index], aSLBaseReg[il_Base]]));
+ aRList.Add(format(aPrefix + '[%s + %s]%s', [aSLIndexReg[il_Index], aSLBaseReg[il_Base], aSuffix]));
- aRList.Add(format(aPrefix + '[%s + %s + 16]', [aSLIndexReg[il_Index], aSLBaseReg[il_Base]]));
+ //aRList.Add(format(aPrefix + '[%s + %s + 16]', [aSLIndexReg[il_Index], aSLBaseReg[il_Base]]));
end;
end;
end;
-class procedure TAsmTestGenerator.CalcTestData(aX64: boolean; const aInst, aOp1, aOp2, aOp3,
+class procedure TAsmTestGenerator.CalcTestData(aX64, aAVX512, aSAE: boolean; const aInst, aOp1, aOp2, aOp3,
aOp4: String; aSL: TStringList);
var
sl: TStringList;
@@ -1100,6 +2071,8 @@ begin
with TAsmTestGenerator.Create do
try
Fx64 := aX64;
+ FAVX512 := aAVX512;
+ FSAE := aSAE;
sl := InternalCalcTestData(aInst, aOp1, aOp2, aOp3, aOp4);
try
@@ -1112,4 +2085,152 @@ begin
end;
end;
+class procedure TAsmTestGenerator.CalcTestInstFile;
+var
+ i,j: integer;
+ sInst: string;
+ sI386: string;
+ sX8664: string;
+ sAVX512: string;
+ sOperands: string;
+
+ sLine: string;
+
+
+ sl: TStringList;
+ bVEX: boolean;
+ bEVEX: boolean;
+ b256 : boolean;
+ b512 : boolean;
+begin
+ sl := TStringList.Create;
+ try
+
+ //tinsentry=packed record
+ // opcode : tasmop;
+ // ops : byte;
+ // //optypes : array[0..max_operands-1] of longint;
+ // optypes : array[0..3] of int64; //TG
+ // code : array[0..11] of char;
+ // flags : tinsflags;
+ //end;
+
+ for i := 0 to length(InsTab) - 1 do
+ begin
+ bVEX := false;
+ bEVEX := false;
+ b256 := false;
+ b512 := false;
+
+ //TG TODO delete
+ if instab[i].opcode = a_vtestps then
+ begin
+ b512 := b512;
+ end;
+
+ for j := 0 to length(InsTab[i].code) - 1 do
+ begin
+ case ord(InsTab[i].code[j]) of
+ 0: break;
+ 1,2,3: break;
+ 232: bEVEX := true;
+ 233: b512 := true;
+ 242: bVEX := true;
+ 244: b256 := true;
+ end;
+ end;
+
+ if bVEX or bEVEX then
+ begin
+ sInst := std_op2str[InsTab[i].opcode];
+ sI386 := '1';
+ sX8664 := '1';
+ if IF_X86_64 in InsTab[i].flags then
+ begin
+ sI386 := '0';
+ end;
+
+ if bEVEX then sAVX512 := '1'
+ else sAVX512 := '0';
+
+ sOperands := '';
+ for j := 0 to 3 do
+ begin
+ case InsTab[i].optypes[j] of
+ OT_XMMREG: sOperands := sOperands + 'XMMREG,';
+ OT_XMMREG_M: sOperands := sOperands + 'XMMREG_M,';
+ OT_XMMREG_MZ: sOperands := sOperands + 'XMMREG_MZ,';
+ OT_XMMREG_ER: sOperands := sOperands + 'XMMREG_ER,';
+ OT_XMMREG_SAE: sOperands := sOperands + 'XMMREG_SAE,';
+ OT_XMMRM: sOperands := sOperands + 'XMMRM,';
+ OT_XMMRM_MZ: sOperands := sOperands + 'XMMRM_MZ,';
+
+ OT_YMMREG: sOperands := sOperands + 'YMMREG,';
+ OT_YMMREG_M: sOperands := sOperands + 'YMMREG_M,';
+ OT_YMMREG_MZ: sOperands := sOperands + 'YMMREG_MZ,';
+ OT_YMMREG_ER: sOperands := sOperands + 'YMMREG_ER,';
+ OT_YMMREG_SAE: sOperands := sOperands + 'YMMREG_SAE,';
+ OT_YMMRM: sOperands := sOperands + 'YMMRM,';
+ OT_YMMRM_MZ: sOperands := sOperands + 'YMMRM_MZ,';
+
+ OT_ZMMREG: sOperands := sOperands + 'ZMMREG,';
+ OT_ZMMREG_M: sOperands := sOperands + 'ZMMREG_M,';
+ OT_ZMMREG_MZ: sOperands := sOperands + 'ZMMREG_MZ,';
+ OT_ZMMREG_ER: sOperands := sOperands + 'ZMMREG_ER,';
+ OT_ZMMREG_SAE: sOperands := sOperands + 'ZMMREG_SAE,';
+ OT_ZMMRM: sOperands := sOperands + 'ZMMRM,';
+ OT_ZMMRM_MZ: sOperands := sOperands + 'ZMMRM_MZ,';
+
+ OT_MEM32: sOperands := sOperands + 'MEM32,';
+ OT_MEM64: sOperands := sOperands + 'MEM64,';
+ OT_MEM128: sOperands := sOperands + 'MEM128,';
+ OT_MEM256: sOperands := sOperands + 'MEM256,';
+ OT_MEM512: sOperands := sOperands + 'MEM512,';
+
+ OT_REG32: sOperands := sOperands + 'REG32,';
+ OT_REG64: sOperands := sOperands + 'REG64,';
+ ot_rm_gpr or ot_bits32:
+ sOperands := sOperands + 'RM32,';
+ ot_rm_gpr or ot_bits64:
+ sOperands := sOperands + 'RM64,';
+
+ OT_XMEM32: sOperands := sOperands + 'XMEM32,';
+ OT_XMEM64: sOperands := sOperands + 'XMEM64,';
+
+ OT_YMEM32: sOperands := sOperands + 'YMEM32,';
+ OT_YMEM64: sOperands := sOperands + 'YMEM64,';
+
+ OT_IMM8: sOperands := sOperands + 'IMM8,';
+ OT_NONE: sOperands := sOperands + ',';
+
+ OT_BMEM32: if b512 then sOperands := sOperands + '16B32,'
+ else if b256 then sOperands := sOperands + '8B32,'
+ else sOperands := sOperands + '4B32,';
+ OT_BMEM64: if b512 then sOperands := sOperands + '8B32,'
+ else if b256 then sOperands := sOperands + '4B32,'
+ else sOperands := sOperands + '2B64,';
+
+ OT_KREG: sOperands := sOperands + 'KREG,';
+ OT_KREG_M: sOperands := sOperands + 'KREG_M,';
+
+ else sOperands := sOperands;
+ end;
+ end;
+
+ sOperands := copy(sOperands, 1, length(sOperands) - 1);
+
+ sl.Add(format('FOpCodeList.Add(''%s,%s,%s,%s,%s'');', [sInst, sI386, sX8664, sAVX512, sOperands]));
+ end;
+
+ end;
+
+ sl.Savetofile('/tmp/fpcavx512.txt');
+
+ // std_op2str
+
+ finally
+ FreeAndnil(sl);
+ end;
+end;
+
end.
diff --git a/tests/utils/avx/avxopcodes.pas b/tests/utils/avx/avxopcodes.pas
index d21c335375..614d5723de 100644
--- a/tests/utils/avx/avxopcodes.pas
+++ b/tests/utils/avx/avxopcodes.pas
@@ -16,20 +16,20 @@ type
protected
procedure Init;
- function InternalMakeTestFiles(aX64: boolean; aDestPath, aFileExt: String; aOpCodeList, aHeaderList, aFooterList: TStringList): boolean;
+ function InternalMakeTestFiles(aX64, aAVX512, aSAE: boolean; aDestPath, aFileExt: String; aOpCodeList, aHeaderList, aFooterList: TStringList): boolean;
public
constructor Create;
destructor Destroy; override;
- function MakeTestFiles(aTyp: TTestFileTyp; aX64: boolean; aDestPath: String): boolean;
+ function MakeTestFiles(aTyp: TTestFileTyp; aX64, aAVX512, aSAE: boolean; aDestPath: String): boolean;
property OpCodeList: TStringList read FOpCodeList write FOpCodeList;
end;
implementation
-uses SysUtils, AsmTestGenerator;
+uses SysUtils, AsmTestGenerator, Dialogs;
{ TAVXTestGenerator }
@@ -80,733 +80,3712 @@ begin
FOpCodeList.Add('PCLMULQDQ,1,1,XMMREG,XMMRM,IMM8,');
FOpCodeList.Add('VPCLMULQDQ,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+
+ //FOpCodeList.Add('VADDPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VADDPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VADDPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VADDPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VADDSD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VADDSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VADDSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VADDSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VADDSUBPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VADDSUBPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VADDSUBPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VADDSUBPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VAESDEC,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VAESDECLAST,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VAESENC,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VAESENCLAST,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VAESIMC,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VAESKEYGENASSIST,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VANDNPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VANDNPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VANDNPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VANDNPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VANDPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VANDPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VANDPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VANDPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VBLENDPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VBLENDPD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VBLENDPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VBLENDPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VBLENDVPD,1,1,XMMREG,XMMREG,XMMRM,XMMREG');
+ //FOpCodeList.Add('VBLENDVPD,1,1,YMMREG,YMMREG,YMMRM,YMMREG');
+ //FOpCodeList.Add('VBLENDVPS,1,1,XMMREG,XMMREG,XMMRM,XMMREG');
+ //FOpCodeList.Add('VBLENDVPS,1,1,YMMREG,YMMREG,YMMRM,YMMREG');
+ //FOpCodeList.Add('VBROADCASTF128,1,1,YMMREG,MEM128,,');
+ //FOpCodeList.Add('VBROADCASTSD,1,1,YMMREG,MEM64,,');
+ //FOpCodeList.Add('VBROADCASTSS,1,1,YMMREG,MEM32,,');
+ //FOpCodeList.Add('VBROADCASTSS,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VCMPPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VCMPPD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VCMPPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VCMPPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VCMPSD,1,1,XMMREG,XMMREG,MEM64,IMM8');
+ //FOpCodeList.Add('VCMPSD,1,1,XMMREG,XMMREG,XMMREG,IMM8');
+ //FOpCodeList.Add('VCMPSS,1,1,XMMREG,XMMREG,MEM64,IMM8');
+ //FOpCodeList.Add('VCMPSS,1,1,XMMREG,XMMREG,XMMREG,IMM8');
+ //FOpCodeList.Add('VCOMISD,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VCOMISD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VCOMISS,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VCOMISS,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VCVTDQ2PD,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VCVTDQ2PD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VCVTDQ2PD,1,1,YMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTDQ2PS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTDQ2PS,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VCVTPD2DQ,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTPD2DQ,1,1,XMMREG,YMMRM,,');
+ //FOpCodeList.Add('VCVTPD2PS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTPD2PS,1,1,XMMREG,YMMRM,,');
+ //FOpCodeList.Add('VCVTPS2DQ,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTPS2DQ,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VCVTPS2PD,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VCVTPS2PD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VCVTPS2PD,1,1,YMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTSD2SI,1,1,REG32,MEM64,,');
+ //FOpCodeList.Add('VCVTSD2SI,1,1,REG32,XMMREG,,');
+ //FOpCodeList.Add('VCVTSD2SI,0,1,REG64,MEM64,,');
+ //FOpCodeList.Add('VCVTSD2SI,0,1,REG64,XMMREG,,');
+ //FOpCodeList.Add('VCVTSD2SS,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VCVTSD2SS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VCVTSI2SD,1,1,XMMREG,XMMREG,RM32,');
+ //FOpCodeList.Add('VCVTSI2SD,0,1,XMMREG,XMMREG,RM64,');
+ //FOpCodeList.Add('VCVTSI2SS,1,1,XMMREG,XMMREG,RM32,');
+ //FOpCodeList.Add('VCVTSI2SS,0,1,XMMREG,XMMREG,RM64,');
+ //FOpCodeList.Add('VCVTSS2SD,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VCVTSS2SD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VCVTSS2SI,1,1,REG32,MEM32,,');
+ //FOpCodeList.Add('VCVTSS2SI,1,1,REG32,XMMREG,,');
+ //FOpCodeList.Add('VCVTSS2SI,0,1,REG64,MEM32,,');
+ //FOpCodeList.Add('VCVTSS2SI,0,1,REG64,XMMREG,,');
+ //FOpCodeList.Add('VCVTTPD2DQ,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTTPD2DQ,1,1,XMMREG,YMMRM,,');
+ //FOpCodeList.Add('VCVTTPS2DQ,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VCVTTPS2DQ,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VCVTTSD2SI,1,1,REG32,MEM64,,');
+ //FOpCodeList.Add('VCVTTSD2SI,1,1,REG32,XMMREG,,');
+ //FOpCodeList.Add('VCVTTSD2SI,0,1,REG64,MEM64,,');
+ //FOpCodeList.Add('VCVTTSD2SI,0,1,REG64,XMMREG,,');
+ //FOpCodeList.Add('VCVTTSS2SI,1,1,REG32,MEM32,,');
+ //FOpCodeList.Add('VCVTTSS2SI,1,1,REG32,XMMREG,,');
+ //FOpCodeList.Add('VCVTTSS2SI,0,1,REG64,MEM32,,');
+ //FOpCodeList.Add('VCVTTSS2SI,0,1,REG64,XMMREG,,');
+ //FOpCodeList.Add('VDIVPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VDIVPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VDIVPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VDIVPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VDIVSD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VDIVSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VDIVSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VDIVSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VDPPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VDPPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VDPPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VEXTRACTF128,1,1,XMMRM,YMMREG,IMM8,');
+ //FOpCodeList.Add('VEXTRACTPS,1,1,RM32,XMMREG,IMM8,');
+ //FOpCodeList.Add('VHADDPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VHADDPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VHADDPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VHADDPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VHSUBPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VHSUBPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VHSUBPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VHSUBPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VINSERTF128,1,1,YMMREG,YMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VINSERTPS,1,1,XMMREG,XMMREG,MEM32,IMM8');
+ //FOpCodeList.Add('VINSERTPS,1,1,XMMREG,XMMREG,XMMREG,IMM8');
+ //FOpCodeList.Add('VLDDQU,1,1,XMMREG,MEM128,,');
+ //FOpCodeList.Add('VLDDQU,1,1,YMMREG,MEM256,,');
+ //FOpCodeList.Add('VLDMXCSR,1,1,MEM32,,,');
+ //FOpCodeList.Add('VMASKMOVDQU,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VMASKMOVPD,1,1,MEM256,YMMREG,YMMREG,');
+ //FOpCodeList.Add('VMASKMOVPD,1,1,MEM128,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMASKMOVPD,1,1,YMMREG,YMMREG,MEM256,');
+ //FOpCodeList.Add('VMASKMOVPD,1,1,XMMREG,XMMREG,MEM128,');
+ //FOpCodeList.Add('VMASKMOVPS,1,1,MEM256,YMMREG,YMMREG,');
+ //FOpCodeList.Add('VMASKMOVPS,1,1,MEM128,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMASKMOVPS,1,1,YMMREG,YMMREG,MEM256,');
+ //FOpCodeList.Add('VMASKMOVPS,1,1,XMMREG,XMMREG,MEM128,');
+ //FOpCodeList.Add('VMAXPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VMAXPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VMAXPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VMAXPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VMAXSD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VMAXSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMAXSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VMAXSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMINPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VMINPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VMINPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VMINPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VMINSD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VMINSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMINSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VMINSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMOVAPD,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVAPD,1,1,XMMRM,XMMREG,,');
+ //FOpCodeList.Add('VMOVAPD,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVAPD,1,1,YMMRM,YMMREG,,');
+ //FOpCodeList.Add('VMOVAPS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVAPS,1,1,XMMRM,XMMREG,,');
+ //FOpCodeList.Add('VMOVAPS,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVAPS,1,1,YMMRM,YMMREG,,');
+ //FOpCodeList.Add('VMOVD,1,1,XMMREG,RM32,,');
+ //FOpCodeList.Add('VMOVD,1,1,RM32,XMMREG,,');
+ //FOpCodeList.Add('VMOVDDUP,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVDDUP,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VMOVDDUP,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VMOVDQA,1,1,YMMRM,YMMREG,,');
+ //FOpCodeList.Add('VMOVDQA,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVDQA,1,1,XMMRM,XMMREG,,');
+ //FOpCodeList.Add('VMOVDQA,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVDQU,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVDQU,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVDQU,1,1,XMMRM,XMMREG,,');
+ //FOpCodeList.Add('VMOVDQU,1,1,YMMRM,YMMREG,,');
+ //FOpCodeList.Add('VMOVHLPS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMOVHPD,1,1,MEM64,XMMREG,,');
+ //FOpCodeList.Add('VMOVHPD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VMOVHPS,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VMOVHPS,1,1,MEM64,XMMREG,,');
+ //FOpCodeList.Add('VMOVLHPS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMOVLPD,1,1,MEM64,XMMREG,,');
+ //FOpCodeList.Add('VMOVLPD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VMOVLPS,1,1,MEM64,XMMREG,,');
+ //FOpCodeList.Add('VMOVLPS,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VMOVMSKPD,1,1,REG32,YMMREG,,');
+ //FOpCodeList.Add('VMOVMSKPD,1,1,REG64,XMMREG,,');
+ //FOpCodeList.Add('VMOVMSKPD,1,1,REG32,XMMREG,,');
+ //FOpCodeList.Add('VMOVMSKPD,1,1,REG64,YMMREG,,');
+ //FOpCodeList.Add('VMOVMSKPS,1,1,REG32,YMMREG,,');
+ //FOpCodeList.Add('VMOVMSKPS,1,1,REG64,XMMREG,,');
+ //FOpCodeList.Add('VMOVMSKPS,1,1,REG32,XMMREG,,');
+ //FOpCodeList.Add('VMOVMSKPS,1,1,REG64,YMMREG,,');
+ //FOpCodeList.Add('VMOVNTDQ,1,1,MEM128,XMMREG,,');
+ //FOpCodeList.Add('VMOVNTDQ,1,1,MEM256,YMMREG,,');
+ //FOpCodeList.Add('VMOVNTDQA,1,1,XMMREG,MEM128,,');
+ //FOpCodeList.Add('VMOVNTPD,1,1,MEM256,YMMREG,,');
+ //FOpCodeList.Add('VMOVNTPD,1,1,MEM128,XMMREG,,');
+ //FOpCodeList.Add('VMOVNTPS,1,1,MEM128,YMMREG,,');
+ //FOpCodeList.Add('VMOVNTPS,1,1,MEM128,XMMREG,,');
+ //FOpCodeList.Add('VMOVQ,0,1,RM64,XMMREG,,');
+ //FOpCodeList.Add('VMOVQ,0,1,XMMREG,RM64,,');
+ //FOpCodeList.Add('VMOVSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMOVSD,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VMOVSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMOVSD,1,1,MEM64,XMMREG,,');
+ //FOpCodeList.Add('VMOVSHDUP,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVSHDUP,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVSLDUP,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVSLDUP,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMOVSS,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VMOVSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMOVSS,1,1,MEM64,XMMREG,,');
+ //FOpCodeList.Add('VMOVUPD,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVUPD,1,1,XMMRM,XMMREG,,');
+ //FOpCodeList.Add('VMOVUPD,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVUPD,1,1,YMMRM,YMMREG,,');
+ //FOpCodeList.Add('VMOVUPS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VMOVUPS,1,1,XMMRM,XMMREG,,');
+ //FOpCodeList.Add('VMOVUPS,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VMOVUPS,1,1,YMMRM,YMMREG,,');
+ //FOpCodeList.Add('VMPSADBW,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VMULPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VMULPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VMULPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VMULPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VMULSD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VMULSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VMULSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VMULSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VORPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VORPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VORPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPABSB,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPABSB,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VPABSD,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPABSD,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VPABSW,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPABSW,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VPACKSSDW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPACKSSDW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPACKSSWB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPACKSSWB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPACKUSDW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPACKUSDW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPACKUSWB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPACKUSWB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPADDB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPADDD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPADDQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPADDSB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDSB,1,1,YMMREG,YMMREG,YMMRM,');
+ //
+ //
+ //FOpCodeList.Add('VPADDSB,1,1,ZMMREG,ZMMREG,ZMMRM,');
+ //
+ //
+ //FOpCodeList.Add('VPADDSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPADDUSB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDUSB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPADDUSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDUSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPADDW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPADDW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPALIGNR,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VPALIGNR,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VPAND,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPAND,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPANDN,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPANDN,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPAVGB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPAVGB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPAVGW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPAVGW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPBLENDVB,1,1,XMMREG,XMMREG,XMMRM,XMMREG');
+ //FOpCodeList.Add('VPBLENDVB,1,1,YMMREG,YMMREG,YMMRM,YMMREG');
+ //FOpCodeList.Add('VPBLENDW,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VPBLENDW,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VPCLMULQDQ,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VPCMPEQB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPEQB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPEQD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPEQD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPEQQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPEQQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPEQW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPEQW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPESTRI,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPCMPESTRM,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPCMPGTB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPGTB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPGTD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPGTD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPGTQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPGTQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPGTW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPCMPGTW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPCMPISTRI,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPCMPISTRM,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPERM2F128,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VPERMILPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPERMILPD,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPERMILPD,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VPERMILPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPERMILPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPERMILPS,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPERMILPS,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VPERMILPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPEXTRB,1,1,REG32,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRB,1,1,REG64,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRB,1,1,MEM8,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRD,1,1,RM32,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRQ,0,1,RM64,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRW,1,1,REG32,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRW,1,1,REG64,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRW,1,1,REG64,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRW,1,1,MEM16,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPEXTRW,1,1,REG32,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPHADDD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPHADDD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPHADDSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPHADDSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPHADDW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPHADDW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPHMINPOSUW,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPHSUBD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPHSUBD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPHSUBSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPHSUBSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPHSUBW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPHSUBW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPINSRB,1,1,XMMREG,XMMREG,REG32,IMM8');
+ //FOpCodeList.Add('VPINSRB,1,1,XMMREG,XMMREG,MEM8,IMM8');
+ //FOpCodeList.Add('VPINSRD,1,1,XMMREG,XMMREG,RM32,IMM8');
+ //FOpCodeList.Add('VPINSRQ,0,1,XMMREG,XMMREG,RM64,IMM8');
+ //FOpCodeList.Add('VPINSRW,1,1,XMMREG,XMMREG,REG32,IMM8');
+ //FOpCodeList.Add('VPINSRW,1,1,XMMREG,XMMREG,MEM16,IMM8');
+ //FOpCodeList.Add('VPMADDUBSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMADDUBSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMADDWD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMADDWD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMAXSB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMAXSB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMAXSD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMAXSD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMAXSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMAXSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMAXUB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMAXUB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMAXUD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMAXUD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMAXUW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMAXUW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMINSB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMINSB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMINSD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMINSD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMINSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMINSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMINUB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMINUB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMINUD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMINUD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMINUW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMINUW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMOVMSKB,1,1,REG64,XMMREG,,');
+ //FOpCodeList.Add('VPMOVMSKB,1,1,REG64,YMMREG,,');
+ //FOpCodeList.Add('VPMOVMSKB,1,1,REG32,XMMREG,,');
+ //FOpCodeList.Add('VPMOVMSKB,1,1,REG32,YMMREG,,');
+ //FOpCodeList.Add('VPMOVSXBD,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VPMOVSXBD,1,1,YMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVSXBD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXBD,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXBQ,1,1,XMMREG,MEM16,,');
+ //FOpCodeList.Add('VPMOVSXBQ,1,1,YMMREG,MEM32,,');
+ //FOpCodeList.Add('VPMOVSXBQ,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXBQ,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXBW,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVSXBW,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXBW,1,1,YMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPMOVSXDQ,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVSXDQ,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXDQ,1,1,YMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPMOVSXWD,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVSXWD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXWD,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPMOVSXWQ,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VPMOVSXWQ,1,1,YMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVSXWQ,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVSXWQ,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXBD,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VPMOVZXBD,1,1,YMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVZXBD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXBD,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXBQ,1,1,XMMREG,MEM16,,');
+ //FOpCodeList.Add('VPMOVZXBQ,1,1,YMMREG,MEM32,,');
+ //FOpCodeList.Add('VPMOVZXBQ,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXBQ,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXBW,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVZXBW,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXBW,1,1,YMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPMOVZXDQ,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVZXDQ,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXDQ,1,1,YMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPMOVZXWD,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVZXWD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXWD,1,1,YMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPMOVZXWQ,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VPMOVZXWQ,1,1,YMMREG,MEM64,,');
+ //FOpCodeList.Add('VPMOVZXWQ,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMOVZXWQ,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPMULDQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMULDQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMULHRSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMULHRSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMULHUW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMULHUW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMULHW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMULHW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMULLD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMULLD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMULLW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMULLW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPMULUDQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPMULUDQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPOR,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPOR,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSADBW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSADBW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSHUFB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSHUFB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSHUFD,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPSHUFD,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VPSHUFHW,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPSHUFHW,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VPSHUFLW,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VPSHUFLW,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VPSIGNB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSIGNB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSIGND,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSIGND,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSIGNW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSIGNW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSLLD,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLD,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSLLD,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSLLDQ,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLDQ,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSLLQ,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSLLQ,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLQ,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLW,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLW,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSLLW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSLLW,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRAD,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRAD,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRAD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRAD,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRAW,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRAW,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRAW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRAW,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLD,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLD,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLD,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLDQ,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLDQ,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLQ,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLQ,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLQ,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLW,1,1,XMMREG,XMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLW,1,1,YMMREG,YMMREG,IMM8,');
+ //FOpCodeList.Add('VPSRLW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLW,1,1,YMMREG,YMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSUBD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSUBQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSUBSB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBSB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSUBSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSUBUSB,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBUSB,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSUBUSW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBUSW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSUBW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSUBW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPTEST,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VPTEST,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VPTEST,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPTEST,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VPUNPCKHBW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKHBW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPUNPCKHDQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKHDQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPUNPCKHQDQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKHQDQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPUNPCKHWD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKHWD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPUNPCKLBW,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKLBW,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPUNPCKLDQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKLDQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPUNPCKLQDQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKLQDQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPUNPCKLWD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPUNPCKLWD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPXOR,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPXOR,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VRCPPS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VRCPPS,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VRCPSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VRCPSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VROUNDPD,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VROUNDPD,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VROUNDPS,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VROUNDPS,1,1,XMMREG,XMMRM,IMM8,');
+ //FOpCodeList.Add('VROUNDSD,1,1,XMMREG,XMMREG,MEM64,IMM8');
+ //FOpCodeList.Add('VROUNDSD,1,1,XMMREG,XMMREG,XMMREG,IMM8');
+ //FOpCodeList.Add('VROUNDSS,1,1,XMMREG,XMMREG,MEM32,IMM8');
+ //FOpCodeList.Add('VROUNDSS,1,1,XMMREG,XMMREG,XMMREG,IMM8');
+ //FOpCodeList.Add('VRSQRTPS,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VRSQRTPS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VRSQRTSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VRSQRTSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VSHUFPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VSHUFPD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VSHUFPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VSHUFPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VSQRTPD,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VSQRTPD,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VSQRTPS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VSQRTPS,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VSQRTSD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VSQRTSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VSQRTSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VSQRTSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VSTMXCSR,1,1,MEM32,,,');
+ //FOpCodeList.Add('VSUBPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VSUBPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VSUBPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VSUBPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VSUBSD,1,1,XMMREG,XMMREG,MEM64,');
+ //FOpCodeList.Add('VSUBSD,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VSUBSS,1,1,XMMREG,XMMREG,MEM32,');
+ //FOpCodeList.Add('VSUBSS,1,1,XMMREG,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VTESTPD,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VTESTPD,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VTESTPS,1,1,YMMREG,YMMRM,,');
+ //FOpCodeList.Add('VTESTPS,1,1,XMMREG,XMMRM,,');
+ //FOpCodeList.Add('VUCOMISD,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VUCOMISD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VUCOMISS,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VUCOMISS,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VUNPCKHPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VUNPCKHPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VUNPCKHPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VUNPCKHPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VUNPCKLPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VUNPCKLPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VUNPCKLPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VUNPCKLPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VXORPD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VXORPD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VXORPS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VXORPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VZEROALL,1,1,,,,');
+ //FOpCodeList.Add('VZEROUPPER,1,1,,,,');
+ //
+ //
+ //FOpCodeList.Add('VBROADCASTI128,1,1,YMMREG,MEM128,,');
+ //FOpCodeList.Add('VEXTRACTI128,1,1,XMMRM,YMMREG,IMM8,');
+ //FOpCodeList.Add('VINSERTI128,1,1,YMMREG,YMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VPBLENDD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VPBLENDD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+ //FOpCodeList.Add('VPBROADCASTB,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPBROADCASTB,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPBROADCASTB,1,1,XMMREG,MEM8,,');
+ //FOpCodeList.Add('VPBROADCASTB,1,1,YMMREG,MEM8,,');
+ //FOpCodeList.Add('VPBROADCASTD,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPBROADCASTD,1,1,XMMREG,MEM32,,');
+ //FOpCodeList.Add('VPBROADCASTD,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPBROADCASTD,1,1,YMMREG,MEM32,,');
+ //FOpCodeList.Add('VPBROADCASTQ,1,1,YMMREG,MEM64,,');
+ //FOpCodeList.Add('VPBROADCASTQ,1,1,XMMREG,MEM64,,');
+ //FOpCodeList.Add('VPBROADCASTQ,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPBROADCASTQ,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPBROADCASTW,1,1,XMMREG,MEM16,,');
+ //FOpCodeList.Add('VPBROADCASTW,1,1,XMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPBROADCASTW,1,1,YMMREG,MEM16,,');
+ //FOpCodeList.Add('VPBROADCASTW,1,1,YMMREG,XMMREG,,');
+ //FOpCodeList.Add('VPERM2I128,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+ //FOpCodeList.Add('VPERMD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPERMPD,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VPERMPS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPERMQ,1,1,YMMREG,YMMRM,IMM8,');
+ //FOpCodeList.Add('VPMASKMOVD,1,1,XMMREG,XMMREG,MEM128,');
+ //FOpCodeList.Add('VPMASKMOVD,1,1,MEM128,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VPMASKMOVD,1,1,YMMREG,YMMREG,MEM256,');
+ //FOpCodeList.Add('VPMASKMOVD,1,1,MEM256,YMMREG,YMMREG,');
+ //FOpCodeList.Add('VPMASKMOVQ,1,1,XMMREG,XMMREG,MEM128,');
+ //FOpCodeList.Add('VPMASKMOVQ,1,1,MEM128,XMMREG,XMMREG,');
+ //FOpCodeList.Add('VPMASKMOVQ,1,1,YMMREG,YMMREG,MEM256,');
+ //FOpCodeList.Add('VPMASKMOVQ,1,1,MEM256,YMMREG,YMMREG,');
+ //FOpCodeList.Add('VPSLLVD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSLLVD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSLLVQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSLLVQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRAVD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSRAVD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLVD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSRLVD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VPSRLVQ,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VPSRLVQ,1,1,XMMREG,XMMREG,XMMRM,');
+ //
+ //
+ //FOpCodeList.Add('VFMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD231PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD231PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD231PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADD231PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD132SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD213SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD231SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD132SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD213SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADD231SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADDSUB132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADDSUB132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADDSUB213PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADDSUB213PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADDSUB231PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADDSUB231PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADDSUB132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADDSUB132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADDSUB213PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADDSUB213PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMADDSUB231PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMADDSUB231PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUBADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUBADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUBADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUBADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUBADD231PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUBADD231PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUBADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUBADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUBADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUBADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUBADD231PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUBADD231PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUB132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB213PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUB213PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB231PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUB231PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUB132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB213PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUB213PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB231PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFMSUB231PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB132SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB213SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB231SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB132SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB213SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFMSUB231SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD231PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMADD231PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD231PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMADD231PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD132SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD213SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD231SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD132SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD213SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMADD231SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB132PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMSUB132PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB213PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMSUB213PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB231PD,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMSUB231PD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB132PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMSUB132PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB213PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMSUB213PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB231PS,1,1,YMMREG,YMMREG,YMMRM,');
+ //FOpCodeList.Add('VFNMSUB231PS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB132SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB213SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB231SD,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB132SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB213SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //FOpCodeList.Add('VFNMSUB231SS,1,1,XMMREG,XMMREG,XMMRM,');
+ //
+ //
+ //FOpCodeList.Add('VGATHERDPD,1,1,XMMREG,XMEM32,XMMREG,');
+ //FOpCodeList.Add('VGATHERDPD,1,1,YMMREG,XMEM32,YMMREG,');
+ //
+ //FOpCodeList.Add('VGATHERQPD,1,1,XMMREG,XMEM64,XMMREG,');
+ //FOpCodeList.Add('VGATHERQPD,1,1,YMMREG,YMEM64,YMMREG,');
+ //
+ //
+ //FOpCodeList.Add('VGATHERDPS,1,1,XMMREG,XMEM32,XMMREG,');
+ //FOpCodeList.Add('VGATHERDPS,1,1,YMMREG,YMEM32,YMMREG,');
+ //
+ //FOpCodeList.Add('VGATHERQPS,1,1,XMMREG,XMEM64,XMMREG,');
+ //FOpCodeList.Add('VGATHERQPS,1,1,XMMREG,YMEM64,XMMREG,');
+ //
+ //
+ //
+ //FOpCodeList.Add('VPGATHERDD,1,1,XMMREG,XMEM32,XMMREG,');
+ //FOpCodeList.Add('VPGATHERDD,1,1,YMMREG,YMEM32,YMMREG,');
+ //
+ //FOpCodeList.Add('VPGATHERQD,1,1,XMMREG,XMEM64,XMMREG,');
+ //FOpCodeList.Add('VPGATHERQD,1,1,XMMREG,YMEM64,XMMREG,');
+ //
+ //
+ //FOpCodeList.Add('VPGATHERDQ,1,1,XMMREG,XMEM32,XMMREG,');
+ //FOpCodeList.Add('VPGATHERDQ,1,1,YMMREG,XMEM32,YMMREG,');
+ //
+ //FOpCodeList.Add('VPGATHERQQ,1,1,XMMREG,XMEM64,XMMREG,');
+ //FOpCodeList.Add('VPGATHERQQ,1,1,YMMREG,YMEM64,YMMREG,');
+
+
+ FOpCodeList.Add('vaddpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaddpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vaddpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vaddpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vaddpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vaddpd,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vaddpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vaddps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaddps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vaddps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vaddps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vaddps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vaddps,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vaddps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vaddsd,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vaddsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vaddss,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vaddss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vaddsubpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vaddsubpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaddsubps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vaddsubps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaesdec,1,1,1,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaesdeclast,1,1,1,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaesenc,1,1,1,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaesenclast,1,1,1,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vaesimc,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vaeskeygenassist,1,1,0,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vandnpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vandnpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vandnpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vandnpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vandnpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vandnpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vandnps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vandnps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vandnps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vandnps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vandnps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vandnps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vandpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vandpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vandpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vandpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vandpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vandpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vandps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vandps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vandps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vandps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vandps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vandps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vblendpd,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vblendpd,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vblendps,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vblendps,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vblendvpd,1,1,0,XMMREG,XMMREG,XMMRM,XMMREG');
+ FOpCodeList.Add('vblendvpd,1,1,0,YMMREG,YMMREG,YMMRM,YMMREG');
+ FOpCodeList.Add('vblendvps,1,1,0,XMMREG,XMMREG,XMMRM,XMMREG');
+ FOpCodeList.Add('vblendvps,1,1,0,YMMREG,YMMREG,YMMRM,YMMREG');
+ FOpCodeList.Add('vbroadcastf128,1,1,0,YMMREG,MEM128,,');
+ FOpCodeList.Add('vbroadcastsd,1,1,1,YMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vbroadcastsd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vbroadcastsd,1,1,1,ZMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vbroadcastsd,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vbroadcastss,1,1,1,XMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vbroadcastss,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vbroadcastss,1,1,1,YMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vbroadcastss,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vbroadcastss,1,1,1,ZMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vbroadcastss,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcmpeqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpltps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpltps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpleps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpleps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpunordps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpunordps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnltps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnltps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnleps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnleps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpordps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpordps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpeq_uqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeq_uqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpngeps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpngeps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpngtps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpngtps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpfalseps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpfalseps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneq_oqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneq_oqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpgeps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpgeps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpgtps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpgtps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmptrueps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmptrueps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpeq_osps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeq_osps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmplt_oqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmplt_oqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmple_oqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmple_oqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpunord_sps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpunord_sps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneq_usps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneq_usps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnlt_uqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnlt_uqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnle_uqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnle_uqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpord_sps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpord_sps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpeq_usps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeq_usps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnge_uqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnge_uqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpngt_uqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpngt_uqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpfalse_osps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpfalse_osps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneq_osps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneq_osps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpge_oqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpge_oqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpgt_oqps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpgt_oqps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmptrue_usps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmptrue_usps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpeqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpltpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpltpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmplepd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmplepd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpunordpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpunordpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnltpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnltpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnlepd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnlepd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpordpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpordpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpeq_uqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeq_uqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpngepd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpngepd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpngtpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpngtpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpfalsepd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpfalsepd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneq_oqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneq_oqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpgepd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpgepd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpgtpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpgtpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmptruepd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmptruepd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpeq_ospd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeq_ospd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmplt_oqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmplt_oqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmple_oqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmple_oqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpunord_spd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpunord_spd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneq_uspd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneq_uspd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnlt_uqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnlt_uqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnle_uqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnle_uqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpord_spd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpord_spd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpeq_uspd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpeq_uspd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpnge_uqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpnge_uqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpngt_uqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpngt_uqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpfalse_ospd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpfalse_ospd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpneq_ospd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpneq_ospd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpge_oqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpge_oqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmpgt_oqpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmpgt_oqpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmptrue_uspd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vcmptrue_uspd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vcmppd,1,1,1,KREG_M,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,1,KREG_M,XMMREG,2B64,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,1,KREG_M,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,1,KREG_M,YMMREG,4B32,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,1,KREG_M,ZMMREG,MEM512,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,1,KREG_M,ZMMREG,8B32,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,1,KREG_M,ZMMREG,ZMMREG_SAE,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vcmppd,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,1,KREG_M,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,1,KREG_M,XMMREG,4B32,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,1,KREG_M,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,1,KREG_M,YMMREG,8B32,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,1,KREG_M,ZMMREG,MEM512,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,1,KREG_M,ZMMREG,16B32,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,1,KREG_M,ZMMREG,ZMMREG_SAE,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vcmpps,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vcmpsd,1,1,1,KREG_M,XMMREG,MEM64,IMM8');
+ FOpCodeList.Add('vcmpsd,1,1,1,KREG_M,XMMREG,XMMREG_SAE,IMM8');
+ FOpCodeList.Add('vcmpsd,1,1,0,XMMREG,XMMREG,XMMREG,IMM8');
+ FOpCodeList.Add('vcmpsd,1,1,0,XMMREG,XMMREG,MEM64,IMM8');
+ 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('vcomisd,1,1,1,XMMREG,MEM64,,');
+ FOpCodeList.Add('vcomisd,1,1,1,XMMREG,XMMREG_SAE,,');
+ FOpCodeList.Add('vcomiss,1,1,1,XMMREG,MEM32,,');
+ FOpCodeList.Add('vcomiss,1,1,1,XMMREG,XMMREG_SAE,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,XMMREG_MZ,2B32,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,YMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,ZMMREG_MZ,YMMREG_ER,,');
+ FOpCodeList.Add('vcvtdq2pd,1,1,1,ZMMREG_MZ,8B32,,');
- FOpCodeList.Add('VADDPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VADDPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VADDPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VADDPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VADDSD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VADDSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VADDSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VADDSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VADDSUBPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VADDSUBPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VADDSUBPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VADDSUBPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VAESDEC,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VAESDECLAST,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VAESENC,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VAESENCLAST,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VAESIMC,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VAESKEYGENASSIST,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VANDNPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VANDNPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VANDNPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VANDNPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VANDPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VANDPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VANDPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VANDPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VBLENDPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VBLENDPD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VBLENDPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VBLENDPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VBLENDVPD,1,1,XMMREG,XMMREG,XMMRM,XMMREG');
- FOpCodeList.Add('VBLENDVPD,1,1,YMMREG,YMMREG,YMMRM,YMMREG');
- FOpCodeList.Add('VBLENDVPS,1,1,XMMREG,XMMREG,XMMRM,XMMREG');
- FOpCodeList.Add('VBLENDVPS,1,1,YMMREG,YMMREG,YMMRM,YMMREG');
- FOpCodeList.Add('VBROADCASTF128,1,1,YMMREG,MEM128,,');
- FOpCodeList.Add('VBROADCASTSD,1,1,YMMREG,MEM64,,');
- FOpCodeList.Add('VBROADCASTSS,1,1,YMMREG,MEM32,,');
- FOpCodeList.Add('VBROADCASTSS,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VCMPPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VCMPPD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VCMPPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VCMPPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VCMPSD,1,1,XMMREG,XMMREG,MEM64,IMM8');
- FOpCodeList.Add('VCMPSD,1,1,XMMREG,XMMREG,XMMREG,IMM8');
- FOpCodeList.Add('VCMPSS,1,1,XMMREG,XMMREG,MEM64,IMM8');
- FOpCodeList.Add('VCMPSS,1,1,XMMREG,XMMREG,XMMREG,IMM8');
- FOpCodeList.Add('VCOMISD,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VCOMISD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VCOMISS,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VCOMISS,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VCVTDQ2PD,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VCVTDQ2PD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VCVTDQ2PD,1,1,YMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTDQ2PS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTDQ2PS,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VCVTPD2DQ,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTPD2DQ,1,1,XMMREG,YMMRM,,');
- FOpCodeList.Add('VCVTPD2PS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTPD2PS,1,1,XMMREG,YMMRM,,');
- FOpCodeList.Add('VCVTPS2DQ,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTPS2DQ,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VCVTPS2PD,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VCVTPS2PD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VCVTPS2PD,1,1,YMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTSD2SI,1,1,REG32,MEM64,,');
- FOpCodeList.Add('VCVTSD2SI,1,1,REG32,XMMREG,,');
- FOpCodeList.Add('VCVTSD2SI,0,1,REG64,MEM64,,');
- FOpCodeList.Add('VCVTSD2SI,0,1,REG64,XMMREG,,');
- FOpCodeList.Add('VCVTSD2SS,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VCVTSD2SS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VCVTSI2SD,1,1,XMMREG,XMMREG,RM32,');
- FOpCodeList.Add('VCVTSI2SD,0,1,XMMREG,XMMREG,RM64,');
- FOpCodeList.Add('VCVTSI2SS,1,1,XMMREG,XMMREG,RM32,');
- FOpCodeList.Add('VCVTSI2SS,0,1,XMMREG,XMMREG,RM64,');
- FOpCodeList.Add('VCVTSS2SD,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VCVTSS2SD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VCVTSS2SI,1,1,REG32,MEM32,,');
- FOpCodeList.Add('VCVTSS2SI,1,1,REG32,XMMREG,,');
- FOpCodeList.Add('VCVTSS2SI,0,1,REG64,MEM32,,');
- FOpCodeList.Add('VCVTSS2SI,0,1,REG64,XMMREG,,');
- FOpCodeList.Add('VCVTTPD2DQ,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTTPD2DQ,1,1,XMMREG,YMMRM,,');
- FOpCodeList.Add('VCVTTPS2DQ,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VCVTTPS2DQ,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VCVTTSD2SI,1,1,REG32,MEM64,,');
- FOpCodeList.Add('VCVTTSD2SI,1,1,REG32,XMMREG,,');
- FOpCodeList.Add('VCVTTSD2SI,0,1,REG64,MEM64,,');
- FOpCodeList.Add('VCVTTSD2SI,0,1,REG64,XMMREG,,');
- FOpCodeList.Add('VCVTTSS2SI,1,1,REG32,MEM32,,');
- FOpCodeList.Add('VCVTTSS2SI,1,1,REG32,XMMREG,,');
- FOpCodeList.Add('VCVTTSS2SI,0,1,REG64,MEM32,,');
- FOpCodeList.Add('VCVTTSS2SI,0,1,REG64,XMMREG,,');
- FOpCodeList.Add('VDIVPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VDIVPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VDIVPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VDIVPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VDIVSD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VDIVSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VDIVSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VDIVSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VDPPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VDPPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VDPPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VEXTRACTF128,1,1,XMMRM,YMMREG,IMM8,');
- FOpCodeList.Add('VEXTRACTPS,1,1,RM32,XMMREG,IMM8,');
- FOpCodeList.Add('VHADDPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VHADDPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VHADDPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VHADDPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VHSUBPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VHSUBPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VHSUBPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VHSUBPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VINSERTF128,1,1,YMMREG,YMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VINSERTPS,1,1,XMMREG,XMMREG,MEM32,IMM8');
- FOpCodeList.Add('VINSERTPS,1,1,XMMREG,XMMREG,XMMREG,IMM8');
- FOpCodeList.Add('VLDDQU,1,1,XMMREG,MEM128,,');
- FOpCodeList.Add('VLDDQU,1,1,YMMREG,MEM256,,');
- FOpCodeList.Add('VLDMXCSR,1,1,MEM32,,,');
- FOpCodeList.Add('VMASKMOVDQU,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VMASKMOVPD,1,1,MEM256,YMMREG,YMMREG,');
- FOpCodeList.Add('VMASKMOVPD,1,1,MEM128,XMMREG,XMMREG,');
- FOpCodeList.Add('VMASKMOVPD,1,1,YMMREG,YMMREG,MEM256,');
- FOpCodeList.Add('VMASKMOVPD,1,1,XMMREG,XMMREG,MEM128,');
- FOpCodeList.Add('VMASKMOVPS,1,1,MEM256,YMMREG,YMMREG,');
- FOpCodeList.Add('VMASKMOVPS,1,1,MEM128,XMMREG,XMMREG,');
- FOpCodeList.Add('VMASKMOVPS,1,1,YMMREG,YMMREG,MEM256,');
- FOpCodeList.Add('VMASKMOVPS,1,1,XMMREG,XMMREG,MEM128,');
- FOpCodeList.Add('VMAXPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VMAXPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VMAXPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VMAXPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VMAXSD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VMAXSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMAXSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VMAXSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMINPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VMINPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VMINPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VMINPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VMINSD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VMINSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMINSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VMINSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMOVAPD,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVAPD,1,1,XMMRM,XMMREG,,');
- FOpCodeList.Add('VMOVAPD,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVAPD,1,1,YMMRM,YMMREG,,');
- FOpCodeList.Add('VMOVAPS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVAPS,1,1,XMMRM,XMMREG,,');
- FOpCodeList.Add('VMOVAPS,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVAPS,1,1,YMMRM,YMMREG,,');
- FOpCodeList.Add('VMOVD,1,1,XMMREG,RM32,,');
- FOpCodeList.Add('VMOVD,1,1,RM32,XMMREG,,');
- FOpCodeList.Add('VMOVDDUP,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVDDUP,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VMOVDDUP,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VMOVDQA,1,1,YMMRM,YMMREG,,');
- FOpCodeList.Add('VMOVDQA,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVDQA,1,1,XMMRM,XMMREG,,');
- FOpCodeList.Add('VMOVDQA,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVDQU,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVDQU,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVDQU,1,1,XMMRM,XMMREG,,');
- FOpCodeList.Add('VMOVDQU,1,1,YMMRM,YMMREG,,');
- FOpCodeList.Add('VMOVHLPS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMOVHPD,1,1,MEM64,XMMREG,,');
- FOpCodeList.Add('VMOVHPD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VMOVHPS,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VMOVHPS,1,1,MEM64,XMMREG,,');
- FOpCodeList.Add('VMOVLHPS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMOVLPD,1,1,MEM64,XMMREG,,');
- FOpCodeList.Add('VMOVLPD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VMOVLPS,1,1,MEM64,XMMREG,,');
- FOpCodeList.Add('VMOVLPS,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VMOVMSKPD,1,1,REG32,YMMREG,,');
- FOpCodeList.Add('VMOVMSKPD,1,1,REG64,XMMREG,,');
- FOpCodeList.Add('VMOVMSKPD,1,1,REG32,XMMREG,,');
- FOpCodeList.Add('VMOVMSKPD,1,1,REG64,YMMREG,,');
- FOpCodeList.Add('VMOVMSKPS,1,1,REG32,YMMREG,,');
- FOpCodeList.Add('VMOVMSKPS,1,1,REG64,XMMREG,,');
- FOpCodeList.Add('VMOVMSKPS,1,1,REG32,XMMREG,,');
- FOpCodeList.Add('VMOVMSKPS,1,1,REG64,YMMREG,,');
- FOpCodeList.Add('VMOVNTDQ,1,1,MEM128,XMMREG,,');
- FOpCodeList.Add('VMOVNTDQ,1,1,MEM256,YMMREG,,');
- FOpCodeList.Add('VMOVNTDQA,1,1,XMMREG,MEM128,,');
- FOpCodeList.Add('VMOVNTPD,1,1,MEM256,YMMREG,,');
- FOpCodeList.Add('VMOVNTPD,1,1,MEM128,XMMREG,,');
- FOpCodeList.Add('VMOVNTPS,1,1,MEM128,YMMREG,,');
- FOpCodeList.Add('VMOVNTPS,1,1,MEM128,XMMREG,,');
- FOpCodeList.Add('VMOVQ,0,1,RM64,XMMREG,,');
- FOpCodeList.Add('VMOVQ,0,1,XMMREG,RM64,,');
- FOpCodeList.Add('VMOVSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMOVSD,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VMOVSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMOVSD,1,1,MEM64,XMMREG,,');
- FOpCodeList.Add('VMOVSHDUP,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVSHDUP,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVSLDUP,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVSLDUP,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMOVSS,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VMOVSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMOVSS,1,1,MEM64,XMMREG,,');
- FOpCodeList.Add('VMOVUPD,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVUPD,1,1,XMMRM,XMMREG,,');
- FOpCodeList.Add('VMOVUPD,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVUPD,1,1,YMMRM,YMMREG,,');
- FOpCodeList.Add('VMOVUPS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VMOVUPS,1,1,XMMRM,XMMREG,,');
- FOpCodeList.Add('VMOVUPS,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VMOVUPS,1,1,YMMRM,YMMREG,,');
- FOpCodeList.Add('VMPSADBW,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VMULPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VMULPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VMULPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VMULPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VMULSD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VMULSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VMULSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VMULSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VORPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VORPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VORPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPABSB,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VPABSB,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VPABSD,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VPABSD,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VPABSW,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VPABSW,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VPACKSSDW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPACKSSDW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPACKSSWB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPACKSSWB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPACKUSDW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPACKUSDW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPACKUSWB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPACKUSWB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDSB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDSB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDUSB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDUSB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDUSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDUSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPADDW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPADDW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPALIGNR,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VPALIGNR,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VPAND,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPAND,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPANDN,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPANDN,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPAVGB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPAVGB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPAVGW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPAVGW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPBLENDVB,1,1,XMMREG,XMMREG,XMMRM,XMMREG');
- FOpCodeList.Add('VPBLENDVB,1,1,YMMREG,YMMREG,YMMRM,YMMREG');
- FOpCodeList.Add('VPBLENDW,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VPBLENDW,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VPCLMULQDQ,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VPCMPEQB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPEQB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPEQD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPEQD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPEQQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPEQQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPEQW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPEQW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPESTRI,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPCMPESTRM,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPCMPGTB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPGTB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPGTD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPGTD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPGTQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPGTQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPGTW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPCMPGTW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPCMPISTRI,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPCMPISTRM,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPERM2F128,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VPERMILPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPERMILPD,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPERMILPD,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VPERMILPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPERMILPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPERMILPS,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPERMILPS,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VPERMILPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPEXTRB,1,1,REG32,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRB,1,1,REG64,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRB,1,1,MEM8,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRD,1,1,RM32,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRQ,0,1,RM64,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRW,1,1,REG32,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRW,1,1,REG64,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRW,1,1,REG64,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRW,1,1,MEM16,XMMREG,IMM8,');
- FOpCodeList.Add('VPEXTRW,1,1,REG32,XMMREG,IMM8,');
- FOpCodeList.Add('VPHADDD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPHADDD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPHADDSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPHADDSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPHADDW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPHADDW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPHMINPOSUW,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VPHSUBD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPHSUBD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPHSUBSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPHSUBSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPHSUBW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPHSUBW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPINSRB,1,1,XMMREG,XMMREG,REG32,IMM8');
- FOpCodeList.Add('VPINSRB,1,1,XMMREG,XMMREG,MEM8,IMM8');
- FOpCodeList.Add('VPINSRD,1,1,XMMREG,XMMREG,RM32,IMM8');
- FOpCodeList.Add('VPINSRQ,0,1,XMMREG,XMMREG,RM64,IMM8');
- FOpCodeList.Add('VPINSRW,1,1,XMMREG,XMMREG,REG32,IMM8');
- FOpCodeList.Add('VPINSRW,1,1,XMMREG,XMMREG,MEM16,IMM8');
- FOpCodeList.Add('VPMADDUBSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMADDUBSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMADDWD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMADDWD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMAXSB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMAXSB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMAXSD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMAXSD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMAXSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMAXSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMAXUB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMAXUB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMAXUD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMAXUD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMAXUW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMAXUW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMINSB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMINSB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMINSD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMINSD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMINSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMINSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMINUB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMINUB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMINUD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMINUD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMINUW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMINUW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMOVMSKB,1,1,REG64,XMMREG,,');
- FOpCodeList.Add('VPMOVMSKB,1,1,REG64,YMMREG,,');
- FOpCodeList.Add('VPMOVMSKB,1,1,REG32,XMMREG,,');
- FOpCodeList.Add('VPMOVMSKB,1,1,REG32,YMMREG,,');
- FOpCodeList.Add('VPMOVSXBD,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VPMOVSXBD,1,1,YMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVSXBD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXBD,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXBQ,1,1,XMMREG,MEM16,,');
- FOpCodeList.Add('VPMOVSXBQ,1,1,YMMREG,MEM32,,');
- FOpCodeList.Add('VPMOVSXBQ,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXBQ,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXBW,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVSXBW,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXBW,1,1,YMMREG,XMMRM,,');
- FOpCodeList.Add('VPMOVSXDQ,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVSXDQ,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXDQ,1,1,YMMREG,XMMRM,,');
- FOpCodeList.Add('VPMOVSXWD,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVSXWD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXWD,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VPMOVSXWQ,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VPMOVSXWQ,1,1,YMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVSXWQ,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVSXWQ,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXBD,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VPMOVZXBD,1,1,YMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVZXBD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXBD,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXBQ,1,1,XMMREG,MEM16,,');
- FOpCodeList.Add('VPMOVZXBQ,1,1,YMMREG,MEM32,,');
- FOpCodeList.Add('VPMOVZXBQ,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXBQ,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXBW,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVZXBW,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXBW,1,1,YMMREG,XMMRM,,');
- FOpCodeList.Add('VPMOVZXDQ,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVZXDQ,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXDQ,1,1,YMMREG,XMMRM,,');
- FOpCodeList.Add('VPMOVZXWD,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVZXWD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXWD,1,1,YMMREG,XMMRM,,');
- FOpCodeList.Add('VPMOVZXWQ,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VPMOVZXWQ,1,1,YMMREG,MEM64,,');
- FOpCodeList.Add('VPMOVZXWQ,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPMOVZXWQ,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPMULDQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMULDQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMULHRSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMULHRSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMULHUW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMULHUW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMULHW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMULHW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMULLD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMULLD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMULLW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMULLW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPMULUDQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPMULUDQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPOR,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPOR,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSADBW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSADBW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSHUFB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSHUFB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSHUFD,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPSHUFD,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VPSHUFHW,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPSHUFHW,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VPSHUFLW,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VPSHUFLW,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VPSIGNB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSIGNB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSIGND,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSIGND,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSIGNW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSIGNW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSLLD,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSLLD,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSLLD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSLLD,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSLLDQ,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSLLDQ,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSLLQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSLLQ,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSLLQ,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSLLQ,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSLLW,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSLLW,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSLLW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSLLW,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSRAD,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSRAD,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSRAD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRAD,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSRAW,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSRAW,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSRAW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRAW,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLD,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSRLD,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSRLD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLD,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLDQ,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSRLDQ,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSRLQ,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSRLQ,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSRLQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLQ,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLW,1,1,XMMREG,XMMREG,IMM8,');
- FOpCodeList.Add('VPSRLW,1,1,YMMREG,YMMREG,IMM8,');
- FOpCodeList.Add('VPSRLW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLW,1,1,YMMREG,YMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSUBD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSUBQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSUBSB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBSB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSUBSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSUBUSB,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBUSB,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSUBUSW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBUSW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSUBW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSUBW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPTEST,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VPTEST,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VPTEST,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VPTEST,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VPUNPCKHBW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKHBW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPUNPCKHDQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKHDQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPUNPCKHQDQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKHQDQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPUNPCKHWD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKHWD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPUNPCKLBW,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKLBW,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPUNPCKLDQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKLDQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPUNPCKLQDQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKLQDQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPUNPCKLWD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPUNPCKLWD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPXOR,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPXOR,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VRCPPS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VRCPPS,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VRCPSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VRCPSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VROUNDPD,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VROUNDPD,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VROUNDPS,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VROUNDPS,1,1,XMMREG,XMMRM,IMM8,');
- FOpCodeList.Add('VROUNDSD,1,1,XMMREG,XMMREG,MEM64,IMM8');
- FOpCodeList.Add('VROUNDSD,1,1,XMMREG,XMMREG,XMMREG,IMM8');
- FOpCodeList.Add('VROUNDSS,1,1,XMMREG,XMMREG,MEM32,IMM8');
- FOpCodeList.Add('VROUNDSS,1,1,XMMREG,XMMREG,XMMREG,IMM8');
- FOpCodeList.Add('VRSQRTPS,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VRSQRTPS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VRSQRTSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VRSQRTSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VSHUFPD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VSHUFPD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VSHUFPS,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VSHUFPS,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VSQRTPD,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VSQRTPD,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VSQRTPS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VSQRTPS,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VSQRTSD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VSQRTSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VSQRTSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VSQRTSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VSTMXCSR,1,1,MEM32,,,');
- FOpCodeList.Add('VSUBPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VSUBPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VSUBPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VSUBPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VSUBSD,1,1,XMMREG,XMMREG,MEM64,');
- FOpCodeList.Add('VSUBSD,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VSUBSS,1,1,XMMREG,XMMREG,MEM32,');
- FOpCodeList.Add('VSUBSS,1,1,XMMREG,XMMREG,XMMREG,');
- FOpCodeList.Add('VTESTPD,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VTESTPD,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VTESTPS,1,1,YMMREG,YMMRM,,');
- FOpCodeList.Add('VTESTPS,1,1,XMMREG,XMMRM,,');
- FOpCodeList.Add('VUCOMISD,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VUCOMISD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VUCOMISS,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VUCOMISS,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VUNPCKHPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VUNPCKHPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VUNPCKHPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VUNPCKHPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VUNPCKLPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VUNPCKLPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VUNPCKLPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VUNPCKLPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VXORPD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VXORPD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VXORPS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VXORPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VZEROALL,1,1,,,,');
- FOpCodeList.Add('VZEROUPPER,1,1,,,,');
-
-
- FOpCodeList.Add('VBROADCASTI128,1,1,YMMREG,MEM128,,');
- FOpCodeList.Add('VEXTRACTI128,1,1,XMMRM,YMMREG,IMM8,');
- FOpCodeList.Add('VINSERTI128,1,1,YMMREG,YMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VPBLENDD,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VPBLENDD,1,1,XMMREG,XMMREG,XMMRM,IMM8');
- FOpCodeList.Add('VPBROADCASTB,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPBROADCASTB,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPBROADCASTB,1,1,XMMREG,MEM8,,');
- FOpCodeList.Add('VPBROADCASTB,1,1,YMMREG,MEM8,,');
- FOpCodeList.Add('VPBROADCASTD,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPBROADCASTD,1,1,XMMREG,MEM32,,');
- FOpCodeList.Add('VPBROADCASTD,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPBROADCASTD,1,1,YMMREG,MEM32,,');
- FOpCodeList.Add('VPBROADCASTQ,1,1,YMMREG,MEM64,,');
- FOpCodeList.Add('VPBROADCASTQ,1,1,XMMREG,MEM64,,');
- FOpCodeList.Add('VPBROADCASTQ,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPBROADCASTQ,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPBROADCASTW,1,1,XMMREG,MEM16,,');
- FOpCodeList.Add('VPBROADCASTW,1,1,XMMREG,XMMREG,,');
- FOpCodeList.Add('VPBROADCASTW,1,1,YMMREG,MEM16,,');
- FOpCodeList.Add('VPBROADCASTW,1,1,YMMREG,XMMREG,,');
- FOpCodeList.Add('VPERM2I128,1,1,YMMREG,YMMREG,YMMRM,IMM8');
- FOpCodeList.Add('VPERMD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPERMPD,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VPERMPS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPERMQ,1,1,YMMREG,YMMRM,IMM8,');
- FOpCodeList.Add('VPMASKMOVD,1,1,XMMREG,XMMREG,MEM128,');
- FOpCodeList.Add('VPMASKMOVD,1,1,MEM128,XMMREG,XMMREG,');
- FOpCodeList.Add('VPMASKMOVD,1,1,YMMREG,YMMREG,MEM256,');
- FOpCodeList.Add('VPMASKMOVD,1,1,MEM256,YMMREG,YMMREG,');
- FOpCodeList.Add('VPMASKMOVQ,1,1,XMMREG,XMMREG,MEM128,');
- FOpCodeList.Add('VPMASKMOVQ,1,1,MEM128,XMMREG,XMMREG,');
- FOpCodeList.Add('VPMASKMOVQ,1,1,YMMREG,YMMREG,MEM256,');
- FOpCodeList.Add('VPMASKMOVQ,1,1,MEM256,YMMREG,YMMREG,');
- FOpCodeList.Add('VPSLLVD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSLLVD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSLLVQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSLLVQ,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRAVD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSRAVD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLVD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSRLVD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VPSRLVQ,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VPSRLVQ,1,1,XMMREG,XMMREG,XMMRM,');
-
-
- FOpCodeList.Add('VFMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD231PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD231PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD231PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADD231PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD132SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD213SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD231SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD132SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD213SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADD231SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADDSUB132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADDSUB132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADDSUB213PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADDSUB213PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADDSUB231PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADDSUB231PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADDSUB132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADDSUB132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADDSUB213PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADDSUB213PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMADDSUB231PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMADDSUB231PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUBADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUBADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUBADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUBADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUBADD231PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUBADD231PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUBADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUBADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUBADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUBADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUBADD231PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUBADD231PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUB132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB213PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUB213PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB231PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUB231PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUB132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB213PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUB213PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB231PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFMSUB231PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB132SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB213SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB231SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB132SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB213SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFMSUB231SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMADD132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD213PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMADD213PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD231PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMADD231PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMADD132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD213PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMADD213PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD231PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMADD231PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD132SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD213SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD231SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD132SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD213SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMADD231SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB132PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMSUB132PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB213PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMSUB213PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB231PD,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMSUB231PD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB132PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMSUB132PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB213PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMSUB213PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB231PS,1,1,YMMREG,YMMREG,YMMRM,');
- FOpCodeList.Add('VFNMSUB231PS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB132SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB213SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB231SD,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB132SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB213SS,1,1,XMMREG,XMMREG,XMMRM,');
- FOpCodeList.Add('VFNMSUB231SS,1,1,XMMREG,XMMREG,XMMRM,');
-
-
- FOpCodeList.Add('VGATHERDPD,1,1,XMMREG,XMEM32,XMMREG,');
- FOpCodeList.Add('VGATHERDPD,1,1,YMMREG,XMEM32,YMMREG,');
+ FOpCodeList.Add('vcvtdq2ps,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vcvtdq2ps,1,1,1,XMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vcvtdq2ps,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vcvtdq2ps,1,1,1,YMMREG_MZ,8B32,,');
+ FOpCodeList.Add('vcvtdq2ps,1,1,1,ZMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vcvtdq2ps,1,1,1,ZMMREG_MZ,16B32,,');
+ FOpCodeList.Add('vcvtdq2ps,1,1,1,ZMMREG_MZ,ZMMREG_ER,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,XMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,XMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,XMMREG_MZ,2B64,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,XMMREG_MZ,4B64,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,XMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,YMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,YMMREG_MZ,8B64,,');
+ FOpCodeList.Add('vcvtpd2dq,1,1,1,YMMREG_MZ,ZMMREG_ER,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,XMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,XMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,XMMREG_MZ,2B64,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,XMMREG_MZ,4B64,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,XMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,YMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,YMMREG_MZ,8B64,,');
+ FOpCodeList.Add('vcvtpd2ps,1,1,1,YMMREG_MZ,ZMMREG_ER,,');
+ FOpCodeList.Add('vcvtph2ps,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vcvtph2ps,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtph2ps,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vcvtph2ps,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtph2ps,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vcvtph2ps,1,1,1,ZMMREG_MZ,YMMREG_SAE,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,XMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,XMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,YMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,YMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,YMMREG_MZ,8B32,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,ZMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,ZMMREG_MZ,16B32,,');
+ FOpCodeList.Add('vcvtps2dq,1,1,1,ZMMREG_MZ,ZMMREG_ER,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,XMMREG_MZ,2B32,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,YMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,ZMMREG_MZ,YMMREG_SAE,,');
+ FOpCodeList.Add('vcvtps2pd,1,1,1,ZMMREG_MZ,8B32,,');
+ FOpCodeList.Add('vcvtps2ph,1,1,1,MEM128_M,YMMREG,IMM8,');
+ FOpCodeList.Add('vcvtps2ph,1,1,1,MEM256_M,ZMMREG_SAE,IMM8,');
+ FOpCodeList.Add('vcvtps2ph,1,1,1,MEM64_M,XMMREG,IMM8,');
+ FOpCodeList.Add('vcvtps2ph,1,1,1,XMMREG_MZ,XMMREG,IMM8,');
+ FOpCodeList.Add('vcvtps2ph,1,1,1,XMMREG_MZ,YMMREG,IMM8,');
+ FOpCodeList.Add('vcvtps2ph,1,1,1,YMMREG_MZ,ZMMREG_SAE,IMM8,');
+ FOpCodeList.Add('vcvtsd2si,1,1,1,REG32,MEM64,,');
+ FOpCodeList.Add('vcvtsd2si,1,1,1,REG32,XMMREG_ER,,');
+ FOpCodeList.Add('vcvtsd2si,1,1,1,REG64,MEM64,,');
+ FOpCodeList.Add('vcvtsd2si,1,1,1,REG64,XMMREG_ER,,');
+ FOpCodeList.Add('vcvtsd2ss,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vcvtsd2ss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vcvtsi2sd,1,1,1,XMMREG,XMMREG_ER,REG32,');
+ FOpCodeList.Add('vcvtsi2sd,0,1,1,XMMREG,XMMREG_ER,REG64,');
+ FOpCodeList.Add('vcvtsi2ss,1,1,1,XMMREG,XMMREG_ER,REG32,');
+ FOpCodeList.Add('vcvtsi2ss,0,1,1,XMMREG,XMMREG_ER,REG64,');
+ FOpCodeList.Add('vcvtss2sd,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vcvtss2sd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_SAE,');
+ FOpCodeList.Add('vcvtss2si,1,1,1,REG32,MEM32,,');
+ FOpCodeList.Add('vcvtss2si,1,1,1,REG32,XMMREG_ER,,');
+ FOpCodeList.Add('vcvtss2si,1,1,1,REG64,MEM32,,');
+ FOpCodeList.Add('vcvtss2si,1,1,1,REG64,XMMREG_ER,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,XMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,XMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,XMMREG_MZ,2B64,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,XMMREG_MZ,4B64,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,XMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,YMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,YMMREG_MZ,8B64,,');
+ FOpCodeList.Add('vcvttpd2dq,1,1,1,YMMREG_MZ,ZMMREG_SAE,,');
+ FOpCodeList.Add('vcvttps2dq,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vcvttps2dq,1,1,1,XMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vcvttps2dq,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vcvttps2dq,1,1,1,YMMREG_MZ,8B32,,');
+ FOpCodeList.Add('vcvttps2dq,1,1,1,ZMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vcvttps2dq,1,1,1,ZMMREG_MZ,16B32,,');
+ FOpCodeList.Add('vcvttps2dq,1,1,1,ZMMREG_MZ,ZMMREG_SAE,,');
+ FOpCodeList.Add('vcvttsd2si,1,1,1,REG32,MEM64,,');
+ FOpCodeList.Add('vcvttsd2si,1,1,1,REG32,XMMREG_SAE,,');
+ FOpCodeList.Add('vcvttsd2si,1,1,1,REG64,MEM64,,');
+ FOpCodeList.Add('vcvttsd2si,1,1,1,REG64,XMMREG_SAE,,');
+ FOpCodeList.Add('vcvttss2si,1,1,1,REG32,MEM32,,');
+ FOpCodeList.Add('vcvttss2si,1,1,1,REG32,XMMREG_SAE,,');
+ FOpCodeList.Add('vcvttss2si,1,1,1,REG64,MEM32,,');
+ FOpCodeList.Add('vcvttss2si,1,1,1,REG64,XMMREG_SAE,,');
+ FOpCodeList.Add('vdivpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vdivpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vdivpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vdivpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vdivpd,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vdivpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vdivpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vdivps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vdivps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vdivps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vdivps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vdivps,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vdivps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vdivps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vdivsd,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vdivsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vdivss,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vdivss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vdppd,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vdpps,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vdpps,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vextractf128,1,1,0,XMMRM,YMMREG,IMM8,');
+ FOpCodeList.Add('vextractps,1,1,1,MEM32,XMMREG,IMM8,');
+ FOpCodeList.Add('vextractps,1,1,1,REG32,XMMREG,IMM8,');
+ FOpCodeList.Add('vextractps,1,1,1,REG64,XMMREG,IMM8,');
+ FOpCodeList.Add('vhaddpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vhaddpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vhaddps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vhaddps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vhsubpd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vhsubpd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vhsubps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vhsubps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vinsertf128,1,1,0,YMMREG,YMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vinsertps,1,1,1,XMMREG,XMMREG,MEM32,IMM8');
+ FOpCodeList.Add('vinsertps,1,1,1,XMMREG,XMMREG,XMMREG,IMM8');
+ FOpCodeList.Add('vlddqu,1,1,0,XMMREG,MEM128,,');
+ FOpCodeList.Add('vlddqu,1,1,0,YMMREG,MEM256,,');
+ FOpCodeList.Add('vldmxcsr,1,1,0,MEM32,,,');
+ FOpCodeList.Add('vmaskmovdqu,1,1,0,XMMREG,XMMREG,,');
+ FOpCodeList.Add('vmaskmovpd,1,1,0,MEM256,YMMREG,YMMREG,');
+ FOpCodeList.Add('vmaskmovpd,1,1,0,MEM128,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmaskmovpd,1,1,0,YMMREG,YMMREG,MEM256,');
+ FOpCodeList.Add('vmaskmovpd,1,1,0,XMMREG,XMMREG,MEM128,');
+ FOpCodeList.Add('vmaskmovps,1,1,0,MEM256,YMMREG,YMMREG,');
+ FOpCodeList.Add('vmaskmovps,1,1,0,MEM128,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmaskmovps,1,1,0,YMMREG,YMMREG,MEM256,');
+ FOpCodeList.Add('vmaskmovps,1,1,0,XMMREG,XMMREG,MEM128,');
+ FOpCodeList.Add('vmaxpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vmaxpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vmaxpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vmaxpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vmaxpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_SAE,');
+ FOpCodeList.Add('vmaxpd,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vmaxpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vmaxps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vmaxps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vmaxps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vmaxps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vmaxps,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vmaxps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vmaxps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_SAE,');
+ FOpCodeList.Add('vmaxsd,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vmaxsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_SAE,');
+ FOpCodeList.Add('vmaxss,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vmaxss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_SAE,');
+ FOpCodeList.Add('vminpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vminpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vminpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vminpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vminpd,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vminpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vminpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_SAE,');
+ FOpCodeList.Add('vminps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vminps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vminps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vminps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vminps,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vminps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vminps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_SAE,');
+ FOpCodeList.Add('vminsd,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vminsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_SAE,');
+ FOpCodeList.Add('vminss,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vminss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_SAE,');
+ FOpCodeList.Add('vmovapd,1,1,1,MEM128_M,XMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,MEM256_M,YMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,MEM512_M,ZMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,XMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vmovapd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,YMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vmovapd,1,1,1,YMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,YMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,ZMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vmovapd,1,1,1,ZMMREG_MZ,ZMMREG,,');
+ FOpCodeList.Add('vmovapd,1,1,1,ZMMREG_MZ,ZMMREG,,');
+ FOpCodeList.Add('vmovaps,1,1,1,MEM128_M,XMMREG,,');
+ FOpCodeList.Add('vmovaps,1,1,1,MEM256_M,YMMREG,,');
+ FOpCodeList.Add('vmovaps,1,1,1,MEM512_M,ZMMREG,,');
+ FOpCodeList.Add('vmovaps,1,1,1,XMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vmovaps,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vmovaps,1,1,1,YMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vmovaps,1,1,1,YMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vmovaps,1,1,1,ZMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vmovaps,1,1,1,ZMMREG_MZ,ZMMREG,,');
+ FOpCodeList.Add('vmovd,1,1,1,RM32,XMMREG,,');
+ FOpCodeList.Add('vmovd,1,1,1,XMMREG,RM32,,');
+ FOpCodeList.Add('vmovddup,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vmovddup,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vmovddup,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vmovddup,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vmovdqa,1,1,0,YMMRM,YMMREG,,');
+ FOpCodeList.Add('vmovdqa,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vmovdqa,1,1,0,XMMRM,XMMREG,,');
+ FOpCodeList.Add('vmovdqa,1,1,0,YMMREG,YMMRM,,');
+ FOpCodeList.Add('vmovdqu,1,1,0,YMMREG,YMMRM,,');
+ FOpCodeList.Add('vmovdqu,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vmovdqu,1,1,0,XMMRM,XMMREG,,');
+ FOpCodeList.Add('vmovdqu,1,1,0,YMMRM,YMMREG,,');
+ FOpCodeList.Add('vmovhlps,1,1,1,XMMREG,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmovhpd,1,1,1,MEM64,XMMREG,,');
+ FOpCodeList.Add('vmovhpd,1,1,1,XMMREG,XMMREG,MEM64,');
+ FOpCodeList.Add('vmovhps,1,1,1,MEM64,XMMREG,,');
+ FOpCodeList.Add('vmovhps,1,1,1,XMMREG,XMMREG,MEM64,');
+ FOpCodeList.Add('vmovlhps,1,1,1,XMMREG,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmovlpd,1,1,1,MEM64,XMMREG,,');
+ FOpCodeList.Add('vmovlpd,1,1,1,XMMREG,XMMREG,MEM64,');
+ FOpCodeList.Add('vmovlps,1,1,1,MEM64,XMMREG,,');
+ FOpCodeList.Add('vmovlps,1,1,1,XMMREG,XMMREG,MEM64,');
+ FOpCodeList.Add('vmovmskpd,1,1,0,REG32,YMMREG,,');
+ FOpCodeList.Add('vmovmskpd,1,1,0,REG64,XMMREG,,');
+ FOpCodeList.Add('vmovmskpd,1,1,0,REG32,XMMREG,,');
+ FOpCodeList.Add('vmovmskpd,1,1,0,REG64,YMMREG,,');
+ FOpCodeList.Add('vmovmskps,1,1,0,REG32,YMMREG,,');
+ FOpCodeList.Add('vmovmskps,1,1,0,REG64,XMMREG,,');
+ FOpCodeList.Add('vmovmskps,1,1,0,REG32,XMMREG,,');
+ FOpCodeList.Add('vmovmskps,1,1,0,REG64,YMMREG,,');
+ FOpCodeList.Add('vmovntdq,1,1,1,MEM128,XMMREG,,');
+ FOpCodeList.Add('vmovntdq,1,1,1,MEM256,YMMREG,,');
+ FOpCodeList.Add('vmovntdq,1,1,1,MEM512,ZMMREG,,');
+ FOpCodeList.Add('vmovntdqa,1,1,1,XMMREG,MEM128,,');
+ FOpCodeList.Add('vmovntdqa,1,1,1,YMMREG,MEM256,,');
+ FOpCodeList.Add('vmovntdqa,1,1,1,ZMMREG,MEM512,,');
+ FOpCodeList.Add('vmovntpd,1,1,1,MEM128,XMMREG,,');
+ FOpCodeList.Add('vmovntpd,1,1,1,MEM256,YMMREG,,');
+ FOpCodeList.Add('vmovntpd,1,1,1,MEM512,ZMMREG,,');
+ FOpCodeList.Add('vmovntps,1,1,1,MEM128,XMMREG,,');
+ FOpCodeList.Add('vmovntps,1,1,1,MEM256,YMMREG,,');
+ FOpCodeList.Add('vmovntps,1,1,1,MEM512,ZMMREG,,');
+ FOpCodeList.Add('vmovq,1,1,1,MEM64,XMMREG,,');
+ FOpCodeList.Add('vmovq,0,1,1,RM64,XMMREG,,');
+ FOpCodeList.Add('vmovq,1,1,1,XMMREG,MEM64,,');
+ FOpCodeList.Add('vmovq,0,1,1,XMMREG,RM64,,');
+ FOpCodeList.Add('vmovq,1,1,1,XMMREG,XMMREG,,');
+ FOpCodeList.Add('vmovq,1,1,1,XMMREG,XMMREG,,');
+ FOpCodeList.Add('vmovsd,1,1,1,MEM64_M,XMMREG,,');
+ FOpCodeList.Add('vmovsd,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vmovsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmovsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmovshdup,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vmovshdup,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vmovshdup,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vmovsldup,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vmovsldup,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vmovsldup,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vmovss,1,1,1,MEM32_M,XMMREG,,');
+ FOpCodeList.Add('vmovss,1,1,1,XMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vmovss,1,1,1,XMMREG_MZ,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmovss,1,1,1,XMMREG_MZ,XMMREG,XMMREG,');
+ FOpCodeList.Add('vmovupd,1,1,1,MEM128_M,XMMREG,,');
+ FOpCodeList.Add('vmovupd,1,1,1,MEM256_M,YMMREG,,');
+ FOpCodeList.Add('vmovupd,1,1,1,MEM512_M,ZMMREG,,');
+ FOpCodeList.Add('vmovupd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vmovupd,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vmovupd,1,1,1,YMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vmovupd,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vmovupd,1,1,1,ZMMREG_MZ,ZMMREG,,');
+ FOpCodeList.Add('vmovupd,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vmovups,1,1,1,MEM128_M,XMMREG,,');
+ FOpCodeList.Add('vmovups,1,1,1,MEM256_M,YMMREG,,');
+ FOpCodeList.Add('vmovups,1,1,1,MEM512_M,ZMMREG,,');
+ FOpCodeList.Add('vmovups,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vmovups,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vmovups,1,1,1,YMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vmovups,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vmovups,1,1,1,ZMMREG_MZ,ZMMREG,,');
+ FOpCodeList.Add('vmovups,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vmpsadbw,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vmpsadbw,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vmulpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vmulpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vmulpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vmulpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vmulpd,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vmulpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vmulpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vmulps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vmulps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vmulps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vmulps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vmulps,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vmulps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vmulps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vmulsd,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vmulsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vmulss,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vmulss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vorpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vorpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vorpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vorpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vorpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vorpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vorps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vorps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vorps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vorps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vorps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vorps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpabsb,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vpabsb,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vpabsb,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vpabsd,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vpabsd,1,1,1,XMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vpabsd,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vpabsd,1,1,1,YMMREG_MZ,8B32,,');
+ FOpCodeList.Add('vpabsd,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vpabsd,1,1,1,ZMMREG_MZ,16B32,,');
+ FOpCodeList.Add('vpabsw,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vpabsw,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vpabsw,1,1,1,ZMMREG_MZ,ZMMRM,,');
+ FOpCodeList.Add('vpackssdw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpackssdw,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpackssdw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpackssdw,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpackssdw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpackssdw,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpacksswb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpacksswb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpacksswb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpackusdw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpackusdw,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpackusdw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpackusdw,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpackusdw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpackusdw,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpackuswb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpackuswb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpackuswb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddd,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpaddd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpaddd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpaddq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpaddq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpaddq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpaddsb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddsb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddsb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddsw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddsw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddsw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddusb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddusb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddusb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddusw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddusw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddusw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpaddw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpaddw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpaddw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpalignr,1,1,1,XMMREG_MZ,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vpalignr,1,1,1,YMMREG_MZ,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vpalignr,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,IMM8');
+ FOpCodeList.Add('vpand,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpand,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpandn,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpandn,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpavgb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpavgb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpavgb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpavgw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpavgw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpavgw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpblendvb,1,1,0,XMMREG,XMMREG,XMMRM,XMMREG');
+ FOpCodeList.Add('vpblendvb,1,1,0,YMMREG,YMMREG,YMMRM,YMMREG');
+ FOpCodeList.Add('vpblendw,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vpblendw,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vpclmulqdq,1,1,1,XMMREG,XMMREG,XMMRM,IMM8');
+// FOpCodeList.Add('vpclmulqdq,1,1,1,YMMREG,YMMREG,YMMRM,IMM8');
+// FOpCodeList.Add('vpclmulqdq,1,1,1,ZMMREG,ZMMREG,ZMMRM,IMM8');
+ FOpCodeList.Add('vpcmpeqb,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqb,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpeqb,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpeqb,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqb,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpeqd,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqd,1,1,1,KREG_M,XMMREG,4B32,');
+ FOpCodeList.Add('vpcmpeqd,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpeqd,1,1,1,KREG_M,YMMREG,8B32,');
+ FOpCodeList.Add('vpcmpeqd,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpeqd,1,1,1,KREG_M,ZMMREG,16B32,');
+ FOpCodeList.Add('vpcmpeqd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpeqq,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqq,1,1,1,KREG_M,XMMREG,2B64,');
+ FOpCodeList.Add('vpcmpeqq,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpeqq,1,1,1,KREG_M,YMMREG,4B32,');
+ FOpCodeList.Add('vpcmpeqq,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpeqq,1,1,1,KREG_M,ZMMREG,8B32,');
+ FOpCodeList.Add('vpcmpeqq,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqq,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpeqw,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqw,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpeqw,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpeqw,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpeqw,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpestri,1,1,0,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vpcmpestrm,1,1,0,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vpcmpgtb,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtb,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpgtb,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpgtb,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtb,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpgtd,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtd,1,1,1,KREG_M,XMMREG,4B32,');
+ FOpCodeList.Add('vpcmpgtd,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpgtd,1,1,1,KREG_M,YMMREG,8B32,');
+ FOpCodeList.Add('vpcmpgtd,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpgtd,1,1,1,KREG_M,ZMMREG,16B32,');
+ FOpCodeList.Add('vpcmpgtd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpgtq,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtq,1,1,1,KREG_M,XMMREG,2B64,');
+ FOpCodeList.Add('vpcmpgtq,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpgtq,1,1,1,KREG_M,YMMREG,4B32,');
+ FOpCodeList.Add('vpcmpgtq,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpgtq,1,1,1,KREG_M,ZMMREG,8B32,');
+ FOpCodeList.Add('vpcmpgtq,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtq,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpgtw,1,1,1,KREG_M,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtw,1,1,1,KREG_M,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpgtw,1,1,1,KREG_M,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpcmpgtw,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpcmpgtw,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpcmpistri,1,1,0,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vpcmpistrm,1,1,0,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vperm2f128,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vpermilpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpermilpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpermilpd,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpermilpd,1,1,1,XMMREG_MZ,2B64,IMM8,');
+ FOpCodeList.Add('vpermilpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpermilpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpermilpd,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpermilpd,1,1,1,YMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpermilpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpermilpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpermilpd,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpermilpd,1,1,1,ZMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpermilps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpermilps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpermilps,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpermilps,1,1,1,XMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpermilps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpermilps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpermilps,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpermilps,1,1,1,YMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpermilps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpermilps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpermilps,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpermilps,1,1,1,ZMMREG_MZ,16B32,IMM8,');
+ FOpCodeList.Add('vpextrb,1,1,1,MEM8,XMMREG,IMM8,');
+ //FOpCodeList.Add('vpextrb,1,1,1,REG8,XMMREG,IMM8,');
+ //FOpCodeList.Add('vpextrb,1,1,1,REG16,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrb,1,1,1,REG32,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrb,1,1,1,REG64,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrd,1,1,1,RM32,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrq,1,1,1,RM64,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrw,1,1,1,MEM16,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrw,1,1,1,REG16,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrw,1,1,1,REG32,XMMREG,IMM8,');
+ FOpCodeList.Add('vpextrw,1,1,1,REG64,XMMREG,IMM8,');
+ FOpCodeList.Add('vphaddd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vphaddd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vphaddsw,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vphaddsw,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vphaddw,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vphaddw,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vphminposuw,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vphsubd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vphsubd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vphsubsw,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vphsubsw,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vphsubw,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vphsubw,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpinsrb,1,1,1,XMMREG,XMMREG,REG32,IMM8');
+ FOpCodeList.Add('vpinsrb,1,1,1,XMMREG,XMMREG,MEM8,IMM8');
+ FOpCodeList.Add('vpinsrd,1,1,1,XMMREG,XMMREG,RM32,IMM8');
+ FOpCodeList.Add('vpinsrq,1,1,1,XMMREG,XMMREG,RM64,IMM8');
+ FOpCodeList.Add('vpinsrw,1,1,1,XMMREG,XMMREG,MEM16,IMM8');
+ FOpCodeList.Add('vpinsrw,1,1,1,XMMREG,XMMREG,REG32,IMM8');
+ FOpCodeList.Add('vpmaddubsw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaddubsw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaddubsw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmaddwd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaddwd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaddwd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmaxsb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaxsb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaxsb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmaxsd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaxsd,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpmaxsd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaxsd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpmaxsd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmaxsd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpmaxsw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaxsw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaxsw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmaxub,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaxub,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaxub,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmaxud,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaxud,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpmaxud,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaxud,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpmaxud,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmaxud,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpmaxuw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmaxuw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmaxuw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpminsb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpminsb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpminsb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpminsd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpminsd,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpminsd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpminsd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpminsd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpminsd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpminsw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpminsw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpminsw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpminub,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpminub,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpminub,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpminud,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpminud,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpminud,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpminud,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpminud,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpminud,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpminuw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpminuw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpminuw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmovmskb,1,1,0,REG64,XMMREG,,');
+ FOpCodeList.Add('vpmovmskb,1,1,0,REG32,XMMREG,,');
+ FOpCodeList.Add('vpmovmskb,1,1,0,REG32,YMMREG,,');
+ FOpCodeList.Add('vpmovmskb,1,1,0,REG64,YMMREG,,');
+ FOpCodeList.Add('vpmovsxbd,1,1,1,XMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vpmovsxbd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbd,1,1,1,YMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovsxbd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbd,1,1,1,ZMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovsxbd,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbq,1,1,1,XMMREG_MZ,MEM16,,');
+ FOpCodeList.Add('vpmovsxbq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbq,1,1,1,YMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vpmovsxbq,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbq,1,1,1,ZMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovsxbq,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbw,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovsxbw,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbw,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovsxbw,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxbw,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vpmovsxbw,1,1,1,ZMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vpmovsxdq,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovsxdq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxdq,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovsxdq,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxdq,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vpmovsxdq,1,1,1,ZMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vpmovsxwd,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovsxwd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxwd,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovsxwd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxwd,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vpmovsxwd,1,1,1,ZMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vpmovsxwq,1,1,1,XMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vpmovsxwq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxwq,1,1,1,YMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovsxwq,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovsxwq,1,1,1,ZMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovsxwq,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbd,1,1,1,XMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vpmovzxbd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbd,1,1,1,YMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovzxbd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbd,1,1,1,ZMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovzxbd,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbq,1,1,1,XMMREG_MZ,MEM16,,');
+ FOpCodeList.Add('vpmovzxbq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbq,1,1,1,YMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vpmovzxbq,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbq,1,1,1,ZMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovzxbq,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbw,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovzxbw,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbw,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovzxbw,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxbw,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vpmovzxbw,1,1,1,ZMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vpmovzxdq,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovzxdq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxdq,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovzxdq,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxdq,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vpmovzxdq,1,1,1,ZMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vpmovzxwd,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovzxwd,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxwd,1,1,1,YMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovzxwd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxwd,1,1,1,ZMMREG_MZ,MEM256,,');
+ FOpCodeList.Add('vpmovzxwd,1,1,1,ZMMREG_MZ,YMMREG,,');
+ FOpCodeList.Add('vpmovzxwq,1,1,1,XMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vpmovzxwq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxwq,1,1,1,YMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpmovzxwq,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmovzxwq,1,1,1,ZMMREG_MZ,MEM128,,');
+ FOpCodeList.Add('vpmovzxwq,1,1,1,ZMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpmuldq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmuldq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpmuldq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmuldq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpmuldq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmuldq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpmulhrsw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmulhrsw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmulhrsw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmulhuw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmulhuw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmulhuw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmulhw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmulhw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmulhw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmulld,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmulld,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpmulld,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmulld,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpmulld,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmulld,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpmullw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmullw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmullw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmuludq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpmuludq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpmuludq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpmuludq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpmuludq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpmuludq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpor,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpor,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsadbw,1,1,1,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsadbw,1,1,1,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsadbw,1,1,1,ZMMREG,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpshufb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpshufb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpshufb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpshufd,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpshufd,1,1,1,XMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpshufd,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpshufd,1,1,1,YMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpshufd,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpshufd,1,1,1,ZMMREG_MZ,16B32,IMM8,');
+ FOpCodeList.Add('vpshufhw,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpshufhw,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpshufhw,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpshuflw,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpshuflw,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpshuflw,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsignb,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsignb,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsignd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsignd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsignw,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsignw,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpslld,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpslld,1,1,1,XMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpslld,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpslld,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpslld,1,1,1,YMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpslld,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpslld,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpslld,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpslld,1,1,1,ZMMREG_MZ,16B32,IMM8,');
+ FOpCodeList.Add('vpslldq,1,1,1,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vpslldq,1,1,1,YMMREG,YMMRM,IMM8,');
+ FOpCodeList.Add('vpslldq,1,1,1,ZMMREG,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsllq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllq,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsllq,1,1,1,XMMREG_MZ,2B64,IMM8,');
+ FOpCodeList.Add('vpsllq,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllq,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsllq,1,1,1,YMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpsllq,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllq,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsllq,1,1,1,ZMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpsllw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllw,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsllw,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllw,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsllw,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllw,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsrad,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsrad,1,1,1,XMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpsrad,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrad,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsrad,1,1,1,YMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpsrad,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrad,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrad,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsrad,1,1,1,ZMMREG_MZ,16B32,IMM8,');
+ FOpCodeList.Add('vpsraw,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsraw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsraw,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsraw,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpsraw,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpsraw,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsrld,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsrld,1,1,1,XMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpsrld,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrld,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrld,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsrld,1,1,1,YMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpsrld,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrld,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsrld,1,1,1,ZMMREG_MZ,16B32,IMM8,');
+ FOpCodeList.Add('vpsrldq,1,1,1,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsrldq,1,1,1,YMMREG,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsrldq,1,1,1,ZMMREG,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsrlq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlq,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsrlq,1,1,1,XMMREG_MZ,2B64,IMM8,');
+ FOpCodeList.Add('vpsrlq,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsrlq,1,1,1,YMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpsrlq,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlq,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlq,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsrlq,1,1,1,ZMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpsrlw,1,1,1,XMMREG_MZ,XMMRM,IMM8,');
+ FOpCodeList.Add('vpsrlw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlw,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpsrlw,1,1,1,YMMREG_MZ,YMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlw,1,1,1,ZMMREG_MZ,ZMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlw,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpsubb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsubd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubd,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpsubd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpsubd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsubd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpsubq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpsubq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpsubq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsubq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpsubsb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubsb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubsb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsubsw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubsw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubsw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsubusb,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubusb,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubusb,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsubusw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubusw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubusw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsubw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsubw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsubw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vptest,1,1,0,YMMREG,YMMRM,,');
+ FOpCodeList.Add('vptest,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vpunpckhbw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpckhbw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpckhbw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpunpckhdq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpckhdq,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpunpckhdq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpckhdq,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpunpckhdq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpunpckhdq,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpunpckhqdq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpckhqdq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpunpckhqdq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpckhqdq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpunpckhqdq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpunpckhqdq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpunpckhwd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpckhwd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpckhwd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpunpcklbw,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpcklbw,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpcklbw,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpunpckldq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpckldq,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpunpckldq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpckldq,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpunpckldq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpunpckldq,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpunpcklqdq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpcklqdq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpunpcklqdq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpcklqdq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpunpcklqdq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpunpcklqdq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpunpcklwd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpunpcklwd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpunpcklwd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpxor,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpxor,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vrcpps,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vrcpps,1,1,0,YMMREG,YMMRM,,');
+ FOpCodeList.Add('vrcpss,1,1,0,XMMREG,XMMREG,MEM32,');
+ FOpCodeList.Add('vrcpss,1,1,0,XMMREG,XMMREG,XMMREG,');
+ FOpCodeList.Add('vroundpd,1,1,0,YMMREG,YMMRM,IMM8,');
+ FOpCodeList.Add('vroundpd,1,1,0,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vroundps,1,1,0,YMMREG,YMMRM,IMM8,');
+ FOpCodeList.Add('vroundps,1,1,0,XMMREG,XMMRM,IMM8,');
+ FOpCodeList.Add('vroundsd,1,1,0,XMMREG,XMMREG,MEM64,IMM8');
+ FOpCodeList.Add('vroundsd,1,1,0,XMMREG,XMMREG,XMMREG,IMM8');
+ FOpCodeList.Add('vroundss,1,1,0,XMMREG,XMMREG,MEM32,IMM8');
+ FOpCodeList.Add('vroundss,1,1,0,XMMREG,XMMREG,XMMREG,IMM8');
+ FOpCodeList.Add('vrsqrtps,1,1,0,YMMREG,YMMRM,,');
+ FOpCodeList.Add('vrsqrtps,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vrsqrtss,1,1,0,XMMREG,XMMREG,MEM32,');
+ FOpCodeList.Add('vrsqrtss,1,1,0,XMMREG,XMMREG,XMMREG,');
+ FOpCodeList.Add('vshufpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vshufpd,1,1,1,XMMREG_MZ,XMMREG,2B64,IMM8');
+ FOpCodeList.Add('vshufpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vshufpd,1,1,1,YMMREG_MZ,YMMREG,4B32,IMM8');
+ FOpCodeList.Add('vshufpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,IMM8');
+ FOpCodeList.Add('vshufpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,IMM8');
+ FOpCodeList.Add('vshufps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vshufps,1,1,1,XMMREG_MZ,XMMREG,4B32,IMM8');
+ FOpCodeList.Add('vshufps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vshufps,1,1,1,YMMREG_MZ,YMMREG,8B32,IMM8');
+ FOpCodeList.Add('vshufps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,IMM8');
+ FOpCodeList.Add('vshufps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,IMM8');
+ FOpCodeList.Add('vsqrtpd,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vsqrtpd,1,1,1,XMMREG_MZ,2B64,,');
+ FOpCodeList.Add('vsqrtpd,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vsqrtpd,1,1,1,YMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vsqrtpd,1,1,1,ZMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vsqrtpd,1,1,1,ZMMREG_MZ,8B32,,');
+ FOpCodeList.Add('vsqrtpd,1,1,1,ZMMREG_MZ,ZMMREG_ER,,');
+ FOpCodeList.Add('vsqrtps,1,1,1,XMMREG_MZ,XMMRM,,');
+ FOpCodeList.Add('vsqrtps,1,1,1,XMMREG_MZ,4B32,,');
+ FOpCodeList.Add('vsqrtps,1,1,1,YMMREG_MZ,YMMRM,,');
+ FOpCodeList.Add('vsqrtps,1,1,1,YMMREG_MZ,8B32,,');
+ FOpCodeList.Add('vsqrtps,1,1,1,ZMMREG_MZ,MEM512,,');
+ FOpCodeList.Add('vsqrtps,1,1,1,ZMMREG_MZ,16B32,,');
+ FOpCodeList.Add('vsqrtps,1,1,1,ZMMREG_MZ,ZMMREG_ER,,');
+ FOpCodeList.Add('vsqrtsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vsqrtsd,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vsqrtss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vsqrtss,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vstmxcsr,1,1,0,MEM32,,,');
+ FOpCodeList.Add('vsubpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vsubpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vsubpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vsubpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vsubpd,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vsubpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vsubpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vsubps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vsubps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vsubps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vsubps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vsubps,1,1,1,ZMMREG_MZ,ZMMREG,MEM512,');
+ FOpCodeList.Add('vsubps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vsubps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMREG_ER,');
+ FOpCodeList.Add('vsubsd,1,1,1,XMMREG_MZ,XMMREG,MEM64,');
+ FOpCodeList.Add('vsubsd,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vsubss,1,1,1,XMMREG_MZ,XMMREG,XMMREG_ER,');
+ FOpCodeList.Add('vsubss,1,1,1,XMMREG_MZ,XMMREG,MEM32,');
+ FOpCodeList.Add('vtestpd,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vtestpd,1,1,0,YMMREG,YMMRM,,');
+ FOpCodeList.Add('vtestps,1,1,0,YMMREG,YMMRM,,');
+ FOpCodeList.Add('vtestps,1,1,0,XMMREG,XMMRM,,');
+ FOpCodeList.Add('vucomisd,1,1,1,XMMREG,MEM64,,');
+ FOpCodeList.Add('vucomisd,1,1,1,XMMREG,XMMREG_SAE,,');
+ FOpCodeList.Add('vucomiss,1,1,1,XMMREG,MEM32,,');
+ FOpCodeList.Add('vucomiss,1,1,1,XMMREG,XMMREG_SAE,,');
+ FOpCodeList.Add('vunpckhpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vunpckhpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vunpckhpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vunpckhpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vunpckhpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vunpckhpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vunpckhps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vunpckhps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vunpckhps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vunpckhps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vunpckhps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vunpckhps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vunpcklpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vunpcklpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vunpcklpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vunpcklpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vunpcklpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vunpcklpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vunpcklps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vunpcklps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vunpcklps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vunpcklps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vunpcklps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vunpcklps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vxorpd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vxorpd,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vxorpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vxorpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vxorpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vxorpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vxorps,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vxorps,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vxorps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vxorps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vxorps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vxorps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vzeroall,1,1,0,,,,');
+ FOpCodeList.Add('vzeroupper,1,1,0,,,,');
+ FOpCodeList.Add('andn,1,1,0,REG32,REG32,RM32,');
+ FOpCodeList.Add('andn,0,1,0,REG64,REG64,RM64,');
+ FOpCodeList.Add('bextr,1,1,0,REG32,RM32,REG32,');
+ FOpCodeList.Add('bextr,0,1,0,REG64,RM64,REG64,');
+ FOpCodeList.Add('rorx,1,1,0,REG32,RM32,IMM8,');
+ FOpCodeList.Add('rorx,0,1,0,REG64,RM64,IMM8,');
+ FOpCodeList.Add('sarx,1,1,0,REG32,RM32,REG32,');
+ FOpCodeList.Add('sarx,0,1,0,REG64,RM64,REG64,');
+ FOpCodeList.Add('shlx,1,1,0,REG32,RM32,REG32,');
+ FOpCodeList.Add('shlx,0,1,0,REG64,RM64,REG64,');
+ FOpCodeList.Add('shrx,1,1,0,REG32,RM32,REG32,');
+ FOpCodeList.Add('shrx,0,1,0,REG64,RM64,REG64,');
+ FOpCodeList.Add('vbroadcasti128,1,1,0,YMMREG,MEM128,,');
+ FOpCodeList.Add('vextracti128,1,1,0,XMMRM,YMMREG,IMM8,');
+ FOpCodeList.Add('vinserti128,1,1,0,YMMREG,YMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vpblendd,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vpblendd,1,1,0,XMMREG,XMMREG,XMMRM,IMM8');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,XMMREG_MZ,MEM8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,XMMREG_MZ,REG8,,');
+ 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,REG16,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,YMMREG_MZ,MEM8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,YMMREG_MZ,REG8,,');
+ 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,REG16,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ZMMREG_MZ,MEM8,,');
+ FOpCodeList.Add('vpbroadcastb,1,1,1,ZMMREG_MZ,REG8,,');
+ 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,REG16,,');
+ 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,XMMREG,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,XMMREG_MZ,REG32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,YMMREG_MZ,MEM32,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpbroadcastd,1,1,1,YMMREG_MZ,REG32,,');
+ 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('vpbroadcastq,1,1,1,XMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,XMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,XMMREG_MZ,REG64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,YMMREG_MZ,MEM64,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,YMMREG_MZ,XMMREG,,');
+ FOpCodeList.Add('vpbroadcastq,1,1,1,YMMREG_MZ,REG64,,');
+ 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,XMMREG,,');
+ 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,YMMREG_MZ,MEM16,');
+ FOpCodeList.Add('vpbroadcastw,1,1,1,YMMREG_MZ,XMMREG,,');
+ 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,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('vperm2i128,1,1,0,YMMREG,YMMREG,YMMRM,IMM8');
+ FOpCodeList.Add('vpermd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpermd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpermd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpermd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpermpd,1,1,1,YMMREG_MZ,MEM256,IMM8,');
+ FOpCodeList.Add('vpermpd,1,1,1,YMMREG_MZ,YMMREG,IMM8,');
+ FOpCodeList.Add('vpermpd,1,1,1,YMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpermpd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpermpd,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpermpd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpermpd,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpermpd,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpermpd,1,1,1,ZMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpermps,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpermps,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpermps,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpermps,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpermq,1,1,1,YMMREG_MZ,YMMRM,IMM8,');
+ FOpCodeList.Add('vpermq,1,1,1,YMMREG_MZ,4B32,IMM8,');
+ FOpCodeList.Add('vpermq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpermq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpermq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpermq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpermq,1,1,1,ZMMREG_MZ,ZMMRM,IMM8,');
+ FOpCodeList.Add('vpermq,1,1,1,ZMMREG_MZ,8B32,IMM8,');
+ FOpCodeList.Add('vpmaskmovd,1,1,0,XMMREG,XMMREG,MEM128,');
+ FOpCodeList.Add('vpmaskmovd,1,1,0,MEM128,XMMREG,XMMREG,');
+ FOpCodeList.Add('vpmaskmovd,1,1,0,YMMREG,YMMREG,MEM256,');
+ FOpCodeList.Add('vpmaskmovd,1,1,0,MEM256,YMMREG,YMMREG,');
+ FOpCodeList.Add('vpmaskmovq,1,1,0,XMMREG,XMMREG,MEM128,');
+ FOpCodeList.Add('vpmaskmovq,1,1,0,MEM128,XMMREG,XMMREG,');
+ FOpCodeList.Add('vpmaskmovq,1,1,0,MEM256,YMMREG,YMMREG,');
+ FOpCodeList.Add('vpmaskmovq,1,1,0,YMMREG,YMMREG,MEM256,');
+ FOpCodeList.Add('vpsllvd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllvd,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpsllvd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsllvd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpsllvd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsllvd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpsllvq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsllvq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpsllvq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsllvq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpsllvq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsllvq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+ FOpCodeList.Add('vpsravd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsravd,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpsravd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsravd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpsravd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsravd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpsrlvd,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlvd,1,1,1,XMMREG_MZ,XMMREG,4B32,');
+ FOpCodeList.Add('vpsrlvd,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsrlvd,1,1,1,YMMREG_MZ,YMMREG,8B32,');
+ FOpCodeList.Add('vpsrlvd,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsrlvd,1,1,1,ZMMREG_MZ,ZMMREG,16B32,');
+ FOpCodeList.Add('vpsrlvq,1,1,1,XMMREG_MZ,XMMREG,XMMRM,');
+ FOpCodeList.Add('vpsrlvq,1,1,1,XMMREG_MZ,XMMREG,2B64,');
+ FOpCodeList.Add('vpsrlvq,1,1,1,YMMREG_MZ,YMMREG,YMMRM,');
+ FOpCodeList.Add('vpsrlvq,1,1,1,YMMREG_MZ,YMMREG,4B32,');
+ FOpCodeList.Add('vpsrlvq,1,1,1,ZMMREG_MZ,ZMMREG,ZMMRM,');
+ FOpCodeList.Add('vpsrlvq,1,1,1,ZMMREG_MZ,ZMMREG,8B32,');
+
+ FOpCodeList.Add('vgatherdpd,1,1,0,XMMREG,XMEM32,XMMREG,');
+ FOpCodeList.Add('vgatherdpd,1,1,1,XMMREG_M,XMEM32,,');
+ FOpCodeList.Add('vgatherdpd,1,1,0,YMMREG,XMEM32,YMMREG,');
+ FOpCodeList.Add('vgatherdpd,1,1,1,YMMREG_M,XMEM32,,');
+ FOpCodeList.Add('vgatherdpd,1,1,1,ZMMREG_M,YMEM32,,');
+
+ FOpCodeList.Add('vgatherdps,1,1,0,XMMREG,XMEM32,XMMREG,');
+ FOpCodeList.Add('vgatherdps,1,1,1,XMMREG_M,XMEM32,,');
+ FOpCodeList.Add('vgatherdps,1,1,0,YMMREG,YMEM32,YMMREG,');
+ FOpCodeList.Add('vgatherdps,1,1,1,YMMREG_M,YMEM32,,');
+ FOpCodeList.Add('vgatherdps,1,1,1,ZMMREG_M,ZMEM32,,');
+ FOpCodeList.Add('vgatherqpd,1,1,0,XMMREG,XMEM64,XMMREG,');
+ FOpCodeList.Add('vgatherqpd,1,1,1,XMMREG_M,XMEM64,,');
+ FOpCodeList.Add('vgatherqpd,1,1,0,YMMREG,YMEM64,YMMREG,');
+ FOpCodeList.Add('vgatherqpd,1,1,1,YMMREG_M,YMEM64,,');
+ FOpCodeList.Add('vgatherqpd,1,1,1,ZMMREG_M,ZMEM32,,');
+ FOpCodeList.Add('vgatherqps,1,1,0,XMMREG,XMEM32,XMMREG,');
+ FOpCodeList.Add('vgatherqps,1,1,0,XMMREG,YMEM32,XMMREG,');
+ FOpCodeList.Add('vgatherqps,1,1,1,XMMREG_M,XMEM32,,');
+ FOpCodeList.Add('vgatherqps,1,1,1,XMMREG_M,YMEM32,,');
+ FOpCodeList.Add('vgatherqps,1,1,1,YMMREG_M,ZMEM32,,');
+ FOpCodeList.Add('vpgatherdd,1,1,0,XMMREG,XMEM32,XMMREG,');
+ FOpCodeList.Add('vpgatherdd,1,1,1,XMMREG_M,XMEM32,,');
+ FOpCodeList.Add('vpgatherdd,1,1,0,YMMREG,YMEM32,YMMREG,');
+ FOpCodeList.Add('vpgatherdd,1,1,1,YMMREG_M,YMEM32,,');
+ FOpCodeList.Add('vpgatherdd,1,1,1,ZMMREG_M,ZMEM32,,');
+ FOpCodeList.Add('vpgatherdq,1,1,0,XMMREG,XMEM64,XMMREG,');
+ FOpCodeList.Add('vpgatherdq,1,1,1,XMMREG_M,XMEM64,,');
+ FOpCodeList.Add('vpgatherdq,1,1,0,YMMREG,XMEM64,YMMREG,');
+ FOpCodeList.Add('vpgatherdq,1,1,1,YMMREG_M,XMEM64,,');
+ FOpCodeList.Add('vpgatherdq,1,1,1,ZMMREG_M,YMEM64,,');
+ FOpCodeList.Add('vpgatherqd,1,1,0,XMMREG,XMEM32,XMMREG,');
+ FOpCodeList.Add('vpgatherqd,1,1,0,XMMREG,YMEM32,XMMREG,');
+ FOpCodeList.Add('vpgatherqd,1,1,1,XMMREG_M,XMEM32,,');
+ FOpCodeList.Add('vpgatherqd,1,1,1,XMMREG_M,YMEM32,,');
+ FOpCodeList.Add('vpgatherqd,1,1,1,YMMREG_M,ZMEM32,,');
+ FOpCodeList.Add('vpgatherqq,1,1,0,XMMREG,XMEM64,XMMREG,');
+ FOpCodeList.Add('vpgatherqq,1,1,1,XMMREG_M,XMEM64,,');
+ FOpCodeList.Add('vpgatherqq,1,1,0,YMMREG,YMEM64,YMMREG,');
+ FOpCodeList.Add('vpgatherqq,1,1,1,YMMREG_M,YMEM64,,');
+ FOpCodeList.Add('vpgatherqq,1,1,1,ZMMREG_M,ZMEM64,,');
+ FOpCodeList.Add('vfmadd132pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd132pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmadd213pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd213pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmadd231pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd231pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmaddpd,1,1,0,XMMREG,XMMREG,XMMRM,XMMREG');
+ FOpCodeList.Add('vfmaddpd,1,1,0,XMMREG,XMMREG,XMMREG,XMMRM');
+ FOpCodeList.Add('vfmadd132ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd132ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmadd213ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd213ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmadd231ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd231ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmadd132sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd213sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd231sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd132ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd213ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmadd231ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmaddsub132pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmaddsub213pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmaddsub231pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmaddsub132ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmaddsub213ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmaddsub231ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsubadd132pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsubadd213pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsubadd231pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsubadd132ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsubadd213ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsubadd231ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsub132pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub132pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsub213pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub213pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsub231pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub231pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsub132ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub132ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsub213ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub213ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsub231ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub231ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfmsub132sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub213sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub231sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub132ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub213ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfmsub231ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd132pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd213pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd231pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd132ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd213ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd231ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmadd132sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd213sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd231sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd132ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd213ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmadd231ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub132pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub213pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub231pd,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub132ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub213ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub231ps,1,1,0,YMMREG,YMMREG,YMMRM,');
+ FOpCodeList.Add('vfnmsub132sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub213sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub231sd,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub132ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub213ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('vfnmsub231ss,1,1,0,XMMREG,XMMREG,XMMRM,');
+ FOpCodeList.Add('kaddb,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kaddd,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kaddq,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kaddw,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandb,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandd,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandnb,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandnd,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandnq,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandnw,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandq,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kandw,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kmovb,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kmovb,1,1,0,KREG,REG32,,');
+ FOpCodeList.Add('kmovb,1,1,0,REG32,KREG,,');
+ FOpCodeList.Add('kmovd,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kmovd,1,1,0,KREG,MEM32,,');
+ FOpCodeList.Add('kmovd,1,1,0,KREG,REG32,,');
+ FOpCodeList.Add('kmovd,1,1,0,MEM32,KREG,,');
+ FOpCodeList.Add('kmovd,1,1,0,REG32,KREG,,');
+ FOpCodeList.Add('kmovq,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kmovq,1,1,0,KREG,MEM64,,');
+ FOpCodeList.Add('kmovq,1,1,0,KREG,REG64,,');
+ FOpCodeList.Add('kmovq,1,1,0,MEM64,KREG,,');
+ FOpCodeList.Add('kmovq,1,1,0,REG64,KREG,,');
+ FOpCodeList.Add('kmovw,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kmovw,1,1,0,KREG,REG32,,');
+ FOpCodeList.Add('kmovw,1,1,0,REG32,KREG,,');
+ FOpCodeList.Add('knotb,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('knotd,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('knotq,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('knotw,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('korb,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kord,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('korq,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kortestb,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kortestd,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kortestq,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kortestw,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('korw,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kshiftlb,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('kshiftld,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('kshiftlq,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('kshiftlw,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('kshiftrb,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('kshiftrd,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('kshiftrq,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('kshiftrw,1,1,0,KREG,KREG,IMM8,');
+ FOpCodeList.Add('ktestb,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('ktestd,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('ktestq,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('ktestw,1,1,0,KREG,KREG,,');
+ FOpCodeList.Add('kunpckbw,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kunpckdq,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kunpckwd,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kxnorb,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kxnord,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kxnorq,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kxnorw,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kxorb,1,1,0,KREG,KREG,KREG,');
+ FOpCodeList.Add('kxord,1,1,0,KREG,KREG,KREG,');
+ 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('VGATHERQPD,1,1,XMMREG,XMEM64,XMMREG,');
FOpCodeList.Add('VGATHERQPD,1,1,YMMREG,YMEM64,YMMREG,');
@@ -834,10 +3813,11 @@ begin
FOpCodeList.Add('VPGATHERQQ,1,1,YMMREG,YMEM64,YMMREG,');
end;
-function TAVXTestGenerator.InternalMakeTestFiles(aX64: boolean; aDestPath, aFileExt: String;
+function TAVXTestGenerator.InternalMakeTestFiles(aX64, aAVX512, aSAE: boolean; aDestPath, aFileExt: String;
aOpCodeList, aHeaderList, aFooterList: TStringList): boolean;
var
i: integer;
+ sData: string;
sl: TStringList;
slAsm: TStringList;
LastOpCode: String;
@@ -873,9 +3853,9 @@ begin
sl.Clear;
sl.CommaText := aOpCodeList[i];
- while sl.Count < 7 do sl.Add('');
+ while sl.Count < 8 do sl.Add('');
- NewOpCode := sl[0];
+ NewOpCode := ansilowercase(sl[0]);
if NewOpCode <> '' then
begin
if NewOpCode <> LastOpCode then
@@ -891,17 +3871,18 @@ begin
else LastOpCode := NewOpCode;
end;
+
if (not(aX64) and (sl[1] = '1')) or // i386
(aX64 and (sl[2] = '1')) then // x86_64
begin
- if (sl[3] = '') and
- (sl[3] = '') and
- (sl[3] = '') and
- (sl[3] = '') then
+ if (sl[4] = '') and
+ (sl[5] = '') and
+ (sl[6] = '') and
+ (sl[7] = '') then
begin // Opcode with no Params, e.g. VZEROALL
slAsm.Add(' ' + sl[0]);
end
- else TAsmTestGenerator.CalcTestData(aX64, sl[0], sl[3], sl[4], sl[5], sl[6], slAsm);
+ else TAsmTestGenerator.CalcTestData(aX64, aAVX512 and (sl[3] = '1'), aSAE, sl[0], sl[4], sl[5], sl[6], sl[7], slAsm);
end;
end;
end;
@@ -920,7 +3901,7 @@ begin
end;
end;
-function TAVXTestGenerator.MakeTestFiles(aTyp: TTestFileTyp; aX64: boolean;
+function TAVXTestGenerator.MakeTestFiles(aTyp: TTestFileTyp; aX64, aAVX512, aSAE: boolean;
aDestPath: String): boolean;
var
slHeader: TStringList;
@@ -1032,7 +4013,7 @@ begin
end;
end;
- InternalMakeTestFiles(aX64, aDestPath, Fileext, FOpCodeList, slHeader, slFooter);
+ InternalMakeTestFiles(aX64, aAVX512, aSAE, aDestPath, Fileext, FOpCodeList, slHeader, slFooter);
finally
FreeAndNil(slFooter);
diff --git a/tests/utils/avx/avxtestgenerator.pp b/tests/utils/avx/avxtestgenerator.pp
index 81aa1efc05..bfe4c8d99e 100644
--- a/tests/utils/avx/avxtestgenerator.pp
+++ b/tests/utils/avx/avxtestgenerator.pp
@@ -45,15 +45,19 @@ begin
writeln('-f [fpc,nasm,fasm,fpcinc] outputformat');
writeln('-p [x8664] codegenerator for x86_64 platform');
writeln('-o destination path');
+ writeln('-z avx512');
writeln('');
end
else
begin
+ //TAsmTestGenerator.CalcTestInstFile;
+ //exit;
+
case OutputFormat of
- 'f': MakeTestFiles(tfFPC, x64, Path);
- 'F': MakeTestFiles(tfFasm, x64, Path);
- 'n': MakeTestFiles(tfNasm, x64, Path);
- 'I': MakeTestFiles(tfFPCInc, x64, Path);
+ 'f': MakeTestFiles(tfFPC, x64, AVX512, false, Path);
+ 'F': MakeTestFiles(tfFasm, x64, AVX512, false, Path);
+ 'n': MakeTestFiles(tfNasm, x64, AVX512, false, Path);
+ 'I': MakeTestFiles(tfFPCInc, x64, AVX512, false, Path);
end;
end;
finally
diff --git a/tests/utils/avx/options.pas b/tests/utils/avx/options.pas
index 183ca26104..c7f59f61fb 100644
--- a/tests/utils/avx/options.pas
+++ b/tests/utils/avx/options.pas
@@ -26,8 +26,11 @@ interface
type
+ { TOptions }
+
TOptions = class(TObject)
private
+ FAVX512: boolean;
FHelp: boolean;
FX64: boolean;
FOutputFormat: Char;
@@ -40,6 +43,7 @@ type
property Help: boolean read FHelp write FHelp;
property OutputFormat: Char read FOutputFormat write FOutputFormat;
property X64: boolean read FX64 write FX64;
+ property AVX512: boolean read FAVX512 write FAVX512;
property Path: string read FPath write FPath;
end;
@@ -53,6 +57,7 @@ constructor TOptions.Create;
begin
FHelp := false;
FX64 := false;
+ FAVX512 := false;
FOutputFormat := '?';
FPath := '';
end;
@@ -91,6 +96,7 @@ begin
Fx64 := true;
end
else IsInvalidParam := true;
+ 'z': FAVX512 := true;
'o': if sValue <> '' then
begin
FPath := IncludeTrailingBackslash(sValue);
diff --git a/tests/utils/avx/readme.txt b/tests/utils/avx/readme.txt
index a4fc62ad74..0750c7b1d0 100644
--- a/tests/utils/avx/readme.txt
+++ b/tests/utils/avx/readme.txt
@@ -2,6 +2,7 @@ create testfiles in shell (linux):
for i in `ls /tmp/avx/*.pp`; do /home/torsten/fpc/avx/ppcx64 -Fu/home/torsten/fpc/avx/rtl/units/x86_64-linux/ "$i"; done;
+***********************************************************************************************************
On windows, complete testing would look like:
i386:
@@ -29,19 +30,37 @@ for %a in (*.asm) do nasm -fwin64 %a
cd ..
avxtestfilecmp -mtmp\*.obj -dtmp -eexe -s
+***********************************************************************************************************
Linux x86-64:
+
mkdir tmp
fpc avxtestgenerator
fpc avxtestfilecmp
+
./avxtestgenerator -px8664 -ffpc -otmp
+# AVX-512: ./avxtestgenerator -px8664 -ffpc -otmp -z
+
./avxtestgenerator -px8664 -fnasm -otmp
+# AVX-512: ./avxtestgenerator -px8664 -fnasm -otmp -z
+
cd tmp
-echo *.pp | xargs -n 1 fpc -Px86_64 -v0i
-echo *.asm | xargs -n 1 nasm -fwin64
+
+# use GNU Parallel [1]
+# if not available:
+# echo *.pp | xargs -n 1 fpc -Px86_64 -v0i
+find . -name '*.pp' | parallel fpc -Px86_64 -v0i
+
+# use GNU Parallel [1]
+# if not available:
+# echo *.asm | xargs -n 1 nasm -fwin64
+find . -name '*.asm' | parallel nasm -fwin64
+
cd ..
./avxtestfilecmp -mtmp/*.o -dtmp -s
+***********************************************************************************************************
x86_64 testing by using self testing fpc executables:
+
avxtestgenerator -px8664 -ffpcinc -otmp
avxtestgenerator -px8664 -fnasm -otmp
cd tmp
@@ -88,3 +107,4 @@ VMOVUPD
VMOVUPS
+[1] O. Tange (2011): GNU Parallel - The Command-Line Power Tool, ;login: The USENIX Magazine, February 2011:42-47.