blob: 01c6c96de694798bce3d804404ed2dfdb665dda9 [file] [log] [blame] [edit]
Add a check for FE_DIVBYZERO
Some architectures (namely Microblaze) do have fenv.h and
feenableexcept, but they don't have the FE_DIVBYZERO definition. This
patch adds a configure check for FE_DIVBYZERO, and only uses it if
it's available.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/configure.ac
===================================================================
--- a/configure.ac
+++ b/configure.ac
@@ -838,6 +838,11 @@
AC_DEFINE(HAVE_FEENABLEEXCEPT, 1, [Whether we have feenableexcept()])
fi
+AC_CHECK_DECL([FE_DIVBYZERO], [], [], [[#include <fenv.h>]])
+if test x$ac_cv_have_decl_FE_DIVBYZERO = xyes; then
+ AC_DEFINE(HAVE_FEDIVBYZERO, 1, [Whether we have FE_DIVBYZERO])
+fi
+
AC_CHECK_FUNC(gettimeofday, have_gettimeofday=yes, have_gettimeofday=no)
AC_CHECK_HEADER(sys/time.h, have_sys_time_h=yes, have_sys_time_h=no)
if test x$have_gettimeofday = xyes && test x$have_sys_time_h = xyes; then
Index: b/test/utils.c
===================================================================
--- a/test/utils.c
+++ b/test/utils.c
@@ -776,9 +776,11 @@
{
#ifdef HAVE_FENV_H
#ifdef HAVE_FEENABLEEXCEPT
+#ifdef HAVE_FE_DIVBYZERO
feenableexcept (FE_DIVBYZERO);
#endif
#endif
+#endif
}
void *