diff options
author | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2020-11-12 20:31:29 +0000 |
---|---|---|
committer | florian <florian@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2020-11-12 20:31:29 +0000 |
commit | 95614b48a86f3b25391a1dae6a61d915f98379e7 (patch) | |
tree | 7731aecc4f00c181ffd0d6065ac3f4c4a0cf5116 /compiler/x86_64 | |
parent | b0420cb2b6f5de9dcd479b6fcd10fbc8afdfdd7e (diff) | |
download | fpc-95614b48a86f3b25391a1dae6a61d915f98379e7.tar.gz |
-- Zusammenführen von r47033 bis r47401 in ».«:
C compiler/i386/i386nop.inc
U compiler/i386/i386tab.inc
U compiler/i386/i386atts.inc
U compiler/i386/i386att.inc
C compiler/i8086/i8086nop.inc
U compiler/i8086/i8086tab.inc
U compiler/i8086/i8086atts.inc
U compiler/i8086/i8086att.inc
U compiler/x86/x86ins.dat
C compiler/x86/rax86.pas
U compiler/x86/aasmcpu.pas
U compiler/x86/cpubase.pas
U compiler/x86/agx86att.pas
U compiler/x86/itcpugas.pas
U compiler/x86/rax86att.pas
C compiler/x86_64/x8664nop.inc
U compiler/x86_64/x8664tab.inc
U compiler/x86_64/x8664ats.inc
U compiler/x86_64/x8664att.inc
U compiler/utils/mkx86ins.pp
U tests/utils/avx/asmtestgenerator.pas
U tests/utils/avx/avxopcodes.pas
-- Aufzeichnung der Informationen für Zusammenführung von r47033 bis r47401 in ».«:
U .
Konfliktübersicht:
Textkonflikte: 4
Konfliktübersicht:
Textkonflikte: 4
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@47402 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'compiler/x86_64')
-rw-r--r-- | compiler/x86_64/x8664ats.inc | 22 | ||||
-rw-r--r-- | compiler/x86_64/x8664att.inc | 2 | ||||
-rw-r--r-- | compiler/x86_64/x8664nop.inc | 2 | ||||
-rw-r--r-- | compiler/x86_64/x8664tab.inc | 310 |
4 files changed, 245 insertions, 91 deletions
diff --git a/compiler/x86_64/x8664ats.inc b/compiler/x86_64/x8664ats.inc index 010ce8ff13..5a873783dc 100644 --- a/compiler/x86_64/x8664ats.inc +++ b/compiler/x86_64/x8664ats.inc @@ -777,8 +777,8 @@ attsufNONE, attsufNONE, attsufNONE, attsufNONE, -attsufMM, -attsufMM, +attsufMMX, +attsufMMX, attsufNONE, attsufNONE, attsufNONE, @@ -789,7 +789,7 @@ attsufINT, attsufINT, attsufNONE, attsufNONE, -attsufMM, +attsufMMX, attsufNONE, attsufNONE, attsufNONE, @@ -1197,14 +1197,17 @@ attsufNONE, attsufNONE, attsufNONE, attsufNONE, +attsufMMX, attsufNONE, attsufNONE, attsufNONE, attsufNONE, attsufNONE, +attsufMMX, attsufNONE, attsufNONE, attsufNONE, +attsufMMX, attsufNONE, attsufNONE, attsufNONE, @@ -1214,6 +1217,9 @@ attsufNONE, attsufNONE, attsufNONE, attsufNONE, +attsufMMX, +attsufINT, +attsufINT, attsufNONE, attsufNONE, attsufNONE, @@ -1231,14 +1237,8 @@ attsufNONE, attsufNONE, attsufNONE, attsufNONE, -attsufNONE, -attsufNONE, -attsufNONE, -attsufNONE, -attsufNONE, -attsufNONE, -attsufNONE, -attsufNONE, +attsufINT, +attsufINT, attsufNONE, attsufNONE, attsufNONE, diff --git a/compiler/x86_64/x8664att.inc b/compiler/x86_64/x8664att.inc index 3f6f71dc5e..ef7d250d6e 100644 --- a/compiler/x86_64/x8664att.inc +++ b/compiler/x86_64/x8664att.inc @@ -1197,7 +1197,7 @@ 'vcompresspd', 'vcompressps', 'vcvtpd2qq', -'vcvtpd2udq', +' vcvtpd2udq', 'vcvtpd2uqq', 'vcvtps2qq', 'vcvtps2udq', diff --git a/compiler/x86_64/x8664nop.inc b/compiler/x86_64/x8664nop.inc index 16c3d8ee81..7dbb9955ee 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 } -4214; +4236; diff --git a/compiler/x86_64/x8664tab.inc b/compiler/x86_64/x8664tab.inc index fe1ee77557..c21cdb2dc3 100644 --- a/compiler/x86_64/x8664tab.inc +++ b/compiler/x86_64/x8664tab.inc @@ -10734,7 +10734,7 @@ ( opcode : A_VCVTDQ2PD; ops : 2; - optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none); + optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none); code : #219#232#233#248#1#230#72; flags : [if_avx512] ), @@ -10797,6 +10797,13 @@ ( 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_xmmrm,ot_none,ot_none); code : #220#232#234#242#248#1#230#72; flags : [if_avx,if_sandybridge,if_tfv] @@ -10804,9 +10811,9 @@ ( opcode : A_VCVTPD2DQ; ops : 2; - optypes : (ot_xmmreg_mz,ot_ymmrm,ot_none,ot_none); + 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,if_tfv] + flags : [if_avx,if_sandybridge] ), ( opcode : A_VCVTPD2DQ; @@ -11133,7 +11140,7 @@ ( opcode : A_VCVTSI2SD; ops : 3; - optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none); + optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none); code : #220#232#242#248#1#42#61#80; flags : [if_avx,if_sandybridge,if_sd] ), @@ -11154,14 +11161,14 @@ ( opcode : A_VCVTSI2SD; ops : 3; - optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits64,ot_none); + optypes : (ot_xmmreg,ot_xmmreg_er,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_er,ot_reg32,ot_none); + optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none); code : #219#232#242#248#1#42#61#80; flags : [if_avx,if_sandybridge,if_sd] ), @@ -11561,7 +11568,7 @@ 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; + code : #232#241#242#250#1#23#65#22; flags : [if_avx512] ), ( @@ -15382,9 +15389,16 @@ ( opcode : A_VPSLLD; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#248#1#114#60#142#22; - flags : [if_avx,if_sandybridge,if_tfv] + flags : [if_avx,if_sandybridge] + ), + ( + opcode : A_VPSLLD; + ops : 3; + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none); + code : #232#241#248#1#114#60#142#22; + flags : [if_avx512,if_tfv] ), ( opcode : A_VPSLLD; @@ -15403,9 +15417,16 @@ ( opcode : A_VPSLLD; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#244#248#1#114#60#142#22; - flags : [if_avx2,if_tfv] + flags : [if_avx2] + ), + ( + opcode : A_VPSLLD; + ops : 3; + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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; @@ -15494,13 +15515,20 @@ ( opcode : A_VPSLLQ; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,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_xmmreg_mz,ot_memory or ot_bits128,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_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] @@ -15515,9 +15543,16 @@ ( opcode : A_VPSLLQ; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#234#241#242#244#248#1#115#60#142#22; - flags : [if_avx2,if_tfv] + flags : [if_avx2] + ), + ( + opcode : A_VPSLLQ; + ops : 3; + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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; @@ -15557,9 +15592,16 @@ ( opcode : A_VPSLLW; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#248#1#113#60#142#22; - flags : [if_avx,if_sandybridge,if_tfvm] + flags : [if_avx,if_sandybridge] + ), + ( + opcode : A_VPSLLW; + ops : 3; + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none); + code : #232#241#248#1#113#60#142#22; + flags : [if_avx512,if_tfvm] ), ( opcode : A_VPSLLW; @@ -15571,9 +15613,16 @@ ( opcode : A_VPSLLW; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#244#248#1#113#60#142#22; - flags : [if_avx2,if_tfvm] + flags : [if_avx2] + ), + ( + opcode : A_VPSLLW; + ops : 3; + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none); + code : #232#241#244#248#1#113#60#142#22; + flags : [if_avx512,if_tfvm] ), ( opcode : A_VPSLLW; @@ -15592,9 +15641,16 @@ ( opcode : A_VPSRAD; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#248#1#114#60#140#22; - flags : [if_avx,if_sandybridge,if_tfv] + flags : [if_avx,if_sandybridge] + ), + ( + opcode : A_VPSRAD; + ops : 3; + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none); + code : #232#241#248#1#114#60#140#22; + flags : [if_avx512,if_tfv] ), ( opcode : A_VPSRAD; @@ -15613,9 +15669,16 @@ ( opcode : A_VPSRAD; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#244#248#1#114#60#140#22; - flags : [if_avx2,if_tfv] + flags : [if_avx2] + ), + ( + opcode : A_VPSRAD; + ops : 3; + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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; @@ -15655,9 +15718,16 @@ ( opcode : A_VPSRAW; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#248#1#113#60#140#22; - flags : [if_avx,if_sandybridge,if_tfvm] + flags : [if_avx,if_sandybridge] + ), + ( + opcode : A_VPSRAW; + ops : 3; + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none); + code : #232#241#248#1#113#60#140#22; + flags : [if_avx512,if_tfvm] ), ( opcode : A_VPSRAW; @@ -15669,9 +15739,16 @@ ( opcode : A_VPSRAW; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#244#248#1#113#60#140#22; - flags : [if_avx2,if_tfvm] + flags : [if_avx2] + ), + ( + opcode : A_VPSRAW; + ops : 3; + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none); + code : #232#241#244#248#1#113#60#140#22; + flags : [if_avx512,if_tfvm] ), ( opcode : A_VPSRAW; @@ -15697,9 +15774,16 @@ ( opcode : A_VPSRLD; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#248#1#114#60#138#22; - flags : [if_avx,if_sandybridge,if_tfv] + flags : [if_avx,if_sandybridge] + ), + ( + opcode : A_VPSRLD; + ops : 3; + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none); + code : #232#241#248#1#114#60#138#22; + flags : [if_avx512,if_tfv] ), ( opcode : A_VPSRLD; @@ -15725,13 +15809,20 @@ ( opcode : A_VPSRLD; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,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_memory or ot_bits256,ot_immediate or ot_bits8,ot_none); + code : #232#241#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] @@ -15802,9 +15893,16 @@ ( opcode : A_VPSRLQ; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,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] + flags : [if_avx,if_sandybridge] + ), + ( + opcode : A_VPSRLQ; + ops : 3; + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,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; @@ -15816,9 +15914,16 @@ ( opcode : A_VPSRLQ; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#234#241#242#244#248#1#115#60#138#22; - flags : [if_avx2,if_tfv] + flags : [if_avx2] + ), + ( + opcode : A_VPSRLQ; + ops : 3; + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,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; @@ -15858,9 +15963,16 @@ ( opcode : A_VPSRLW; ops : 3; - optypes : (ot_xmmreg_mz,ot_xmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_xmmreg_mz,ot_xmmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#248#1#113#60#138#22; - flags : [if_avx,if_sandybridge,if_tfvm] + flags : [if_avx,if_sandybridge] + ), + ( + opcode : A_VPSRLW; + ops : 3; + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_immediate or ot_bits8,ot_none); + code : #232#241#248#1#113#60#138#22; + flags : [if_avx512,if_tfvm] ), ( opcode : A_VPSRLW; @@ -15872,9 +15984,16 @@ ( opcode : A_VPSRLW; ops : 3; - optypes : (ot_ymmreg_mz,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_ymmreg_mz,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#242#244#248#1#113#60#138#22; - flags : [if_avx2,if_tfvm] + flags : [if_avx2] + ), + ( + opcode : A_VPSRLW; + ops : 3; + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_immediate or ot_bits8,ot_none); + code : #232#241#244#248#1#113#60#138#22; + flags : [if_avx512,if_tfvm] ), ( opcode : A_VPSRLW; @@ -20206,7 +20325,7 @@ opcode : A_VFNMADD231SD; ops : 3; optypes : (ot_xmmreg,ot_xmmreg,ot_xmmrm,ot_none); - code : #223#241#242#243#249#1#189#61#80; + code : #223#232#234#241#242#243#249#1#189#61#80; flags : [if_fma,if_t1s] ), ( @@ -22501,7 +22620,7 @@ ( opcode : A_VCVTUDQ2PD; ops : 2; - optypes : (ot_zmmreg_mz,ot_ymmreg_er,ot_none,ot_none); + optypes : (ot_zmmreg_mz,ot_ymmreg,ot_none,ot_none); code : #219#232#233#248#1#122#72; flags : [if_avx512] ), @@ -22669,13 +22788,20 @@ ( opcode : A_VCVTUSI2SD; ops : 3; - optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits64,ot_none); + optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory 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_reg64,ot_none); + code : #220#232#234#248#1#123#61#80; + flags : [if_avx512] + ), + ( + 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] @@ -23138,6 +23264,20 @@ ( opcode : A_VFPCLASSPD; ops : 3; + optypes : (ot_kreg_m,ot_memory or ot_bits256,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_memory or ot_bits512,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_xmmrm,ot_immediate or ot_bits8,ot_none); code : #232#234#241#250#1#102#72#22; flags : [if_avx512,if_tfv] @@ -23152,9 +23292,9 @@ ( opcode : A_VFPCLASSPD; ops : 3; - optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_kreg_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#234#241#244#250#1#102#72#22; - flags : [if_avx512,if_tfv] + flags : [if_avx512] ), ( opcode : A_VFPCLASSPD; @@ -23166,9 +23306,9 @@ ( opcode : A_VFPCLASSPD; ops : 3; - optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_kreg_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none); code : #232#233#234#241#250#1#102#72#22; - flags : [if_avx512,if_tfv] + flags : [if_avx512] ), ( opcode : A_VFPCLASSPD; @@ -23180,6 +23320,20 @@ ( opcode : A_VFPCLASSPS; ops : 3; + optypes : (ot_kreg_m,ot_memory or ot_bits256,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_memory or ot_bits512,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_xmmrm,ot_immediate or ot_bits8,ot_none); code : #232#241#250#1#102#72#22; flags : [if_avx512,if_tfv] @@ -23194,9 +23348,9 @@ ( opcode : A_VFPCLASSPS; ops : 3; - optypes : (ot_kreg_m,ot_ymmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_kreg_m,ot_ymmreg,ot_immediate or ot_bits8,ot_none); code : #232#241#244#250#1#102#72#22; - flags : [if_avx512,if_tfv] + flags : [if_avx512] ), ( opcode : A_VFPCLASSPS; @@ -23208,9 +23362,9 @@ ( opcode : A_VFPCLASSPS; ops : 3; - optypes : (ot_kreg_m,ot_zmmrm,ot_immediate or ot_bits8,ot_none); + optypes : (ot_kreg_m,ot_zmmreg,ot_immediate or ot_bits8,ot_none); code : #232#233#241#250#1#102#72#22; - flags : [if_avx512,if_tfv] + flags : [if_avx512] ), ( opcode : A_VFPCLASSPS; @@ -28642,21 +28796,21 @@ ops : 2; optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none); code : #232#241#249#1#99#65; - flags : [if_avx512,if_t1s] + flags : [if_avx512,if_t1s8] ), ( opcode : A_VPCOMPRESSB; ops : 2; optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none); code : #232#241#244#249#1#99#65; - flags : [if_avx512,if_t1s] + flags : [if_avx512,if_t1s8] ), ( opcode : A_VPCOMPRESSB; ops : 2; optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none); code : #232#233#241#249#1#99#65; - flags : [if_avx512,if_t1s] + flags : [if_avx512,if_t1s8] ), ( opcode : A_VPCOMPRESSB; @@ -28684,21 +28838,21 @@ ops : 2; optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none); code : #232#234#241#249#1#99#65; - flags : [if_avx512,if_t1s] + flags : [if_avx512,if_t1s16] ), ( opcode : A_VPCOMPRESSW; ops : 2; optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none); code : #232#234#241#244#249#1#99#65; - flags : [if_avx512,if_t1s] + flags : [if_avx512,if_t1s16] ), ( opcode : A_VPCOMPRESSW; ops : 2; optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none); code : #232#233#234#241#249#1#99#65; - flags : [if_avx512,if_t1s] + flags : [if_avx512,if_t1s16] ), ( opcode : A_VPCOMPRESSW; @@ -28892,85 +29046,85 @@ ( opcode : A_VPEXPANDB; ops : 2; - optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none); - code : #232#241#249#1#98#65; - flags : [if_avx512,if_t1s] + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none); + code : #232#241#249#1#98#72; + flags : [if_avx512,if_t1s8] ), ( opcode : A_VPEXPANDB; ops : 2; - optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none); - code : #232#241#244#249#1#98#65; - flags : [if_avx512,if_t1s] + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none); + code : #232#241#244#249#1#98#72; + flags : [if_avx512,if_t1s8] ), ( opcode : A_VPEXPANDB; ops : 2; - optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none); - code : #232#233#241#249#1#98#65; - flags : [if_avx512,if_t1s] + optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none); + code : #232#233#241#249#1#98#72; + flags : [if_avx512,if_t1s8] ), ( opcode : A_VPEXPANDB; ops : 2; optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none); - code : #232#241#249#1#98#65; + code : #232#241#249#1#98#72; flags : [if_avx512] ), ( opcode : A_VPEXPANDB; ops : 2; optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none); - code : #232#241#244#249#1#98#65; + code : #232#241#244#249#1#98#72; flags : [if_avx512] ), ( opcode : A_VPEXPANDB; ops : 2; optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none); - code : #232#233#241#249#1#98#65; + code : #232#233#241#249#1#98#72; flags : [if_avx512] ), ( opcode : A_VPEXPANDW; ops : 2; - optypes : (ot_mem128_m,ot_xmmreg,ot_none,ot_none); - code : #232#234#241#249#1#98#65; - flags : [if_avx512,if_t1s] + optypes : (ot_xmmreg_mz,ot_memory or ot_bits128,ot_none,ot_none); + code : #232#234#241#249#1#98#72; + flags : [if_avx512,if_t1s16] ), ( opcode : A_VPEXPANDW; ops : 2; - optypes : (ot_mem256_m,ot_ymmreg,ot_none,ot_none); - code : #232#234#241#244#249#1#98#65; - flags : [if_avx512,if_t1s] + optypes : (ot_ymmreg_mz,ot_memory or ot_bits256,ot_none,ot_none); + code : #232#234#241#244#249#1#98#72; + flags : [if_avx512,if_t1s16] ), ( opcode : A_VPEXPANDW; ops : 2; - optypes : (ot_mem512_m,ot_zmmreg,ot_none,ot_none); - code : #232#233#234#241#249#1#98#65; - flags : [if_avx512,if_t1s] + optypes : (ot_zmmreg_mz,ot_memory or ot_bits512,ot_none,ot_none); + code : #232#233#234#241#249#1#98#72; + flags : [if_avx512,if_t1s16] ), ( opcode : A_VPEXPANDW; ops : 2; optypes : (ot_xmmreg_mz,ot_xmmreg,ot_none,ot_none); - code : #232#234#241#249#1#98#65; + code : #232#234#241#249#1#98#72; flags : [if_avx512] ), ( opcode : A_VPEXPANDW; ops : 2; optypes : (ot_ymmreg_mz,ot_ymmreg,ot_none,ot_none); - code : #232#234#241#244#249#1#98#65; + code : #232#234#241#244#249#1#98#72; flags : [if_avx512] ), ( opcode : A_VPEXPANDW; ops : 2; optypes : (ot_zmmreg_mz,ot_zmmreg,ot_none,ot_none); - code : #232#233#234#241#249#1#98#65; + code : #232#233#234#241#249#1#98#72; flags : [if_avx512] ), ( |