This is the mail archive of the glibc-bugs@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]

[Bug math/16353] expm1 missing underflows


https://sourceware.org/bugzilla/show_bug.cgi?id=16353

--- Comment #8 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  4060283decf711ed95a6c4993ffeaba39f8cd40a (commit)
      from  e7dd3c8c1db8c6d293abb995e033893b7328ad19 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4060283decf711ed95a6c4993ffeaba39f8cd40a

commit 4060283decf711ed95a6c4993ffeaba39f8cd40a
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Tue Jun 24 21:00:08 2014 +0000

    Fix x86/x86_64 expm1l spurious underflow exceptions (bug 16539).

    This patch fixes bug 16539, spurious underflow exceptions from x86 /
    x86-64 expm1l.  The problem is that the computation of a base-2
    exponent with extra precision involves spurious underflows for
    arguments that are small but not subnormal, so a check is added to
    just return the argument in those cases.  (If the argument *is*
    subnormal, underflowing is correct and the existing code will always
    underflow, so it suffices to keep using the existing code in that
    case; some expm1 implementations have a bug (bug 16353) with missing
    underflow exceptions, but I don't think there's such a bug in this
    particular version.)

    Tested x86_64 and x86; no ulps updates needed.

    (auto-libm-test-out diffs omitted below.)

        [BZ #16539]
        * sysdeps/i386/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]: Just
        return the argument for normal arguments with exponent below -64.
        * sysdeps/x86_64/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]:
        Likewise.
        * math/auto-libm-test-in: Add another test of expm1.
        * math/auto-libm-test-out: Regenerated.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                   |    8 ++++
 NEWS                        |   22 ++++++------
 math/auto-libm-test-in      |    2 +
 math/auto-libm-test-out     |   81 +++++++++++++++++++++++++++++++++++++++++++
 sysdeps/i386/fpu/e_expl.S   |   10 +++++
 sysdeps/x86_64/fpu/e_expl.S |   10 +++++
 6 files changed, 122 insertions(+), 11 deletions(-)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


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