[BZ #13837]
authorAndreas Jaeger <aj@suse.de>
Thu, 15 Mar 2012 13:34:03 +0000 (14:34 +0100)
committerAndreas Jaeger <aj@suse.de>
Thu, 15 Mar 2012 13:34:34 +0000 (14:34 +0100)
* math/libm-test.inc (cos_test): Add a test case for large input
value.
(sin_test): Likewise.
(sincos_test): Likewise.

ChangeLog
math/libm-test.inc

index 89c6a25..90a056b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,41 @@
+2012-03-15  Andreas Jaeger  <aj@suse.de>
+
+       [BZ #13837]
+       * math/libm-test.inc (cos_test): Add a test case for large input
+       value.
+       (sin_test): Likewise.
+       (sincos_test): Likewise.
+
+2012-03-15  Andreas Jaeger  <aj@suse.de>,
+       Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #13658]
+       * sysdeps/x86_64/fpu/s_sincos.S: Delete Remove files so that
+       x86-64 and i386 use the iee754/dbl-64 sin and cos implementation.
+       * sysdeps/i386/fpu/branred.c: Likewise.
+       * sysdeps/i386/fpu/dosincos.c: Likewise.
+       * sysdeps/i386/fpu/mpa.c: Likewise.
+       * sysdeps/i386/fpu/s_cos.S: Likewise.
+       * sysdeps/i386/fpu/s_sin.S: Likewise.
+       * sysdeps/i386/fpu/s_sincos.S: Likewise.
+       * sysdeps/i386/fpu/sincos32.c: Likewise.
+
+       * sysdeps/generic/math_private.h (libc_feholdexcept_setround_53bit):
+       Define.
+       (libc_feupdateenv_53bit): Define.
+       * sysdeps/i386/fpu/math_private.h (libc_feholdexcept_setround_53bit):
+       Define.
+       (libc_feupdateenv_53bit): Define.
+
+       * sysdeps/ieee754/dbl-64/s_sin.c (__sin): Do double arithmetic in
+       53 bit (without extend i386 double precision).
+
+       * math/libm-test.inc (sincos_test): Add tests for large input.
+       (sin): Likewise.
+       (cos): Likewise.
+
+       * sysdeps/i386/fpu/libm-test-ulps: Update ULPs.
+
 2012-03-15  Andreas Schwab  <schwab@linux-m68k.org>
 
        * sysdeps/powerpc/fpu/libm-test-ulps: Update.
index 8882833..0801ca6 100644 (file)
@@ -2115,6 +2115,7 @@ cos_test (void)
 #ifdef TEST_DOUBLE
   TEST_f_f (cos, 0.80190127184058835, 0.69534156199418473);
   TEST_f_f (cos, 1e22, 0.5232147853951389454975944733847);
+  TEST_f_f (cos, 0x1p1023, -0.8263698346141479945007856808117);
 #endif
 
   END (cos);
@@ -6392,6 +6393,7 @@ sin_test (void)
   TEST_f_f (sin, 0.80190127184058835, 0.71867942238767868);
   TEST_f_f (sin, 2.522464e-1, 2.4957989804940911e-1);
   TEST_f_f (sin, 1e22, -0.8522008497671888017727058937530);
+  TEST_f_f (sin, 0x1p1023, 0.5631277798508840248814522055909);
 #endif
 
   END (sin);
@@ -6564,6 +6566,7 @@ sincos_test (void)
 #ifdef TEST_DOUBLE
   TEST_extra (sincos, 0.80190127184058835, 0.71867942238767868, 0.69534156199418473);
   TEST_extra (sincos, 1e22, -0.8522008497671888017727058937530, 0.5232147853951389454975944733847);
+  TEST_extra (sincos, 0x1p1023, 0.5631277798508840248814522055909, -0.8263698346141479945007856808117);
 #endif
 
   END (sincos);