From 1f4dafa3ea24df63a6550dbdbbe8769caa7a9fc3 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 28 Oct 2015 21:42:52 +0000 Subject: Use C11 *_TRUE_MIN macros where applicable. C11 defines standard macros *_TRUE_MIN for the least positive subnormal value of a type. Now that we build with -std=gnu11, we can use these macros in glibc. This patch replaces previous uses of the GCC predefines __*_DENORM_MIN__ (used in to define *_TRUE_MIN), as well as *_DENORM_MIN references in comments. Tested for x86_64 and x86 (testsuite, and that installed shared libraries are unchanged by the patch). Also tested for powerpc that installed stripped shared libraries are unchanged by the patch. * math/libm-test.inc (min_subnorm_value): Use LDBL_TRUE_MIN, DBL_TRUE_MIN and FLT_TRUE_MIN instead of __LDBL_DENORM_MIN__, __DBL_DENORM_MIN__ and __FLT_DENORM_MIN__. * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Refer to DBL_TRUE_MIN instead of DBL_DENORM_MIN in comment. * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Refer to LDBL_TRUE_MIN instead of LDBL_DENORM_MIN in comment. * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c: Include . (__nextafterl): Use LDBL_TRUE_MIN instead of __LDBL_DENORM_MIN__. * sysdeps/ieee754/ldbl-96/s_fmal.c (__fmal): Refer to LDBL_TRUE_MIN instead of LDBL_DENORM_MIN in comment. --- sysdeps/ieee754/dbl-64/s_fma.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sysdeps/ieee754/dbl-64/s_fma.c') diff --git a/sysdeps/ieee754/dbl-64/s_fma.c b/sysdeps/ieee754/dbl-64/s_fma.c index 8b4e133..4b9ec8b 100644 --- a/sysdeps/ieee754/dbl-64/s_fma.c +++ b/sysdeps/ieee754/dbl-64/s_fma.c @@ -66,7 +66,7 @@ __fma (double x, double y, double z) /* If fma will certainly overflow, compute as x * y. */ if (u.ieee.exponent + v.ieee.exponent > 0x7ff + IEEE754_DOUBLE_BIAS) return x * y; - /* If x * y is less than 1/4 of DBL_DENORM_MIN, neither the + /* If x * y is less than 1/4 of DBL_TRUE_MIN, neither the result nor whether there is underflow depends on its exact value, only on its sign. */ if (u.ieee.exponent + v.ieee.exponent -- cgit v1.1