aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/alpha/fpu/fegetenv.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/alpha/fpu/fegetenv.c')
-rw-r--r--sysdeps/alpha/fpu/fegetenv.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/sysdeps/alpha/fpu/fegetenv.c b/sysdeps/alpha/fpu/fegetenv.c
index c8b705d230..63dc7ffaaf 100644
--- a/sysdeps/alpha/fpu/fegetenv.c
+++ b/sysdeps/alpha/fpu/fegetenv.c
@@ -1,5 +1,5 @@
/* Store current floating-point environment.
- Copyright (C) 1997 Free Software Foundation, Inc.
+ Copyright (C) 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson <rth@tamu.edu>, 1997
@@ -20,18 +20,25 @@
#include <fenv.h>
-void
-fegetenv (fenv_t *envp)
+int
+__fegetenv (fenv_t *envp)
{
- unsigned long fpcr, swcr;
+ unsigned long int fpcr;
+ unsigned long int swcr;
/* Get status from software and hardware. Note that we don't need an
excb because the callsys is an implied trap barrier. */
- swcr = __ieee_get_fp_control();
- __asm__ __volatile__("mf_fpcr %0" : "=f"(fpcr));
+ swcr = __ieee_get_fp_control ();
+ __asm__ __volatile__ ("mf_fpcr %0" : "=f" (fpcr));
/* Merge the two bits of information. The magic number at the end is
the exception enable mask. */
*envp = (fpcr & (3UL << 58)) | (swcr & (FE_ALL_EXCEPT | 0x3e));
+
+ /* Success. */
+ return 0;
}
+strong_alias (__fegetenv, __old_fegetenv)
+symbol_version (__old_fegetenv, fegetenv, GLIBC_2.1);
+default_symbol_version (__fegetenv, fegetenv, GLIBC_2.1.3);