Use soft-fp fma for MicroBlaze (bug 13304).
authorJoseph Myers <joseph@codesourcery.com>
Fri, 25 Sep 2015 17:29:19 +0000 (17:29 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 25 Sep 2015 17:29:19 +0000 (17:29 +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 MicroBlaze 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/microblaze/s_fma.c: New file.
* sysdeps/microblaze/s_fmaf.c: Likewise.
* sysdeps/microblaze/sfp-machine.h: Likewise.

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

index 45b8f86..d76c280 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2015-09-25  Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #13304]
+       * sysdeps/microblaze/s_fma.c: New file.
+       * sysdeps/microblaze/s_fmaf.c: Likewise.
+       * sysdeps/microblaze/sfp-machine.h: Likewise.
+
 2015-09-25  Maciej W. Rozycki  <macro@imgtec.com>
 
        [BZ #17250]
diff --git a/sysdeps/microblaze/s_fma.c b/sysdeps/microblaze/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/microblaze/s_fmaf.c b/sysdeps/microblaze/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/microblaze/sfp-machine.h b/sysdeps/microblaze/sfp-machine.h
new file mode 100644 (file)
index 0000000..e4ad79e
--- /dev/null
@@ -0,0 +1 @@
+#include <sysdeps/nios2/sfp-machine.h>