[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[glibc] 01/02: debian/patches/submitted-sparc-fdim.diff: new patch to fix fdimf and fdim function on SPARC.



This is an automated email from the git hooks/post-receive script.

aurel32 pushed a commit to branch glibc-2.24
in repository glibc.

commit 865ef21fa3c548dc96adbaa1ad9420246b64ecc3
Author: Aurelien Jarno <aurelien@aurel32.net>
Date:   Thu Aug 4 03:11:55 2016 +0200

    debian/patches/submitted-sparc-fdim.diff: new patch to fix fdimf and fdim function on SPARC.
---
 debian/changelog                               |   2 +
 debian/patches/series                          |   1 +
 debian/patches/sparc/submitted-sparc-fdim.diff | 371 +++++++++++++++++++++++++
 3 files changed, 374 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index ff771b8..14bd408 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,8 @@ glibc (2.24-0experimental0) UNRELEASED; urgency=medium
   * debian/rules.d/tarball.mk: make the orig tarball generation a bit more
     reproducible.
   * debian/sysdeps/sparc64.mk: compile all flavours with -mcpu=ultrasparc.
+  * debian/patches/submitted-sparc-fdim.diff: new patch to fix fdimf and
+    fdim function on SPARC.
 
  -- Aurelien Jarno <aurel32@debian.org>  Mon, 01 Aug 2016 23:25:43 +0200
 
diff --git a/debian/patches/series b/debian/patches/series
index cf10a09..bcc58d2 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -165,6 +165,7 @@ sh4/local-fpscr_values.diff
 
 sparc/local-sparcv9-target.diff
 sparc/submitted-sparc64-socketcall.diff
+sparc/submitted-sparc-fdim.diff
 
 all/local-alias-et_EE.diff
 all/local-remove-manual.diff
diff --git a/debian/patches/sparc/submitted-sparc-fdim.diff b/debian/patches/sparc/submitted-sparc-fdim.diff
new file mode 100644
index 0000000..bc94474
--- /dev/null
+++ b/debian/patches/sparc/submitted-sparc-fdim.diff
@@ -0,0 +1,371 @@
+2016-08-04  Aurelien Jarno  <aurelien@aurel32.net>
+ 
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile
+	[$(subdir) = math && $(have-as-vis3) = yes] (libm-sysdep_routines):
+	Remove s_fdimf-vis3, s_fdim-vis3.
+	* sysdeps/sparc/sparc32/fpu/s_fdim.S: Delete file.
+	* sysdeps/sparc/sparc32/fpu/s_fdimf.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim-vis3.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf-vis3.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fdim.S: Likewise.
+	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fdimf.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/s_fdim.S: Likewise.
+	* sysdeps/sparc/sparc64/fpu/s_fdimf.S: Likewise.
+
+--- a/sysdeps/sparc/sparc32/fpu/s_fdim.S
++++ /dev/null
+@@ -1,42 +0,0 @@
+-/* Compute positive difference, sparc 32-bit.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-#include <math_ldbl_opt.h>
+-
+-ENTRY(__fdim)
+-	std	%o0, [%sp + 72]
+-	std	%o2, [%sp + 80]
+-	ldd	[%sp + 72], %f0
+-	ldd	[%sp + 80], %f2
+-	fcmpd	%f0, %f2
+-	st	%g0, [%sp + 72]
+-	fbug	1f
+-	 st	%g0, [%sp + 76]
+-	ldd	[%sp + 72], %f0
+-	fnegs	%f0, %f2
+-	fmovs	%f1, %f3
+-1:	retl
+-	 fsubd	%f0, %f2, %f0
+-END(__fdim)
+-weak_alias (__fdim, fdim)
+-
+-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+-compat_symbol (libm, __fdim, fdiml, GLIBC_2_1);
+-#endif
+--- a/sysdeps/sparc/sparc32/fpu/s_fdimf.S
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/* Compute positive difference, sparc 32-bit.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-
+-ENTRY(__fdimf)
+-	st	%o0, [%sp + 72]
+-	st	%o1, [%sp + 76]
+-	ld	[%sp + 72], %f0
+-	ld	[%sp + 76], %f1
+-	fcmps	%f0, %f1
+-	fbug	1f
+-	 st	%g0, [%sp + 72]
+-	ld	[%sp + 72], %f0
+-	fnegs	%f0, %f1
+-1:	retl
+-	 fsubs	%f0, %f1, %f0
+-END(__fdimf)
+-weak_alias (__fdimf, fdimf)
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile
++++ b/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile
+@@ -4,8 +4,8 @@ libm-sysdep_routines += m_copysignf-vis3 m_copysign-vis3 s_fabs-vis3 \
+ 			s_fabsf-vis3 s_llrintf-vis3 s_llrint-vis3 \
+ 			s_rintf-vis3 s_rint-vis3 w_sqrt-vis3 w_sqrtf-vis3 \
+ 			s_fminf-vis3 s_fmin-vis3 s_fmaxf-vis3 s_fmax-vis3 \
+-			s_fmaf-vis3 s_fma-vis3 s_fdimf-vis3 s_fdim-vis3 \
+-			s_nearbyint-vis3 s_nearbyintf-vis3
++			s_fmaf-vis3 s_fma-vis3 s_nearbyint-vis3 \
++			s_nearbyintf-vis3
+ sysdep_routines += s_copysignf-vis3 s_copysign-vis3
+ endif
+ endif
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim-vis3.S
++++ /dev/null
+@@ -1,34 +0,0 @@
+-/* Compute positive difference, sparc 32-bit+v9+vis3.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-
+-ENTRY(__fdim_vis3)
+-	movwtos	%o0, %f0
+-	movwtos	%o1, %f1
+-	movwtos	%o2, %f2
+-	movwtos	%o3, %f3
+-	fcmpd	%f0, %f2
+-	fbug	1f
+-	 nop
+-	fzero	%f0
+-	fnegd	%f0, %f2
+-1:	retl
+-	 fsubd	%f0, %f2, %f0
+-END(__fdim_vis3)
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.S
++++ /dev/null
+@@ -1,19 +0,0 @@
+-#include <sparc-ifunc.h>
+-#include <math_ldbl_opt.h>
+-
+-SPARC_ASM_VIS3_IFUNC(fdim)
+-
+-weak_alias (__fdim, fdim)
+-
+-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+-compat_symbol (libm, __fdim, fdiml, GLIBC_2_1);
+-#endif
+-
+-# undef weak_alias
+-# define weak_alias(a, b)
+-# undef compat_symbol
+-# define compat_symbol(a, b, c, d)
+-
+-#define __fdim __fdim_generic
+-
+-#include "../s_fdim.S"
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf-vis3.S
++++ /dev/null
+@@ -1,32 +0,0 @@
+-/* Compute positive difference, sparc 32-bit+v9+vis3.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-
+-ENTRY(__fdimf_vis3)
+-	movwtos	%o0, %f0
+-	movwtos	%o1, %f1
+-	fcmps	%f0, %f1
+-	fbug	1f
+-	 nop
+-	fzeros	%f0
+-	fnegs	%f0, %f1
+-1:	retl
+-	 fsubs	%f0, %f1, %f0
+-END(__fdimf_vis3)
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.S
++++ /dev/null
+@@ -1,12 +0,0 @@
+-#include <sparc-ifunc.h>
+-
+-SPARC_ASM_VIS3_IFUNC(fdimf)
+-
+-weak_alias (__fdimf, fdimf)
+-
+-# undef weak_alias
+-# define weak_alias(a, b)
+-
+-#define __fdimf __fdimf_generic
+-
+-#include "../s_fdimf.S"
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_fdim.S
++++ /dev/null
+@@ -1,40 +0,0 @@
+-/* Compute positive difference, sparc 32-bit+v9.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-#include <math_ldbl_opt.h>
+-
+-ENTRY(__fdim)
+-	std	%o0, [%sp + 72]
+-	std	%o2, [%sp + 80]
+-	ldd	[%sp + 72], %f0
+-	ldd	[%sp + 80], %f2
+-	fcmpd	%f0, %f2
+-	fbug	1f
+-	 nop
+-	fzero	%f0
+-	fnegd	%f0, %f2
+-1:	retl
+-	 fsubd	%f0, %f2, %f0
+-END(__fdim)
+-weak_alias (__fdim, fdim)
+-
+-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+-compat_symbol (libm, __fdim, fdiml, GLIBC_2_1);
+-#endif
+--- a/sysdeps/sparc/sparc32/sparcv9/fpu/s_fdimf.S
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/* Compute positive difference, sparc 32-bit+v9.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-
+-ENTRY(__fdimf)
+-	st	%o0, [%sp + 72]
+-	st	%o1, [%sp + 76]
+-	ld	[%sp + 72], %f0
+-	ld	[%sp + 76], %f1
+-	fcmps	%f0, %f1
+-	fbug	1f
+-	 nop
+-	fzeros	%f0
+-	fnegs	%f0, %f1
+-1:	retl
+-	 fsubs	%f0, %f1, %f0
+-END(__fdimf)
+-weak_alias (__fdimf, fdimf)
+--- a/sysdeps/sparc/sparc64/fpu/s_fdim.S
++++ /dev/null
+@@ -1,32 +0,0 @@
+-/* Compute positive difference, sparc 64-bit.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-#include <math_ldbl_opt.h>
+-
+-ENTRY(__fdim)
+-	fcmpd	%f0, %f2
+-	fbug	1f
+-	 nop
+-	fzero	%f0
+-	fnegd	%f0, %f2
+-1:	retl
+-	 fsubd	%f0, %f2, %f0
+-END(__fdim)
+-weak_alias (__fdim, fdim)
+--- a/sysdeps/sparc/sparc64/fpu/s_fdimf.S
++++ /dev/null
+@@ -1,31 +0,0 @@
+-/* Compute positive difference, sparc 64-bit.
+-   Copyright (C) 2013-2016 Free Software Foundation, Inc.
+-   This file is part of the GNU C Library.
+-   Contributed by David S. Miller <davem@davemloft.net>.
+-
+-   The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU Lesser General Public
+-   License as published by the Free Software Foundation; either
+-   version 2.1 of the License, or (at your option) any later version.
+-
+-   The GNU C Library is distributed in the hope that it will be useful,
+-   but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   Lesser General Public License for more details.
+-
+-   You should have received a copy of the GNU Lesser General Public
+-   License along with the GNU C Library; if not, see
+-   <http://www.gnu.org/licenses/>.  */
+-
+-#include <sysdep.h>
+-
+-ENTRY(__fdimf)
+-	fcmps	%f1, %f3
+-	fbug	1f
+-	 nop
+-	fzeros	%f1
+-	fnegs	%f1, %f3
+-1:	retl
+-	 fsubs	%f1, %f3, %f0
+-END(__fdimf)
+-weak_alias (__fdimf, fdimf)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-glibc/glibc.git


Reply to: