From ac088ba1f0efb35aa2b3d63021c0bafdb8328883 Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Fri, 8 Nov 2013 11:18:27 +0100 Subject: [PATCH] libgcc: check for fenv.h in dfp configure check uClibc can be built without fenv support, extend the configure check for decimal floating point to probe the existance of fenv.h, too. libgcc/ChangeLog: 2013-03-24 Bernhard Reutner-Fischer * configure.ac (libgcc_cv_dfp): Extend check to probe fenv.h availability. * configure: Regenerate From-SVN: r204562 --- libgcc/ChangeLog | 6 ++++++ libgcc/configure | 13 +++++++++++++ libgcc/configure.ac | 9 ++++++++- 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 1b2a20b75bf..0bfba640e21 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,9 @@ +2013-11-08 Bernhard Reutner-Fischer + + * configure.ac (libgcc_cv_dfp): Extend check to probe fenv.h + availability. + * configure: Regenerate + 2013-11-07 Uros Bizjak * config/i386/sfp-exceptions.c (__sfp_handle_exceptions): Handle diff --git a/libgcc/configure b/libgcc/configure index 29fa46f597a..2bb1fb2d94f 100644 --- a/libgcc/configure +++ b/libgcc/configure @@ -4066,7 +4066,20 @@ if test "${libgcc_cv_dfp+set}" = set; then : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ + +#include + +int +main () +{ + _Decimal32 x; +int fe_except = + FE_INVALID|FE_DIVBYZERO|FE_OVERFLOW|FE_UNDERFLOW|FE_INEXACT; + + ; + return 0; +} _ACEOF if ac_fn_c_try_compile "$LINENO"; then : libgcc_cv_dfp=yes diff --git a/libgcc/configure.ac b/libgcc/configure.ac index 186cd6e9cd7..560e988e048 100644 --- a/libgcc/configure.ac +++ b/libgcc/configure.ac @@ -182,7 +182,14 @@ AC_SUBST(long_double_type_size) # Check for decimal float support. AC_CACHE_CHECK([whether decimal floating point is supported], [libgcc_cv_dfp], - [AC_COMPILE_IFELSE([_Decimal32 x;], [libgcc_cv_dfp=yes], + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ +#include +]], [[ +_Decimal32 x; +int fe_except = + FE_INVALID|FE_DIVBYZERO|FE_OVERFLOW|FE_UNDERFLOW|FE_INEXACT; +]])], + [libgcc_cv_dfp=yes], [libgcc_cv_dfp=no])]) decimal_float=$libgcc_cv_dfp AC_SUBST(decimal_float)