diff options
author | Stefan Liebler <stli@linux.ibm.com> | 2019-12-11 15:09:32 +0100 |
---|---|---|
committer | Stefan Liebler <stli@linux.ibm.com> | 2019-12-11 15:12:25 +0100 |
commit | 238adf59db85646ebae47876819bd896dae597bc (patch) | |
tree | bc11e42ee2928d1549b9dfd405fbaee17c9cabfd /sysdeps/s390/fpu/fesetenv.c | |
parent | 7c94d036c17dfd352d11e9bf98e5d84122c1f95e (diff) | |
download | glibc-238adf59db85646ebae47876819bd896dae597bc.tar.gz glibc-238adf59db85646ebae47876819bd896dae597bc.tar.xz glibc-238adf59db85646ebae47876819bd896dae597bc.zip |
S390: Use libc_fe* macros in fe* functions.
This patch updates the s390 specific functions fegetround, fesetround, feholdexcept, fesetenv, feupdateenv, fegetexceptflag, fetestexcept, fesetexceptflag, fetestexceptflag. Now those functions are using the libc_fe* macros if possible. Furthermore fegetexceptflag is now returning the exception from dxc field shifted to the usual exception-flags. Thus a special fetestexceptflag implementation is not needed anymore.
Diffstat (limited to 'sysdeps/s390/fpu/fesetenv.c')
-rw-r--r-- | sysdeps/s390/fpu/fesetenv.c | 21 |
1 files changed, 3 insertions, 18 deletions
diff --git a/sysdeps/s390/fpu/fesetenv.c b/sysdeps/s390/fpu/fesetenv.c index ede3d89b3b..dca26033a7 100644 --- a/sysdeps/s390/fpu/fesetenv.c +++ b/sysdeps/s390/fpu/fesetenv.c @@ -17,28 +17,13 @@ License along with the GNU C Library; if not, see <https://www.gnu.org/licenses/>. */ -#include <fenv_libc.h> -#include <fpu_control.h> -#include <stddef.h> -#include <unistd.h> +#include <fenv_private.h> int __fesetenv (const fenv_t *envp) { - fenv_t env; - - if (envp == FE_DFL_ENV) - { - env.__fpc = _FPU_DEFAULT; - } - else if (envp == FE_NOMASK_ENV) - { - env.__fpc = FPC_EXCEPTION_MASK; - } - else - env = (*envp); - - _FPU_SETCW (env.__fpc); + fenv_t env = libc_handle_user_fenv_s390 (envp); + libc_fesetenv_s390 (&env); /* Success. */ return 0; |