From: Uros Bizjak Date: Wed, 30 Jan 2019 20:44:35 +0000 (+0100) Subject: re PR fortran/88678 (Many gfortran.dg/ieee/ieee_X.f90 test cases fail starting with... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=05dfdd6c5a62a4b2cfaab6be554e859987c2aa79;p=gcc.git re PR fortran/88678 (Many gfortran.dg/ieee/ieee_X.f90 test cases fail starting with r267465) PR fortran/88678 * config/fpu-glibc.h (support_fpu_trap): Do not try to enable exceptions to determine if exception is supported. From-SVN: r268402 --- diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 87fc2d6a38c..3cf16a57c7e 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2019-01-30 Uroš Bizjak + + PR fortran/88678 + * config/fpu-glibc.h (support_fpu_trap): Do not try to enable + exceptions to determine if exception is supported. + 2019-01-30 Uroš Bizjak PR fortran/88678 diff --git a/libgfortran/config/fpu-glibc.h b/libgfortran/config/fpu-glibc.h index 9abdfd95ee3..df2588e038d 100644 --- a/libgfortran/config/fpu-glibc.h +++ b/libgfortran/config/fpu-glibc.h @@ -129,41 +129,7 @@ get_fpu_trap_exceptions (void) int support_fpu_trap (int flag) { - int exceptions = 0; - int old; - - if (!support_fpu_flag (flag)) - return 0; - -#ifdef FE_INVALID - if (flag & GFC_FPE_INVALID) exceptions |= FE_INVALID; -#endif - -#ifdef FE_DIVBYZERO - if (flag & GFC_FPE_ZERO) exceptions |= FE_DIVBYZERO; -#endif - -#ifdef FE_OVERFLOW - if (flag & GFC_FPE_OVERFLOW) exceptions |= FE_OVERFLOW; -#endif - -#ifdef FE_UNDERFLOW - if (flag & GFC_FPE_UNDERFLOW) exceptions |= FE_UNDERFLOW; -#endif - -#ifdef FE_DENORMAL - if (flag & GFC_FPE_DENORMAL) exceptions |= FE_DENORMAL; -#endif - -#ifdef FE_INEXACT - if (flag & GFC_FPE_INEXACT) exceptions |= FE_INEXACT; -#endif - - old = feenableexcept (exceptions); - if (old == -1) - return 0; - fedisableexcept (exceptions & ~old); - return 1; + return support_fpu_flag (flag); }