This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/17748] fe* function calls yield link namespace conform failures on dbl-64 hosts
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Tue, 06 Jan 2015 23:37:23 +0000
- Subject: [Bug math/17748] fe* function calls yield link namespace conform failures on dbl-64 hosts
- Auto-submitted: auto-generated
- References: <bug-17748-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=17748
--- Comment #4 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 cd42798aef204592b0165bcfacef975ff3ce2973 (commit)
from 500bfbd4922902ea278adab06e58b77eb355ba82 (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=cd42798aef204592b0165bcfacef975ff3ce2973
commit cd42798aef204592b0165bcfacef975ff3ce2973
Author: Joseph Myers <joseph@codesourcery.com>
Date: Tue Jan 6 23:36:20 2015 +0000
Fix libm fesetenv namespace (bug 17748).
Continuing the fixes for C90 libm functions calling C99 fe* functions,
this patch fixes the case of fesetenv by making it a weak alias of
__fesetenv and making the affected code (including various copies of
feupdateenv which also gets called from C90 functions) call
__fesetenv.
Tested for x86_64 (testsuite, and that disassembly of installed shared
libraries is unchanged by the patch). Also tested for ARM
(soft-float) that fesetenv failures disappear from the linknamespace
test results (fsetround and feupdateenv remain to be addressed to
complete fixing bug 17748).
[BZ #17748]
* include/fenv.h (__fesetenv): Use libm_hidden_proto.
* math/fesetenv.c (__fesetenv): Use libm_hidden_def.
* sysdeps/aarch64/fpu/fesetenv.c (fesetenv): Rename to __fesetenv
and define as weak alias of __fesetenv. Use libm_hidden_weak.
* sysdeps/alpha/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
* sysdeps/arm/fesetenv.c (fesetenv): Rename to __fesetenv and
define as weak alias of __fesetenv. Use libm_hidden_weak.
* sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/i386/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
* sysdeps/ia64/fpu/fesetenv.c (fesetenv): Rename to __fesetenv and
define as weak alias of __fesetenv. Use libm_hidden_weak.
* sysdeps/m68k/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
* sysdeps/mips/fpu/fesetenv.c (fesetenv): Rename to __fesetenv and
define as weak alias of __fesetenv. Use libm_hidden_weak.
* sysdeps/powerpc/fpu/fesetenv.c (__fesetenv): Use
libm_hidden_def.
* sysdeps/powerpc/nofpu/fesetenv.c (__fesetenv): Likewise.
* sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c (__fesetenv):
Likewise.
* sysdeps/s390/fpu/fesetenv.c (fesetenv): Rename to __fesetenv and
define as weak alias of __fesetenv. Use libm_hidden_weak.
* sysdeps/sh/sh4/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/sparc/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
* sysdeps/tile/math_private.h (__fesetenv): New inline function.
* sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Rename to __fesetenv
and define as weak alias of __fesetenv. Use libm_hidden_weak.
* sysdeps/generic/math_private.h (default_libc_fesetenv): Use
__fesetenv instead of fesetenv.
(libc_feresetround_noex_ctx): Likewise.
* sysdeps/alpha/fpu/feupdateenv.c (__feupdateenv): Likewise.
* sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Likewise.
* sysdeps/i386/fpu/feupdateenv.c (__feupdateenv): Likewise.
* sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Likewise.
* sysdeps/m68k/fpu/feupdateenv.c (__feupdateenv): Likewise.
* sysdeps/mips/fpu/feupdateenv.c (feupdateenv): Likewise.
* sysdeps/powerpc/nofpu/feupdateenv.c (__feupdateenv): Likewise.
* sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c
(__feupdateenv): Likewise.
* sysdeps/s390/fpu/feupdateenv.c (feupdateenv): Likewise.
* sysdeps/sh/sh4/fpu/feupdateenv.c (feupdateenv): Likewise.
* sysdeps/sparc/fpu/feupdateenv.c (__feupdateenv): Likewise.
* sysdeps/x86_64/fpu/feupdateenv.c (__feupdateenv): Likewise.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 46 ++++++++++++++++++++
include/fenv.h | 1 +
math/fesetenv.c | 1 +
sysdeps/aarch64/fpu/fesetenv.c | 6 ++-
sysdeps/alpha/fpu/fesetenv.c | 1 +
sysdeps/alpha/fpu/feupdateenv.c | 2 +-
sysdeps/arm/fesetenv.c | 6 ++-
sysdeps/generic/math_private.h | 4 +-
sysdeps/hppa/fpu/fesetenv.c | 6 ++-
sysdeps/hppa/fpu/feupdateenv.c | 2 +-
sysdeps/i386/fpu/fesetenv.c | 1 +
sysdeps/i386/fpu/feupdateenv.c | 2 +-
sysdeps/ia64/fpu/fesetenv.c | 6 ++-
sysdeps/ia64/fpu/feupdateenv.c | 2 +-
sysdeps/m68k/fpu/fesetenv.c | 1 +
sysdeps/m68k/fpu/feupdateenv.c | 2 +-
sysdeps/mips/fpu/fesetenv.c | 6 ++-
sysdeps/mips/fpu/feupdateenv.c | 2 +-
sysdeps/powerpc/fpu/fesetenv.c | 1 +
sysdeps/powerpc/nofpu/fesetenv.c | 1 +
sysdeps/powerpc/nofpu/feupdateenv.c | 2 +-
sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c | 1 +
sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c | 2 +-
sysdeps/s390/fpu/fesetenv.c | 6 ++-
sysdeps/s390/fpu/feupdateenv.c | 2 +-
sysdeps/sh/sh4/fpu/fesetenv.c | 6 ++-
sysdeps/sh/sh4/fpu/feupdateenv.c | 2 +-
sysdeps/sparc/fpu/fesetenv.c | 1 +
sysdeps/sparc/fpu/feupdateenv.c | 2 +-
sysdeps/tile/math_private.h | 1 +
sysdeps/x86_64/fpu/fesetenv.c | 6 ++-
sysdeps/x86_64/fpu/feupdateenv.c | 2 +-
32 files changed, 102 insertions(+), 30 deletions(-)
--
You are receiving this mail because:
You are on the CC list for the bug.