aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@redhat.com>2013-06-05 13:56:19 +0530
committerSiddhesh Poyarekar <siddhesh@redhat.com>2013-06-05 13:56:19 +0530
commit4c60cb0c8329dd498e9cce3735e5ee6212ad28f4 (patch)
tree34449764655642b4e2736978a865a28c79911e64 /sysdeps
parent96df079a42018f92a609a69b236c1184c9928b99 (diff)
downloadglibc-4c60cb0c8329dd498e9cce3735e5ee6212ad28f4.zip
glibc-4c60cb0c8329dd498e9cce3735e5ee6212ad28f4.tar.gz
glibc-4c60cb0c8329dd498e9cce3735e5ee6212ad28f4.tar.bz2
Skip modifying exception mask and flags in SET_RESTORE_ROUND_53BIT
We only need to set/restore rounding mode to ensure correct computation for non-default rounding modes.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/math_private.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/sysdeps/generic/math_private.h b/sysdeps/generic/math_private.h
index 9d6ecad..e98360d 100644
--- a/sysdeps/generic/math_private.h
+++ b/sysdeps/generic/math_private.h
@@ -446,8 +446,8 @@ default_libc_feholdexcept_setround (fenv_t *e, int r)
# define libc_feholdexcept_setroundl default_libc_feholdexcept_setround
#endif
-#ifndef libc_feholdexcept_setround_53bit
-# define libc_feholdexcept_setround_53bit libc_feholdexcept_setround
+#ifndef libc_feholdsetround_53bit
+# define libc_feholdsetround_53bit libc_feholdsetround
#endif
#ifndef libc_fetestexcept
@@ -492,8 +492,8 @@ default_libc_feupdateenv (fenv_t *e)
# define libc_feupdateenvl default_libc_feupdateenv
#endif
-#ifndef libc_feupdateenv_53bit
-# define libc_feupdateenv_53bit libc_feupdateenv
+#ifndef libc_feresetround_53bit
+# define libc_feresetround_53bit libc_feresetround
#endif
static __always_inline int
@@ -580,8 +580,8 @@ default_libc_feupdateenv_test (fenv_t *e, int ex)
/* Like SET_RESTORE_ROUND, but also set rounding precision to 53 bits. */
#define SET_RESTORE_ROUND_53BIT(RM) \
- fenv_t __libc_save_rm __attribute__((cleanup(libc_feupdateenv_53bit))); \
- libc_feholdexcept_setround_53bit (&__libc_save_rm, (RM))
+ fenv_t __libc_save_rm __attribute__((cleanup(libc_feresetround_53bit))); \
+ libc_feholdsetround_53bit (&__libc_save_rm, (RM))
#define __nan(str) \
(__builtin_constant_p (str) && str[0] == '\0' ? NAN : __nan (str))