Fix ARM fenv.h fallbacks when excepts == 0.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 7 Jan 2011 01:42:06 +0000 (01:42 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 7 Jan 2011 01:42:06 +0000 (01:42 +0000)
ChangeLog.arm
sysdeps/arm/eabi/fclrexcpt.c
sysdeps/arm/eabi/fraiseexcpt.c
sysdeps/arm/eabi/fsetexcptflg.c

index d02f269..8951801 100644 (file)
@@ -1,3 +1,10 @@
+2011-01-07  Joseph Myers  <joseph@codesourcery.com>
+
+       * sysdeps/arm/eabi/fclrexcpt.c (__feclearexcept): Return zero if
+       unsupported but nothing needs to be done.
+       * sysdeps/arm/eabi/fraiseexcpt.c (feraiseexcept): Likewise.
+       * sysdeps/arm/eabi/fsetexcptflg.c (__fesetexceptflag): Likewise.
+
 2010-12-21  Joseph Myers  <joseph@codesourcery.com>
 
        * sysdeps/arm/stackinfo.h: Define DEFAULT_STACK_PERMS with PF_X.
index 8287dc6..0bdd6a1 100644 (file)
@@ -1,5 +1,5 @@
 /* Clear given exceptions in current floating-point environment.
-   Copyright (C) 1997,98,99,2000,01,05 Free Software Foundation, Inc.
+   Copyright (C) 1997,98,99,2000,01,05,11 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -48,8 +48,8 @@ __feclearexcept (int excepts)
       return 0;
     }
 
-  /* Unsupported, so fail.  */
-  return 1;
+  /* Unsupported, so fail unless nothing needs to be done.  */
+  return (excepts != 0);
 }
 
 #include <shlib-compat.h>
index 53ccd9d..78441ec 100644 (file)
@@ -1,5 +1,5 @@
 /* Raise given exceptions.
-   Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2005, 2011 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -103,8 +103,8 @@ feraiseexcept (int excepts)
       return 0;
     }
 
-  /* Unsupported, so fail.  */
-  return 1;
+  /* Unsupported, so fail unless nothing needs to be done.  */
+  return (excepts != 0);
 }
 
 libm_hidden_def (feraiseexcept)
index 3dfeb2c..28966bb 100644 (file)
@@ -1,5 +1,5 @@
 /* Set floating-point environment exception handling.
-   Copyright (C) 1997,98,99,2000,01,05,08 Free Software Foundation, Inc.
+   Copyright (C) 1997,98,99,2000,01,05,08,11 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -47,8 +47,8 @@ __fesetexceptflag (const fexcept_t *flagp, int excepts)
       return 0;
     }
 
-  /* Unsupported, so fail.  */
-  return 1;
+  /* Unsupported, so fail unless nothing needs to be done.  */
+  return (excepts != 0);
 }
 
 #include <shlib-compat.h>