This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Re: Fourth Draft wrote:
> The internal value of pi is not exact, but it should have 66
> bits of significance, on any processor model of the last 7
> years, so it is difficult for a user program to perform much
> more accurate range reduction.

It's not necessarily difficult.
User programs that actually need this measure the angles in fractions
of a revolution or in degrees, which are easy units to reduce, or they
already compute the angles in extended precision.

>  The one commonly used range
> reduction based on i386 internals which is deficient is the
> one used in exp(), where glibc takes the short cut in its
> external function and does not necessarily get more than float
> precision.

If you have a bug to report, please send in a specific description.
This is getting far off topic, but I have recently tested the standard
i386 exponential functions in glibc and improved the long double range
reduction in expl; but the float expf and double exp versions seemed
to have no problem.  There might be several other exponential
functions in there that weren't tested, so your bug report needs to
specify a test case, target machine, and compilation particulars.

That's good news, if an improvement to exp() has been accepted in glibc.  I didn't see any such news on glibc mailing lists, and it  hasn't penetrated to stock CD binaries AFAIK.  I'll try a newer linux some day when commercial compilers move ahead.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]