[glibc] 01/01: debian/patches/sparc/cvs-sparc-nearbyint.diff: new patch from upstream to fix nearbyint* functions with a sNaN input on SPARC.
This is an automated email from the git hooks/post-receive script.
aurel32 pushed a commit to branch sid
in repository glibc.
commit b96a99b92c3524628721fa588fba4b78db9a6e0e
Author: Aurelien Jarno <aurelien@aurel32.net>
Date: Fri Jul 1 17:29:55 2016 +0200
debian/patches/sparc/cvs-sparc-nearbyint.diff: new patch from upstream to fix nearbyint* functions with a sNaN input on SPARC.
---
debian/changelog | 2 +
debian/patches/series | 1 +
debian/patches/sparc/cvs-sparc-nearbyint.diff | 96 +++++++++++++++++++++++++++
3 files changed, 99 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index b9b7249..efeb53b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -7,6 +7,8 @@ glibc (2.23-1) UNRELEASED; urgency=medium
entry. Closes: #829093.
* debian/testsuite-xfail-debian.mk: allow malloc/tst-mallocfork2 to fail
on hurd-i386, this is not a regression but a new test.
+ * debian/patches/sparc/cvs-sparc-nearbyint.diff: new patch from upstream
+ to fix nearbyint* functions with a sNaN input on SPARC.
-- Aurelien Jarno <aurel32@debian.org> Fri, 01 Jul 2016 00:17:12 +0200
diff --git a/debian/patches/series b/debian/patches/series
index e50e161..30e9707 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -179,6 +179,7 @@ sh4/local-fpscr_values.diff
sparc/local-sparcv9-target.diff
sparc/submitted-sparc64-socketcall.diff
+sparc/cvs-sparc-nearbyint.diff
all/local-alias-et_EE.diff
all/local-remove-manual.diff
diff --git a/debian/patches/sparc/cvs-sparc-nearbyint.diff b/debian/patches/sparc/cvs-sparc-nearbyint.diff
new file mode 100644
index 0000000..6897022
--- /dev/null
+++ b/debian/patches/sparc/cvs-sparc-nearbyint.diff
@@ -0,0 +1,96 @@
+2016-07-01 Aurelien Jarno <aurelien@aurel32.net>
+
+ * sparc/sparc32/sparcv9/fpu/s_nearbyint.S (__nearbyint): Trigger an
+ invalid exception for a sNaN input.
+ * sparc/sparc32/sparcv9/fpu/s_nearbyintf.S (__nearbyintf): Likewise.
+ * sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint-vis3.S
+ (__nearbyint_vis3): Likewise
+ * sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf-vis3.S
+ (__nearbyintf_vis3): Likewise
+ * sparc/sparc64/fpu/s_nearbyint.S (__nearbyint): Likewise.
+ * sparc/sparc64/fpu/s_nearbyintf.S (__nearbyintf): Likewise.
+ * sparc/sparc64/fpu/multiarch/s_nearbyint-vis3.S (__nearbyint_vis3):
+ Likewise.
+ * sparc/sparc64/fpu/multiarch/s_nearbyintf-vis3.S (__nearbyintf_vis3):
+ Likewise.
+
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint-vis3.S
++++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint-vis3.S
+@@ -36,6 +36,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyint_vis3)
++ fcmpd %fcc3, %f0, %f0 /* Check for sNaN */
+ st %fsr, [%sp + 88]
+ sethi %hi(TWO_FIFTYTWO), %o2
+ sethi %hi(0xf8003e0), %o5
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf-vis3.S
++++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf-vis3.S
+@@ -35,6 +35,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyintf_vis3)
++ fcmps %fcc3, %f1, %f1 /* Check for sNaN */
+ st %fsr, [%sp + 88]
+ movwtos %o0, %f1
+ sethi %hi(TWO_TWENTYTHREE), %o2
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyint.S
++++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyint.S
+@@ -36,6 +36,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyint)
++ fcmpd %fcc3, %f0, %f0 /* Check for sNaN */
+ st %fsr, [%sp + 88]
+ sethi %hi(TWO_FIFTYTWO), %o2
+ sethi %hi(0xf8003e0), %o5
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyintf.S
++++ b/sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyintf.S
+@@ -35,6 +35,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyintf)
++ fcmps %fcc3, %f1, %f1 /* Check for sNaN */
+ st %fsr, [%sp + 88]
+ st %o0, [%sp + 68]
+ sethi %hi(TWO_TWENTYTHREE), %o2
+--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint-vis3.S
++++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint-vis3.S
+@@ -35,6 +35,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyint_vis3)
++ fcmpd %fcc3, %f0, %f0 /* Check for sNaN */
+ stx %fsr, [%sp + STACK_BIAS + 144]
+ sethi %hi(TWO_FIFTYTWO), %o2
+ sllx %o2, 32, %o2
+--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf-vis3.S
++++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf-vis3.S
+@@ -35,6 +35,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyintf_vis3)
++ fcmps %fcc3, %f1, %f1 /* Check for sNaN */
+ stx %fsr, [%sp + STACK_BIAS + 144]
+ sethi %hi(0xf8003e0), %o5
+ sethi %hi(TWO_TWENTYTHREE), %o2
+--- a/sysdeps/sparc/sparc64/fpu/s_nearbyint.S
++++ b/sysdeps/sparc/sparc64/fpu/s_nearbyint.S
+@@ -35,6 +35,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyint)
++ fcmpd %fcc3, %f0, %f0 /* Check for sNaN */
+ stx %fsr, [%sp + STACK_BIAS + 144]
+ sethi %hi(TWO_FIFTYTWO), %o2
+ sllx %o2, 32, %o2
+--- a/sysdeps/sparc/sparc64/fpu/s_nearbyintf.S
++++ b/sysdeps/sparc/sparc64/fpu/s_nearbyintf.S
+@@ -35,6 +35,7 @@
+ #define SIGN_BIT %f12 /* -0.0 */
+
+ ENTRY (__nearbyintf)
++ fcmps %fcc3, %f1, %f1 /* Check for sNaN */
+ stx %fsr, [%sp + STACK_BIAS + 144]
+ sethi %hi(0xf8003e0), %o5
+ sethi %hi(TWO_TWENTYTHREE), %o2
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-glibc/glibc.git
Reply to: