summaryrefslogtreecommitdiff
path: root/math/libm-test-driver.c
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-02-14 00:15:48 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-02-14 00:15:48 +0000
commitb4e4172da6d43ac47cdf6763b3531e5e23102ff9 (patch)
tree636c8d308510f6fa80637265b69761be1e07ff10 /math/libm-test-driver.c
parentb987917e6aa7ffe2fd74f0b6a989438e6edd0727 (diff)
Move INIT_ARCH_EXT call from libm-test-support to libm-test-driver.
libmvec tests involve calling INIT_ARCH_EXT during initialization then CHECK_ARCH_EXT before testing each function to see if the processor being used for testing supports the required instruction set extensions. After my refactoring of libm-test infrastructure, the INIT_ARCH_EXT call is in libm-test-support.c, built only once per floating-point type. Now, in fact all definitions of this macro are empty, but given that the definitions in sysdeps/x86_64/fpu/math-tests-arch.h are conditional on REQUIRE_* macros defined in particular vector tests, it seems more correct for the INIT_ARCH_EXT call to go instead in libm-test-driver.c which gets built separately with those REQUIRE_* macros properly defined. This patch moves the call there. Tested for x86_64 and x86. * math/libm-test-support.h: Do not include <math-tests-arch.h> here. * math/libm-test-support.c (libm_test_init): Do not call INIT_ARCH_EXT here. * math/libm-test-driver.c: Include <math-tests-arch.h>. (main): Call INIT_ARCH_EXT.
Diffstat (limited to 'math/libm-test-driver.c')
-rw-r--r--math/libm-test-driver.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/math/libm-test-driver.c b/math/libm-test-driver.c
index 1539cd7e4d..d24c5aadaf 100644
--- a/math/libm-test-driver.c
+++ b/math/libm-test-driver.c
@@ -18,6 +18,8 @@
#include "libm-test-support.h"
+#include <math-tests-arch.h>
+
/* Flags set by the including file. */
const int flag_test_errno = TEST_ERRNO;
const int flag_test_exceptions = TEST_EXCEPTIONS;
@@ -1010,6 +1012,7 @@ int
main (int argc, char **argv)
{
libm_test_init (argc, argv);
+ INIT_ARCH_EXT;
do_test ();
return libm_test_finish ();
}