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/17748] fe* function calls yield link namespace conform failures on dbl-64 hosts


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

--- Comment #5 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  01238691bb03f0110455b663439eecf9a58c8f83 (commit)
      from  cd42798aef204592b0165bcfacef975ff3ce2973 (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=01238691bb03f0110455b663439eecf9a58c8f83

commit 01238691bb03f0110455b663439eecf9a58c8f83
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Wed Jan 7 00:41:23 2015 +0000

    Fix libm fesetround namespace (bug 17748).

    Continuing the fixes for C90 libm functions calling C99 fe* functions,
    this patch fixes the case of fesetround by making it a weak alias of
    __fesetround and making the affected code call __fesetround.  An
    existing __fesetround function in fenv_libc.h for powerpc is renamed
    to __fesetround_inline.

    Tested for x86_64 (testsuite, and that disassembly of installed shared
    libraries is unchanged by the patch).  Also tested for ARM
    (soft-float) that fesetround failures disappear from the linknamespace
    test results (feupdateenv remains to be addressed to complete fixing
    bug 17748).

        [BZ #17748]
        * include/fenv.h (__fesetround): Declare.  Use libm_hidden_proto.
        * math/fesetround.c (fesetround): Rename to __fesetround and
        define as weak alias of __fesetround.  Use libm_hidden_weak.
        * sysdeps/aarch64/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/alpha/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/arm/fesetround.c (fesetround): Likewise.
        * sysdeps/hppa/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/i386/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/ia64/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/m68k/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/mips/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/powerpc/fpu/fenv_libc.h (__fesetround): Rename to
        __fesetround_inline.
        * sysdeps/powerpc/fpu/fenv_private.h (libc_fesetround_ppc): Call
        __fesetround_inline instead of __fesetround.
        * sysdeps/powerpc/fpu/fesetround.c (fesetround): Rename to
        __fesetround and define as weak alias of __fesetround.  Use
        libm_hidden_weak.  Call __fesetround_inline instead of
        __fesetround.
        * sysdeps/powerpc/nofpu/fesetround.c (fesetround): Rename to
        __fesetround and define as weak alias of __fesetround.  Use
        libm_hidden_weak.
        * sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c (fesetround):
        Likewise.
        * sysdeps/s390/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/sh/sh4/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/sparc/fpu/fesetround.c (fesetround): Likewise.
        * sysdeps/tile/math_private.h (__fesetround): New inline function.
        * sysdeps/x86_64/fpu/fesetround.c (fesetround): Rename to
        __fesetround and define as weak alias of __fesetround.  Use
        libm_hidden_weak.
        * sysdeps/generic/math_private.h (default_libc_fesetround): Call
        __fesetround instead of fesetround.
        (default_libc_feholdexcept_setround): Likewise.
        (libc_feholdsetround_ctx): Likewise.
        (libc_feholdsetround_noex_ctx): Likewise.

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

Summary of changes:
 ChangeLog                                         |   38 +++++++++++++++++++++
 include/fenv.h                                    |    2 +
 math/fesetround.c                                 |    6 ++-
 sysdeps/aarch64/fpu/fesetround.c                  |    6 ++-
 sysdeps/alpha/fpu/fesetround.c                    |    6 ++-
 sysdeps/arm/fesetround.c                          |    6 ++-
 sysdeps/generic/math_private.h                    |    8 ++--
 sysdeps/hppa/fpu/fesetround.c                     |    6 ++-
 sysdeps/i386/fpu/fesetround.c                     |    6 ++-
 sysdeps/ia64/fpu/fesetround.c                     |    6 ++-
 sysdeps/m68k/fpu/fesetround.c                     |    6 ++-
 sysdeps/mips/fpu/fesetround.c                     |    6 ++-
 sysdeps/powerpc/fpu/fenv_libc.h                   |    2 +-
 sysdeps/powerpc/fpu/fenv_private.h                |    2 +-
 sysdeps/powerpc/fpu/fesetround.c                  |    8 +++--
 sysdeps/powerpc/nofpu/fesetround.c                |    6 ++-
 sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c |    6 ++-
 sysdeps/s390/fpu/fesetround.c                     |    6 ++-
 sysdeps/sh/sh4/fpu/fesetround.c                   |    6 ++-
 sysdeps/sparc/fpu/fesetround.c                    |    6 ++-
 sysdeps/tile/math_private.h                       |    1 +
 sysdeps/x86_64/fpu/fesetround.c                   |    6 ++-
 22 files changed, 112 insertions(+), 39 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]