diff options
author | Siddhesh Poyarekar <siddhesh@redhat.com> | 2013-09-19 16:54:23 +0530 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@redhat.com> | 2013-09-19 16:54:24 +0530 |
commit | cfa3c8865ff8519f5110c5c261eb8cd7ded144aa (patch) | |
tree | 45ec742ac2751c3a7d0e8f87207f4f40284daff3 | |
parent | b348e1e3a62c593fc3a6b26dbb8199b2aba3e056 (diff) | |
download | glibc-cfa3c8865ff8519f5110c5c261eb8cd7ded144aa.tar.gz glibc-cfa3c8865ff8519f5110c5c261eb8cd7ded144aa.tar.xz glibc-cfa3c8865ff8519f5110c5c261eb8cd7ded144aa.zip |
New test cases for sin and cos for multiple precision fallback
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | math/libm-test.inc | 18 |
2 files changed, 21 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index e6645991bd..37a60589ec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2013-09-19 Siddhesh Poyarekar <siddhesh@redhat.com> + * math/libm-test.inc (cos_test_data): New test inputs. + (sin_test_data): Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c (SINCOS_TABLE_LOOKUP): New macro. (__sin): Use it. diff --git a/math/libm-test.inc b/math/libm-test.inc index fe85bb9f1d..2cb3d2c614 100644 --- a/math/libm-test.inc +++ b/math/libm-test.inc @@ -6836,6 +6836,14 @@ static const struct test_f_f_data cos_test_data[] = TEST_f_f (cos, 0x1.fffffep+127, 8.53021039830304158051791467692161107353094e-01L), TEST_f_f (cos, 0x1p+50, 8.68095904660550604334592502063501320395739e-01L), TEST_f_f (cos, 0x1p+28, -1.65568979490578758865468278195361551113358e-01L), + +#ifdef TEST_DOUBLE + TEST_f_f (cos, 0x1.000000cf4a2a2p0, 0x1.14a27f9e7521ep-1); + TEST_f_f (cos, 0x1.0000010b239a9p0, 0x1.14a27f39bc09dp-1); + TEST_f_f (cos, 0x1.00000162a932bp0, 0x1.14a27ea670b8cp-1); + TEST_f_f (cos, 0x1.000002d452a10p0, 0x1.14a27c385222ep-1); + TEST_f_f (cos, 0x1.000005bc7d86dp0, 0x1.14a27753ee07ap-1); +#endif }; static void @@ -13305,6 +13313,16 @@ static const struct test_f_f_data sin_test_data[] = TEST_f_f (sin, 0x1.fffffep+127, -5.21876523333658540551505357019806722935726e-01L), TEST_f_f (sin, 0x1p+50, 4.96396515208940840876821859865411368093356e-01L), TEST_f_f (sin, 0x1p+28, -9.86198211836975655703110310527108292055548e-01L), + +#ifdef TEST_DOUBLE + TEST_f_f (sin, 0.93340582292648832662962377071381, 0x1.9b78326675a75p-1); + TEST_f_f (sin, 2.3328432680770916363144351635128, 0x1.7264abddb4205p-1); + TEST_f_f (sin, 3.7439477503636453548097051680088, -0x1.2217622485d94p-1); + TEST_f_f (sin, 3.9225160069792437411706487182528, -0x1.686a3d55a1306p-1); + TEST_f_f (sin, 4.0711651639931289992091478779912, -0x1.9a4c6be7f5eadp-1); + TEST_f_f (sin, 4.7858438478542097982426639646292, -0x1.fe9e8d4105e51p-1); + TEST_f_f (sin, 5.9840767662578002727968851104379, -0x1.2dbd90aa4d692p-2); +#endif }; static void |