summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorngie <ngie@FreeBSD.org>2015-12-20 04:52:53 +0000
committerngie <ngie@FreeBSD.org>2015-12-20 04:52:53 +0000
commit01ee8dcf4c4011cf5d502f9625eea391ab82e71e (patch)
treeb767b41437998650ac3ee76f677fa20fa3ee88eb /tools
parent4aecd6d888d21b4638abb5b48b1cb4d3b64b99fe (diff)
downloadFreeBSD-src-01ee8dcf4c4011cf5d502f9625eea391ab82e71e.zip
FreeBSD-src-01ee8dcf4c4011cf5d502f9625eea391ab82e71e.tar.gz
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 [*] MFC after: 1 week Tested on: stable/10 (amd64/i386), head (amd64/i386) Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'tools')
-rw-r--r--tools/regression/lib/msun/test-invtrig.c27
1 files changed, 25 insertions, 2 deletions
diff --git a/tools/regression/lib/msun/test-invtrig.c b/tools/regression/lib/msun/test-invtrig.c
index 9b41fd5..01b0379 100644
--- a/tools/regression/lib/msun/test-invtrig.c
+++ b/tools/regression/lib/msun/test-invtrig.c
@@ -61,14 +61,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))
@@ -81,14 +90,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))
@@ -429,6 +447,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();
OpenPOWER on IntegriCloud