mirror of
git://sourceware.org/git/glibc.git
synced 2024-12-09 04:11:27 +08:00
Update MIPS math-tests.h for GCC 4.9 using soft-fp.
GCC trunk now uses soft-fp for MIPS64 long double, so supporting integration with hardware exceptions and rounding modes. This patch updates MIPS math-tests.h accordingly not to disable exception and rounding mode tests in this case. Tested mips64 and ulps updated to reflect the newly run tests. * sysdeps/mips/math-tests.h: Include <features.h>. [!__mips_soft_float && _MIPS_SIM != _ABIO32 && __GNUC_PREREQ (4, 9)] (ROUNDING_TESTS_long_double): Do not define. [!__mips_soft_float && _MIPS_SIM != _ABIO32 && __GNUC_PREREQ (4, 9)] (EXCEPTION_TESTS_long_double): Likewise. * sysdeps/mips/mips64/libm-test-ulps: Update.
This commit is contained in:
parent
498afc54df
commit
743151aeae
@ -1,5 +1,12 @@
|
||||
2014-02-12 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/mips/math-tests.h: Include <features.h>.
|
||||
[!__mips_soft_float && _MIPS_SIM != _ABIO32 && __GNUC_PREREQ (4, 9)]
|
||||
(ROUNDING_TESTS_long_double): Do not define.
|
||||
[!__mips_soft_float && _MIPS_SIM != _ABIO32 && __GNUC_PREREQ (4, 9)]
|
||||
(EXCEPTION_TESTS_long_double): Likewise.
|
||||
* sysdeps/mips/mips64/libm-test-ulps: Update.
|
||||
|
||||
* include/features.h (__USE_BSD): Remove macro definitions.
|
||||
(__USE_SVID): Likewise.
|
||||
(_BSD_SOURCE): Likewise.
|
||||
|
@ -16,12 +16,13 @@
|
||||
License along with the GNU C Library; if not, see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <features.h>
|
||||
#include <sgidefs.h>
|
||||
|
||||
/* MIPS soft float does not support exceptions and rounding modes, and
|
||||
long double when wider than double is implemented using fp-bit
|
||||
which does not integrate with hardware exceptions and rounding
|
||||
modes. */
|
||||
before GCC 4.9 long double when wider than double is implemented
|
||||
using fp-bit which does not integrate with hardware exceptions and
|
||||
rounding modes. */
|
||||
#ifdef __mips_soft_float
|
||||
# define ROUNDING_TESTS_float(MODE) ((MODE) == FE_TONEAREST)
|
||||
# define ROUNDING_TESTS_double(MODE) ((MODE) == FE_TONEAREST)
|
||||
@ -29,7 +30,7 @@
|
||||
# define EXCEPTION_TESTS_float 0
|
||||
# define EXCEPTION_TESTS_double 0
|
||||
# define EXCEPTION_TESTS_long_double 0
|
||||
#elif _MIPS_SIM != _ABIO32
|
||||
#elif _MIPS_SIM != _ABIO32 && !__GNUC_PREREQ (4, 9)
|
||||
# define ROUNDING_TESTS_long_double(MODE) ((MODE) == FE_TONEAREST)
|
||||
# define EXCEPTION_TESTS_long_double 0
|
||||
#endif
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user