aboutsummaryrefslogtreecommitdiff
path: root/math/libm-test.inc
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2015-10-28 21:57:10 +0000
committerJoseph Myers <joseph@codesourcery.com>2015-10-28 21:57:10 +0000
commit5878dd9d53a00fa28800236d79e38e55f85fc98d (patch)
tree85ce332ade1b23eb4ece3c34f6382133a8d5734b /math/libm-test.inc
parent1f4dafa3ea24df63a6550dbdbbe8769caa7a9fc3 (diff)
downloadglibc-5878dd9d53a00fa28800236d79e38e55f85fc98d.tar
glibc-5878dd9d53a00fa28800236d79e38e55f85fc98d.tar.gz
glibc-5878dd9d53a00fa28800236d79e38e55f85fc98d.tar.bz2
glibc-5878dd9d53a00fa28800236d79e38e55f85fc98d.zip
Use C11 CMPLX* macros in libm tests.
libm-test.inc has a macro BUILD_COMPLEX to construct a complex number with given real and imaginary parts while allowing properly for signed zeroes, infinities and NaNs (which don't work properly with a simple real + I * imag, in the absence of compiler support for imaginary types), using assignment to __real__ and __imag__ parts of the number. C11 defines CMPLX* macros for this purpose, which GCC 4.7 and above provide suitable built-in functions for. This patch redefines BUILD_COMPLEX in terms of the standard macros. Tested for x86_64 and x86. * math/libm-test.inc (BUILD_COMPLEX): Remove macro. * math/test-double.h (BUILD_COMPLEX): New macro. * math/test-float.h (BUILD_COMPLEX): Likewise. * math/test-ldouble.h (BUILD_COMPLEX): Likewise.
Diffstat (limited to 'math/libm-test.inc')
-rw-r--r--math/libm-test.inc6
1 files changed, 0 insertions, 6 deletions
diff --git a/math/libm-test.inc b/math/libm-test.inc
index 631b205503..17edcfaa05 100644
--- a/math/libm-test.inc
+++ b/math/libm-test.inc
@@ -328,12 +328,6 @@ static FLOAT prev_max_error, prev_real_max_error, prev_imag_max_error;
static FLOAT max_valid_error;
-#define BUILD_COMPLEX(real, imag) \
- ({ __complex__ FLOAT __retval; \
- __real__ __retval = (real); \
- __imag__ __retval = (imag); \
- __retval; })
-
#define MANT_DIG CHOOSE ((LDBL_MANT_DIG-1), (DBL_MANT_DIG-1), (FLT_MANT_DIG-1), \
(LDBL_MANT_DIG-1), (DBL_MANT_DIG-1), (FLT_MANT_DIG-1))
#define MIN_EXP CHOOSE ((LDBL_MIN_EXP-1), (DBL_MIN_EXP-1), (FLT_MIN_EXP-1), \