From 238adf59db85646ebae47876819bd896dae597bc Mon Sep 17 00:00:00 2001 From: Stefan Liebler Date: Wed, 11 Dec 2019 15:09:32 +0100 Subject: 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. --- sysdeps/s390/fpu/fesetenv.c | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) (limited to 'sysdeps/s390/fpu/fesetenv.c') 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 . */ -#include -#include -#include -#include +#include 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; -- cgit 1.4.1