Fix alpha sqrt fegetenv namespace (bug 20768) [committed]
Joseph Myers
joseph@codesourcery.com
Fri Nov 4 17:20:00 GMT 2016
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). Committed.
2016-11-04 Joseph Myers <joseph@codesourcery.com>
[BZ #20768]
* sysdeps/alpha/fpu/feholdexcpt.c (__feholdexcept): Call
__fegetenv instead of fegetenv.
diff --git a/sysdeps/alpha/fpu/feholdexcpt.c b/sysdeps/alpha/fpu/feholdexcpt.c
index 019d30b..36bb051 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);
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list