summaryrefslogtreecommitdiff
path: root/math/auto-libm-test-in
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2013-12-18 17:59:29 +0000
committerJoseph Myers <joseph@codesourcery.com>2013-12-18 17:59:29 +0000
commitf889953b44da50bf8a7824c97d09dbe03fd11b83 (patch)
treed498fd7f8015c4de4f9fe5bfaf3b6bd476271dd7 /math/auto-libm-test-in
parent237764876709dfbd81ae9fc9f91ef7e496a3eb08 (diff)
Move tests of jn and yn from libm-test.inc to auto-libm-test-in.
This patch moves tests of jn and yn to auto-libm-test-in, adding the required support for gen-auto-libm-tests (and adding a missing assertion there and fixing logic that was broken for functions with integer arguments). Tested x86_64 and x86 and ulps updated accordingly. * math/auto-libm-test-in: Add tests of jn and yn. * math/auto-libm-test-out: Regenerated. * math/libm-test.inc (jn_test_data): Use AUTO_TESTS_if_f. (yn_test_data): Likewise. * math/gen-auto-libm-tests.c (func_calc_method): Add value mpfr_if_f. (func_calc_desc): Add mpfr_if_f union field. (FUNC_mpfr_if_f): New macro. (test_functions): Add jn and yn. (calc_generic_results): Assert type of second input for mpfr_ff_f. Handle mpfr_if_f. (output_for_one_input_case): Disable all checking for arguments fitting floating-point types in case of an integer argument. * sysdeps/i386/fpu/libm-test-ulps: Update. * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
Diffstat (limited to 'math/auto-libm-test-in')
-rw-r--r--math/auto-libm-test-in98
1 files changed, 98 insertions, 0 deletions
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
index 8b675e0fe4..50e0e6b628 100644
--- a/math/auto-libm-test-in
+++ b/math/auto-libm-test-in
@@ -352,6 +352,60 @@ j1 0x1p1023
j1 0x1p16382
j1 0x1p16383
+# jn (0, x) == j0 (x).
+jn 0 -1.0
+jn 0 0.0
+jn 0 0.125
+jn 0 0.75
+jn 0 1.0
+jn 0 1.5
+jn 0 2.0
+jn 0 8.0
+jn 0 10.0
+jn 0 4.0
+jn 0 -4.0
+
+# jn (1, x) == j1 (x).
+jn 1 -1.0
+jn 1 0.0
+jn 1 0.125
+jn 1 0.75
+jn 1 1.0
+jn 1 1.5
+jn 1 2.0
+jn 1 8.0
+jn 1 10.0
+
+jn 3 -1.0
+jn 3 0.0
+jn 3 0.125
+jn 3 0.75
+jn 3 1.0
+jn 3 2.0
+jn 3 10.0
+
+jn 10 -1.0
+jn 10 0.0
+jn 10 0.125
+jn 10 0.75
+jn 10 1.0
+jn 10 2.0
+jn 10 10.0
+
+jn 2 2.4048255576957729
+jn 3 2.4048255576957729
+jn 4 2.4048255576957729
+jn 5 2.4048255576957729
+jn 6 2.4048255576957729
+jn 7 2.4048255576957729
+jn 8 2.4048255576957729
+jn 9 2.4048255576957729
+
+jn 2 0x1.ffff62p+99
+jn 2 0x1p127
+jn 2 0x1p1023
+jn 2 0x1p16383
+
lgamma max
lgamma 1
lgamma 3
@@ -1406,3 +1460,47 @@ y1 0x1p-80
y1 0x1p-90
y1 0x1p-100
y1 0x1p-110
+
+# yn (0, x) == y0 (x).
+yn 0 0.125
+yn 0 0.75
+yn 0 1.0
+yn 0 1.5
+yn 0 2.0
+yn 0 8.0
+yn 0 10.0
+
+# yn (1, x) == y1 (x).
+yn 1 0.125
+yn 1 0.75
+yn 1 1.0
+yn 1 1.5
+yn 1 2.0
+yn 1 8.0
+yn 1 10.0
+
+# yn (-1, x) == -y1 (x).
+yn -1 1.0
+
+# yn (3, x).
+yn 3 0.125
+yn 3 0.75
+yn 3 1.0
+yn 3 2.0
+yn 3 10.0
+
+# yn (10, x).
+yn 10 0.125
+yn 10 0.75
+yn 10 1.0
+yn 10 2.0
+yn 10 10.0
+
+yn -10 1.0
+
+yn 10 min
+
+yn 2 0x1.ffff62p+99
+yn 2 0x1p127
+yn 2 0x1p1023
+yn 2 0x1p16383