This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: [ballen@uwm.edu] libc/2269: triginometric argument reductionerror in libm
- To: Ulrich Drepper <drepper at cygnus dot com>
- Subject: Re: [ballen@uwm.edu] libc/2269: triginometric argument reductionerror in libm
- From: Bruce Allen <ballen at gravity dot phys dot uwm dot edu>
- Date: Sun, 20 May 2001 18:50:29 -0500 (CDT)
- cc: Bruce Allen <ballen at gravity dot phys dot uwm dot edu>, Geoff Keating <geoffk at redhat dot com>, aj at suse dot de, libc-alpha at sources dot redhat dot com, ballen at uwm dot edu, moshier at mediaone dot net
On 20 May 2001, Ulrich Drepper wrote:
> Bruce Allen <ballen@gravity.phys.uwm.edu> writes:
>
> > (1) The sin and other trig functions have exact values for all normalized
> > IEEE floats.
>
> This is absolutely beside the point. If you have a computation where
> you need trigonometric functions and you have values large enough to
> have problems with the range reduction, your computations are already
> so completely wrong that it is of no help to slow down the
> implementations of the trigonometric functions. Fix your program.
As I said in my original posting, I am not interested in this line of
discussion and I'm not going to carry on this line of discussion further.
Just because IEEE floating-point numbers do not subsample the real numbers
with fine resolution (eg, smaller than 2pi or some other value) does NOT
mean that users are not relying on the accuracy of these functions for the
real numbers that ARE sampled by IEEE floats or doubles.
You may lack the imagination to conceive of applications where this
behavior is crucial. Fortunately the committee that wrote the IEEE754
standard had more imagination and didn't leave it to our discretion.
Since it's clear that much of the floating point code in libm comes from
Sun Microsystems, and since they support Solaris on Intel, wouldn't a
simple solution be to use *their* large argument code?
Bruce