about summary refs log tree commit diff
path: root/sysdeps/ia64/fpu/fgetexcptflg.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ia64/fpu/fgetexcptflg.c')
-rw-r--r--sysdeps/ia64/fpu/fgetexcptflg.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sysdeps/ia64/fpu/fgetexcptflg.c b/sysdeps/ia64/fpu/fgetexcptflg.c
index 555530762d..46a04e3f2c 100644
--- a/sysdeps/ia64/fpu/fgetexcptflg.c
+++ b/sysdeps/ia64/fpu/fgetexcptflg.c
@@ -28,7 +28,7 @@ fegetexceptflag (fexcept_t *flagp, int excepts)
   /* Get the current exceptions.  */
   __asm__ __volatile__ ("mov.m %0=ar.fpsr" : "=r" (fpsr));
 
-  *flagp = (fpsr ^ FE_ALL_EXCEPT) & excepts & FE_ALL_EXCEPT;
+  *flagp = (fexcept_t) ((fpsr >> 13) & excepts & FE_ALL_EXCEPT);
 
   /* Success.  */
   return 0;