mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
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.
This commit is contained in:
@ -1,3 +1,12 @@
|
|||||||
|
2017-02-14 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
|
* 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.
|
||||||
|
|
||||||
2017-02-12 Gabriel F. T. Gomes <gftg@linux.vnet.ibm.com>
|
2017-02-12 Gabriel F. T. Gomes <gftg@linux.vnet.ibm.com>
|
||||||
|
|
||||||
[BZ #21130]
|
[BZ #21130]
|
||||||
|
@ -18,6 +18,8 @@
|
|||||||
|
|
||||||
#include "libm-test-support.h"
|
#include "libm-test-support.h"
|
||||||
|
|
||||||
|
#include <math-tests-arch.h>
|
||||||
|
|
||||||
/* Flags set by the including file. */
|
/* Flags set by the including file. */
|
||||||
const int flag_test_errno = TEST_ERRNO;
|
const int flag_test_errno = TEST_ERRNO;
|
||||||
const int flag_test_exceptions = TEST_EXCEPTIONS;
|
const int flag_test_exceptions = TEST_EXCEPTIONS;
|
||||||
@ -1010,6 +1012,7 @@ int
|
|||||||
main (int argc, char **argv)
|
main (int argc, char **argv)
|
||||||
{
|
{
|
||||||
libm_test_init (argc, argv);
|
libm_test_init (argc, argv);
|
||||||
|
INIT_ARCH_EXT;
|
||||||
do_test ();
|
do_test ();
|
||||||
return libm_test_finish ();
|
return libm_test_finish ();
|
||||||
}
|
}
|
||||||
|
@ -1182,8 +1182,6 @@ libm_test_init (int argc, char **argv)
|
|||||||
initialize ();
|
initialize ();
|
||||||
fputs (test_msg, stdout);
|
fputs (test_msg, stdout);
|
||||||
|
|
||||||
INIT_ARCH_EXT;
|
|
||||||
|
|
||||||
check_ulp ();
|
check_ulp ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,7 +30,6 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <tininess.h>
|
#include <tininess.h>
|
||||||
#include <math-tests.h>
|
#include <math-tests.h>
|
||||||
#include <math-tests-arch.h>
|
|
||||||
#include <nan-high-order-bit.h>
|
#include <nan-high-order-bit.h>
|
||||||
|
|
||||||
extern const int flag_test_errno;
|
extern const int flag_test_errno;
|
||||||
|
Reference in New Issue
Block a user