bugfix 35700 xmmrm - zmmrm, mem32/64

git-svn-id: branches/tg74/avx512merge@42956 -
This commit is contained in:
tg74 2019-09-08 19:13:42 +00:00
parent 11c46f9345
commit df199fbe23
3 changed files with 181 additions and 186 deletions

View File

@ -413,7 +413,6 @@ interface
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 }
IF_SQ, { unsized operands can't be nonqword }
{ unsized argument spec }
{ please keep these in order and in sync with IF_ARMASK }
@ -515,7 +514,12 @@ interface
IF_TMEM128,
IF_THV,
IF_THVM,
IF_TOVM
IF_TOVM,
{ sse/avx scalare memrefsize }
IF_SCL32,
IF_SCL64
);
tinsflags=set of tinsflag;
@ -4949,6 +4953,7 @@ implementation
RegBCSTZMMSizeMask := 0;
ExistsMemRef := false;
while (insentry^.opcode=AsmOp) do
begin
MRefInfo := msiUnknown;
@ -5027,7 +5032,10 @@ implementation
begin
inc(actMemCount);
actMemSize:=actMemSize or (insentry^.optypes[j] and (OT_SIZE_MASK OR OT_VECTORBCST));
if IF_SCL32 in insentry^.Flags then actMemSize := actMemSize or OT_BITS32
else if IF_SCL64 in insentry^.Flags then actMemSize := actMemSize or OT_BITS64
else actMemSize:=actMemSize or (insentry^.optypes[j] and (OT_SIZE_MASK OR OT_VECTORBCST));
if (insentry^.optypes[j] and OT_REGMEM) = OT_REGMEM then
begin
actRegMemTypes := actRegMemTypes or insentry^.optypes[j];
@ -5138,11 +5146,15 @@ implementation
0: ; // nothing todo
1: begin
MRefInfo := msiUnknown;
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;
if (insentry^.Flags * [IF_SCL32, IF_SCL64] = []) then
begin
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;
end;
case actMemSize of

View File

@ -736,7 +736,25 @@ begin
;
end;
if memopsize = 0 then memopsize := topsize2memsize[tx86operand(operands[i]).opsize];
//if memopsize = 0 then memopsize := topsize2memsize[tx86operand(operands[i]).opsize];
if memopsize = 0 then
begin
{$ifdef i386}
{ 64-bit operands are allowed for SSE and AVX instructions, so
go by the byte size instead for these families of opcodes }
if (MemRefInfo(opcode).ExistsSSEAVX) then
begin
memopsize := tx86operand(operands[i]).typesize * 8;
if tx86operand(operands[i]).typesize = 8 then
{ Will be S_L otherwise and won't be corrected in time }
tx86operand(operands[i]).opsize := S_Q;
end
else
{$endif i386}
memopsize := topsize2memsize[tx86operand(operands[i]).opsize];
end;
if (memopsize > 0) and
(memrefsize > 0) then
@ -758,30 +776,32 @@ begin
std_op2str[opcode],
ToStr(memoffset));
end
else if (memopsize < (memrefsize + memoffset * 8)) then
else if ((tx86operand(operands[i]).hastype) and (memopsize < memrefsize)) or
(memopsize < (memrefsize + memoffset * 8)) then
begin
if memoffset = 0 then
if memopsize < memrefsize then
begin
Message3(asmr_w_check_mem_operand_size3,
std_op2str[opcode],
ToStr(memopsize),
ToStr(memrefsize)
);
end
else
begin
Message4(asmr_w_check_mem_operand_size_offset,
std_op2str[opcode],
ToStr(memopsize),
ToStr(memrefsize),
ToStr(memoffset)
);
if memoffset = 0 then
begin
Message3(asmr_w_check_mem_operand_size3,
std_op2str[opcode],
ToStr(memopsize),
ToStr(memrefsize)
);
end
else
begin
Message4(asmr_w_check_mem_operand_size_offset,
std_op2str[opcode],
ToStr(memopsize),
ToStr(memrefsize),
ToStr(memoffset)
);
end;
end;
end;
end;
end;
end;
end;
end;
@ -1869,14 +1889,13 @@ begin
asize:=OT_BITS32;
OS_64,OS_S64:
begin
{ Only FPU operations know about 64bit values, for all
integer operations it is seen as 32bit
{ Only FPU and SSE/AVX operations know about 64bit
values, for all integer operations it is seen as 32bit
this applies only to i386, see tw16622}
this applies only to i386, see tw16622}
if gas_needsuffix[opcode] in [attsufFPU,attsufFPUint] then
asize:=OT_BITS64
else if MemRefInfo(opcode).ExistsSSEAVX then asize:=OT_BITS64
if (gas_needsuffix[opcode] in [attsufFPU,attsufFPUint]) or (MemRefInfo(opcode).ExistsSSEAVX) then
asize:=OT_BITS64
{$ifdef i386}
else
asize:=OT_BITS32

View File

@ -2239,7 +2239,7 @@ xmmreg,xmmrm \331\2\x0F\x58\110 KATMAI,SSE
[ADDSS]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \333\2\x0F\x58\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x58\110 KATMAI,SSE,SCL32
[ANDNPS]
(Ch_Mop2, Ch_Rop1)
@ -2255,7 +2255,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x00 KATMAI,SSE
[CMPEQSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x00 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x00 KATMAI,SSE,SCL32
[CMPLEPS]
(Ch_All)
@ -2263,7 +2263,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x02 KATMAI,SSE
[CMPLESS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x02 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x02 KATMAI,SSE,SCL32
[CMPLTPS]
(Ch_All)
@ -2271,7 +2271,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x01 KATMAI,SSE
[CMPLTSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x01 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x01 KATMAI,SSE,SCL32
[CMPNEQPS]
(Ch_All)
@ -2279,7 +2279,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x04 KATMAI,SSE
[CMPNEQSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x04 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x04 KATMAI,SSE,SCL32
[CMPNLEPS]
(Ch_All)
@ -2287,7 +2287,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x06 KATMAI,SSE
[CMPNLESS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x06 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x06 KATMAI,SSE,SCL32
[CMPNLTPS]
(Ch_All)
@ -2295,7 +2295,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x05 KATMAI,SSE
[CMPNLTSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x05 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x05 KATMAI,SSE,SCL32
[CMPORDPS]
(Ch_All)
@ -2303,7 +2303,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x07 KATMAI,SSE
[CMPORDSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x07 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x07 KATMAI,SSE,SCL32
[CMPUNORDPS]
(Ch_All)
@ -2311,7 +2311,7 @@ xmmreg,xmmrm \331\2\x0F\xC2\110\1\x03 KATMAI,SSE
[CMPUNORDSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x03 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\xC2\110\1\x03 KATMAI,SSE,SCL32
;
; CMPPS/CMPSS must come after the specific ops; that way the disassembler will find the
@ -2324,11 +2324,11 @@ xmmreg,xmmrm,imm \331\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2
[CMPSS]
(Ch_All)
xmmreg,xmmrm,imm \333\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2
xmmreg,xmmrm,imm \333\2\x0F\xC2\110\22 KATMAI,SSE,SB,AR2,SCL32
[COMISS]
(Ch_Rop1, Ch_Rop2, Ch_WFlags)
xmmreg,xmmrm \2\x0F\x2F\110 KATMAI,SSE
xmmreg,xmmrm \2\x0F\x2F\110 KATMAI,SSE,SCL32
[CVTPI2PS]
(Ch_Wop2, Ch_Rop1)
@ -2365,7 +2365,7 @@ xmmreg,xmmrm \331\2\x0F\x5E\110 KATMAI,SSE
[DIVSS]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \333\2\x0F\x5E\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x5E\110 KATMAI,SSE,SCL32
[LDMXCSR]
(Ch_All)
@ -2377,7 +2377,7 @@ xmmreg,xmmrm \331\2\x0F\x5F\110 KATMAI,SSE
[MAXSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\x5F\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x5F\110 KATMAI,SSE,SCL32
[MINPS]
(Ch_All)
@ -2385,7 +2385,7 @@ xmmreg,xmmrm \331\2\x0F\x5D\110 KATMAI,SSE
[MINSS]
(Ch_All)
xmmreg,xmmrm \333\2\x0F\x5D\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x5D\110 KATMAI,SSE,SCL32
[MOVAPS]
(Ch_ROp1, Ch_WOp2)
@ -2436,7 +2436,7 @@ xmmreg,xmmrm \2\x0F\x59\110 KATMAI,SSE
[MULSS]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \333\2\x0F\x59\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x59\110 KATMAI,SSE,SCL32
[ORPS]
(Ch_Mop2, Ch_Rop1)
@ -2448,7 +2448,7 @@ xmmreg,xmmrm \331\2\x0F\x53\110 KATMAI,SSE
[RCPSS]
(Ch_Wop2, Ch_Rop1)
xmmreg,xmmrm \333\2\x0F\x53\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x53\110 KATMAI,SSE,SCL32
[RSQRTPS]
(Ch_Wop2, Ch_Rop1)
@ -2456,7 +2456,7 @@ xmmreg,xmmrm \331\2\x0F\x52\110 KATMAI,SSE
[RSQRTSS]
(Ch_Wop2, Ch_Rop1)
xmmreg,xmmrm \333\2\x0F\x52\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x52\110 KATMAI,SSE,SCL32
[SHUFPS]
(Ch_Mop3, Ch_Rop2)
@ -2468,7 +2468,7 @@ xmmreg,xmmrm \331\2\x0F\x51\110 KATMAI,SSE
[SQRTSS]
(Ch_Wop2, Ch_Rop1)
xmmreg,xmmrm \333\2\x0F\x51\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x51\110 KATMAI,SSE,SCL32
[STMXCSR]
(Ch_All)
@ -2480,11 +2480,11 @@ xmmreg,xmmrm \331\2\x0F\x5C\110 KATMAI,SSE
[SUBSS]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \333\2\x0F\x5C\110 KATMAI,SSE
xmmreg,xmmrm \333\2\x0F\x5C\110 KATMAI,SSE,SCL32
[UCOMISS]
(Ch_Rop1, Ch_Rop2, Ch_WZeroFlag, Ch_WParityFlag, Ch_WCarryFlag, Ch_W0OverflowFlag, Ch_W0SignFlag, Ch_W0AuxiliaryFlag)
xmmreg,xmmrm \2\x0F\x2E\110 KATMAI,SSE
xmmreg,xmmrm \2\x0F\x2E\110 KATMAI,SSE,SCL32
[UNPCKHPS]
(Ch_Mop2, Ch_Rop1)
@ -2747,7 +2747,7 @@ xmmreg,xmmrm \361\2\x0F\x58\110 WILLAMETTE,SSE2,SM
[ADDSD]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \334\2\x0F\x58\110 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\x58\110 WILLAMETTE,SSE2,SCL64
[ANDNPD]
(Ch_Mop2, Ch_Rop1)
@ -2764,7 +2764,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2,SM
; note: no SM flag on CMPxxSD, they use 64-bit memory location, not 128-bit
[CMPEQSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x00 WILLAMETTE,SSE2,SCL64
[CMPLEPD]
(Ch_All)
@ -2772,7 +2772,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2,SM
[CMPLESD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x02 WILLAMETTE,SSE2,SCL64
[CMPLTPD]
(Ch_All)
@ -2780,7 +2780,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2,SM
[CMPLTSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x01 WILLAMETTE,SSE2,SCL64
[CMPNEQPD]
(Ch_All)
@ -2788,7 +2788,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2,SM
[CMPNEQSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x04 WILLAMETTE,SSE2,SCL64
[CMPNLEPD]
(Ch_All)
@ -2796,7 +2796,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2,SM
[CMPNLESD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x06 WILLAMETTE,SSE2,SCL64
[CMPNLTPD]
(Ch_All)
@ -2804,7 +2804,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2,SM
[CMPNLTSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x05 WILLAMETTE,SSE2,SCL64
[CMPORDPD]
(Ch_All)
@ -2812,7 +2812,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2,SM
[CMPORDSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x07 WILLAMETTE,SSE2,SCL64
[CMPUNORDPD]
(Ch_All)
@ -2820,7 +2820,7 @@ xmmreg,xmmrm \361\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2,SM
[CMPUNORDSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\xC2\110\1\x03 WILLAMETTE,SSE2,SCL64
; CMPPD/CMPSD must come after the specific ops; that way the disassembler will find the
; specific ops first and only disassemble illegal ones as cmppd/cmpsd.
@ -2830,7 +2830,7 @@ xmmreg,xmmrm,imm \361\2\x0F\xC2\110\26 WILLAMETTE,SSE2,SM2,SB,A
[COMISD]
(Ch_Rop1, Ch_Rop2, Ch_WFlags)
xmmreg,xmmrm \361\2\x0F\x2F\110 WILLAMETTE,SSE2
xmmreg,xmmrm \361\2\x0F\x2F\110 WILLAMETTE,SSE2,SCL64
[CVTDQ2PD]
(Ch_Wop2, Ch_Rop1)
@ -2911,7 +2911,7 @@ xmmreg,xmmrm \361\2\x0F\x5E\110 WILLAMETTE,SSE2,SM
[DIVSD]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \334\2\x0F\x5E\110 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\x5E\110 WILLAMETTE,SSE2,SCL64
[MAXPD]
(Ch_All)
@ -2919,7 +2919,7 @@ xmmreg,xmmrm \361\2\x0F\x5F\110 WILLAMETTE,SSE2,SM
[MAXSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\x5F\110 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\x5F\110 WILLAMETTE,SSE2,SCL64
[MINPD]
(Ch_All)
@ -2927,7 +2927,7 @@ xmmreg,xmmrm \361\2\x0F\x5D\110 WILLAMETTE,SSE2,SM
[MINSD]
(Ch_All)
xmmreg,xmmrm \334\2\x0F\x5D\110 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\x5D\110 WILLAMETTE,SSE2,SCL64
[MOVAPD]
(Ch_ROp1, Ch_WOp2)
@ -2959,7 +2959,7 @@ xmmreg,xmmrm \361\2\x0F\x59\110 WILLAMETTE,SSE2,SM
[MULSD]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \334\2\x0F\x59\110 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\x59\110 WILLAMETTE,SSE2,SCL64
[ORPD]
(Ch_Mop2, Ch_Rop1)
@ -2975,7 +2975,7 @@ xmmreg,xmmrm \361\2\x0F\x51\110 WILLAMETTE,SSE2,SM
[SQRTSD]
(Ch_Wop2, Ch_Rop1)
xmmreg,xmmrm \334\2\x0F\x51\110 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\x51\110 WILLAMETTE,SSE2,SCL64
[SUBPD]
@ -2984,11 +2984,11 @@ xmmreg,xmmrm \361\2\x0F\x5C\110 WILLAMETTE,SSE2,SM
[SUBSD]
(Ch_Mop2, Ch_Rop1)
xmmreg,xmmrm \334\2\x0F\x5C\110 WILLAMETTE,SSE2
xmmreg,xmmrm \334\2\x0F\x5C\110 WILLAMETTE,SSE2,SCL64
[UCOMISD]
(Ch_Rop1, Ch_Rop2, Ch_WZeroFlag, Ch_WParityFlag, Ch_WCarryFlag, Ch_W0OverflowFlag, Ch_W0SignFlag, Ch_W0AuxiliaryFlag)
xmmreg,xmmrm \361\2\x0F\x2E\110 WILLAMETTE,SSE2
xmmreg,xmmrm \361\2\x0F\x2E\110 WILLAMETTE,SSE2,SCL64
[UNPCKHPD]
(Ch_All)
@ -3190,7 +3190,7 @@ mem,xmmreg \333\2\x0F\x2B\101 SSE4,SD
[MOVNTSD]
(Ch_All)
mem,xmmreg \334\325\2\x0F\x2B\101 SSE4 ;,SQ
mem,xmmreg \334\325\2\x0F\x2B\101 SSE4,SCL64 ;,SQ
[INSERTQ]
(Ch_All)
@ -3488,11 +3488,11 @@ xmmreg,xmmrm,imm \361\3\x0F\x3A\x09\110\26 SSE41,SM2,SB,AR2
[ROUNDSS]
(Ch_Wop2, Ch_Rop1)
xmmreg,xmmrm,imm \361\3\x0F\x3A\x0A\110\26 SSE41,SM2,SB,AR2
xmmreg,xmmrm,imm \361\3\x0F\x3A\x0A\110\26 SSE41,SM2,SB,AR2,SCL32
[ROUNDSD]
(Ch_Wop2, Ch_Rop1)
xmmreg,xmmrm,imm \361\3\x0F\x3A\x0B\110\26 SSE41,SM2,SB,AR2
xmmreg,xmmrm,imm \361\3\x0F\x3A\x0B\110\26 SSE41,SM2,SB,AR2,SCL64
;*******************************************************************************
;**********SSE4.2***************************************************************
@ -3627,7 +3627,7 @@ zmmreg_mz,zmmreg,bmem32 \350\351\370\1\x58\75\120 AV
[VADDSD]
(Ch_Wop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x58\75\120 AVX,SANDYBRIDGE,T1S
xmmreg_mz,xmmreg,mem64 \334\350\352\362\370\1\x58\75\120 AVX,SANDYBRIDGE,T1S,SCL64
xmmreg_mz,xmmreg,xmmreg_er \334\350\352\362\370\1\x58\75\120 AVX,SANDYBRIDGE
@ -4170,25 +4170,25 @@ zmmreg_mz,zmmreg_er \350\351\370\1\x5B\110
[VCVTPD2DQ,vcvtpd2dqM]
(Ch_Wop2, Ch_Rop1)
xmmreg_mz,mem128 \334\350\352\362\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,mem256 \334\350\352\362\364\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,xmmreg \334\350\352\362\370\1\xE6\110 AVX,SANDYBRIDGE
xmmreg_mz,xmmrm \334\350\352\362\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,ymmrm \334\350\352\362\364\370\1\xE6\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,bmem64 \334\350\352\370\1\xE6\110 AVX512,BCST2,TFV
xmmreg_mz,bmem64 \334\350\352\364\370\1\xE6\110 AVX512,BCST4,TFV
xmmreg_mz,ymmreg \334\350\352\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
ymmreg_mz,mem512 \334\350\351\352\370\1\xE6\110 AVX512,TFV
ymmreg_mz,bmem64 \334\350\351\352\370\1\xE6\110 AVX512,BCST8,TFV
ymmreg_mz,zmmreg_er \334\350\351\352\370\1\xE6\110 AVX512
; VCVTPD2PS xmmreg_mz,mem256 must come first - map MemRefSize 256bits correct
; map all other MemrefSize (without broasdcast MemRef) to xmmreg, xmmrm
[VCVTPD2PS,vcvtpd2psM]
(Ch_Wop2, Ch_Rop1)
xmmreg_mz,mem128 \350\352\361\362\370\1\x5A\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,mem256 \350\352\361\362\364\370\1\x5A\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,xmmreg \350\352\361\362\370\1\x5A\110 AVX,SANDYBRIDGE
xmmreg_mz,ymmreg \350\352\361\362\364\370\1\x5A\110 AVX,SANDYBRIDGE
xmmreg_mz,xmmrm \350\352\361\362\370\1\x5A\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,bmem64 \350\352\361\370\1\x5A\110 AVX512,BCST2,TFV
xmmreg_mz,bmem64 \350\352\361\364\370\1\x5A\110 AVX512,BCST4,TFV
xmmreg_mz,ymmreg \350\352\361\362\364\370\1\x5A\110 AVX,SANDYBRIDGE
ymmreg_mz,mem512 \350\351\352\361\370\1\x5A\110 AVX512,TFV
ymmreg_mz,bmem64 \350\351\352\361\370\1\x5A\110 AVX512,BCST8,TFV
ymmreg_mz,zmmreg_er \350\351\352\361\370\1\x5A\110 AVX512
@ -4205,11 +4205,9 @@ zmmreg_mz,ymmreg_sae \350\351\361\371\1\x13\110
[VCVTPS2DQ]
(Ch_Wop2, Ch_Rop1)
xmmreg_mz,mem128 \350\361\362\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,xmmreg \350\361\362\370\1\x5B\110 AVX,SANDYBRIDGE
xmmreg_mz,xmmrm \350\361\362\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
ymmreg_mz,ymmrm \350\361\362\364\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
xmmreg_mz,bmem32 \350\361\370\1\x5B\110 AVX512,TFV
ymmreg_mz,mem256 \350\361\362\364\370\1\x5B\110 AVX,SANDYBRIDGE,TFV
ymmreg_mz,ymmreg \350\361\362\364\370\1\x5B\110 AVX,SANDYBRIDGE
ymmreg_mz,bmem32 \350\361\364\370\1\x5B\110 AVX512,TFV
zmmreg_mz,mem512 \350\351\361\370\1\x5B\110 AVX512,TFV
zmmreg_mz,bmem32 \350\351\361\370\1\x5B\110 AVX512,TFV
@ -4221,8 +4219,7 @@ zmmreg_mz,zmmreg_er \350\351\361\370\1\x5B\110
xmmreg_mz,mem64 \350\362\370\1\x5A\110 AVX,SANDYBRIDGE,THV
xmmreg_mz,xmmreg \350\362\370\1\x5A\110 AVX,SANDYBRIDGE
xmmreg_mz,bmem32 \350\370\1\x5A\110 AVX512,BCST2,THV
ymmreg_mz,mem128 \350\362\364\370\1\x5A\110 AVX,SANDYBRIDGE,THV
ymmreg_mz,xmmreg \350\362\364\370\1\x5A\110 AVX,SANDYBRIDGE
ymmreg_mz,xmmrm \350\362\364\370\1\x5A\110 AVX,SANDYBRIDGE,THV
ymmreg_mz,bmem32 \350\364\370\1\x5A\110 AVX512,BCST4,THV
zmmreg_mz,mem256 \350\351\370\1\x5A\110 AVX512,THV
zmmreg_mz,ymmreg_sae \350\351\370\1\x5A\110 AVX512
@ -4282,15 +4279,15 @@ reg32,xmmreg_er \333\350\362\370\1\x2D\110
reg64,mem32 \333\350\352\362\363\370\1\x2D\110 AVX,SANDYBRIDGE,T1F32
reg64,xmmreg_er \333\350\352\362\363\370\1\x2D\110 AVX,SANDYBRIDGE
; VCVTTPD2DQ xmmreg_mz,mem256 must come first - map MemRefSize 256bits correct
; map all other MemrefSize (without broasdcast MemRef) to xmmreg, xmmrm
[VCVTTPD2DQ,vcvttpd2dqM]
(Ch_Wop2, Ch_Rop1)
xmmreg_mz,mem128 \350\352\361\362\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512,TFV
xmmreg_mz,mem256 \350\352\361\362\364\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512,TFV
xmmreg_mz,xmmreg \350\352\361\362\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512
xmmreg_mz,ymmreg \350\352\361\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
xmmreg_mz,xmmrm \350\352\361\362\370\1\xE6\110 AVX,SANDYBRIDGE,AVX512,TFV
xmmreg_mz,bmem64 \350\352\361\370\1\xE6\110 AVX512,BCST2,TFV
xmmreg_mz,bmem64 \350\352\361\364\370\1\xE6\110 AVX512,BCST4,TFV
xmmreg_mz,ymmreg \350\352\361\362\364\370\1\xE6\110 AVX,SANDYBRIDGE
ymmreg_mz,mem512 \350\351\352\361\370\1\xE6\110 AVX512,TFV
ymmreg_mz,bmem64 \350\351\352\361\370\1\xE6\110 AVX512,BCST8,TFV
ymmreg_mz,zmmreg_sae \350\351\352\361\370\1\xE6\110 AVX512
@ -4503,34 +4500,22 @@ xmmreg_mz,xmmreg,xmmreg_sae \333\350\362\370\1\x5D\75\120
[VMOVAPD]
(Ch_Wop2, Ch_Rop1)
mem128_m,xmmreg \350\352\361\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
mem256_m,ymmreg \350\352\361\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
mem512_m,zmmreg \350\351\352\361\370\1\x29\101 AVX512,TFVM
xmmreg_mz,mem128 \350\352\361\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
xmmreg_mz,xmmreg \350\352\361\362\370\1\x29\101 AVX,SANDYBRIDGE
xmmreg_mz,xmmreg \350\352\361\362\370\1\x28\110 AVX,SANDYBRIDGE
ymmreg_mz,mem256 \350\352\361\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
ymmreg_mz,ymmreg \350\352\361\362\364\370\1\x29\101 AVX,SANDYBRIDGE
ymmreg_mz,ymmreg \350\352\361\362\364\370\1\x28\110 AVX,SANDYBRIDGE
zmmreg_mz,mem512 \350\351\352\361\370\1\x28\110 AVX512,TFVM
zmmreg_mz,zmmreg \350\351\352\361\370\1\x28\110 AVX512
zmmreg_mz,zmmreg \350\351\352\361\370\1\x29\101 AVX512
xmmrm_mz,xmmreg \350\352\361\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
ymmrm_mz,ymmreg \350\352\361\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
zmmrm_mz,zmmreg \350\351\352\361\370\1\x29\101 AVX512,TFVM
xmmreg_mz,xmmrm \350\352\361\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
ymmreg_mz,ymmrm \350\352\361\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
zmmreg_mz,zmmrm \350\351\352\361\370\1\x28\110 AVX512,TFVM
[VMOVAPS]
(Ch_Wop2, Ch_Rop1)
mem128_m,xmmreg \350\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
mem256_m,ymmreg \350\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
mem512_m,zmmreg \350\351\370\1\x29\101 AVX512,TFVM
xmmreg_mz,mem128 \350\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
xmmreg_mz,xmmreg \350\362\370\1\x29\101 AVX,SANDYBRIDGE
xmmreg_mz,xmmreg \350\362\370\1\x28\110 AVX,SANDYBRIDGE
ymmreg_mz,mem256 \350\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
ymmreg_mz,ymmreg \350\362\364\370\1\x28\110 AVX,SANDYBRIDGE
ymmreg_mz,ymmreg \350\362\364\370\1\x29\101 AVX,SANDYBRIDGE
zmmreg_mz,mem512 \350\351\370\1\x28\110 AVX512,TFVM
zmmreg_mz,zmmreg \350\351\370\1\x29\101 AVX512
zmmreg_mz,zmmreg \350\351\370\1\x28\110 AVX512
xmmrm_mz,xmmreg \350\362\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
ymmrm_mz,ymmreg \350\362\364\370\1\x29\101 AVX,SANDYBRIDGE,TFVM
zmmrm_mz,zmmreg \350\351\370\1\x29\101 AVX512,TFVM
xmmreg_mz,xmmrm \350\362\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
ymmreg_mz,ymmrm \350\362\364\370\1\x28\110 AVX,SANDYBRIDGE,TFVM
zmmreg_mz,zmmrm \350\351\370\1\x28\110 AVX512,TFVM
[VMOVD]
@ -4678,28 +4663,21 @@ xmmreg_mz,xmmreg,xmmreg \333\350\362\370\1\x10\75\120
[VMOVUPD]
(Ch_Wop2, Ch_Rop1)
mem128_m,xmmreg \350\352\361\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
mem256_m,ymmreg \350\352\361\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
mem512_m,zmmreg \350\351\352\361\370\1\x11\101 AVX512,TFVM
xmmreg_mz,xmmreg \350\352\361\362\370\1\x11\101 AVX,SANDYBRIDGE
xmmrm_mz,xmmreg \350\352\361\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
ymmrm_mz,ymmreg \350\352\361\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
zmmrm_mz,zmmreg \350\351\352\361\370\1\x11\101 AVX512,TFVM
xmmreg_mz,xmmrm \350\352\361\362\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
ymmreg_mz,ymmreg \350\352\361\362\364\370\1\x11\101 AVX,SANDYBRIDGE
ymmreg_mz,ymmrm \350\352\361\362\364\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
zmmreg_mz,zmmreg \350\351\352\361\370\1\x11\101 AVX512
zmmreg_mz,zmmrm \350\351\352\361\370\1\x10\110 AVX512,TFVM
[VMOVUPS]
(Ch_Wop2, Ch_Rop1)
mem128_m,xmmreg \350\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
mem256_m,ymmreg \350\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
mem512_m,zmmreg \350\351\370\1\x11\101 AVX512,TFVM
xmmreg_mz,xmmreg \350\362\370\1\x11\101 AVX,SANDYBRIDGE
xmmrm_mz,xmmreg \350\362\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
ymmrm_mz,ymmreg \350\362\364\370\1\x11\101 AVX,SANDYBRIDGE,TFVM
zmmrm_mz,zmmreg \350\351\370\1\x11\101 AVX512,TFVM
xmmreg_mz,xmmrm \350\362\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
ymmreg_mz,ymmreg \350\362\364\370\1\x11\101 AVX,SANDYBRIDGE
ymmreg_mz,ymmrm \350\362\364\370\1\x10\110 AVX,SANDYBRIDGE,TFVM
zmmreg_mz,zmmreg \350\351\370\1\x11\101 AVX512
zmmreg_mz,zmmrm \350\351\370\1\x10\110 AVX512,TFVM
@ -5294,30 +5272,24 @@ zmmreg_mz,xmmreg \350\351\361\371\1\x22\110
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x20\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x20\110 AVX,SANDYBRIDGE
ymmreg_mz,mem128 \350\361\362\364\371\1\x20\110 AVX2,THVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x20\110 AVX2
zmmreg_mz,mem256 \350\351\361\371\1\x20\110 AVX512,THVM
zmmreg_mz,ymmreg \350\351\361\371\1\x20\110 AVX512
ymmreg_mz,xmmrm \350\361\362\364\371\1\x20\110 AVX2,THVM
zmmreg_mz,ymmrm \350\351\361\371\1\x20\110 AVX512,THVM
[VPMOVSXDQ]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x25\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x25\110 AVX,SANDYBRIDGE
ymmreg_mz,mem128 \350\361\362\364\371\1\x25\110 AVX2,THVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x25\110 AVX2
zmmreg_mz,mem256 \350\351\361\371\1\x25\110 AVX512,THVM
zmmreg_mz,ymmreg \350\351\361\371\1\x25\110 AVX512
ymmreg_mz,xmmrm \350\361\362\364\371\1\x25\110 AVX2,THVM
zmmreg_mz,ymmrm \350\351\361\371\1\x25\110 AVX512,THVM
[VPMOVSXWD]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x23\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x23\110 AVX,SANDYBRIDGE
ymmreg_mz,mem128 \350\361\362\364\371\1\x23\110 AVX2,THVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x23\110 AVX2
zmmreg_mz,mem256 \350\351\361\371\1\x23\110 AVX512,THVM
zmmreg_mz,ymmreg \350\351\361\371\1\x23\110 AVX512
ymmreg_mz,xmmrm \350\361\362\364\371\1\x23\110 AVX2,THVM
zmmreg_mz,ymmrm \350\351\361\371\1\x23\110 AVX512,THVM
[VPMOVSXWQ]
@ -5326,8 +5298,8 @@ xmmreg_mz,mem32 \350\361\362\371\1\x24\110
xmmreg_mz,xmmreg \350\361\362\371\1\x24\110 AVX,SANDYBRIDGE
ymmreg_mz,mem64 \350\361\362\364\371\1\x24\110 AVX2,TQVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x24\110 AVX2
zmmreg_mz,mem128 \350\351\361\371\1\x24\110 AVX512,TQVM
zmmreg_mz,xmmreg \350\351\361\371\1\x24\110 AVX512
zmmreg_mz,xmmrm \350\351\361\371\1\x24\110 AVX512,TQVM
[VPMOVZXBD]
@ -5336,8 +5308,7 @@ xmmreg_mz,mem32 \350\361\362\371\1\x31\110
xmmreg_mz,xmmreg \350\361\362\371\1\x31\110 AVX,SANDYBRIDGE
ymmreg_mz,mem64 \350\361\362\364\371\1\x31\110 AVX2,TQVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x31\110 AVX2
zmmreg_mz,mem128 \350\351\361\371\1\x31\110 AVX512,TQVM
zmmreg_mz,xmmreg \350\351\361\371\1\x31\110 AVX512
zmmreg_mz,xmmrm \350\351\361\371\1\x31\110 AVX512,TQVM
[VPMOVZXBQ]
@ -5354,30 +5325,24 @@ zmmreg_mz,xmmreg \350\351\361\371\1\x32\110
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x30\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x30\110 AVX,SANDYBRIDGE
ymmreg_mz,mem128 \350\361\362\364\371\1\x30\110 AVX2,THVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x30\110 AVX2
zmmreg_mz,mem256 \350\351\361\371\1\x30\110 AVX512,THVM
zmmreg_mz,ymmreg \350\351\361\371\1\x30\110 AVX512
ymmreg_mz,xmmrm \350\361\362\364\371\1\x30\110 AVX2,THVM
zmmreg_mz,ymmrm \350\351\361\371\1\x30\110 AVX512,THVM
[VPMOVZXDQ]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x35\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x35\110 AVX,SANDYBRIDGE
ymmreg_mz,mem128 \350\361\362\364\371\1\x35\110 AVX2,THVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x35\110 AVX2
zmmreg_mz,mem256 \350\351\361\371\1\x35\110 AVX512,THVM
zmmreg_mz,ymmreg \350\351\361\371\1\x35\110 AVX512
ymmreg_mz,xmmrm \350\361\362\364\371\1\x35\110 AVX2,THVM
zmmreg_mz,ymmrm \350\351\361\371\1\x35\110 AVX512,THVM
[VPMOVZXWD]
(Ch_All)
xmmreg_mz,mem64 \350\361\362\371\1\x33\110 AVX,SANDYBRIDGE,THVM
xmmreg_mz,xmmreg \350\361\362\371\1\x33\110 AVX,SANDYBRIDGE
ymmreg_mz,mem128 \350\361\362\364\371\1\x33\110 AVX2,THVM
ymmreg_mz,xmmreg \350\361\362\364\371\1\x33\110 AVX2
zmmreg_mz,mem256 \350\351\361\371\1\x33\110 AVX512,THVM
zmmreg_mz,ymmreg \350\351\361\371\1\x33\110 AVX512
ymmreg_mz,xmmrm \350\361\362\364\371\1\x33\110 AVX2,THVM
zmmreg_mz,ymmrm \350\351\361\371\1\x33\110 AVX512,THVM
[VPMOVZXWQ]
@ -6176,15 +6141,14 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x36\75\120
[VPERMPD]
(Ch_All)
ymmreg_mz,mem256,imm8 \350\352\361\362\363\364\372\1\x01\110\26 AVX2,TFV
ymmreg_mz,ymmreg,imm8 \350\352\361\362\363\364\372\1\x01\110\26 AVX2,TFV
ymmreg_mz,ymmrm,imm8 \350\352\361\362\363\364\372\1\x01\110\26 AVX2,TFV
ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x01\110\26 AVX512,TFV
zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x16\75\120 AVX512,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x16\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x16\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x16\75\120 AVX512,TFV
zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x01\110\26 AVX512,TFV
[VPERMPS]
@ -6199,12 +6163,12 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x16\75\120
(Ch_All)
ymmreg_mz,ymmrm,imm8 \350\352\361\362\363\364\372\1\x00\110\26 AVX2,TFV
ymmreg_mz,bmem64,imm8 \350\352\361\364\372\1\x00\110\26 AVX512,TFV
zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
ymmreg_mz,ymmreg,ymmrm \350\352\361\364\371\1\x36\75\120 AVX512,TFV
ymmreg_mz,ymmreg,bmem64 \350\352\361\364\371\1\x36\75\120 AVX512,TFV
zmmreg_mz,zmmreg,zmmrm \350\351\352\361\371\1\x36\75\120 AVX512,TFV
zmmreg_mz,zmmreg,bmem64 \350\351\352\361\371\1\x36\75\120 AVX512,TFV
zmmreg_mz,zmmrm,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
zmmreg_mz,bmem64,imm8 \350\351\352\361\372\1\x00\110\26 AVX512,TFV
[VPMASKMOVD]
@ -6449,13 +6413,13 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x98\75\120
[VFMADD132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x99\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x99\75\120 FMA,T1S,SCL64
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x99\75\120 FMA
[VFMADD132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x99\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x99\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x99\75\120 FMA,T1S,SCL32
[VFMADD213PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
@ -6479,13 +6443,13 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xA8\75\120
[VFMADD213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xA9\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xA9\75\120 FMA,T1S,SCL64
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xA9\75\120 FMA
[VFMADD213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xA9\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xA9\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xA9\75\120 FMA,T1S,SCL32
[VFMADD231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
@ -6510,12 +6474,12 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xB8\75\120
[VFMADD231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xB9\75\120 FMA
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xB9\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xB9\75\120 FMA,T1S,SCL64
[VFMADD231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xB9\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xB9\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xB9\75\120 FMA,T1S,SCL32
[VFMADDSUB132PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
@ -6600,11 +6564,11 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x9A\75\120
[VFMSUB132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x9B\75\120 FMA
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x9B\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x9B\75\120 FMA,T1S,SCL64
[VFMSUB132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9B\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x9B\75\120 FMA,T1S,SCL32
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9B\75\120 FMA
[VFMSUB213PD]
@ -6630,12 +6594,12 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xAA\75\120
[VFMSUB213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xAB\75\120 FMA
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xAB\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xAB\75\120 FMA,T1S,SCL64
[VFMSUB213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xAB\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xAB\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xAB\75\120 FMA,T1S,SCL32
[VFMSUB231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
@ -6660,11 +6624,11 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBA\75\120
[VFMSUB231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xBB\75\120 FMA
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xBB\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xBB\75\120 FMA,T1S,SCL64
[VFMSUB231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xBB\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xBB\75\120 FMA,T1S,SCL32
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xBB\75\120 FMA
[VFMSUBADD132PD]
@ -6749,12 +6713,12 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\x9C\75\120
[VFNMADD132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x9D\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x9D\75\120 FMA,T1S,SCL64
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x9D\75\120 FMA
[VFNMADD132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9D\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x9D\75\120 FMA,T1S,SCL32
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9D\75\120 FMA
[VFNMADD213PD]
@ -6780,12 +6744,12 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xAC\75\120
[VFNMADD213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xAD\75\120 FMA
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xAD\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xAD\75\120 FMA,T1S,SCL64
[VFNMADD213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xAD\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xAD\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xAD\75\120 FMA,T1S,SCL32
[VFNMADD231PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
@ -6809,13 +6773,13 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBC\75\120
[VFNMADD231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg,xmmreg,mem64 \361\362\363\371\1\xBD\75\120 FMA
xmmreg,xmmreg,xmmrm \361\362\363\371\1\xBD\75\120 FMA,T1S,SCL64
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xBD\75\120 FMA
[VFNMADD231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg,xmmreg,xmmreg \361\362\371\1\xBD\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xBD\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xBD\75\120 FMA,T1S,SCL32
[VFNMSUB132PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
@ -6839,13 +6803,13 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\x9E\75\120
[VFNMSUB132SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\x9F\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\x9F\75\120 FMA,T1S,SCL64
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\x9F\75\120 FMA
[VFNMSUB132SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\x9F\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\x9F\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\x9F\75\120 FMA,T1S,SCL32
[VFNMSUB213PD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
@ -6869,12 +6833,12 @@ zmmreg_mz,zmmreg,zmmreg_er \350\351\361\371\1\xAE\75\120
[VFNMSUB213SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xAF\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xAF\75\120 FMA,T1S,SCL64
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xAF\75\120 FMA
[VFNMSUB213SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xAF\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xAF\75\120 FMA,T1S,SCL32
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xAF\75\120 FMA
[VFNMSUB231PD]
@ -6900,12 +6864,12 @@ zmmreg_mz,zmmreg,bmem32 \350\351\361\371\1\xBE\75\120
[VFNMSUB231SD]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\352\361\362\363\371\1\xBF\75\120 FMA
xmmreg_mz,xmmreg,mem64 \350\352\361\362\363\371\1\xBF\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\352\361\362\363\371\1\xBF\75\120 FMA,T1S,SCL64
[VFNMSUB231SS]
(Ch_Mop3, Ch_Rop2, Ch_Rop1)
xmmreg_mz,xmmreg,xmmreg_er \350\361\362\371\1\xBF\75\120 FMA
xmmreg_mz,xmmreg,mem32 \350\361\362\371\1\xBF\75\120 FMA,T1S
xmmreg_mz,xmmreg,xmmrm \350\361\362\371\1\xBF\75\120 FMA,T1S,SCL32
;*******************************************************************************