This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Fix for bz#13658 - using fsincos on x86-64
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Andreas Jaeger <aj at suse dot com>
- Cc: libc-alpha at sourceware dot org, Carlos O'Donell <carlos at systemhalted dot org>, jakub at redhat dot com, Andreas Schwab <schwab at redhat dot com>
- Date: Wed, 7 Mar 2012 13:51:34 +0000 (UTC)
- Subject: Re: Fix for bz#13658 - using fsincos on x86-64
- References: <4F343F56.3040402@suse.com> <Pine.LNX.4.64.1202241729460.31204@digraph.polyomino.org.uk><Pine.LNX.4.64.1203062047350.17270@digraph.polyomino.org.uk><201203071440.43961.aj@suse.com>
On Wed, 7 Mar 2012, Andreas Jaeger wrote:
> So, the result has nothing to do with the expected result. The test
> passes on x86-64.
>
> I could add the testcase and the fix for x86-64 and not run it on i386 -
> or only run it on x86-64. What do you propose?
Is this failing on i386 with sysdeps/i386/fpu/s_sincos.S removed? Because
I'd expect both x86-64 and i386 to need the same fix at the same time.
Actually it looks like s_sincos.c is using __sin and __cos - meaning that
i386 would need s_sin.S and s_cos.S removed as well. But I'd guess that
sin and cos have the same problems for large inputs (insufficiently
accurate range reduction) as sincos and so that making i386 follow x86-64
in using the generic dbl-64 versions of those functions would also be an
improvement.
(Eventually all of sin, cos, tan, sincos should have testcases for large
inputs covering all of float, double, long double - but that will need
quite a few more fixes including ldbl-96 implementations of a few
functions. So I think we should get in the minimum that can be done
incrementally, then follow up later with more fixes and tests for more
functions, for more input formats.)
--
Joseph S. Myers
joseph@codesourcery.com