New test cases for sin and cos for multiple precision fallback
authorSiddhesh Poyarekar <siddhesh@redhat.com>
Thu, 19 Sep 2013 11:24:23 +0000 (16:54 +0530)
committerSiddhesh Poyarekar <siddhesh@redhat.com>
Thu, 19 Sep 2013 11:24:24 +0000 (16:54 +0530)
ChangeLog
math/libm-test.inc

index e664599..37a6058 100644 (file)
--- 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.
index fe85bb9..2cb3d2c 100644 (file)
@@ -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