diff options
author | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2013-11-13 06:45:19 -0600 |
---|---|---|
committer | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2013-11-13 06:45:19 -0600 |
commit | 7a2ad8cf392acfcaef319e722dda9101d4d8b6bd (patch) | |
tree | c525169182b6b1d21663865c26224974f4541aa1 /sysdeps/unix/sysv | |
parent | 50727aa76b42c3b989a8c0612eb7f63e29aa7fec (diff) | |
download | glibc-7a2ad8cf392acfcaef319e722dda9101d4d8b6bd.tar.gz glibc-7a2ad8cf392acfcaef319e722dda9101d4d8b6bd.tar.xz glibc-7a2ad8cf392acfcaef319e722dda9101d4d8b6bd.zip |
PowerPC: Fix __fe_mask_env export
This patch does not export __fe_mask_env anymore, only providing a compatibility symbol. It fixes BZ#14143.
Diffstat (limited to 'sysdeps/unix/sysv')
3 files changed, 10 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c index 94db79f8e7..dd3ec46b56 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c @@ -23,6 +23,7 @@ #include <sysdep.h> #include <sys/prctl.h> #include <kernel-features.h> +#include <shlib-compat.h> const fenv_t * __fe_nomask_env (void) @@ -32,4 +33,6 @@ __fe_nomask_env (void) return FE_ENABLED_ENV; } -libm_hidden_def (__fe_nomask_env) +#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_18) +compat_symbol (libm, __fe_nomask_env, __fe_nomask_env, GLIBC_2_1); +#endif diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c index 2ab5855005..1d579bfcca 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c @@ -27,9 +27,8 @@ const fenv_t * __fe_mask_env (void) { #if defined PR_SET_FPEXC && defined PR_FP_EXC_DISABLED - int result; INTERNAL_SYSCALL_DECL (err); - result = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_DISABLED); + INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_DISABLED); #else __set_errno (ENOSYS); #endif diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c index fd2ffb14f0..5172f6587e 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c @@ -22,17 +22,19 @@ #include <sys/syscall.h> #include <sys/prctl.h> #include <kernel-features.h> +#include <shlib-compat.h> const fenv_t * __fe_nomask_env (void) { #if defined PR_SET_FPEXC && defined PR_FP_EXC_PRECISE - int result; INTERNAL_SYSCALL_DECL (err); - result = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE); + INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE); #else __set_errno (ENOSYS); #endif return FE_ENABLED_ENV; } -libm_hidden_def (__fe_nomask_env) +#if SHLIB_COMPAT (libm, GLIBC_2_3, GLIBC_2_18) +compat_symbol (libm, __fe_nomask_env, __fe_nomask_env, GLIBC_2_3); +#endif |