Avoid test failures on some PowerPC hardwares.
authorBruno Haible <bruno@clisp.org>
Mon, 4 Jun 2007 22:58:09 +0000 (22:58 +0000)
committerBruno Haible <bruno@clisp.org>
Mon, 4 Jun 2007 22:58:09 +0000 (22:58 +0000)
ChangeLog
tests/test-frexpl.c
tests/test-printf-frexpl.c

index c9fa72a..a159fc6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2007-06-04  Bruno Haible  <bruno@clisp.org>
+
+       Avoid test failures on some PowerPC platforms.
+       * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
+       Define differently for PowerPC.
+       * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
+       Reported by Gary V. Vaughan <gary@gnu.org>.
+
 2007-06-02  Bruno Haible  <bruno@clisp.org>
 
        Fix test-stdint failure on FreeBSD/ia64.
index 93cfa14..f1446fe 100644 (file)
   while (0)
 
 /* On MIPS IRIX machines, LDBL_MIN_EXP is -1021, but the smallest reliable
-   exponent for 'long double' is -964.  For exponents below that, the
-   precision may be truncated to the precision used for 'double'.  */
+   exponent for 'long double' is -964.  Similarly, on PowerPC machines,
+   LDBL_MIN_EXP is -1021, but the smallest reliable exponent for 'long double'
+   is -968.  For exponents below that, the precision may be truncated to the
+   precision used for 'double'.  */
 #ifdef __sgi
 # define MIN_NORMAL_EXP (LDBL_MIN_EXP + 57)
+#elif defined __ppc || defined __ppc__ || defined __powerpc || defined __powerpc__
+# define MIN_NORMAL_EXP (LDBL_MIN_EXP + 53)
 #else
 # define MIN_NORMAL_EXP LDBL_MIN_EXP
 #endif
index fe481ee..2c1b1eb 100644 (file)
   while (0)
 
 /* On MIPS IRIX machines, LDBL_MIN_EXP is -1021, but the smallest reliable
-   exponent for 'long double' is -964.  For exponents below that, the
-   precision may be truncated to the precision used for 'double'.  */
+   exponent for 'long double' is -964.  Similarly, on PowerPC machines,
+   LDBL_MIN_EXP is -1021, but the smallest reliable exponent for 'long double'
+   is -968.  For exponents below that, the precision may be truncated to the
+   precision used for 'double'.  */
 #ifdef __sgi
 # define MIN_NORMAL_EXP (LDBL_MIN_EXP + 57)
 # define MIN_SUBNORMAL_EXP MIN_NORMAL_EXP
+#elif defined __ppc || defined __ppc__ || defined __powerpc || defined __powerpc__
+# define MIN_NORMAL_EXP (LDBL_MIN_EXP + 53)
+# define MIN_SUBNORMAL_EXP MIN_NORMAL_EXP
 #else
 # define MIN_NORMAL_EXP LDBL_MIN_EXP
 # define MIN_SUBNORMAL_EXP (LDBL_MIN_EXP - 100)