import glibc-2.17-292.el7.src.rpm
Signed-off-by: zhangbinchen <zhangbinchen@openanolis.org>
This commit is contained in:
commit
ff0128648f
929 changed files with 436800 additions and 0 deletions
169
glibc-rh731833-libm-6.patch
Normal file
169
glibc-rh731833-libm-6.patch
Normal file
|
@ -0,0 +1,169 @@
|
|||
Consolidated two commits:
|
||||
|
||||
From 51c33bd233d00d77f268ec28565506a6cd1e7d10 Mon Sep 17 00:00:00 2001
|
||||
From: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
|
||||
Date: Mon, 25 Mar 2013 16:10:06 -0500
|
||||
Subject: [PATCH 25/42] PowerPC: modf optimization
|
||||
|
||||
This patch implements modf/modff optimization for POWER by focus
|
||||
on FP operations instead of relying in integer ones.
|
||||
(backported from commit 3c0265394d9ffedff2b0de508602dc52e077ce5c)
|
||||
|
||||
This backport does not include the benchmark tests from the original
|
||||
commit.
|
||||
|
||||
From 599fefcc3e7fbf65d9c441bf1b336b272c39f262 Mon Sep 17 00:00:00 2001
|
||||
From: Adhemerval Zanella <azanella@linux.vnet.ibm.com>
|
||||
Date: Fri, 26 Apr 2013 13:00:56 -0500
|
||||
Subject: [PATCH 26/42] PowerPC: modf optimization fix
|
||||
|
||||
This patch fix the 3c0265394d9ffedff2b0de508602dc52e077ce5c commits
|
||||
by correctly setting minimum architecture for modf PPC optimization
|
||||
to power5+ instead of power5 (since only on power5+ round/ceil will
|
||||
be inline to inline assembly).
|
||||
(cherry picked from commit aa630f590c9c7d070a7cdf3a2a88069ad6b63de9)
|
||||
|
||||
diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modf.c glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modf.c
|
||||
--- glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modf.c 1970-01-01 05:30:00.000000000 +0530
|
||||
+++ glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modf.c 2013-08-06 17:48:57.609526556 +0530
|
||||
@@ -0,0 +1,58 @@
|
||||
+/* Copyright (C) 2013 Free Software Foundation, Inc.
|
||||
+ This file is part of the GNU C Library
|
||||
+
|
||||
+ The GNU C Library is free software; you can redistribute it and/or
|
||||
+ modify it under the terms of the GNU Library General Public License as
|
||||
+ published by the Free Software Foundation; either version 2 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
|
||||
+ Library General Public License for more details.
|
||||
+
|
||||
+ You should have received a copy of the GNU Library General Public
|
||||
+ License along with the GNU C Library; see the file COPYING.LIB. If
|
||||
+ not, see <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+#include <math.h>
|
||||
+#include <math_private.h>
|
||||
+#include <math_ldbl_opt.h>
|
||||
+
|
||||
+double
|
||||
+__modf (double x, double *iptr)
|
||||
+{
|
||||
+ if (__builtin_isinf (x))
|
||||
+ {
|
||||
+ *iptr = x;
|
||||
+ return __copysign (0.0, x);
|
||||
+ }
|
||||
+ else if (__builtin_isnan (x))
|
||||
+ {
|
||||
+ *iptr = NAN;
|
||||
+ return NAN;
|
||||
+ }
|
||||
+
|
||||
+ if (x >= 0.0)
|
||||
+ {
|
||||
+ *iptr = __floor (x);
|
||||
+ return (x - *iptr);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ *iptr = __ceil (x);
|
||||
+ return (x - *iptr);
|
||||
+ }
|
||||
+}
|
||||
+weak_alias (__modf, modf)
|
||||
+#ifdef NO_LONG_DOUBLE
|
||||
+strong_alias (__modf, __modfl)
|
||||
+weak_alias (__modf, modfl)
|
||||
+#endif
|
||||
+#ifdef IS_IN_libm
|
||||
+# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
|
||||
+compat_symbol (libm, __modf, modfl, GLIBC_2_0);
|
||||
+# endif
|
||||
+#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
|
||||
+compat_symbol (libc, __modf, modfl, GLIBC_2_0);
|
||||
+#endif
|
||||
diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modff.c glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modff.c
|
||||
--- glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modff.c 1970-01-01 05:30:00.000000000 +0530
|
||||
+++ glibc-2.17-c758a686/sysdeps/powerpc/power5+/fpu/s_modff.c 2013-08-06 17:48:57.609526556 +0530
|
||||
@@ -0,0 +1,46 @@
|
||||
+/* Copyright (C) 2013 Free Software Foundation, Inc.
|
||||
+ This file is part of the GNU C Library
|
||||
+
|
||||
+ The GNU C Library is free software; you can redistribute it and/or
|
||||
+ modify it under the terms of the GNU Library General Public License as
|
||||
+ published by the Free Software Foundation; either version 2 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
|
||||
+ Library General Public License for more details.
|
||||
+
|
||||
+ You should have received a copy of the GNU Library General Public
|
||||
+ License along with the GNU C Library; see the file COPYING.LIB. If
|
||||
+ not, see <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+#include <math.h>
|
||||
+#include <math_private.h>
|
||||
+
|
||||
+float
|
||||
+__modff (float x, float *iptr)
|
||||
+{
|
||||
+ if (__builtin_isinff (x))
|
||||
+ {
|
||||
+ *iptr = x;
|
||||
+ return __copysignf (0.0, x);
|
||||
+ }
|
||||
+ else if (__builtin_isnanf (x))
|
||||
+ {
|
||||
+ *iptr = NAN;
|
||||
+ return NAN;
|
||||
+ }
|
||||
+
|
||||
+ if (x >= 0.0)
|
||||
+ {
|
||||
+ *iptr = __floorf (x);
|
||||
+ return (x - *iptr);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ *iptr = __ceilf (x);
|
||||
+ return (x - *iptr);
|
||||
+ }
|
||||
+}
|
||||
+weak_alias (__modff, modff)
|
||||
diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/Implies glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/Implies
|
||||
--- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/Implies 2012-12-25 08:32:13.000000000 +0530
|
||||
+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/Implies 2013-08-06 17:48:54.266526703 +0530
|
||||
@@ -1,2 +1,4 @@
|
||||
+powerpc/power5/fpu
|
||||
+powerpc/power5
|
||||
powerpc/powerpc32/power4/fpu
|
||||
powerpc/powerpc32/power4
|
||||
diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/Implies glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/Implies
|
||||
--- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/Implies 2012-12-25 08:32:13.000000000 +0530
|
||||
+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/Implies 2013-08-06 17:48:57.609526556 +0530
|
||||
@@ -1,2 +1,4 @@
|
||||
+powerpc/power5+/fpu
|
||||
+powerpc/power5+
|
||||
powerpc/powerpc32/power5/fpu
|
||||
powerpc/powerpc32/power5
|
||||
diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5/Implies glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5/Implies
|
||||
--- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5/Implies 2012-12-25 08:32:13.000000000 +0530
|
||||
+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5/Implies 2013-08-06 17:48:54.266526703 +0530
|
||||
@@ -1,2 +1,4 @@
|
||||
+powerpc/power5/fpu
|
||||
+powerpc/power5
|
||||
powerpc/powerpc64/power4/fpu
|
||||
powerpc/powerpc64/power4
|
||||
diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5+/Implies glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5+/Implies
|
||||
--- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5+/Implies 2012-12-25 08:32:13.000000000 +0530
|
||||
+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power5+/Implies 2013-08-06 17:48:57.610526556 +0530
|
||||
@@ -1,2 +1,4 @@
|
||||
+powerpc/power5+/fpu
|
||||
+powerpc/power5+
|
||||
powerpc/powerpc64/power5/fpu
|
||||
powerpc/powerpc64/power5
|
Loading…
Add table
Add a link
Reference in a new issue