diff --git a/compiler/i386/i386prop.inc b/compiler/i386/i386prop.inc index a56086cde2..aa5013c464 100644 --- a/compiler/i386/i386prop.inc +++ b/compiler/i386/i386prop.inc @@ -603,23 +603,23 @@ (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]), +(Ch: [Ch_Wop2, Ch_Rop1]), +(Ch: [Ch_Wop2, Ch_Rop1]), (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]), diff --git a/compiler/i8086/i8086prop.inc b/compiler/i8086/i8086prop.inc index f9be9e7cbe..daab721d78 100644 --- a/compiler/i8086/i8086prop.inc +++ b/compiler/i8086/i8086prop.inc @@ -603,23 +603,23 @@ (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]), +(Ch: [Ch_Wop2, Ch_Rop1]), +(Ch: [Ch_Wop2, Ch_Rop1]), (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]), diff --git a/compiler/x86/x86ins.dat b/compiler/x86/x86ins.dat index 83ee444baa..dc82ebffec 100644 --- a/compiler/x86/x86ins.dat +++ b/compiler/x86/x86ins.dat @@ -3185,11 +3185,11 @@ mem \326\2\x0F\xC7\201 X86_64 ; SSE4a (AMD Barcelona CPUs, n/a on Intel) ; [MOVNTSS] -(Ch_All) +(Ch_Wop2, Ch_Rop1) mem,xmmreg \336\333\2\x0F\x2B\101 SSE4,SD [MOVNTSD] -(Ch_All) +(Ch_Wop2, Ch_Rop1) mem,xmmreg \337\334\325\2\x0F\x2B\101 SSE4 ;,SQ [INSERTQ] @@ -3211,62 +3211,62 @@ reg32|64,regmem \321\333\2\x0F\xBD\110 386,SM,SSE4 ;**********SSSE3**************************************************************** ;******************************************************************************* [PABSB] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x1C\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x1C\110 SSSE3,SM [PABSW] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x1D\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x1D\110 SSSE3,SM [PABSD] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x1E\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x1E\110 SSSE3,SM [PALIGNR] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm,imm \331\3\x0F\x3A\x0F\110\26 SSSE3,MMX,SM2,SB,AR2 xmmreg,xmmrm,imm \361\3\x0F\x3A\x0F\110\26 SSSE3,SM2,SB,AR2 [PHADDW] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x01\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x01\110 SSSE3,SM [PHADDD] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x02\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x02\110 SSSE3,SM [PHADDSW] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x03\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x03\110 SSSE3,SM [PHSUBW] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x05\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x05\110 SSSE3,SM [PHSUBD] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x06\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x06\110 SSSE3,SM [PHSUBSW] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x07\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x07\110 SSSE3,SM [PMADDUBSW] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x04\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x04\110 SSSE3,SM [PMULHRSW] -(Ch_All) +(Ch_Mop2, Ch_Rop1) mmxreg,mmxrm \331\3\x0F\x38\x0B\110 SSSE3,MMX,SM xmmreg,xmmrm \361\3\x0F\x38\x0B\110 SSSE3,SM diff --git a/compiler/x86_64/x8664pro.inc b/compiler/x86_64/x8664pro.inc index 70e73794a0..ea4b947129 100644 --- a/compiler/x86_64/x8664pro.inc +++ b/compiler/x86_64/x8664pro.inc @@ -594,23 +594,23 @@ (Ch: [Ch_MRAX, Ch_WRDX]), (Ch: [Ch_MRAX]), (Ch: [Ch_RWRAX, Ch_RWRDX, Ch_WZeroFlag, Ch_RWOp1]), +(Ch: [Ch_Wop2, Ch_Rop1]), +(Ch: [Ch_Wop2, Ch_Rop1]), (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), +(Ch: [Ch_Mop2, Ch_Rop1]), (Ch: [Ch_All]), (Ch: [Ch_All]), (Ch: [Ch_All]),