alpha: Add -mieee-with-inexact for fma compilation

This commit is contained in:
Richard Henderson 2012-05-30 20:55:56 -07:00
parent 13488b2eae
commit 8cac0ece48
3 changed files with 10 additions and 14 deletions

View file

@ -1,5 +1,9 @@
2012-05-30 Richard Henderson <rth@twiddle.net>
* sysdeps/alpha/Makefile (CFLAGS-s_fma.c): Set -mieee-with-inexact.
(CFLAGS-s_fmaf.c): Likewise.
* sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
* sysdeps/unix/sysv/linux/alpha/brk.S: Fix error path for PIC.
* sysdeps/alpha/fpu/libm-test-ulps: Regenerate.

View file

@ -37,6 +37,12 @@ ifeq ($(subdir),elf)
CFLAGS-rtld.c = -mbuild-constants
endif
ifeq ($(subdir),math)
# The fma routines rely on inexact being raised for correct results.
CFLAGS-s_fma.c = -mieee-with-inexact
CFLAGS-s_fmaf.c = -mieee-with-inexact
endif
# Build everything with full IEEE math support, and with dynamic rounding;
# there are a number of math routines that are defined to work with the
# "current" rounding mode, and it's easiest to set this with all of them.

View file

@ -1615,20 +1615,6 @@ Test "expm1 (500.0) == 1.4035922178528374107397703328409120821806e+217":
double: 1
idouble: 1
# fma
Test "fma (-0x1.19cab66d73e17p-959, 0x1.c7108a8c5ff51p-107, -0x0.80b0ad65d9b64p-1022) == -0x0.80b0ad65d9d59p-1022":
double: 1
idouble: 1
Test "fma (0x1.0000002p+0, 0x1.ffffffcp-1, -0x1p-300) == 0x1.fffffffffffffp-1":
double: 1
idouble: 1
Test "fma (0x1.153d650bb9f06p-907, 0x1.2d01230d48407p-125, -0x0.b278d5acfc3cp-1022) == -0x0.b22757123bbe9p-1022":
double: 1
idouble: 1
Test "fma (0x1.4000004p-967, 0x1p-106, 0x0.000001p-1022) == 0x0.0000010000003p-1022":
double: 1
idouble: 1
# gamma
Test "gamma (-0.5) == log(2*sqrt(pi))":
ildouble: 1