summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2016-11-04 17:19:13 +0000
committerJoseph Myers <joseph@codesourcery.com>2016-11-04 17:19:13 +0000
commit860aacdad2d52af48bc549650726b29510feaba6 (patch)
tree9917522a27a71d263d632c4ca218c6be744e6a2f
parent799131036e53c0536d0ce796e705f8dc295eeba2 (diff)
Fix alpha sqrt fegetenv namespace (bug 20768).
On alpha, sqrt (a C90 function) brings in references to fegetenv (C99), resulting in linknamespace test failures: [initial] __sqrt -> [libm.a(w_sqrt.o)] __ieee754_sqrt -> [libm.a(e_sqrt.o)] __feholdexcept -> [libm.a(feholdexcpt.o)] fegetenv This patch fixes this by making __feholdexcept call __fegetenv instead of fegetenv. Tested for Alpha (compilation only). [BZ #20768] * sysdeps/alpha/fpu/feholdexcpt.c (__feholdexcept): Call __fegetenv instead of fegetenv.
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/alpha/fpu/feholdexcpt.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 45e7364e8b..3cf5347e01 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2016-11-04 Joseph Myers <joseph@codesourcery.com>
+ [BZ #20768]
+ * sysdeps/alpha/fpu/feholdexcpt.c (__feholdexcept): Call
+ __fegetenv instead of fegetenv.
+
[BZ #14139]
* manual/libm-err-tab.pl (%pplatforms): Initialize to empty.
(find_files): Obtain platform name from libm-test-ulps-name and
diff --git a/sysdeps/alpha/fpu/feholdexcpt.c b/sysdeps/alpha/fpu/feholdexcpt.c
index 019d30b5a2..36bb0514b5 100644
--- a/sysdeps/alpha/fpu/feholdexcpt.c
+++ b/sysdeps/alpha/fpu/feholdexcpt.c
@@ -23,7 +23,7 @@ int
__feholdexcept (fenv_t *envp)
{
/* Save the current state. */
- fegetenv(envp);
+ __fegetenv(envp);
/* Clear all exception status bits and exception enable bits. */
__ieee_set_fp_control(*envp & SWCR_MAP_MASK);