From fbf68af60533634bd627ca24a9a6b57d4208df89 Mon Sep 17 00:00:00 2001 From: florian Date: Wed, 23 Mar 2022 21:42:53 +0100 Subject: [PATCH] * continued to update change information --- compiler/i386/i386prop.inc | 34 +++++++++++++++++----------------- compiler/i8086/i8086prop.inc | 34 +++++++++++++++++----------------- compiler/x86/x86ins.dat | 34 +++++++++++++++++----------------- compiler/x86_64/x8664pro.inc | 34 +++++++++++++++++----------------- rtl/x86_64/math.inc | 2 +- 5 files changed, 69 insertions(+), 69 deletions(-) diff --git a/compiler/i386/i386prop.inc b/compiler/i386/i386prop.inc index af19066801..f70682a7ee 100644 --- a/compiler/i386/i386prop.inc +++ b/compiler/i386/i386prop.inc @@ -773,10 +773,10 @@ (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), (Ch: [Ch_Rop1, Ch_Rop2, Ch_WFlags]), (Ch: [Ch_Rop1, Ch_Rop2, Ch_WFlags]), (Ch: [Ch_Wop2, Ch_Rop1]), @@ -801,21 +801,21 @@ (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop3, Ch_Rop2]), +(Ch: [Ch_Wop3, Ch_Rop2]), +(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]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop2, Ch_Rop1]), +(Ch: [Ch_Rop1]), +(Ch: [Ch_Rop1, Ch_Rop2, Ch_WMemEDI]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, 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_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), diff --git a/compiler/i8086/i8086prop.inc b/compiler/i8086/i8086prop.inc index 41bf3aebd7..c4e72393dc 100644 --- a/compiler/i8086/i8086prop.inc +++ b/compiler/i8086/i8086prop.inc @@ -773,10 +773,10 @@ (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), (Ch: [Ch_Rop1, Ch_Rop2, Ch_WFlags]), (Ch: [Ch_Rop1, Ch_Rop2, Ch_WFlags]), (Ch: [Ch_Wop2, Ch_Rop1]), @@ -801,21 +801,21 @@ (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop3, Ch_Rop2]), +(Ch: [Ch_Wop3, Ch_Rop2]), +(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]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop2, Ch_Rop1]), +(Ch: [Ch_Rop1]), +(Ch: [Ch_Rop1, Ch_Rop2, Ch_WMemEDI]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, 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_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), diff --git a/compiler/x86/x86ins.dat b/compiler/x86/x86ins.dat index 9aaee85a45..97ca696859 100644 --- a/compiler/x86/x86ins.dat +++ b/compiler/x86/x86ins.dat @@ -4093,7 +4093,7 @@ ymmreg,ymmreg,ymmrm \361\362\364\370\1\xC2\75\120\1\x1F AVX,SAND ; [VCMPPD] -(Ch_All) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) 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 @@ -4105,7 +4105,7 @@ xmmreg,xmmreg,xmmrm,imm8 \361\362\370\1\xC2\75\120\27 ymmreg,ymmreg,ymmrm,imm8 \361\362\364\370\1\xC2\75\120\27 AVX,SANDYBRIDGE [VCMPPS] -(Ch_All) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) 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 @@ -4117,14 +4117,14 @@ xmmreg,xmmreg,xmmrm,imm8 \362\370\1\xC2\75\120\27 ymmreg,ymmreg,ymmrm,imm8 \362\364\370\1\xC2\75\120\27 AVX,SANDYBRIDGE [VCMPSD] -(Ch_All) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) 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) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) 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,xmmrm,imm8 \336\333\362\370\1\xC2\75\120\27 AVX,SANDYBRIDGE @@ -4332,20 +4332,20 @@ xmmreg_mz,xmmreg,mem32 \333\350\362\370\1\x5E\75\120 xmmreg_mz,xmmreg,xmmreg_er \333\350\362\370\1\x5E\75\120 AVX,SANDYBRIDGE [VDPPD] -(Ch_All) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) xmmreg,xmmreg,xmmrm,imm8 \361\362\372\1\x41\75\120\27 AVX,SANDYBRIDGE [VDPPS] -(Ch_All) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) xmmreg,xmmreg,xmmrm,imm8 \361\362\372\1\x40\75\120\27 AVX,SANDYBRIDGE ymmreg,ymmreg,ymmrm,imm8 \361\362\364\372\1\x40\75\120\27 AVX,SANDYBRIDGE [VEXTRACTF128] -(Ch_All) +(Ch_Wop3, Ch_Rop2) xmmrm,ymmreg,imm8 \361\362\364\372\1\x19\101\26 AVX,SANDYBRIDGE [VEXTRACTPS] -(Ch_All) +(Ch_Wop3, Ch_Rop2) 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\362\372\1\x17\101\26 AVX512 @@ -4361,46 +4361,46 @@ xmmreg,xmmreg,xmmrm \334\362\370\1\x7C\75\120 AVX,SA ymmreg,ymmreg,ymmrm \334\362\364\370\1\x7C\75\120 AVX,SANDYBRIDGE [VHSUBPD] -(Ch_All) +(Ch_Wop3, Ch_Rop2, Ch_Rop1) xmmreg,xmmreg,xmmrm \361\362\370\1\x7D\75\120 AVX,SANDYBRIDGE ymmreg,ymmreg,ymmrm \361\362\364\370\1\x7D\75\120 AVX,SANDYBRIDGE [VHSUBPS] -(Ch_All) +(Ch_Wop3, Ch_Rop2, Ch_Rop1) xmmreg,xmmreg,xmmrm \334\362\370\1\x7D\75\120 AVX,SANDYBRIDGE ymmreg,ymmreg,ymmrm \334\362\364\370\1\x7D\75\120 AVX,SANDYBRIDGE [VINSERTF128] -(Ch_All) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) ymmreg,ymmreg,xmmrm,imm8 \361\362\364\372\1\x18\75\120\27 AVX,SANDYBRIDGE [VINSERTPS] -(Ch_All) +(Ch_Wop4, Ch_Rop3, Ch_Rop2) 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) +(Ch_Wop2, Ch_Rop1) xmmreg,mem128 \334\362\370\1\xF0\110 AVX,SANDYBRIDGE ymmreg,mem256 \334\362\364\370\1\xF0\110 AVX,SANDYBRIDGE [VLDMXCSR] -(Ch_All) +(Ch_Rop1) mem32 \362\370\1\xAE\202 AVX,SANDYBRIDGE [VMASKMOVDQU] -(Ch_All) +(Ch_Rop1, Ch_Rop2, Ch_WMemEDI) xmmreg,xmmreg \361\362\370\1\xF7\110 AVX,SANDYBRIDGE [VMASKMOVPD] -(Ch_All) +(Ch_Wop3, Ch_Rop2, Ch_Rop1) mem256,ymmreg,ymmreg \361\362\364\371\1\x2F\75\102 AVX,SANDYBRIDGE mem128,xmmreg,xmmreg \361\362\371\1\x2F\75\102 AVX,SANDYBRIDGE ymmreg,ymmreg,mem256 \361\362\364\371\1\x2D\75\120 AVX,SANDYBRIDGE xmmreg,xmmreg,mem128 \361\362\371\1\x2D\75\120 AVX,SANDYBRIDGE [VMASKMOVPS] -(Ch_All) +(Ch_Wop3, Ch_Rop2, Ch_Rop1) mem256,ymmreg,ymmreg \361\362\364\371\1\x2E\75\102 AVX,SANDYBRIDGE mem128,xmmreg,xmmreg \361\362\371\1\x2E\75\102 AVX,SANDYBRIDGE ymmreg,ymmreg,mem256 \361\362\364\371\1\x2C\75\120 AVX,SANDYBRIDGE diff --git a/compiler/x86_64/x8664pro.inc b/compiler/x86_64/x8664pro.inc index 6dcbc65149..c546ff3c9b 100644 --- a/compiler/x86_64/x8664pro.inc +++ b/compiler/x86_64/x8664pro.inc @@ -769,10 +769,10 @@ (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), (Ch: [Ch_Rop1, Ch_Rop2, Ch_WFlags]), (Ch: [Ch_Rop1, Ch_Rop2, Ch_WFlags]), (Ch: [Ch_Wop2, Ch_Rop1]), @@ -797,21 +797,21 @@ (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), -(Ch: [Ch_All]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop3, Ch_Rop2]), +(Ch: [Ch_Wop3, Ch_Rop2]), +(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]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop4, Ch_Rop3, Ch_Rop2]), +(Ch: [Ch_Wop2, Ch_Rop1]), +(Ch: [Ch_Rop1]), +(Ch: [Ch_Rop1, Ch_Rop2, Ch_WMemEDI]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, 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_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), (Ch: [Ch_Wop3, Ch_Rop2, Ch_Rop1]), diff --git a/rtl/x86_64/math.inc b/rtl/x86_64/math.inc index 0e721206fc..f34a371529 100644 --- a/rtl/x86_64/math.inc +++ b/rtl/x86_64/math.inc @@ -72,7 +72,7 @@ const procedure SetMXCSR(w : dword); begin defaultmxcsr:=w; - asm + asm ldmxcsr w end; end;