diff options
author | Marcus Shawcroft <marcus.shawcroft@arm.com> | 2014-05-19 09:08:59 +0100 |
---|---|---|
committer | Marcus Shawcroft <marcus.shawcroft@arm.com> | 2014-05-19 09:08:59 +0100 |
commit | 18f8524d2cf5e9f699055ed2c2cdeb56cd3b4cc4 (patch) | |
tree | 92b5d3167160de1067a52ba0fec81393f8e196cf /sysdeps/arm/fsetexcptflg.c | |
parent | 834caf06f33d79be54cff63c274fba2845513593 (diff) | |
download | glibc-18f8524d2cf5e9f699055ed2c2cdeb56cd3b4cc4.tar.gz glibc-18f8524d2cf5e9f699055ed2c2cdeb56cd3b4cc4.tar.xz glibc-18f8524d2cf5e9f699055ed2c2cdeb56cd3b4cc4.zip |
Revert "ARM: Improve fenv implementation"
This reverts commit c0c08d02c82275353f5c556f935a1a01714d9d7f.
Diffstat (limited to 'sysdeps/arm/fsetexcptflg.c')
-rw-r--r-- | sysdeps/arm/fsetexcptflg.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/sysdeps/arm/fsetexcptflg.c b/sysdeps/arm/fsetexcptflg.c index 28810d3ec8..1a610ff912 100644 --- a/sysdeps/arm/fsetexcptflg.c +++ b/sysdeps/arm/fsetexcptflg.c @@ -25,22 +25,19 @@ int fesetexceptflag (const fexcept_t *flagp, int excepts) { - fpu_control_t fpscr, new_fpscr; + fpu_control_t fpscr; /* Fail if a VFP unit isn't present unless nothing needs to be done. */ if (!ARM_HAVE_VFP) return (excepts != 0); _FPU_GETCW (fpscr); - excepts &= FE_ALL_EXCEPT; /* Set the desired exception mask. */ - new_fpscr = fpscr & ~excepts; - new_fpscr |= *flagp & excepts; - - /* Write new exception flags if changed. */ - if (new_fpscr != fpscr) - _FPU_SETCW (new_fpscr); + fpscr &= ~(excepts & FE_ALL_EXCEPT); + fpscr |= (*flagp & excepts & FE_ALL_EXCEPT); + /* Save state back to the FPU. */ + _FPU_SETCW (fpscr); return 0; } |