--- Comment #8 from eli dot osherovich at gmail dot com 2010-03-19 13:27
---
(In reply to comment #6)
Also: 1e22 is not exactly representable as a floating point number. By
consequence, 1e22 is different numbers when stored as a double or a
long double, and we should expect
--- Comment #9 from eli dot osherovich at gmail dot com 2010-03-19 13:29
---
(In reply to comment #7)
Subject: Re: sinl is not computed correctly
On Thu, 18 Mar 2010, bangerth at gmail dot com wrote:
Also: 1e22 is not exactly representable as a floating point number. By
--- Comment #6 from bangerth at gmail dot com 2010-03-18 20:47 ---
Also: 1e22 is not exactly representable as a floating point number. By
consequence, 1e22 is different numbers when stored as a double or a
long double, and we should expect different results when applying the
sine to it.
--- Comment #7 from joseph at codesourcery dot com 2010-03-18 21:36 ---
Subject: Re: sinl is not computed correctly
On Thu, 18 Mar 2010, bangerth at gmail dot com wrote:
Also: 1e22 is not exactly representable as a floating point number. By
5**22 is smaller than 2**53, so 1e22 (=
--- Comment #1 from eli dot osherovich at gmail dot com 2010-03-17 15:29
---
Created an attachment (id=20131)
-- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20131action=view)
testcase as a standalone file
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43405
--- Comment #2 from pluto at agmk dot net 2010-03-17 17:28 ---
this is a bug in glibc-2.11.1/sysdeps/x86_64/fpu/s_sinl.S
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43405
--- Comment #3 from ebotcazou at gcc dot gnu dot org 2010-03-17 17:34
---
Glibc is a separate project, see http://sources.redhat.com/bugzilla/
--
ebotcazou at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #4 from pluto at agmk dot net 2010-03-17 17:51 ---
more details...
intel (24319101.pdf) manual describe requirements for fsin opcode:
Calculates the sine of the source operand in register ST(0) and stores
the result in ST(0). The source operand must be given in radians
--- Comment #5 from eli dot osherovich at gmail dot com 2010-03-17 18:05
---
The very same code compiled by the Intel C compiler runs as expected.
Moreover, the prototype of sinl is as follows
long double sinl(long double x);
and 1e22 definitely withing the bounds of long double.