Fix x86/x86_64 expm1 inaccuracy near 0 in directed rounding modes (bug 16293)
Andreas Jaeger
aj@suse.com
Thu Dec 19 14:06:00 GMT 2013
On 12/19/2013 02:14 AM, Joseph S. Myers wrote:
> Bug 16293 is inaccuracy of x86/x86_64 versions of expm1, near 0 in
> directed rounding modes, that arises from frndint rounding the
> exponent to 1 or -1 instead of 0, resulting in large cancellation
> error. This inaccuracy in turn affects other functions such as sinh
> that use expm1. This patch fixes the problem by setting
> round-to-nearest mode temporarily around the affected calls to
> frndint. I don't think this is needed for other uses of frndint, such
> as in exp itself, as only for expm1 is the cancellation error
> significant.
ok, thanks,
Andreas
--
Andreas Jaeger aj@{suse.com,opensuse.org} Twitter: 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