PATCH: [BZ #14803] Different ULPs depending on size of long int in GCC
Andreas Jaeger
aj@suse.com
Wed Nov 28 20:46:00 GMT 2012
On 11/28/2012 06:38 PM, Joseph S. Myers wrote:
> This discussion tailed off. I propose this specific patch that
> converts all three constants to the hex float values I gave in
> <http://sourceware.org/ml/libc-alpha/2012-11/msg00183.html>, computed
> using MPFR with the program given there. Tested x86_64 and x86.
>
> 2012-11-28 Joseph Myers <joseph@codesourcery.com>
>
> [BZ #14803]
> * sysdeps/ieee754/ldbl-96/e_asinl.c (pio2_hi): Use hex float value
> of pi/2 rounded to nearest to 64 bits.
> (pio2_lo): Use hex float value of pi/2 - pio2_hi rounded to
> nearest to 64 bits.
> (pio4_hi): Use hex float value of pi/4 rounded to nearest to 64
> bits.
>
> diff --git a/sysdeps/ieee754/ldbl-96/e_asinl.c b/sysdeps/ieee754/ldbl-96/e_asinl.c
> index c33701f..21be255 100644
> --- a/sysdeps/ieee754/ldbl-96/e_asinl.c
> +++ b/sysdeps/ieee754/ldbl-96/e_asinl.c
> @@ -64,9 +64,9 @@
> static const long double
> one = 1.0L,
> huge = 1.0e+4932L,
> - pio2_hi = 1.5707963267948966192021943710788178805159986950457096099853515625L,
> - pio2_lo = 2.9127320560933561582586004641843300502121E-20L,
> - pio4_hi = 7.8539816339744830960109718553940894025800E-1L,
> + pio2_hi = 0x1.921fb54442d1846ap+0L,
> + pio2_lo = -0x7.6733ae8fe47c65d8p-68L,
> + pio4_hi = 0xc.90fdaa22168c235p-4L,
Could you add comments about what the values are actually? Just say
"pi/2" etc like in the changes file.
Fine with that change,
Andreas
> /* coefficient for R(x^2) */
>
>
--
Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg)
GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126
More information about the Libc-alpha
mailing list