aboutsummaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
Diffstat (limited to 'math')
-rw-r--r--math/test-misc.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/math/test-misc.c b/math/test-misc.c
index 8968b80662..09812a3ccf 100644
--- a/math/test-misc.c
+++ b/math/test-misc.c
@@ -30,7 +30,7 @@ do_test (void)
{
int result = 0;
-#ifndef NO_LONG_DOUBLE
+#if LDBL_MANT_DIG > DBL_MANT_DIG
{
long double x = 0x100000001ll + (long double) 0.5;
long double q;
@@ -60,7 +60,7 @@ do_test (void)
# elif LDBL_MANT_DIG == 113
m = 0x1.ffffffffffffffffffffffffffffp-1L;
# else
-# error "Please adjust"
+# error "Unsupported LDBL_MANT_DIG, please adjust"
# endif
for (i = LDBL_MAX_EXP, x = LDBL_MAX; i >= LDBL_MIN_EXP; --i, x /= 2.0L)
@@ -720,7 +720,7 @@ do_test (void)
}
}
-#ifndef NO_LONG_DOUBLE
+#if LDBL_MANT_DIG > DBL_MANT_DIG
{
long double v1, v2;
@@ -910,7 +910,7 @@ do_test (void)
puts ("isnormal (DBL_MIN) failed");
result = 1;
}
-#ifndef NO_LONG_DOUBLE
+#if LDBL_MANT_DIG > DBL_MANT_DIG
if (! isnormal (LDBL_MIN))
{
puts ("isnormal (LDBL_MIN) failed");
@@ -960,7 +960,7 @@ do_test (void)
}
#endif
-#ifndef NO_LONG_DOUBLE
+#if LDBL_MANT_DIG > DBL_MANT_DIG
{
long double r;
@@ -1027,7 +1027,7 @@ do_test (void)
puts ("nextafter -DBL_MIN test failed");
result = 1;
}
-#ifndef NO_LONG_DOUBLE
+#if LDBL_MANT_DIG > DBL_MANT_DIG
if (nextafterl (nextafterl (LDBL_MIN, LDBL_MIN / 2.0), LDBL_MIN)
!= LDBL_MIN)
{
@@ -1072,7 +1072,7 @@ do_test (void)
}
#endif
-#ifndef NO_LONG_DOUBLE
+#if LDBL_MANT_DIG > DBL_MANT_DIG
volatile long double ld1 = LDBL_MAX;
volatile long double ld2 = LDBL_MAX / 2;
(void) &ld1;
@@ -1087,9 +1087,8 @@ do_test (void)
result = 1;
}
# endif
-#endif
-#if !defined NO_LONG_DOUBLE && LDBL_MANT_DIG == 113
+# if LDBL_MANT_DIG == 113
volatile long double ld3 = 0x1.0000000000010000000100000001p+1;
volatile long double ld4 = 0x1.0000000000000000000000000001p+1;
(void) &ld3;
@@ -1100,14 +1099,13 @@ do_test (void)
printf ("long double subtraction test failed %.28La\n", ld3);
result = 1;
}
-#endif
+# endif
/* Skip testing IBM long double format, for 2 reasons:
1) it only supports FE_TONEAREST
2) nextafter (0.0, 1.0) == nextafterl (0.0L, 1.0L), so
nextafter (0.0, 1.0) / 16.0L will be 0.0L. */
-#if !defined NO_LONG_DOUBLE && LDBL_MANT_DIG >= DBL_MANT_DIG + 4 \
- && LDBL_MANT_DIG != 106
+# if LDBL_MANT_DIG >= DBL_MANT_DIG + 4 && LDBL_MANT_DIG != 106
int oldmode = fegetround ();
int j;
for (j = 0; j < 4; j++)
@@ -1197,6 +1195,7 @@ do_test (void)
else
puts ("ignoring this failure");
}
+# endif
#endif
return result;