Fix ARM fenv.h fallbacks when excepts == 0.

This commit is contained in:
Joseph Myers 2011-01-07 01:42:06 +00:00
parent 4f46492730
commit 038f24265e
4 changed files with 16 additions and 9 deletions

View 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.

View 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>

View 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)

View 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>