From 831cddf0a179e337dec8f93cdcf785af55c83ca1 Mon Sep 17 00:00:00 2001 From: Philippe Waroquiers Date: Fri, 6 Jul 2012 22:52:09 +0000 Subject: [PATCH] fix 303127 Power test suite fixes for frsqrte, vrefp, and vrsqrtefp instructions The frsqrte and vrefp instructions produce an approximate result. According to the ISA document for the POWER processor, the result will vary in its precision for different processor implementations. This patch fixes the masks to be applied to the results to remove the variability in the results. The expected output files are also updated to reflect the change in the result given the new masking of the result. patch from Carl Love git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12720 --- NEWS | 1 + none/tests/ppc32/jm-fp.stdout.exp | 8 +++--- none/tests/ppc32/jm-insns.c | 14 ++++++++-- none/tests/ppc32/jm-vmx.stdout.exp | 29 ++++++++++---------- none/tests/ppc32/jm-vmx.stdout.exp_Minus_nan | 28 +++++++++---------- none/tests/ppc64/jm-fp.stdout.exp | 8 +++--- none/tests/ppc64/jm-vmx.stdout.exp | 29 ++++++++++---------- none/tests/ppc64/jm-vmx.stdout.exp_Minus_nan | 28 +++++++++---------- 8 files changed, 76 insertions(+), 69 deletions(-) diff --git a/NEWS b/NEWS index 37667c50dd..df7ec8b847 100644 --- a/NEWS +++ b/NEWS @@ -225,6 +225,7 @@ n-i-bz Fix assert in gdbserver for watchpoints watching the same address 302709 valgrind for ARM needs extra tls support for android emulator under Linux 302918 Enable testing of the vmaddfp and vnsubfp instructions in the testsuite 303116 Add support for the POWER instruction popcntb +303127 Power test suite fixes for frsqrte, vrefp, and vrsqrtefp instructions. Release 3.7.0 (5 November 2011) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/none/tests/ppc32/jm-fp.stdout.exp b/none/tests/ppc32/jm-fp.stdout.exp index b2394cf370..cff9df2ce5 100644 --- a/none/tests/ppc32/jm-fp.stdout.exp +++ b/none/tests/ppc32/jm-fp.stdout.exp @@ -719,8 +719,8 @@ PPC floating point arith insns with one arg: frsqrte 8000000000000000 => fff0000000000000 frsqrte 7ff0000000000000 => 0000000000000000 frsqrte fff0000000000000 => 7ff8000000000000 - frsqrte 7ff7ffffffffffff => 7fff800000000000 - frsqrte fff7ffffffffffff => ffff800000000000 + frsqrte 7ff7ffffffffffff => 7fff000000000000 + frsqrte fff7ffffffffffff => ffff000000000000 frsqrte 7ff8000000000000 => 7ff8000000000000 frsqrte fff8000000000000 => fff8000000000000 @@ -891,8 +891,8 @@ PPC floating point arith insns frsqrte. 8000000000000000 => fff0000000000000 frsqrte. 7ff0000000000000 => 0000000000000000 frsqrte. fff0000000000000 => 7ff8000000000000 - frsqrte. 7ff7ffffffffffff => 7fff800000000000 - frsqrte. fff7ffffffffffff => ffff800000000000 + frsqrte. 7ff7ffffffffffff => 7fff000000000000 + frsqrte. fff7ffffffffffff => ffff000000000000 frsqrte. 7ff8000000000000 => 7ff8000000000000 frsqrte. fff8000000000000 => fff8000000000000 diff --git a/none/tests/ppc32/jm-insns.c b/none/tests/ppc32/jm-insns.c index 14e2ea8410..038fb7377b 100644 --- a/none/tests/ppc32/jm-insns.c +++ b/none/tests/ppc32/jm-insns.c @@ -2042,7 +2042,7 @@ static void test_fres_ (void) static void test_frsqrte_ (void) { - __asm__ __volatile__ ("frsqrte. 17, 14"); + __asm__ __volatile__ ("frsqrte. 17, 14"); } static void test_frsp_ (void) @@ -5763,6 +5763,14 @@ static void test_float_one_arg (const char* name, test_func_t func, res = f17; ur = *(uint64_t *)(&res); + if (strstr(name, " frsqrte") != NULL) + /* The 32-bit frsqrte instruction is the Floatig Reciprical Square + * Root Estimate instruction. The precision of the estimate will + * vary from Proceesor implementation. The approximation varies in + * bottom two bytes of the 32-bit result. + */ + ur &= 0xFFFF000000000000ULL; + if (zap_hi_32bits) ur &= 0x00000000FFFFFFFFULL; if (zap_lo_44bits) @@ -6888,12 +6896,12 @@ static void test_av_float_one_arg (const char* name, test_func_t func, #endif /* if we're doing an estimation operation, arrange to zap the - bottom byte of the result as it's basically garbage, and differs + bottom 10-bits of the result as it's basically garbage, and differs between cpus */ unsigned int mask = (strstr(name,"vrsqrtefp") != NULL || strstr(name, "vrefp") != NULL) - ? 0xFFFFFF00 : 0xFFFFFFFF; + ? 0xFFFFC000 : 0xFFFFFFFF; for (i=0; i f1f2f3f4 f5f6f7f8 f9fafbfc fefdfeff (00000000) stvxl 14, f1f2f3f4 f5f6f7f8 f9fafbfc fefdfeff => f1f2f3f4 f5f6f7f8 f9fafbfc fefdfeff (00000000) -Altivec floating point arith insns with three args: Altivec floating point arith insns with two args: vaddfp: 02bfffff02bfffff02bfffff02bfffff, 02bfffff02bfffff02bfffff02bfffff vaddfp: => 033fffff 033fffff 033fffff 033fffff (00000000) @@ -2588,13 +2587,13 @@ Altivec floating point arith insns with one arg: vrfim: => ffffffff ffffffff ffffffff ffffffff (00000000) vrefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrefp: => 7c2aa900 7c2aa900 7c2aa900 7c2aa900 (00000000) + vrefp: => 7c2a8000 7c2a8000 7c2a8000 7c2a8000 (00000000) vrefp: 513fffff 513fffff 513fffff 513fffff - vrefp: => 2daaa900 2daaa900 2daaa900 2daaa900 (00000000) + vrefp: => 2daa8000 2daa8000 2daa8000 2daa8000 (00000000) vrefp: 82bfffff 82bfffff 82bfffff 82bfffff - vrefp: => fc2aa900 fc2aa900 fc2aa900 fc2aa900 (00000000) + vrefp: => fc2a8000 fc2a8000 fc2a8000 fc2a8000 (00000000) vrefp: d13fffff d13fffff d13fffff d13fffff - vrefp: => adaaa900 adaaa900 adaaa900 adaaa900 (00000000) + vrefp: => adaa8000 adaa8000 adaa8000 adaa8000 (00000000) vrefp: 00000000 00000000 00000000 00000000 vrefp: => 7f800000 7f800000 7f800000 7f800000 (00000000) vrefp: 80000000 80000000 80000000 80000000 @@ -2604,18 +2603,18 @@ Altivec floating point arith insns with one arg: vrefp: ff800000 ff800000 ff800000 ff800000 vrefp: => 80000000 80000000 80000000 80000000 (00000000) vrefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffffffff ffffffff ffffffff ffffffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrsqrtefp: => 5dd10300 5dd10300 5dd10300 5dd10300 (00000000) + vrsqrtefp: => 5dd10000 5dd10000 5dd10000 5dd10000 (00000000) vrsqrtefp: 513fffff 513fffff 513fffff 513fffff - vrsqrtefp: => 3693ca00 3693ca00 3693ca00 3693ca00 (00000000) + vrsqrtefp: => 3693c000 3693c000 3693c000 3693c000 (00000000) vrsqrtefp: 82bfffff 82bfffff 82bfffff 82bfffff vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: d13fffff d13fffff d13fffff d13fffff @@ -2629,13 +2628,13 @@ Altivec floating point arith insns with one arg: vrsqrtefp: ff800000 ff800000 ff800000 ff800000 vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffffffff ffffffff ffffffff ffffffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) Altivec floating point compare insns: vcmpgtfp: 02bfffff02bfffff02bfffff02bfffff, 02bfffff02bfffff02bfffff02bfffff diff --git a/none/tests/ppc32/jm-vmx.stdout.exp_Minus_nan b/none/tests/ppc32/jm-vmx.stdout.exp_Minus_nan index daf9261461..c3360e3179 100644 --- a/none/tests/ppc32/jm-vmx.stdout.exp_Minus_nan +++ b/none/tests/ppc32/jm-vmx.stdout.exp_Minus_nan @@ -2587,13 +2587,13 @@ Altivec floating point arith insns with one arg: vrfim: => ffffffff ffffffff ffffffff ffffffff (00000000) vrefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrefp: => 7c2aa900 7c2aa900 7c2aa900 7c2aa900 (00000000) + vrefp: => 7c2a8000 7c2a8000 7c2a8000 7c2a8000 (00000000) vrefp: 513fffff 513fffff 513fffff 513fffff - vrefp: => 2daaa900 2daaa900 2daaa900 2daaa900 (00000000) + vrefp: => 2daa8000 2daa8000 2daa8000 2daa8000 (00000000) vrefp: 82bfffff 82bfffff 82bfffff 82bfffff - vrefp: => fc2aa900 fc2aa900 fc2aa900 fc2aa900 (00000000) + vrefp: => fc2a8000 fc2a8000 fc2a8000 fc2a8000 (00000000) vrefp: d13fffff d13fffff d13fffff d13fffff - vrefp: => adaaa900 adaaa900 adaaa900 adaaa900 (00000000) + vrefp: => adaa8000 adaa8000 adaa8000 adaa8000 (00000000) vrefp: 00000000 00000000 00000000 00000000 vrefp: => 7f800000 7f800000 7f800000 7f800000 (00000000) vrefp: 80000000 80000000 80000000 80000000 @@ -2603,18 +2603,18 @@ Altivec floating point arith insns with one arg: vrefp: ff800000 ff800000 ff800000 ff800000 vrefp: => 80000000 80000000 80000000 80000000 (00000000) vrefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffffffff ffffffff ffffffff ffffffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrsqrtefp: => 5dd10300 5dd10300 5dd10300 5dd10300 (00000000) + vrsqrtefp: => 5dd10000 5dd10000 5dd10000 5dd10000 (00000000) vrsqrtefp: 513fffff 513fffff 513fffff 513fffff - vrsqrtefp: => 3693ca00 3693ca00 3693ca00 3693ca00 (00000000) + vrsqrtefp: => 3693c000 3693c000 3693c000 3693c000 (00000000) vrsqrtefp: 82bfffff 82bfffff 82bfffff 82bfffff vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: d13fffff d13fffff d13fffff d13fffff @@ -2628,13 +2628,13 @@ Altivec floating point arith insns with one arg: vrsqrtefp: ff800000 ff800000 ff800000 ff800000 vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffffffff ffffffff ffffffff ffffffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) Altivec floating point compare insns: vcmpgtfp: 02bfffff02bfffff02bfffff02bfffff, 02bfffff02bfffff02bfffff02bfffff diff --git a/none/tests/ppc64/jm-fp.stdout.exp b/none/tests/ppc64/jm-fp.stdout.exp index adbdabf377..00bd727771 100644 --- a/none/tests/ppc64/jm-fp.stdout.exp +++ b/none/tests/ppc64/jm-fp.stdout.exp @@ -719,8 +719,8 @@ PPC floating point arith insns with one arg: frsqrte 8000000000000000 => fff0000000000000 frsqrte 7ff0000000000000 => 0000000000000000 frsqrte fff0000000000000 => 7ff8000000000000 - frsqrte 7ff7ffffffffffff => 7fff800000000000 - frsqrte fff7ffffffffffff => ffff800000000000 + frsqrte 7ff7ffffffffffff => 7fff000000000000 + frsqrte fff7ffffffffffff => ffff000000000000 frsqrte 7ff8000000000000 => 7ff8000000000000 frsqrte fff8000000000000 => fff8000000000000 @@ -942,8 +942,8 @@ PPC floating point arith insns frsqrte. 8000000000000000 => fff0000000000000 frsqrte. 7ff0000000000000 => 0000000000000000 frsqrte. fff0000000000000 => 7ff8000000000000 - frsqrte. 7ff7ffffffffffff => 7fff800000000000 - frsqrte. fff7ffffffffffff => ffff800000000000 + frsqrte. 7ff7ffffffffffff => 7fff000000000000 + frsqrte. fff7ffffffffffff => ffff000000000000 frsqrte. 7ff8000000000000 => 7ff8000000000000 frsqrte. fff8000000000000 => fff8000000000000 diff --git a/none/tests/ppc64/jm-vmx.stdout.exp b/none/tests/ppc64/jm-vmx.stdout.exp index 0f95bd73f1..3e19e636d7 100644 --- a/none/tests/ppc64/jm-vmx.stdout.exp +++ b/none/tests/ppc64/jm-vmx.stdout.exp @@ -1517,7 +1517,6 @@ Altivec store insns with three register args: stvxl 7, f1f2f3f4 f5f6f7f8 f9fafbfc fefdfeff => f1f2f3f4 f5f6f7f8 f9fafbfc fefdfeff (00000000) stvxl 14, f1f2f3f4 f5f6f7f8 f9fafbfc fefdfeff => f1f2f3f4 f5f6f7f8 f9fafbfc fefdfeff (00000000) -Altivec floating point arith insns with three args: Altivec floating point arith insns with two args: vaddfp: 02bfffff02bfffff02bfffff02bfffff, 02bfffff02bfffff02bfffff02bfffff vaddfp: => 033fffff 033fffff 033fffff 033fffff (00000000) @@ -2588,13 +2587,13 @@ Altivec floating point arith insns with one arg: vrfim: => ffffffff ffffffff ffffffff ffffffff (00000000) vrefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrefp: => 7c2aa900 7c2aa900 7c2aa900 7c2aa900 (00000000) + vrefp: => 7c2a8000 7c2a8000 7c2a8000 7c2a8000 (00000000) vrefp: 513fffff 513fffff 513fffff 513fffff - vrefp: => 2daaa900 2daaa900 2daaa900 2daaa900 (00000000) + vrefp: => 2daa8000 2daa8000 2daa8000 2daa8000 (00000000) vrefp: 82bfffff 82bfffff 82bfffff 82bfffff - vrefp: => fc2aa900 fc2aa900 fc2aa900 fc2aa900 (00000000) + vrefp: => fc2a8000 fc2a8000 fc2a8000 fc2a8000 (00000000) vrefp: d13fffff d13fffff d13fffff d13fffff - vrefp: => adaaa900 adaaa900 adaaa900 adaaa900 (00000000) + vrefp: => adaa8000 adaa8000 adaa8000 adaa8000 (00000000) vrefp: 00000000 00000000 00000000 00000000 vrefp: => 7f800000 7f800000 7f800000 7f800000 (00000000) vrefp: 80000000 80000000 80000000 80000000 @@ -2604,18 +2603,18 @@ Altivec floating point arith insns with one arg: vrefp: ff800000 ff800000 ff800000 ff800000 vrefp: => 80000000 80000000 80000000 80000000 (00000000) vrefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffffffff ffffffff ffffffff ffffffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrsqrtefp: => 5dd10300 5dd10300 5dd10300 5dd10300 (00000000) + vrsqrtefp: => 5dd10000 5dd10000 5dd10000 5dd10000 (00000000) vrsqrtefp: 513fffff 513fffff 513fffff 513fffff - vrsqrtefp: => 3693ca00 3693ca00 3693ca00 3693ca00 (00000000) + vrsqrtefp: => 3693c000 3693c000 3693c000 3693c000 (00000000) vrsqrtefp: 82bfffff 82bfffff 82bfffff 82bfffff vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: d13fffff d13fffff d13fffff d13fffff @@ -2629,13 +2628,13 @@ Altivec floating point arith insns with one arg: vrsqrtefp: ff800000 ff800000 ff800000 ff800000 vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffffffff ffffffff ffffffff ffffffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) Altivec floating point compare insns: vcmpgtfp: 02bfffff02bfffff02bfffff02bfffff, 02bfffff02bfffff02bfffff02bfffff diff --git a/none/tests/ppc64/jm-vmx.stdout.exp_Minus_nan b/none/tests/ppc64/jm-vmx.stdout.exp_Minus_nan index daf9261461..c3360e3179 100644 --- a/none/tests/ppc64/jm-vmx.stdout.exp_Minus_nan +++ b/none/tests/ppc64/jm-vmx.stdout.exp_Minus_nan @@ -2587,13 +2587,13 @@ Altivec floating point arith insns with one arg: vrfim: => ffffffff ffffffff ffffffff ffffffff (00000000) vrefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrefp: => 7c2aa900 7c2aa900 7c2aa900 7c2aa900 (00000000) + vrefp: => 7c2a8000 7c2a8000 7c2a8000 7c2a8000 (00000000) vrefp: 513fffff 513fffff 513fffff 513fffff - vrefp: => 2daaa900 2daaa900 2daaa900 2daaa900 (00000000) + vrefp: => 2daa8000 2daa8000 2daa8000 2daa8000 (00000000) vrefp: 82bfffff 82bfffff 82bfffff 82bfffff - vrefp: => fc2aa900 fc2aa900 fc2aa900 fc2aa900 (00000000) + vrefp: => fc2a8000 fc2a8000 fc2a8000 fc2a8000 (00000000) vrefp: d13fffff d13fffff d13fffff d13fffff - vrefp: => adaaa900 adaaa900 adaaa900 adaaa900 (00000000) + vrefp: => adaa8000 adaa8000 adaa8000 adaa8000 (00000000) vrefp: 00000000 00000000 00000000 00000000 vrefp: => 7f800000 7f800000 7f800000 7f800000 (00000000) vrefp: 80000000 80000000 80000000 80000000 @@ -2603,18 +2603,18 @@ Altivec floating point arith insns with one arg: vrefp: ff800000 ff800000 ff800000 ff800000 vrefp: => 80000000 80000000 80000000 80000000 (00000000) vrefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffffffff ffffffff ffffffff ffffffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 02bfffff 02bfffff 02bfffff 02bfffff - vrsqrtefp: => 5dd10300 5dd10300 5dd10300 5dd10300 (00000000) + vrsqrtefp: => 5dd10000 5dd10000 5dd10000 5dd10000 (00000000) vrsqrtefp: 513fffff 513fffff 513fffff 513fffff - vrsqrtefp: => 3693ca00 3693ca00 3693ca00 3693ca00 (00000000) + vrsqrtefp: => 3693c000 3693c000 3693c000 3693c000 (00000000) vrsqrtefp: 82bfffff 82bfffff 82bfffff 82bfffff vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: d13fffff d13fffff d13fffff d13fffff @@ -2628,13 +2628,13 @@ Altivec floating point arith insns with one arg: vrsqrtefp: ff800000 ff800000 ff800000 ff800000 vrsqrtefp: => 7fc00000 7fc00000 7fc00000 7fc00000 (00000000) vrsqrtefp: 7fffffff 7fffffff 7fffffff 7fffffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffffffff ffffffff ffffffff ffffffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) vrsqrtefp: 7fbfffff 7fbfffff 7fbfffff 7fbfffff - vrsqrtefp: => 7fffff00 7fffff00 7fffff00 7fffff00 (00000000) + vrsqrtefp: => 7fffc000 7fffc000 7fffc000 7fffc000 (00000000) vrsqrtefp: ffbfffff ffbfffff ffbfffff ffbfffff - vrsqrtefp: => ffffff00 ffffff00 ffffff00 ffffff00 (00000000) + vrsqrtefp: => ffffc000 ffffc000 ffffc000 ffffc000 (00000000) Altivec floating point compare insns: vcmpgtfp: 02bfffff02bfffff02bfffff02bfffff, 02bfffff02bfffff02bfffff02bfffff -- 2.47.2