1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

Make more libm tests condition exceptions tests with math-tests.h.

This commit is contained in:
Joseph Myers
2013-06-12 12:41:25 +00:00
parent e0e50a0a31
commit 94f2c07669
4 changed files with 66 additions and 51 deletions

View File

@ -1,3 +1,15 @@
2013-06-12 Joseph Myers <joseph@codesourcery.com>
* math/bug-nextafter.c: Include <math-tests.h>.
(main): Only test for exceptions if EXCEPTION_TESTS is true for
the relevant type.
* math/bug-nexttoward.c: Include <math-tests.h>.
(main): Only test for exceptions if EXCEPTION_TESTS is true for
the relevant type.
* math/test-misc.c: Include <math-tests.h>.
(main): Only test for exceptions if EXCEPTION_TESTS is true for
the relevant type.
2013-06-12 Andreas Jaeger <aj@suse.de> 2013-06-12 Andreas Jaeger <aj@suse.de>
* po/ia.po: Update Interlingua translation from translation * po/ia.po: Update Interlingua translation from translation

View File

@ -3,6 +3,7 @@
#include <float.h> #include <float.h>
#include <stdlib.h> #include <stdlib.h>
#include <stdio.h> #include <stdio.h>
#include <math-tests.h>
#if !defined(FE_OVERFLOW) && !defined(FE_UNDERFLOW) #if !defined(FE_OVERFLOW) && !defined(FE_UNDERFLOW)
/* If there's no support for the exceptions this test is checking, /* If there's no support for the exceptions this test is checking,
@ -26,7 +27,7 @@ main (void)
puts ("nextafterf+ failed"); puts ("nextafterf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nextafterf+ did not overflow"); puts ("nextafterf+ did not overflow");
++result; ++result;
@ -37,7 +38,7 @@ main (void)
puts ("nextafterf- failed"); puts ("nextafterf- failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nextafterf- did not overflow"); puts ("nextafterf- did not overflow");
++result; ++result;
@ -52,7 +53,7 @@ main (void)
puts ("nextafterf+ failed"); puts ("nextafterf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterf+ did not underflow"); puts ("nextafterf+ did not underflow");
++result; ++result;
@ -65,7 +66,7 @@ main (void)
puts ("nextafterf- failed"); puts ("nextafterf- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterf- did not underflow"); puts ("nextafterf- did not underflow");
++result; ++result;
@ -78,7 +79,7 @@ main (void)
puts ("nextafterf+ failed"); puts ("nextafterf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterf+ did not underflow"); puts ("nextafterf+ did not underflow");
++result; ++result;
@ -89,7 +90,7 @@ main (void)
puts ("nextafterf+ failed"); puts ("nextafterf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterf+ did not underflow"); puts ("nextafterf+ did not underflow");
++result; ++result;
@ -101,7 +102,7 @@ main (void)
puts ("nextafterf- failed"); puts ("nextafterf- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterf- did not underflow"); puts ("nextafterf- did not underflow");
++result; ++result;
@ -112,7 +113,7 @@ main (void)
puts ("nextafterf- failed"); puts ("nextafterf- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterf- did not underflow"); puts ("nextafterf- did not underflow");
++result; ++result;
@ -126,7 +127,7 @@ main (void)
puts ("nextafter+ failed"); puts ("nextafter+ failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nextafter+ did not overflow"); puts ("nextafter+ did not overflow");
++result; ++result;
@ -137,7 +138,7 @@ main (void)
puts ("nextafter failed"); puts ("nextafter failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nextafter- did not overflow"); puts ("nextafter- did not overflow");
++result; ++result;
@ -152,7 +153,7 @@ main (void)
puts ("nextafter+ failed"); puts ("nextafter+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafter+ did not underflow"); puts ("nextafter+ did not underflow");
++result; ++result;
@ -165,7 +166,7 @@ main (void)
puts ("nextafter- failed"); puts ("nextafter- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafter- did not underflow"); puts ("nextafter- did not underflow");
++result; ++result;
@ -178,7 +179,7 @@ main (void)
puts ("nextafter+ failed"); puts ("nextafter+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafter+ did not underflow"); puts ("nextafter+ did not underflow");
++result; ++result;
@ -189,7 +190,7 @@ main (void)
puts ("nextafter+ failed"); puts ("nextafter+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafter+ did not underflow"); puts ("nextafter+ did not underflow");
++result; ++result;
@ -201,7 +202,7 @@ main (void)
puts ("nextafter- failed"); puts ("nextafter- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafter- did not underflow"); puts ("nextafter- did not underflow");
++result; ++result;
@ -212,7 +213,7 @@ main (void)
puts ("nextafter- failed"); puts ("nextafter- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafter- did not underflow"); puts ("nextafter- did not underflow");
++result; ++result;
@ -227,7 +228,7 @@ main (void)
puts ("nextafterl+ failed"); puts ("nextafterl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nextafterl+ did not overflow"); puts ("nextafterl+ did not overflow");
++result; ++result;
@ -238,7 +239,7 @@ main (void)
puts ("nextafterl failed"); puts ("nextafterl failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nextafterl- did not overflow"); puts ("nextafterl- did not overflow");
++result; ++result;
@ -253,7 +254,7 @@ main (void)
puts ("nextafterl+ failed"); puts ("nextafterl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterl+ did not underflow"); puts ("nextafterl+ did not underflow");
++result; ++result;
@ -266,7 +267,7 @@ main (void)
puts ("nextafterl- failed"); puts ("nextafterl- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterl- did not underflow"); puts ("nextafterl- did not underflow");
++result; ++result;
@ -279,7 +280,7 @@ main (void)
puts ("nextafterl+ failed"); puts ("nextafterl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterl+ did not underflow"); puts ("nextafterl+ did not underflow");
++result; ++result;
@ -290,7 +291,7 @@ main (void)
puts ("nextafterl+ failed"); puts ("nextafterl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterl+ did not underflow"); puts ("nextafterl+ did not underflow");
++result; ++result;
@ -302,7 +303,7 @@ main (void)
puts ("nextafterl- failed"); puts ("nextafterl- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterl- did not underflow"); puts ("nextafterl- did not underflow");
++result; ++result;
@ -313,7 +314,7 @@ main (void)
puts ("nextafterl- failed"); puts ("nextafterl- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nextafterl- did not underflow"); puts ("nextafterl- did not underflow");
++result; ++result;

View File

@ -3,6 +3,7 @@
#include <float.h> #include <float.h>
#include <stdlib.h> #include <stdlib.h>
#include <stdio.h> #include <stdio.h>
#include <math-tests.h>
#if !defined(FE_OVERFLOW) && !defined(FE_UNDERFLOW) #if !defined(FE_OVERFLOW) && !defined(FE_UNDERFLOW)
/* If there's no support for the exceptions this test is checking, /* If there's no support for the exceptions this test is checking,
@ -27,7 +28,7 @@ main (void)
puts ("nexttowardf+ failed"); puts ("nexttowardf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nexttowardf+ did not overflow"); puts ("nexttowardf+ did not overflow");
++result; ++result;
@ -38,7 +39,7 @@ main (void)
puts ("nexttowardf- failed"); puts ("nexttowardf- failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nexttowardf- did not overflow"); puts ("nexttowardf- did not overflow");
++result; ++result;
@ -53,7 +54,7 @@ main (void)
puts ("nexttowardf+ failed"); puts ("nexttowardf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardf+ did not underflow"); puts ("nexttowardf+ did not underflow");
++result; ++result;
@ -66,7 +67,7 @@ main (void)
puts ("nexttowardf- failed"); puts ("nexttowardf- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardf- did not underflow"); puts ("nexttowardf- did not underflow");
++result; ++result;
@ -79,7 +80,7 @@ main (void)
puts ("nexttowardf+ failed"); puts ("nexttowardf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardf+ did not underflow"); puts ("nexttowardf+ did not underflow");
++result; ++result;
@ -90,7 +91,7 @@ main (void)
puts ("nexttowardf+ failed"); puts ("nexttowardf+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardf+ did not underflow"); puts ("nexttowardf+ did not underflow");
++result; ++result;
@ -102,7 +103,7 @@ main (void)
puts ("nexttowardf- failed"); puts ("nexttowardf- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardf- did not underflow"); puts ("nexttowardf- did not underflow");
++result; ++result;
@ -113,7 +114,7 @@ main (void)
puts ("nexttowardf- failed"); puts ("nexttowardf- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardf- did not underflow"); puts ("nexttowardf- did not underflow");
++result; ++result;
@ -128,7 +129,7 @@ main (void)
puts ("nexttoward+ failed"); puts ("nexttoward+ failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nexttoward+ did not overflow"); puts ("nexttoward+ did not overflow");
++result; ++result;
@ -139,7 +140,7 @@ main (void)
puts ("nexttoward- failed"); puts ("nexttoward- failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nexttoward- did not overflow"); puts ("nexttoward- did not overflow");
++result; ++result;
@ -154,7 +155,7 @@ main (void)
puts ("nexttoward+ failed"); puts ("nexttoward+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttoward+ did not underflow"); puts ("nexttoward+ did not underflow");
++result; ++result;
@ -167,7 +168,7 @@ main (void)
puts ("nexttoward- failed"); puts ("nexttoward- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttoward- did not underflow"); puts ("nexttoward- did not underflow");
++result; ++result;
@ -180,7 +181,7 @@ main (void)
puts ("nexttoward+ failed"); puts ("nexttoward+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttoward+ did not underflow"); puts ("nexttoward+ did not underflow");
++result; ++result;
@ -191,7 +192,7 @@ main (void)
puts ("nexttoward+ failed"); puts ("nexttoward+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttoward+ did not underflow"); puts ("nexttoward+ did not underflow");
++result; ++result;
@ -203,7 +204,7 @@ main (void)
puts ("nexttoward- failed"); puts ("nexttoward- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttoward- did not underflow"); puts ("nexttoward- did not underflow");
++result; ++result;
@ -214,7 +215,7 @@ main (void)
puts ("nexttoward- failed"); puts ("nexttoward- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttoward- did not underflow"); puts ("nexttoward- did not underflow");
++result; ++result;
@ -229,7 +230,7 @@ main (void)
puts ("nexttowardl+ failed"); puts ("nexttowardl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nexttowardl+ did not overflow"); puts ("nexttowardl+ did not overflow");
++result; ++result;
@ -240,7 +241,7 @@ main (void)
puts ("nexttowardl failed"); puts ("nexttowardl failed");
++result; ++result;
} }
if (fetestexcept (FE_OVERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_OVERFLOW) == 0)
{ {
puts ("nexttowardl- did not overflow"); puts ("nexttowardl- did not overflow");
++result; ++result;
@ -255,7 +256,7 @@ main (void)
puts ("nexttowardl+ failed"); puts ("nexttowardl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardl+ did not underflow"); puts ("nexttowardl+ did not underflow");
++result; ++result;
@ -268,7 +269,7 @@ main (void)
puts ("nexttowardl- failed"); puts ("nexttowardl- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardl- did not underflow"); puts ("nexttowardl- did not underflow");
++result; ++result;
@ -281,7 +282,7 @@ main (void)
puts ("nexttowardl+ failed"); puts ("nexttowardl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardl+ did not underflow"); puts ("nexttowardl+ did not underflow");
++result; ++result;
@ -292,7 +293,7 @@ main (void)
puts ("nexttowardl+ failed"); puts ("nexttowardl+ failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardl+ did not underflow"); puts ("nexttowardl+ did not underflow");
++result; ++result;
@ -304,7 +305,7 @@ main (void)
puts ("nexttowardl- failed"); puts ("nexttowardl- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardl- did not underflow"); puts ("nexttowardl- did not underflow");
++result; ++result;
@ -315,7 +316,7 @@ main (void)
puts ("nexttowardl- failed"); puts ("nexttowardl- failed");
++result; ++result;
} }
if (fetestexcept (FE_UNDERFLOW) == 0) if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{ {
puts ("nexttowardl- did not underflow"); puts ("nexttowardl- did not underflow");
++result; ++result;

View File

@ -22,6 +22,7 @@
#include <math.h> #include <math.h>
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
#include <math-tests.h>
int int
@ -1188,7 +1189,7 @@ main (void)
f2 += f1; f2 += f1;
#if defined(FE_OVERFLOW) && defined(FE_INEXACT) #if defined(FE_OVERFLOW) && defined(FE_INEXACT)
int fe = fetestexcept (FE_ALL_EXCEPT); int fe = fetestexcept (FE_ALL_EXCEPT);
if (fe != (FE_OVERFLOW | FE_INEXACT)) if (EXCEPTION_TESTS (float) && fe != (FE_OVERFLOW | FE_INEXACT))
{ {
printf ("float overflow test failed: %x\n", fe); printf ("float overflow test failed: %x\n", fe);
result = 1; result = 1;
@ -1203,7 +1204,7 @@ main (void)
d2 += d1; d2 += d1;
#if defined(FE_OVERFLOW) && defined(FE_INEXACT) #if defined(FE_OVERFLOW) && defined(FE_INEXACT)
fe = fetestexcept (FE_ALL_EXCEPT); fe = fetestexcept (FE_ALL_EXCEPT);
if (fe != (FE_OVERFLOW | FE_INEXACT)) if (EXCEPTION_TESTS (double) && fe != (FE_OVERFLOW | FE_INEXACT))
{ {
printf ("double overflow test failed: %x\n", fe); printf ("double overflow test failed: %x\n", fe);
result = 1; result = 1;
@ -1219,7 +1220,7 @@ main (void)
ld2 += ld1; ld2 += ld1;
# if defined(FE_OVERFLOW) && defined(FE_INEXACT) # if defined(FE_OVERFLOW) && defined(FE_INEXACT)
fe = fetestexcept (FE_ALL_EXCEPT); fe = fetestexcept (FE_ALL_EXCEPT);
if (fe != (FE_OVERFLOW | FE_INEXACT)) if (EXCEPTION_TESTS (long double) && fe != (FE_OVERFLOW | FE_INEXACT))
{ {
printf ("long double overflow test failed: %x\n", fe); printf ("long double overflow test failed: %x\n", fe);
result = 1; result = 1;