Module Name: src Committed By: matt Date: Sun Jan 26 21:04:46 UTC 2014
Modified Files: src/tests/lib/libc/gen: t_siginfo.c Log Message: Support using fenv instead of fpsetmask if HAVE_FENV is defined. To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/tests/lib/libc/gen/t_siginfo.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/lib/libc/gen/t_siginfo.c diff -u src/tests/lib/libc/gen/t_siginfo.c:1.21 src/tests/lib/libc/gen/t_siginfo.c:1.22 --- src/tests/lib/libc/gen/t_siginfo.c:1.21 Sat Jan 25 10:09:47 2014 +++ src/tests/lib/libc/gen/t_siginfo.c Sun Jan 26 21:04:46 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: t_siginfo.c,v 1.21 2014/01/25 10:09:47 skrll Exp $ */ +/* $NetBSD: t_siginfo.c,v 1.22 2014/01/26 21:04:46 matt Exp $ */ /*- * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -45,7 +45,9 @@ #include <setjmp.h> #include <float.h> -#ifdef _FLOAT_IEEE754 +#ifdef HAVE_FENV +#include <fenv.h> +#elif defined(_FLOAT_IEEE754) #include <ieeefp.h> #endif @@ -314,7 +316,9 @@ ATF_TC_BODY(sigfpe_flt, tc) sa.sa_sigaction = sigfpe_flt_action; sigemptyset(&sa.sa_mask); sigaction(SIGFPE, &sa, NULL); -#ifdef _FLOAT_IEEE754 +#ifdef HAVE_FENV + feenableexcept(FE_ALL_EXCEPT); +#elif defined(_FLOAT_IEEE754) fpsetmask(FP_X_INV|FP_X_DZ|FP_X_OFL|FP_X_UFL|FP_X_IMP); #endif printf("%g\n", 1 / d); @@ -362,7 +366,9 @@ ATF_TC_BODY(sigfpe_int, tc) sa.sa_sigaction = sigfpe_int_action; sigemptyset(&sa.sa_mask); sigaction(SIGFPE, &sa, NULL); -#ifdef _FLOAT_IEEE754 +#ifdef HAVE_FENV + feenableexcept(FE_ALL_EXCEPT); +#elif defined(_FLOAT_IEEE754) fpsetmask(FP_X_INV|FP_X_DZ|FP_X_OFL|FP_X_UFL|FP_X_IMP); #endif printf("%ld\n", 1 / l);