svn commit: r292802 - stable/9/tools/regression/lib/msun
Garrett Cooper
ngie at FreeBSD.org
Sun Dec 27 21:34:38 UTC 2015
Author: ngie
Date: Sun Dec 27 21:34:37 2015
New Revision: 292802
URL: https://svnweb.freebsd.org/changeset/base/292802
Log:
MFstable/10 r292795:
MFC r292491,r292493,r292496:
r292491:
Disable test-ctrig.t testcases which fail assertions on i386 [*]
Also, don't compile the exp2l(3) testcases on platforms that don't support the
libcall (technically only x86 right now). This makes this test buildable on
arm*/mips*/powerpc*
Tested on: stable/10 (amd64/i386), head (amd64/i386)
PR: 205446 [*]
X-MFC to: stable/10
Sponsored by: EMC / Isilon Storage Division
r292493:
Don't run test-fma on i386
It completely fails all assertions on i386 on both stable/9 and stable/10
PR: 205448
X-MFC to: stable/10
Sponsored by: EMC / Isilon Storage Division
r292496:
Skip the testcases on i386 (all the assertions fail) [*]
Also, don't compile the ldexpl(3) testcases on platforms that don't support
the libcall (technically only x86 right now). This makes this test buildable on
arm*/mips*/powerpc*
PR: 205449 [*]
Tested on: stable/10 (amd64/i386), head (amd64/i386)
Sponsored by: EMC / Isilon Storage Division
Modified:
stable/9/tools/regression/lib/msun/test-exponential.c
stable/9/tools/regression/lib/msun/test-invtrig.c
Directory Properties:
stable/9/ (props changed)
stable/9/tools/ (props changed)
stable/9/tools/regression/ (props changed)
Modified: stable/9/tools/regression/lib/msun/test-exponential.c
==============================================================================
--- stable/9/tools/regression/lib/msun/test-exponential.c Sun Dec 27 21:17:30 2015 (r292801)
+++ stable/9/tools/regression/lib/msun/test-exponential.c Sun Dec 27 21:34:37 2015 (r292802)
@@ -67,13 +67,22 @@ __FBSDID("$FreeBSD$");
} while (0)
/* Test all the functions that compute b^x. */
-#define testall0(x, result, exceptmask, excepts) do { \
+#define _testall0(x, result, exceptmask, excepts) do { \
test(exp, x, result, exceptmask, excepts); \
test(expf, x, result, exceptmask, excepts); \
test(exp2, x, result, exceptmask, excepts); \
test(exp2f, x, result, exceptmask, excepts); \
+} while (0)
+
+/* Skip over exp2l on platforms that don't support it. */
+#if LDBL_PREC == 53
+#define testall0 _testall0
+#else
+#define testall0(x, result, exceptmask, excepts) do { \
+ _testall0(x, result, exceptmask, excepts); \
test(exp2l, x, result, exceptmask, excepts); \
} while (0)
+#endif
/* Test all the functions that compute b^x - 1. */
#define testall1(x, result, exceptmask, excepts) do { \
@@ -114,12 +123,14 @@ run_generic_tests(void)
testall0(-INFINITY, 0.0, ALL_STD_EXCEPT, 0);
testall1(-INFINITY, -1.0, ALL_STD_EXCEPT, 0);
+#if !defined(__i386__)
/* exp(big) == Inf, overflow exception */
testall0(50000.0, INFINITY, ALL_STD_EXCEPT & ~FE_INEXACT, FE_OVERFLOW);
testall1(50000.0, INFINITY, ALL_STD_EXCEPT & ~FE_INEXACT, FE_OVERFLOW);
/* exp(small) == 0, underflow and inexact exceptions */
testall0(-50000.0, 0.0, ALL_STD_EXCEPT, FE_UNDERFLOW | FE_INEXACT);
+#endif
testall1(-50000.0, -1.0, ALL_STD_EXCEPT, FE_INEXACT);
}
Modified: stable/9/tools/regression/lib/msun/test-invtrig.c
==============================================================================
--- stable/9/tools/regression/lib/msun/test-invtrig.c Sun Dec 27 21:17:30 2015 (r292801)
+++ stable/9/tools/regression/lib/msun/test-invtrig.c Sun Dec 27 21:34:37 2015 (r292802)
@@ -64,14 +64,23 @@ __FBSDID("$FreeBSD$");
#define test(func, x, result, excepts) \
test_tol(func, (x), (result), 0, (excepts))
-#define testall_tol(prefix, x, result, tol, excepts) do { \
+#define _testall_tol(prefix, x, result, tol, excepts) do { \
test_tol(prefix, (double)(x), (double)(result), \
(tol) * ldexp(1.0, 1 - DBL_MANT_DIG), (excepts)); \
test_tol(prefix##f, (float)(x), (float)(result), \
(tol) * ldexpf(1.0, 1 - FLT_MANT_DIG), (excepts)); \
+} while (0)
+
+#if LDBL_PREC == 53
+#define testall_tol _testall_tol
+#else
+#define testall_tol(prefix, x, result, tol, excepts) do { \
+ _testall_tol(prefix, x, result, tol, excepts); \
test_tol(prefix##l, (x), (result), \
(tol) * ldexpl(1.0, 1 - LDBL_MANT_DIG), (excepts)); \
} while (0)
+#endif
+
#define testall(prefix, x, result, excepts) \
testall_tol(prefix, (x), (result), 0, (excepts))
@@ -84,14 +93,23 @@ __FBSDID("$FreeBSD$");
#define test2(func, y, x, result, excepts) \
test2_tol(func, (y), (x), (result), 0, (excepts))
-#define testall2_tol(prefix, y, x, result, tol, excepts) do { \
+#define _testall2_tol(prefix, y, x, result, tol, excepts) do { \
test2_tol(prefix, (double)(y), (double)(x), (double)(result), \
(tol) * ldexp(1.0, 1 - DBL_MANT_DIG), (excepts)); \
test2_tol(prefix##f, (float)(y), (float)(x), (float)(result), \
(tol) * ldexpf(1.0, 1 - FLT_MANT_DIG), (excepts)); \
+} while (0)
+
+#if LDBL_PREC == 53
+#define testall2_tol _testall2_tol
+#else
+#define testall2_tol(prefix, y, x, result, tol, excepts) do { \
+ _testall2_tol(prefix, y, x, result, tol, excepts); \
test2_tol(prefix##l, (y), (x), (result), \
(tol) * ldexpl(1.0, 1 - LDBL_MANT_DIG), (excepts)); \
} while (0)
+#endif
+
#define testall2(prefix, y, x, result, excepts) \
testall2_tol(prefix, (y), (x), (result), 0, (excepts))
@@ -459,6 +477,11 @@ int
main(int argc, char *argv[])
{
+#if defined(__i386__)
+ printf("1..0 # SKIP fails all assertions on i386\n");
+ return (0);
+#endif
+
printf("1..7\n");
test_special();
More information about the svn-src-stable-9
mailing list