This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Fix yn overflow handling in non-default rounding modes (bug 16561, bug 16562)
- From: Andreas Jaeger <aj at suse dot com>
- To: "Joseph S. Myers" <joseph at codesourcery dot com>, libc-alpha at sourceware dot org
- Date: Fri, 27 Jun 2014 15:38:54 +0200
- Subject: Re: Fix yn overflow handling in non-default rounding modes (bug 16561, bug 16562)
- Authentication-results: sourceware.org; auth=none
- References: <Pine dot LNX dot 4 dot 64 dot 1406232334560 dot 28255 at digraph dot polyomino dot org dot uk>
On 06/24/2014 01:35 AM, Joseph S. Myers wrote:
> This patch fixes bugs 16561 and 16562, bad results of yn in overflow
> cases in non-default rounding modes, both because an intermediate
> overflow in the recurrence does not get detected if the result is not
> an infinity and because an overflowing result may occur in the wrong
> sign. The fix is to set FE_TONEAREST mode internally for the parts of
> the function where such overflows can occur (which includes the call
> to y1 - where yn is used to compute a Bessel function of order -1,
> negating the result of y1 isn't correct for overflowing results in
> directed rounding modes) and then compute an overflowing value in the
> original rounding mode if the to-nearest result was an infinity.
>
> Tested x86_64 and x86 and ulps updated accordingly. Also tested for
> mips64 and powerpc32 to test the ldbl-128 and ldbl-128ibm changes.
thanks,
Andreas
--
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