mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-22 00:29:33 +02:00
bugfix gnu-assembler platform i386 vcvtsi2sd,vcvtsi2ss,vcvtusi2sd,vcvtusi2ss
git-svn-id: branches/tg74/avx512-0037785@47441 -
This commit is contained in:
parent
897322868b
commit
d41579fb2b
@ -789,8 +789,8 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufMMS,
|
||||
attsufMMS,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufMMX,
|
||||
@ -1215,8 +1215,8 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufMMX,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufMMS,
|
||||
attsufMMS,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
|
@ -1,2 +1,2 @@
|
||||
{ don't edit, this file is generated from x86ins.dat }
|
||||
4165;
|
||||
4168;
|
||||
|
@ -10839,30 +10839,44 @@
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none);
|
||||
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]
|
||||
flags : [if_avx,if_sandybridge]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,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]
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
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_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none);
|
||||
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]
|
||||
flags : [if_avx,if_sandybridge]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,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]
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
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_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSS2SD;
|
||||
@ -22291,36 +22305,43 @@
|
||||
(
|
||||
opcode : A_VCVTUSI2SD;
|
||||
ops : 3;
|
||||
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;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
|
||||
code : #220#232#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);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits32,ot_none);
|
||||
code : #220#232#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
opcode : A_VCVTUSI2SD;
|
||||
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;
|
||||
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_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
|
||||
code : #219#232#248#1#123#61#80;
|
||||
flags : [if_avx512]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits32,ot_none);
|
||||
code : #219#232#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits64,ot_none);
|
||||
code : #219#232#234#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
|
@ -789,8 +789,8 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufMMS,
|
||||
attsufMMS,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufMMX,
|
||||
@ -1229,8 +1229,8 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufMMX,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufMMS,
|
||||
attsufMMS,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
|
@ -1,2 +1,2 @@
|
||||
{ don't edit, this file is generated from x86ins.dat }
|
||||
4197;
|
||||
4200;
|
||||
|
@ -10867,30 +10867,44 @@
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none);
|
||||
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]
|
||||
flags : [if_avx,if_sandybridge]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,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]
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
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_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none);
|
||||
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]
|
||||
flags : [if_avx,if_sandybridge]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_memory or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,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]
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
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_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSS2SD;
|
||||
@ -22515,36 +22529,43 @@
|
||||
(
|
||||
opcode : A_VCVTUSI2SD;
|
||||
ops : 3;
|
||||
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;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
|
||||
code : #220#232#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);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits32,ot_none);
|
||||
code : #220#232#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
opcode : A_VCVTUSI2SD;
|
||||
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;
|
||||
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_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
|
||||
code : #219#232#248#1#123#61#80;
|
||||
flags : [if_avx512]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits32,ot_none);
|
||||
code : #219#232#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits64,ot_none);
|
||||
code : #219#232#234#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
|
@ -325,6 +325,11 @@ begin
|
||||
dec(attopcode[0]);
|
||||
attsuffix:='attsufMMX';
|
||||
end;
|
||||
'S' :
|
||||
begin
|
||||
dec(attopcode[0]);
|
||||
attsuffix:='attsufMMS';
|
||||
end;
|
||||
'X' :
|
||||
begin
|
||||
dec(attopcode[0]);
|
||||
|
@ -29,7 +29,7 @@ interface
|
||||
cgbase,cpubase;
|
||||
|
||||
type
|
||||
TAttSuffix = (AttSufNONE,AttSufINT,AttSufFPU,AttSufFPUint,AttSufINTdual,AttSufMM,AttSufMMX);
|
||||
TAttSuffix = (AttSufNONE,AttSufINT,AttSufFPU,AttSufFPUint,AttSufINTdual,AttSufMM,AttSufMMX,AttSufMMS);
|
||||
|
||||
const
|
||||
{ include mnemonic strings }
|
||||
|
@ -239,7 +239,7 @@ begin
|
||||
;
|
||||
end;
|
||||
end
|
||||
else if gas_needsuffix[opcode] in [AttSufMM, AttSufMMX] then
|
||||
else if gas_needsuffix[opcode] in [AttSufMM, AttSufMMX, AttSufMMS] then
|
||||
begin
|
||||
if (opr.typ=OPR_Reference) then
|
||||
begin
|
||||
@ -1469,7 +1469,16 @@ procedure Tx86Instruction.SetInstructionOpsize;
|
||||
result := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end
|
||||
else if gas_needsuffix[opcode] = AttSufMMS then
|
||||
begin
|
||||
// spezial handling - use source operand
|
||||
if ops > 0 then
|
||||
begin
|
||||
opsize:=tx86operand(operands[1]).opsize;
|
||||
result := true;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
@ -1569,7 +1578,7 @@ begin
|
||||
//A_VCVTSI2SD,
|
||||
//A_VCVTUSI2SS,
|
||||
//A_VCVTUSI2SD:
|
||||
// iops:=tx86operand(operands[1]).opsize;
|
||||
// opsize:=tx86operand(operands[1]).opsize;
|
||||
//A_VFPCLASSPD,
|
||||
//A_VFPCLASSPS:
|
||||
// iops:=tx86operand(operands[2]).opsize;
|
||||
|
@ -1039,7 +1039,7 @@ Implementation
|
||||
actopsize:=att_sizefpusuffix[sufidx]
|
||||
else if gas_needsuffix[actopcode]=attsufFPUint then
|
||||
actopsize:=att_sizefpuintsuffix[sufidx]
|
||||
else if gas_needsuffix[actopcode]=attsufMM then
|
||||
else if gas_needsuffix[actopcode]in[attsufMM,attsufMMS] then
|
||||
actopsize:=att_sizemmsuffix[sufidx]
|
||||
else if gas_needsuffix[actopcode]=attsufMMX then
|
||||
actopsize:=att_sizemmXsuffix[sufidx]
|
||||
|
@ -4259,20 +4259,27 @@ xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x5A\75\120
|
||||
xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x5A\75\120 AVX,SANDYBRIDGE
|
||||
|
||||
|
||||
[VCVTSI2SD,vcvtsi2sdX]
|
||||
|
||||
; special handling - gas suffix "S" =>> instructions-opsize = source-operand
|
||||
[VCVTSI2SD,vcvtsi2sdS]
|
||||
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
|
||||
xmmreg,xmmreg,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,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_er,mem64 \334\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64,T1S
|
||||
xmmreg,xmmreg_er,reg32 \334\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE
|
||||
xmmreg,xmmreg_er,reg64 \334\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64
|
||||
xmmreg,xmmreg_er,mem64 \334\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,X86_64,T1S
|
||||
xmmreg,xmmreg_er,mem32 \334\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,T1S
|
||||
xmmreg,xmmreg_er,mem64 \334\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,T1S
|
||||
|
||||
|
||||
[VCVTSI2SS,vcvtsi2ssX]
|
||||
; special handling - gas suffix "S" =>> instructions-opsize = source-operand
|
||||
[VCVTSI2SS,vcvtsi2ssS]
|
||||
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
|
||||
xmmreg,xmmreg,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,reg32 \333\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE
|
||||
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
|
||||
xmmreg,xmmreg_er,mem32 \333\350\362\370\1\x2A\75\120 AVX,SANDYBRIDGE,T1S
|
||||
xmmreg,xmmreg_er,mem64 \333\350\352\362\363\370\1\x2A\75\120 AVX,SANDYBRIDGE,T1S
|
||||
|
||||
|
||||
[VCVTSS2SD]
|
||||
@ -7507,16 +7514,23 @@ ymmreg_mz,mem512 \334\350\351\352\370\1\x7A\110
|
||||
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,vcvtusi2sdX]
|
||||
(Ch_All)
|
||||
xmmreg,xmmreg_er,mem64 \334\350\352\370\1\x7B\75\120 AVX512,T1S
|
||||
xmmreg,xmmreg_er,reg64 \334\350\352\370\1\x7B\75\120 AVX512
|
||||
xmmreg,xmmreg_er,rm32 \334\350\370\1\x7B\75\120 AVX512,T1S
|
||||
|
||||
[VCVTUSI2SS,vcvtusi2ssX]
|
||||
; special handling - gas suffix "S" =>> instructions-opsize = source-operand
|
||||
[VCVTUSI2SD,vcvtusi2sdS]
|
||||
(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
|
||||
xmmreg,xmmreg_er,reg32 \334\350\370\1\x7B\75\120 AVX512
|
||||
xmmreg,xmmreg_er,reg64 \334\350\352\370\1\x7B\75\120 AVX512,X86_64
|
||||
xmmreg,xmmreg_er,mem32 \334\350\370\1\x7B\75\120 AVX512,T1S
|
||||
xmmreg,xmmreg_er,mem64 \334\350\352\370\1\x7B\75\120 AVX512,T1S
|
||||
|
||||
|
||||
; special handling - gas suffix "S" =>> instructions-opsize = source-operand
|
||||
[VCVTUSI2SS,vcvtusi2ssS]
|
||||
(Ch_All)
|
||||
xmmreg,xmmreg_er,reg32 \333\350\370\1\x7B\75\120 AVX512
|
||||
xmmreg,xmmreg_er,reg64 \333\350\352\370\1\x7B\75\120 AVX512,X86_64
|
||||
xmmreg,xmmreg_er,mem32 \333\350\370\1\x7B\75\120 AVX512,T1S
|
||||
xmmreg,xmmreg_er,mem64 \333\350\352\370\1\x7B\75\120 AVX512,T1S
|
||||
|
||||
[VDBPSADBW]
|
||||
(Ch_All)
|
||||
|
@ -785,8 +785,8 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufMMS,
|
||||
attsufMMS,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufMMX,
|
||||
@ -1211,8 +1211,8 @@ attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufMMX,
|
||||
attsufINT,
|
||||
attsufINT,
|
||||
attsufMMS,
|
||||
attsufMMS,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
attsufNONE,
|
||||
|
@ -1,2 +1,2 @@
|
||||
{ don't edit, this file is generated from x86ins.dat }
|
||||
4229;
|
||||
4232;
|
||||
|
@ -11140,16 +11140,9 @@
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none);
|
||||
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]
|
||||
flags : [if_avx,if_sandybridge]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
@ -11158,26 +11151,26 @@
|
||||
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_er,ot_memory or ot_bits32,ot_none);
|
||||
code : #220#232#242#248#1#42#61#80;
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SD;
|
||||
ops : 3;
|
||||
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]
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg,ot_reg32,ot_none);
|
||||
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_memory or ot_bits32,ot_none);
|
||||
code : #219#232#242#248#1#42#61#80;
|
||||
flags : [if_avx,if_sandybridge,if_sd,if_t1s]
|
||||
flags : [if_avx,if_sandybridge]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSI2SS;
|
||||
@ -11186,12 +11179,19 @@
|
||||
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_bits32,ot_none);
|
||||
code : #219#232#242#248#1#42#61#80;
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
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]
|
||||
flags : [if_avx,if_sandybridge,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTSS2SD;
|
||||
@ -22739,36 +22739,57 @@
|
||||
(
|
||||
opcode : A_VCVTUSI2SD;
|
||||
ops : 3;
|
||||
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]
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
|
||||
code : #220#232#248#1#123#61#80;
|
||||
flags : [if_avx512]
|
||||
),
|
||||
(
|
||||
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]
|
||||
flags : [if_avx512,if_x86_64]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SD;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits32,ot_none);
|
||||
code : #220#232#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
opcode : A_VCVTUSI2SD;
|
||||
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;
|
||||
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_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_rm_gpr or ot_bits32,ot_none);
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg32,ot_none);
|
||||
code : #219#232#248#1#123#61#80;
|
||||
flags : [if_avx512]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_reg64,ot_none);
|
||||
code : #219#232#234#248#1#123#61#80;
|
||||
flags : [if_avx512,if_x86_64]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits32,ot_none);
|
||||
code : #219#232#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
opcode : A_VCVTUSI2SS;
|
||||
ops : 3;
|
||||
optypes : (ot_xmmreg,ot_xmmreg_er,ot_memory or ot_bits64,ot_none);
|
||||
code : #219#232#234#248#1#123#61#80;
|
||||
flags : [if_avx512,if_t1s]
|
||||
),
|
||||
(
|
||||
|
@ -1923,10 +1923,14 @@ begin
|
||||
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('vcvtusi2sd,1,1,1,xmmreg,xmmreg_er,reg32,');
|
||||
FOpCodeList.Add('vcvtusi2sd,1,1,1,xmmreg,xmmreg_er,mem32,');
|
||||
FOpCodeList.Add('vcvtusi2sd,0,1,1,xmmreg,xmmreg_er,reg64,');
|
||||
FOpCodeList.Add('vcvtusi2sd,0,1,1,xmmreg,xmmreg_er,mem64,');
|
||||
FOpCodeList.Add('vcvtusi2ss,1,1,1,xmmreg,xmmreg_er,reg32,');
|
||||
FOpCodeList.Add('vcvtusi2ss,1,1,1,xmmreg,xmmreg_er,mem32,');
|
||||
FOpCodeList.Add('vcvtusi2ss,0,1,1,xmmreg,xmmreg_er,reg64,');
|
||||
FOpCodeList.Add('vcvtusi2ss,0,1,1,xmmreg,xmmreg_er,mem64,');
|
||||
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');
|
||||
|
Loading…
Reference in New Issue
Block a user