Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread Dave Korn
On 04/02/2012 10:20, James Courtier-Dutton wrote: >> #include >> #include >> >> int main (void) >> { >> double x, c, s; >> volatile double v; >> >> x = 1.0e22; >> s = sin (x); >> printf ("sin(%.17g) = %.17g\n", x, s); >> >> v = x; >> x = v; >> c = cos (x); >> s = sin (x); >> printf ("s

Re: about hosting the gcc.

2012-02-04 Thread Gerald Pfeifer
On Fri, 20 Jan 2012, Santosh Sharma Poudel wrote: > You wish to host a new mirror site, in my area. Below mention is my > personal detail. > > Name: Santosh Sharma poudel > City: kathmandu. > Country: Nepal. Thank you for the offer. That probably will be our highest altitude mirror. :-) Please

gcc-4.7-20120204 is now available

2012-02-04 Thread gccadmin
Snapshot gcc-4.7-20120204 is now available on ftp://gcc.gnu.org/pub/gcc/snapshots/4.7-20120204/ and on various mirrors, see http://gcc.gnu.org/mirrors.html for details. This snapshot has been generated from the GCC 4.7 SVN branch with the following options: svn://gcc.gnu.org/svn/gcc/trunk

Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread Robert Dewar
On 2/4/2012 9:57 AM, Andreas Schwab wrote: \ How can the sine function know which of the millions of numbers represented by 0x1.0f0cf064dd591p+73 are meant? Applying the sine to this interval covers the whole result domain of the function. The idea that an IEEE number necessarily represents an

Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread Andreas Schwab
Robert Dewar writes: > On 2/4/2012 9:09 AM, Andreas Schwab wrote: >> Robert Dewar writes: >> >>> But if you write a literal that can be represented exactly, then it is >>> perfectly reasonable to expect trig functions to give the proper >>> result, which is unambiguous in this case. >> >> How do

Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread Robert Dewar
On 2/4/2012 9:09 AM, Andreas Schwab wrote: Robert Dewar writes: But if you write a literal that can be represented exactly, then it is perfectly reasonable to expect trig functions to give the proper result, which is unambiguous in this case. How do you know that the number is exact? Sorry

Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread Andreas Schwab
Robert Dewar writes: > But if you write a literal that can be represented exactly, then it is > perfectly reasonable to expect trig functions to give the proper > result, which is unambiguous in this case. How do you know that the number is exact? Andreas. -- Andreas Schwab, sch...@linux-m68k

Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread Robert Dewar
On 2/4/2012 7:00 AM, Andreas Schwab wrote: Vincent Lefevre writes: Wrong. 53 bits of precision. And 10^22 is the last power of 10 exactly representable in double precision (FYI, this example has been chosen because of this property). But it is indistinguishable from 10^22+pi. So both -0.852

Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread Andreas Schwab
Vincent Lefevre writes: > Wrong. 53 bits of precision. And 10^22 is the last power of 10 > exactly representable in double precision (FYI, this example has > been chosen because of this property). But it is indistinguishable from 10^22+pi. So both -0.8522008497671888 and 0.8522008497671888 are

Re: weird optimization in sin+cos, x86 backend

2012-02-04 Thread James Courtier-Dutton
On 4 February 2012 00:06, Vincent Lefevre wrote: > On 2012-02-03 17:40:05 +0100, Dominique Dhumieres wrote: >> While I fail to see how the "correct value" of >> cos(4.47460300787e+182)+sin(4.47460300787e+182) >> can be defined in the 'double' world, cos^2(x)+sin^2(x)=1 and >> sin(2*x)=2*sin(x)*cos