This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH: [BZ #14803] Different ULPs depending on size of long intin GCC


On Wed, Nov 28, 2012 at 9:38 AM, Joseph S. Myers
<joseph@codesourcery.com> 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,
>
>         /* coefficient for R(x^2) */
>
>

I have been sidetracked.  I appreciate it.


-- 
H.J.


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