Use soft-fp fma for no-FPU ColdFire (bug 13304).
authorJoseph Myers <joseph@codesourcery.com>
Fri, 25 Sep 2015 17:30:56 +0000 (17:30 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 25 Sep 2015 17:30:56 +0000 (17:30 +0000)
Systems without floating-point exceptions and rounding modes should
use the soft-fp versions of fmaf and fma, not the sysdeps/ieee754
versions that rely on setting rounding to zero and testing for the
"inexact" exception; this has been noted on
<https://sourceware.org/glibc/wiki/PortStatus> for some time.  This
patch makes no-FPU ColdFire use the soft-fp files; sfp-machine.h is
made to include the nios2 version of sfp-machine.h which seems
sufficiently generic for 32-bit systems.

[BZ #13304]
* sysdeps/m68k/coldfire/nofpu/s_fma.c: New file.
* sysdeps/m68k/coldfire/nofpu/s_fmaf.c: Likewise.
* sysdeps/m68k/coldfire/nofpu/sfp-machine.h: Likewise.

ChangeLog
sysdeps/m68k/coldfire/nofpu/s_fma.c [new file with mode: 0644]
sysdeps/m68k/coldfire/nofpu/s_fmaf.c [new file with mode: 0644]
sysdeps/m68k/coldfire/nofpu/sfp-machine.h [new file with mode: 0644]

index d76c280..ba7aa4e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,11 @@
 2015-09-25  Joseph Myers  <joseph@codesourcery.com>
 
        [BZ #13304]
+       * sysdeps/m68k/coldfire/nofpu/s_fma.c: New file.
+       * sysdeps/m68k/coldfire/nofpu/s_fmaf.c: Likewise.
+       * sysdeps/m68k/coldfire/nofpu/sfp-machine.h: Likewise.
+
+       [BZ #13304]
        * sysdeps/microblaze/s_fma.c: New file.
        * sysdeps/microblaze/s_fmaf.c: Likewise.
        * sysdeps/microblaze/sfp-machine.h: Likewise.
diff --git a/sysdeps/m68k/coldfire/nofpu/s_fma.c b/sysdeps/m68k/coldfire/nofpu/s_fma.c
new file mode 100644 (file)
index 0000000..d9613fa
--- /dev/null
@@ -0,0 +1 @@
+#include <soft-fp/fmadf4.c>
diff --git a/sysdeps/m68k/coldfire/nofpu/s_fmaf.c b/sysdeps/m68k/coldfire/nofpu/s_fmaf.c
new file mode 100644 (file)
index 0000000..aa5c9b2
--- /dev/null
@@ -0,0 +1 @@
+#include <soft-fp/fmasf4.c>
diff --git a/sysdeps/m68k/coldfire/nofpu/sfp-machine.h b/sysdeps/m68k/coldfire/nofpu/sfp-machine.h
new file mode 100644 (file)
index 0000000..e4ad79e
--- /dev/null
@@ -0,0 +1 @@
+#include <sysdeps/nios2/sfp-machine.h>