diff options
-rw-r--r-- | newlib/ChangeLog | 5 | ||||
-rw-r--r-- | newlib/libm/machine/spu/headers/feholdexcept.h | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 70db12e18..880810c34 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +2007-04-25 Patrick Mansfield <patmans@us.ibm.com> + + * libm/machine/spu/headers/feholdexcept.h: Use *envp not env so + we clear the proper bits in the fpscr, and don't set some random ones. + 2007-04-24 Eric Blake <ebb9@byu.net> * libc/stdio/vfprintf.c (_VFPRINTF_R): Don't zero pad on infinity diff --git a/newlib/libm/machine/spu/headers/feholdexcept.h b/newlib/libm/machine/spu/headers/feholdexcept.h index d75695afa..9f6bd521b 100644 --- a/newlib/libm/machine/spu/headers/feholdexcept.h +++ b/newlib/libm/machine/spu/headers/feholdexcept.h @@ -44,7 +44,7 @@ static __inline int _feholdexcept(fenv_t *envp) fpscr = spu_mffpscr(); *envp = __pack_fpscr(fpscr); - env = env & ~FE_ALL_EXCEPT; + env = *envp & ~FE_ALL_EXCEPT; spu_mtfpscr(__unpack_fpscr(env)); return (0); } |