diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-02-06 23:07:22 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-02-06 23:07:22 +0000 |
commit | a622c2db5511e9633870e3ced9fb2406e4ebdb09 (patch) | |
tree | 7ecea0e09aad5d703409012cb7695dd12f10e7d5 /math/libm-test-driver.c | |
parent | 5cbb58493df391ac6712ac6f078569ccb96f3568 (diff) | |
download | glibc-a622c2db5511e9633870e3ced9fb2406e4ebdb09.tar.gz glibc-a622c2db5511e9633870e3ced9fb2406e4ebdb09.tar.xz glibc-a622c2db5511e9633870e3ced9fb2406e4ebdb09.zip |
Move libm-test TEST_MSG definitions to libm-test-driver.c.
Various files using the libm-test infrastructure define a TEST_MSG macro with an informal description of the tests being run. This patch moves this macro to libm-test-driver.c (the definition depending on other macros already defined), so files specific to (type, choice of whether to test inline functions or finite-math-only functions, vector length) no longer need to define it. This is in preparation for replacing files such as test-float.c with per-function test-float-<func>.c etc. automatically generated in the build directory when tests are run. Tested for x86_64. * math/libm-test-driver.c (STRX): New macro. (STR): Likewise. (STR_FLOAT): Likewise. (STR_VEC_LEN): Likewise. (TEST_MSG): Likewise. Define here instead of expecting to be defined by including file. * math/test-double-finite.c (TEST_MSG): Remove macro. * math/test-double-vlen2.h (TEST_MSG): Likewise. * math/test-double-vlen4.h (TEST_MSG): Likewise. * math/test-double-vlen8.h (TEST_MSG): Likewise. * math/test-double.c (TEST_MSG): Likewise. * math/test-float-finite.c (TEST_MSG): Likewise. * math/test-float-vlen16.h (TEST_MSG): Likewise. * math/test-float-vlen4.h (TEST_MSG): Likewise. * math/test-float-vlen8.h (TEST_MSG): Likewise. * math/test-float.c (TEST_MSG): Likewise. * math/test-idouble.c (TEST_MSG): Likewise. * math/test-ifloat.c (TEST_MSG): Likewise. * math/test-ildouble.c (TEST_MSG): Likewise. * math/test-ldouble-finite.c (TEST_MSG): Likewise. * math/test-ldouble.c (TEST_MSG): Likewise.
Diffstat (limited to 'math/libm-test-driver.c')
-rw-r--r-- | math/libm-test-driver.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/math/libm-test-driver.c b/math/libm-test-driver.c index 1227d52d06..ea890bab22 100644 --- a/math/libm-test-driver.c +++ b/math/libm-test-driver.c @@ -25,7 +25,6 @@ FUNC(function): converts general function name (like cos) to name with correct suffix (e.g. cosl or cosf) FLOAT: floating point type to test - - TEST_MSG: informal message to be displayed chooses one of the parameters as delta for testing equality PREFIX A macro which defines the prefix for common macros for the @@ -108,6 +107,22 @@ arrays. */ #include "libm-test-ulps.h" +#define STRX(x) #x +#define STR(x) STRX (x) +#define STR_FLOAT STR (FLOAT) +#define STR_VEC_LEN STR (VEC_LEN) + +/* Informal description of the functions being tested. */ +#if TEST_MATHVEC +# define TEST_MSG "testing " STR_FLOAT " (vector length " STR_VEC_LEN ")\n" +#elif TEST_INLINE +# define TEST_MSG "testing " STR_FLOAT " (inline functions)\n" +#elif TEST_FINITE +# define TEST_MSG "testing " STR_FLOAT " (finite-math-only)\n" +#else +# define TEST_MSG "testing " STR_FLOAT " (without inline functions)\n" +#endif + /* Allow platforms without all rounding modes to test properly, assuming they provide an __FE_UNDEFINED in <bits/fenv.h> which causes fesetround() to return failure. */ |