summaryrefslogtreecommitdiff
path: root/packages/glibc/2.17
diff options
context:
space:
mode:
Diffstat (limited to 'packages/glibc/2.17')
-rw-r--r--packages/glibc/2.17/0018-fix-GCC-10-detection.patch9
-rw-r--r--packages/glibc/2.17/0019-glibc-rh731833-misc-5.patch15
-rw-r--r--packages/glibc/2.17/0020-glibc-rh731833-libm-3.patch46
-rw-r--r--packages/glibc/2.17/0021-glibc-rh731833-libm-4.patch19
-rw-r--r--packages/glibc/2.17/0022-glibc-powerpc-ldbl_high.patch11
-rw-r--r--packages/glibc/2.17/0023-glibc-ppc64le-01.patch15
-rw-r--r--packages/glibc/2.17/0024-glibc-ppc64le-02.patch81
-rw-r--r--packages/glibc/2.17/0025-glibc-ppc64le-03.patch33
-rw-r--r--packages/glibc/2.17/0026-glibc-ppc64le-04.patch63
-rw-r--r--packages/glibc/2.17/0027-glibc-ppc64le-05.patch35
-rw-r--r--packages/glibc/2.17/0028-glibc-ppc64le-06.patch57
-rw-r--r--packages/glibc/2.17/0029-glibc-ppc64le-07.patch147
-rw-r--r--packages/glibc/2.17/0030-glibc-ppc64le-08.patch135
-rw-r--r--packages/glibc/2.17/0031-glibc-ppc64le-09.patch33
-rw-r--r--packages/glibc/2.17/0032-glibc-ppc64le-10.patch15
-rw-r--r--packages/glibc/2.17/0033-glibc-ppc64le-11.patch9
-rw-r--r--packages/glibc/2.17/0034-glibc-ppc64le-12.patch9
-rw-r--r--packages/glibc/2.17/0035-glibc-ppc64le-13.patch87
-rw-r--r--packages/glibc/2.17/0036-glibc-ppc64le-14.patch9
-rw-r--r--packages/glibc/2.17/0037-glibc-ppc64le-15.patch15
-rw-r--r--packages/glibc/2.17/0038-glibc-ppc64le-16.patch15
-rw-r--r--packages/glibc/2.17/0039-glibc-ppc64le-17.patch117
-rw-r--r--packages/glibc/2.17/0040-glibc-ppc64le-18.patch15
-rw-r--r--packages/glibc/2.17/0041-glibc-ppc64le-19.patch39
-rw-r--r--packages/glibc/2.17/0042-glibc-ppc64le-20.patch9
-rw-r--r--packages/glibc/2.17/0043-glibc-ppc64le-21.patch33
-rw-r--r--packages/glibc/2.17/0044-glibc-ppc64le-22.patch63
-rw-r--r--packages/glibc/2.17/0045-glibc-ppc64le-23.patch21
-rw-r--r--packages/glibc/2.17/0046-glibc-ppc64le-24.patch15
-rw-r--r--packages/glibc/2.17/0047-glibc-ppc64le-25.patch27
-rw-r--r--packages/glibc/2.17/0048-glibc-ppc64le-26.patch15
-rw-r--r--packages/glibc/2.17/0049-glibc-ppc64le-27.patch51
-rw-r--r--packages/glibc/2.17/0050-glibc-ppc64le-28.patch27
-rw-r--r--packages/glibc/2.17/0051-glibc-ppc64le-29.patch99
-rw-r--r--packages/glibc/2.17/0052-glibc-ppc64le-30.patch27
-rw-r--r--packages/glibc/2.17/0053-glibc-ppc64le-31.patch57
-rw-r--r--packages/glibc/2.17/0054-glibc-ppc64le-32.patch45
-rw-r--r--packages/glibc/2.17/0055-glibc-ppc64le-33.patch39
-rw-r--r--packages/glibc/2.17/0056-glibc-ppc64le-34.patch31
-rw-r--r--packages/glibc/2.17/0057-glibc-ppc64le-35.patch15
-rw-r--r--packages/glibc/2.17/0058-glibc-ppc64le-36.patch17
-rw-r--r--packages/glibc/2.17/0059-glibc-ppc64le-37.patch9
-rw-r--r--packages/glibc/2.17/0060-glibc-ppc64le-38.patch33
-rw-r--r--packages/glibc/2.17/0061-glibc-ppc64le-39.patch53
-rw-r--r--packages/glibc/2.17/0062-glibc-ppc64le-40.patch23
-rw-r--r--packages/glibc/2.17/0063-glibc-ppc64le-41.patch81
-rw-r--r--packages/glibc/2.17/0064-glibc-ppc64le-42.patch33
-rw-r--r--packages/glibc/2.17/0065-glibc-ppc64le-43.patch33
-rw-r--r--packages/glibc/2.17/0066-glibc-ppc64le-44.patch9
-rw-r--r--packages/glibc/2.17/0067-glibc-ppc64le-45.patch9
-rw-r--r--packages/glibc/2.17/0068-glibc-ppc64le-46.patch9
-rw-r--r--packages/glibc/2.17/0069-uses-power6-mtfsf-when-not-supported.patch25
52 files changed, 1027 insertions, 910 deletions
diff --git a/packages/glibc/2.17/0018-fix-GCC-10-detection.patch b/packages/glibc/2.17/0018-fix-GCC-10-detection.patch
index b522ae7..6ee9444 100644
--- a/packages/glibc/2.17/0018-fix-GCC-10-detection.patch
+++ b/packages/glibc/2.17/0018-fix-GCC-10-detection.patch
@@ -4,14 +4,12 @@ Date: Fri, 5 Jun 2020 09:11:40 +0200
Subject: [PATCH] Fix GCC 10+ detection
---
- configure | 2 +-
+ configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/configure b/configure
-index 8799b7de78..0f99f04bfc 100755
--- a/configure
+++ b/configure
-@@ -4909,7 +4909,7 @@ $as_echo_n "checking version of $CC... " >&6; }
+@@ -4909,7 +4909,7 @@
ac_prog_version=`$CC -v 2>&1 | sed -n 's/^.*version \([egcygnustpi-]*[0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
@@ -20,6 +18,3 @@ index 8799b7de78..0f99f04bfc 100755
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
---
-2.25.1
-
diff --git a/packages/glibc/2.17/0019-glibc-rh731833-misc-5.patch b/packages/glibc/2.17/0019-glibc-rh731833-misc-5.patch
index ad46fe5..8074621 100644
--- a/packages/glibc/2.17/0019-glibc-rh731833-misc-5.patch
+++ b/packages/glibc/2.17/0019-glibc-rh731833-misc-5.patch
@@ -7,14 +7,12 @@ This patch reserves four pointer to be used in future Event-Based
Branch framework for PowerPC.
(cherry picked from commit e55a9b256d53c7fc5145e3e4d338d3741b23e232)
---
- nptl/sysdeps/powerpc/tls.h | 5 +++++
- 2 files changed, 10 insertions(+)
+ nptl/sysdeps/powerpc/tls.h | 5 +++++
+ 1 file changed, 5 insertions(+)
-diff --git glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h
-index 4c09eec..611c773 100644
---- glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h
-+++ glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h
-@@ -61,6 +61,11 @@ typedef union dtv
+--- a/nptl/sysdeps/powerpc/tls.h
++++ b/nptl/sysdeps/powerpc/tls.h
+@@ -61,6 +61,11 @@
are private. */
typedef struct
{
@@ -26,6 +24,3 @@ index 4c09eec..611c773 100644
uintptr_t pointer_guard;
uintptr_t stack_guard;
dtv_t *dtv;
---
-1.7.11.7
-
diff --git a/packages/glibc/2.17/0020-glibc-rh731833-libm-3.patch b/packages/glibc/2.17/0020-glibc-rh731833-libm-3.patch
index 89fe7a2..15e6010 100644
--- a/packages/glibc/2.17/0020-glibc-rh731833-libm-3.patch
+++ b/packages/glibc/2.17/0020-glibc-rh731833-libm-3.patch
@@ -7,18 +7,16 @@ This patch removes redudant definition from PowerPC specific
math_ldbl, using the definitions from ieee754 math_ldbl.h.
(backported from commit edf66e57fc2bac083ecc9756a5fe47f9041ed3bb)
---
- sysdeps/ieee754/ldbl-128ibm/math_ldbl.h | 10 +-
- sysdeps/powerpc/Implies | 1 +
- sysdeps/powerpc/fpu/math_ldbl.h | 171 ++------------------------------
- sysdeps/unix/sysv/linux/powerpc/Implies | 4 -
- 5 files changed, 34 insertions(+), 168 deletions(-)
+ sysdeps/ieee754/ldbl-128ibm/math_ldbl.h | 10 +
+ sysdeps/powerpc/Implies | 1
+ sysdeps/powerpc/fpu/math_ldbl.h | 171 +-------------------------------
+ sysdeps/unix/sysv/linux/powerpc/Implies | 4
+ 4 files changed, 18 insertions(+), 168 deletions(-)
delete mode 100644 sysdeps/unix/sysv/linux/powerpc/Implies
-diff --git glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
-index be9ac71..1cce1fc 100644
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
-@@ -125,7 +125,7 @@ ldbl_insert_mantissa (int sign, int exp, int64_t hi64, u_int64_t lo64)
+--- a/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
++++ b/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
+@@ -125,7 +125,7 @@
/* Handy utility functions to pack/unpack/cononicalize and find the nearbyint
of long double implemented as double double. */
static inline long double
@@ -27,7 +25,7 @@ index be9ac71..1cce1fc 100644
{
union ibm_extended_long_double u;
u.dd[0] = a;
-@@ -134,7 +134,7 @@ ldbl_pack (double a, double aa)
+@@ -134,7 +134,7 @@
}
static inline void
@@ -36,7 +34,7 @@ index be9ac71..1cce1fc 100644
{
union ibm_extended_long_double u;
u.d = l;
-@@ -142,6 +142,12 @@ ldbl_unpack (long double l, double *a, double *aa)
+@@ -142,6 +142,12 @@
*aa = u.dd[1];
}
@@ -49,20 +47,16 @@ index be9ac71..1cce1fc 100644
/* Convert a finite long double to canonical form.
Does not handle +/-Inf properly. */
-diff --git glibc-2.17-c758a686/sysdeps/powerpc/Implies glibc-2.17-c758a686/sysdeps/powerpc/Implies
-index 7ccf9a7..78dba95 100644
---- glibc-2.17-c758a686/sysdeps/powerpc/Implies
-+++ glibc-2.17-c758a686/sysdeps/powerpc/Implies
+--- a/sysdeps/powerpc/Implies
++++ b/sysdeps/powerpc/Implies
@@ -1,4 +1,5 @@
# On PowerPC we use the IBM extended long double format.
ieee754/ldbl-128ibm
+ieee754/ldbl-opt
ieee754/dbl-64
ieee754/flt-32
-diff --git glibc-2.17-c758a686/sysdeps/powerpc/fpu/math_ldbl.h glibc-2.17-c758a686/sysdeps/powerpc/fpu/math_ldbl.h
-index 6cd6d0b..36378c0 100644
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/math_ldbl.h
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/math_ldbl.h
+--- a/sysdeps/powerpc/fpu/math_ldbl.h
++++ b/sysdeps/powerpc/fpu/math_ldbl.h
@@ -2,132 +2,12 @@
#error "Never use <math_ldbl.h> directly; include <math_private.h> instead."
#endif
@@ -201,7 +195,7 @@ index 6cd6d0b..36378c0 100644
{
register long double x __asm__ ("fr1");
register double xh __asm__ ("fr1");
-@@ -139,7 +19,7 @@ ldbl_pack (double a, double aa)
+@@ -139,7 +19,7 @@
}
static inline void
@@ -210,7 +204,7 @@ index 6cd6d0b..36378c0 100644
{
register long double x __asm__ ("fr1");
register double xh __asm__ ("fr1");
-@@ -150,40 +30,7 @@ ldbl_unpack (long double l, double *a, double *aa)
+@@ -150,40 +30,7 @@
*aa = xl;
}
@@ -254,16 +248,10 @@ index 6cd6d0b..36378c0 100644
- return a;
-}
+#include <sysdeps/ieee754/ldbl-128ibm/math_ldbl.h>
-diff --git glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Implies glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Implies
-deleted file mode 100644
-index ff27cdb..0000000
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Implies
+--- a/sysdeps/unix/sysv/linux/powerpc/Implies
+++ /dev/null
@@ -1,4 +0,0 @@
-# Make sure these routines come before ldbl-opt.
-ieee754/ldbl-128ibm
-# These supply the ABI compatibility for when long double was double.
-ieee754/ldbl-opt
---
-1.7.11.7
-
diff --git a/packages/glibc/2.17/0021-glibc-rh731833-libm-4.patch b/packages/glibc/2.17/0021-glibc-rh731833-libm-4.patch
index a513494..ee6056b 100644
--- a/packages/glibc/2.17/0021-glibc-rh731833-libm-4.patch
+++ b/packages/glibc/2.17/0021-glibc-rh731833-libm-4.patch
@@ -15,9 +15,13 @@ Subject: [PATCH 21/42] PowerPC: fix libm ABI issue for llroundl (cherry
picked from commit
fce14d4e9c6e08ad8c825fe88d8cbdac5c739565)
-diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c 2012-12-25 08:32:13.000000000 +0530
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c 2013-08-06 17:45:56.719534470 +0530
+---
+ sysdeps/powerpc/fpu/s_llround.c | 4 ++++
+ sysdeps/powerpc/fpu/w_sqrt.c | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+--- a/sysdeps/powerpc/fpu/s_llround.c
++++ b/sysdeps/powerpc/fpu/s_llround.c
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
@@ -26,16 +30,15 @@ diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c glibc-2.17-c758a6
/* I think that what this routine is supposed to do is round a value
to the nearest integer, with values exactly on the boundary rounded
-@@ -47,3 +48,6 @@ weak_alias (__llround, llround)
+@@ -47,3 +48,6 @@
strong_alias (__llround, __llroundl)
weak_alias (__llround, llroundl)
#endif
+#if LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)
+compat_symbol (libm, __llround, llroundl, GLIBC_2_1);
+#endif
-diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/fpu/w_sqrt.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/w_sqrt.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/w_sqrt.c 2012-12-25 08:32:13.000000000 +0530
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/w_sqrt.c 2013-08-06 17:45:53.459534613 +0530
+--- a/sysdeps/powerpc/fpu/w_sqrt.c
++++ b/sysdeps/powerpc/fpu/w_sqrt.c
@@ -19,6 +19,7 @@
#include <math.h>
#include <math_private.h>
@@ -44,7 +47,7 @@ diff -pruN glibc-2.17-c758a686/sysdeps/powerpc/fpu/w_sqrt.c glibc-2.17-c758a686/
double
__sqrt (double x) /* wrapper sqrt */
-@@ -42,3 +43,6 @@ weak_alias (__sqrt, sqrt)
+@@ -42,3 +43,6 @@
#ifdef NO_LONG_DOUBLE
strong_alias (__sqrt, __sqrtl) weak_alias (__sqrt, sqrtl)
#endif
diff --git a/packages/glibc/2.17/0022-glibc-powerpc-ldbl_high.patch b/packages/glibc/2.17/0022-glibc-powerpc-ldbl_high.patch
index 68faeee..fd0f439 100644
--- a/packages/glibc/2.17/0022-glibc-powerpc-ldbl_high.patch
+++ b/packages/glibc/2.17/0022-glibc-powerpc-ldbl_high.patch
@@ -1,7 +1,10 @@
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-27 19:59:00.000000000 -0500
-@@ -190,6 +190,9 @@
+---
+ sysdeps/ieee754/ldbl-128ibm/math_ldbl.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
++++ b/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
+@@ -149,6 +149,9 @@
# define ldbl_unpack default_ldbl_unpack
#endif
diff --git a/packages/glibc/2.17/0023-glibc-ppc64le-01.patch b/packages/glibc/2.17/0023-glibc-ppc64le-01.patch
index e2a86d7..062bd99 100644
--- a/packages/glibc/2.17/0023-glibc-ppc64le-01.patch
+++ b/packages/glibc/2.17/0023-glibc-ppc64le-01.patch
@@ -9,9 +9,13 @@
# machine specific Makefiles to define different abifiles names
# (for instance *-le.abilist for powerpc64le).
#
-diff -urN glibc-2.17-c758a686/Makerules glibc-2.17-c758a686/Makerules
---- glibc-2.17-c758a686/Makerules 2014-06-02 15:29:42.000000000 +0000
-+++ glibc-2.17-c758a686/Makerules 2014-06-02 15:25:21.000000000 +0000
+---
+# Makerules | 32 ++++++++++++++++++++++++++++++++
+# sysdeps/powerpc/Makefile | 4 ++++
+# 2 files changed, 36 insertions(+)
+#
+--- a/Makerules
++++ b/Makerules
@@ -1152,6 +1152,14 @@
LC_ALL=C $(OBJDUMP) --dynamic-syms $< > $@T
mv -f $@T $@
@@ -70,9 +74,8 @@ diff -urN glibc-2.17-c758a686/Makerules glibc-2.17-c758a686/Makerules
define update-abi
@if cmp -s $^ 2> /dev/null; \
then \
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/Makefile glibc-2.17-c758a686/sysdeps/powerpc/Makefile
---- glibc-2.17-c758a686/sysdeps/powerpc/Makefile 2014-06-02 15:29:42.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/powerpc/Makefile 2014-06-02 15:25:21.000000000 +0000
+--- a/sysdeps/powerpc/Makefile
++++ b/sysdeps/powerpc/Makefile
@@ -27,3 +27,7 @@
sysdep_headers += sys/platform/ppc.h
tests += test-gettimebase
diff --git a/packages/glibc/2.17/0024-glibc-ppc64le-02.patch b/packages/glibc/2.17/0024-glibc-ppc64le-02.patch
index 3878826..8efe799 100644
--- a/packages/glibc/2.17/0024-glibc-ppc64le-02.patch
+++ b/packages/glibc/2.17/0024-glibc-ppc64le-02.patch
@@ -6,9 +6,24 @@
#
# This patch is the abifiles for powerpc64le based on GLIBC 2.17.
#
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld-le.abilist 2014-06-02 15:22:40.000000000 +0000
+---
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld-le.abilist | 11
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libBrokenLocale-le.abilist | 3
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libanl-le.abilist | 6
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc-le.abilist | 2168 ++++++++++
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libcrypt-le.abilist | 9
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libdl-le.abilist | 11
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libm-le.abilist | 402 +
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libnsl-le.abilist | 123
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libpthread-le.abilist | 224 +
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libresolv-le.abilist | 93
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/librt-le.abilist | 37
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libthread_db-le.abilist | 42
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libutil-le.abilist | 8
+# 13 files changed, 3137 insertions(+)
+#
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld-le.abilist
@@ -0,0 +1,11 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -21,16 +36,14 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/ld-
+ free F
+ malloc F
+ realloc F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libBrokenLocale-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libBrokenLocale-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libBrokenLocale-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libBrokenLocale-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libBrokenLocale-le.abilist
@@ -0,0 +1,3 @@
+GLIBC_2.17
+ GLIBC_2.17 A
+ __ctype_get_mb_cur_max F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libanl-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libanl-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libanl-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libanl-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libanl-le.abilist
@@ -0,0 +1,6 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -38,9 +51,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ gai_error F
+ gai_suspend F
+ getaddrinfo_a F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc-le.abilist
@@ -0,0 +1,2168 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -2210,9 +2222,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ xencrypt F
+ xprt_register F
+ xprt_unregister F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libcrypt-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libcrypt-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libcrypt-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libcrypt-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libcrypt-le.abilist
@@ -0,0 +1,9 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -2223,9 +2234,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ fcrypt F
+ setkey F
+ setkey_r F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libdl-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libdl-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libdl-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libdl-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libdl-le.abilist
@@ -0,0 +1,11 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -2238,9 +2248,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ dlopen F
+ dlsym F
+ dlvsym F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libm-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libm-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libm-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libm-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libm-le.abilist
@@ -0,0 +1,402 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -2644,9 +2653,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ yn F
+ ynf F
+ ynl F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libnsl-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libnsl-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libnsl-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libnsl-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libnsl-le.abilist
@@ -0,0 +1,123 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -2771,9 +2779,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ ypbinderr_string F
+ yperr_string F
+ ypprot_err F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libpthread-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libpthread-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libpthread-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libpthread-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libpthread-le.abilist
@@ -0,0 +1,224 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -2999,9 +3006,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ wait F
+ waitpid F
+ write F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libresolv-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libresolv-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libresolv-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libresolv-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libresolv-le.abilist
@@ -0,0 +1,93 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -3096,9 +3102,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ res_gethostbyname2 F
+ res_send_setqhook F
+ res_send_setrhook F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/librt-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/librt-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/librt-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/librt-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/librt-le.abilist
@@ -0,0 +1,37 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -3137,9 +3142,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ timer_getoverrun F
+ timer_gettime F
+ timer_settime F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libthread_db-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libthread_db-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libthread_db-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libthread_db-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libthread_db-le.abilist
@@ -0,0 +1,42 @@
+GLIBC_2.17
+ GLIBC_2.17 A
@@ -3183,9 +3187,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/lib
+ td_thr_tlsbase F
+ td_thr_tsd F
+ td_thr_validate F
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libutil-le.abilist glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libutil-le.abilist
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libutil-le.abilist 1970-01-01 00:00:00.000000000 +0000
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libutil-le.abilist 2014-06-02 15:22:40.000000000 +0000
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libutil-le.abilist
@@ -0,0 +1,8 @@
+GLIBC_2.17
+ GLIBC_2.17 A
diff --git a/packages/glibc/2.17/0025-glibc-ppc64le-03.patch b/packages/glibc/2.17/0025-glibc-ppc64le-03.patch
index 40b6e71..24b5de9 100644
--- a/packages/glibc/2.17/0025-glibc-ppc64le-03.patch
+++ b/packages/glibc/2.17/0025-glibc-ppc64le-03.patch
@@ -4,9 +4,16 @@
#
# Update miscellaneous scripts from upstream.
#
-diff -urN glibc-2.17-c758a686/scripts/config.guess glibc-2.17-c758a686/scripts/config.guess
---- glibc-2.17-c758a686/scripts/config.guess 2014-05-26 15:59:45.000000000 -0500
-+++ glibc-2.17-c758a686/scripts/config.guess 2014-05-26 16:01:00.000000000 -0500
+---
+# scripts/config.guess | 177 +++++++-----
+# scripts/config.sub | 93 +++---
+# scripts/install-sh | 707 ++++++++++++++++++++++++++++++++++---------------
+# scripts/mkinstalldirs | 174 ++++++++++--
+# scripts/move-if-change | 92 +++++-
+# 5 files changed, 874 insertions(+), 369 deletions(-)
+#
+--- a/scripts/config.guess
++++ b/scripts/config.guess
@@ -1,14 +1,12 @@
#! /bin/sh
# Attempt to guess a canonical system name.
@@ -320,9 +327,8 @@ diff -urN glibc-2.17-c758a686/scripts/config.guess glibc-2.17-c758a686/scripts/c
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
-diff -urN glibc-2.17-c758a686/scripts/config.sub glibc-2.17-c758a686/scripts/config.sub
---- glibc-2.17-c758a686/scripts/config.sub 2014-05-26 15:59:45.000000000 -0500
-+++ glibc-2.17-c758a686/scripts/config.sub 2014-05-26 16:00:52.000000000 -0500
+--- a/scripts/config.sub
++++ b/scripts/config.sub
@@ -1,24 +1,18 @@
#! /bin/sh
# Configuration validation subroutine script.
@@ -578,9 +584,8 @@ diff -urN glibc-2.17-c758a686/scripts/config.sub glibc-2.17-c758a686/scripts/con
or32-*)
os=-coff
;;
-diff -urN glibc-2.17-c758a686/scripts/install-sh glibc-2.17-c758a686/scripts/install-sh
---- glibc-2.17-c758a686/scripts/install-sh 2014-05-26 15:59:45.000000000 -0500
-+++ glibc-2.17-c758a686/scripts/install-sh 2014-05-26 16:00:34.000000000 -0500
+--- a/scripts/install-sh
++++ b/scripts/install-sh
@@ -1,250 +1,527 @@
-#! /bin/sh
-#
@@ -1324,9 +1329,8 @@ diff -urN glibc-2.17-c758a686/scripts/install-sh glibc-2.17-c758a686/scripts/ins
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
-diff -urN glibc-2.17-c758a686/scripts/mkinstalldirs glibc-2.17-c758a686/scripts/mkinstalldirs
---- glibc-2.17-c758a686/scripts/mkinstalldirs 2014-05-26 15:59:45.000000000 -0500
-+++ glibc-2.17-c758a686/scripts/mkinstalldirs 2014-05-26 16:00:34.000000000 -0500
+--- a/scripts/mkinstalldirs
++++ b/scripts/mkinstalldirs
@@ -1,38 +1,162 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
@@ -1515,9 +1519,8 @@ diff -urN glibc-2.17-c758a686/scripts/mkinstalldirs glibc-2.17-c758a686/scripts/
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
-diff -urN glibc-2.17-c758a686/scripts/move-if-change glibc-2.17-c758a686/scripts/move-if-change
---- glibc-2.17-c758a686/scripts/move-if-change 2014-05-26 15:59:45.000000000 -0500
-+++ glibc-2.17-c758a686/scripts/move-if-change 2014-05-26 16:00:34.000000000 -0500
+--- a/scripts/move-if-change
++++ b/scripts/move-if-change
@@ -1,17 +1,83 @@
#!/bin/sh
# Like mv $1 $2, but if the files are the same, just delete $1.
diff --git a/packages/glibc/2.17/0026-glibc-ppc64le-04.patch b/packages/glibc/2.17/0026-glibc-ppc64le-04.patch
index 8f6840b..2b7a713 100644
--- a/packages/glibc/2.17/0026-glibc-ppc64le-04.patch
+++ b/packages/glibc/2.17/0026-glibc-ppc64le-04.patch
@@ -24,9 +24,21 @@
# * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Likewise.
# * sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c 2014-05-26 21:08:10.000000000 -0500
+---
+# sysdeps/ieee754/ldbl-128ibm/e_exp10l.c | 6 +-
+# sysdeps/ieee754/ldbl-128ibm/e_expl.c | 34 ++++++++--------
+# sysdeps/ieee754/ldbl-128ibm/ieee754.h | 26 +-----------
+# sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c | 20 ++++-----
+# sysdeps/ieee754/ldbl-128ibm/math_ldbl.h | 60 ++++++++++++++---------------
+# sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c | 36 ++++++++---------
+# sysdeps/ieee754/ldbl-128ibm/printf_fphex.c | 32 +++++++--------
+# sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c | 54 +++++++++++++-------------
+# sysdeps/ieee754/ldbl-128ibm/strtold_l.c | 11 ++---
+# sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c | 26 ++++++------
+# 10 files changed, 142 insertions(+), 163 deletions(-)
+#
+--- a/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c
@@ -36,9 +36,9 @@
else if (arg > LDBL_MAX_10_EXP + 1)
return LDBL_MAX * LDBL_MAX;
@@ -40,9 +52,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c glibc-2.17-
exp_high = arg_high * log10_high;
exp_low = arg_high * log10_low + arg_low * M_LN10l;
return __ieee754_expl (exp_high) * __ieee754_expl (exp_low);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_expl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_expl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_expl.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_expl.c 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_expl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_expl.c
@@ -162,39 +162,39 @@
x = x + xl;
@@ -116,9 +127,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_expl.c glibc-2.17-c7
}
/* Exceptional cases: */
else if (isless (x, himark))
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/ieee754.h
++++ b/sysdeps/ieee754/ldbl-128ibm/ieee754.h
@@ -180,29 +180,9 @@
union ibm_extended_long_double
@@ -152,9 +162,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h glibc-2.17-c
__END_DECLS
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
++++ b/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
@@ -36,22 +36,22 @@
union ibm_extended_long_double u;
unsigned long long hi, lo;
@@ -205,9 +214,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c glibc-2.17-
{
/* A biased exponent of zero is a special case.
Either it is a zero or it is a denormal number. */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
++++ b/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
@@ -14,28 +14,28 @@
as bit 53 of the mantissa. */
uint64_t hi, lo;
@@ -338,9 +346,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17
}
#ifndef ldbl_pack
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
@@ -34,11 +34,11 @@
unsigned long long hi, lo;
int exponent2;
@@ -415,9 +422,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c glibc-2.17-
- return u.d;
+ return u.ld;
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
++++ b/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
@@ -27,31 +27,31 @@
unsigned long long int num0, num1; \
unsigned long long hi, lo; \
@@ -503,9 +509,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c glibc-2
} \
} while (0)
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c
@@ -33,11 +33,11 @@
fenv_t env;
static const long double TWO52 = 4503599627370496.0L;
@@ -613,9 +618,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c glibc-2
}
long_double_symbol (libm, __nearbyintl, nearbyintl);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/strtold_l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/strtold_l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/strtold_l.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/strtold_l.c 2014-05-26 21:12:01.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/strtold_l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/strtold_l.c
@@ -43,12 +43,11 @@
#define FLOAT_HUGE_VAL HUGE_VALL
# define SET_MANTISSA(flt, mant) \
@@ -634,9 +638,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/strtold_l.c glibc-2.17
} while (0)
#include <strtod_l.c>
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c 2014-05-26 21:08:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c 2014-05-26 21:08:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c
@@ -89,23 +89,23 @@
double vals[12];
SET_RESTORE_ROUND (FE_TONEAREST);
diff --git a/packages/glibc/2.17/0027-glibc-ppc64le-05.patch b/packages/glibc/2.17/0027-glibc-ppc64le-05.patch
index d089fda..9363f34 100644
--- a/packages/glibc/2.17/0027-glibc-ppc64le-05.patch
+++ b/packages/glibc/2.17/0027-glibc-ppc64le-05.patch
@@ -56,9 +56,16 @@
# (__mpn_construct_long_double): Fix test for overflow of high
# mantissa and correct normalisation. Avoid undefined shift.
#
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c 2014-05-27 19:13:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c 2014-05-27 19:14:45.000000000 -0500
+---
+# sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c | 2
+# sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c | 34 +++--
+# sysdeps/ieee754/ldbl-128ibm/math_ldbl.h | 167 ++++++++++++++++++-----------
+# sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c | 44 +++----
+# sysdeps/ieee754/ldbl-128ibm/printf_fphex.c | 14 +-
+# 5 files changed, 155 insertions(+), 106 deletions(-)
+#
+--- a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
@@ -243,7 +243,7 @@
We split the 113 bits of the mantissa into 5 24bit integers
stored in a double array. */
@@ -68,9 +75,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c glibc-2.
ldbl_extract_mantissa (&ixd, &lxd, &exp, x);
exp = exp - 23;
/* This is faster than doing this in floating point, because we
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c 2014-05-27 19:13:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c 2014-05-27 19:14:45.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
++++ b/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
@@ -36,6 +36,7 @@
union ibm_extended_long_double u;
unsigned long long hi, lo;
@@ -128,9 +134,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c glibc-2.17-
{
/* we have a borrow from the hidden bit, so shift left 1. */
hi = 0x0ffffffffffffeLL | (lo >> 51);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-27 19:13:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-27 19:51:13.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
++++ b/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
@@ -13,77 +13,118 @@
the number before the decimal point and the second implicit bit
as bit 53 of the mantissa. */
@@ -353,7 +358,7 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17
static inline void
default_ldbl_unpack (long double l, double *a, double *aa)
{
-@@ -162,13 +203,13 @@
+@@ -165,13 +206,13 @@
*aa = xl;
}
@@ -369,9 +374,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17
if (__builtin_expect ((__builtin_fabs (a) < two52), 1))
{
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c 2014-05-27 19:13:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c 2014-05-27 19:14:45.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
@@ -70,9 +70,9 @@
else
lzcount = __builtin_clzl ((long) val) + 32;
@@ -458,9 +462,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c glibc-2.17-
return u.ld;
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c 2014-05-27 19:13:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c 2014-05-27 19:14:45.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
++++ b/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
@@ -43,15 +43,15 @@
lo <<= 1; \
/* The lower double is normalized separately from the upper. We \
diff --git a/packages/glibc/2.17/0028-glibc-ppc64le-06.patch b/packages/glibc/2.17/0028-glibc-ppc64le-06.patch
index fe7cf61..c94079d 100644
--- a/packages/glibc/2.17/0028-glibc-ppc64le-06.patch
+++ b/packages/glibc/2.17/0028-glibc-ppc64le-06.patch
@@ -27,9 +27,20 @@
# ports/
# * sysdeps/ia64/fpu/printf_fphex.c: Adjust for fpnum change.
#
-diff -urN glibc-2.17-c758a686/math/test-misc.c glibc-2.17-c758a686/math/test-misc.c
---- glibc-2.17-c758a686/math/test-misc.c 2014-05-27 19:53:22.000000000 -0500
-+++ glibc-2.17-c758a686/math/test-misc.c 2014-05-27 19:53:45.000000000 -0500
+---
+# math/test-misc.c | 289 +++++++----------------------
+# ports/sysdeps/ia64/fpu/printf_fphex.c | 10 -
+# stdio-common/printf_fp.c | 3
+# stdio-common/printf_fphex.c | 14 -
+# stdio-common/printf_size.c | 12 -
+# sysdeps/ieee754/ldbl-128/printf_fphex.c | 14 -
+# sysdeps/ieee754/ldbl-128ibm/printf_fphex.c | 4
+# sysdeps/ieee754/ldbl-96/printf_fphex.c | 8
+# sysdeps/x86_64/fpu/printf_fphex.c | 9
+# 9 files changed, 113 insertions(+), 250 deletions(-)
+#
+--- a/math/test-misc.c
++++ b/math/test-misc.c
@@ -721,300 +721,161 @@
#ifndef NO_LONG_DOUBLE
@@ -406,9 +417,8 @@ diff -urN glibc-2.17-c758a686/math/test-misc.c glibc-2.17-c758a686/math/test-mis
result = 1;
}
-diff -urN glibc-2.17-c758a686/ports/sysdeps/ia64/fpu/printf_fphex.c glibc-2.17-c758a686/ports/sysdeps/ia64/fpu/printf_fphex.c
---- glibc-2.17-c758a686/ports/sysdeps/ia64/fpu/printf_fphex.c 2014-05-27 19:53:21.000000000 -0500
-+++ glibc-2.17-c758a686/ports/sysdeps/ia64/fpu/printf_fphex.c 2014-05-27 19:53:45.000000000 -0500
+--- a/ports/sysdeps/ia64/fpu/printf_fphex.c
++++ b/ports/sysdeps/ia64/fpu/printf_fphex.c
@@ -25,9 +25,11 @@
/* The "strange" 80 bit format on ia64 has an explicit \
leading digit in the 64 bit mantissa. */ \
@@ -434,9 +444,8 @@ diff -urN glibc-2.17-c758a686/ports/sysdeps/ia64/fpu/printf_fphex.c glibc-2.17-c
if (exponent == 0) \
{ \
if (zero_mantissa) \
-diff -urN glibc-2.17-c758a686/stdio-common/printf_fp.c glibc-2.17-c758a686/stdio-common/printf_fp.c
---- glibc-2.17-c758a686/stdio-common/printf_fp.c 2014-05-27 19:53:22.000000000 -0500
-+++ glibc-2.17-c758a686/stdio-common/printf_fp.c 2014-05-27 19:53:45.000000000 -0500
+--- a/stdio-common/printf_fp.c
++++ b/stdio-common/printf_fp.c
@@ -335,8 +335,7 @@
int res;
if (__isnanl (fpnum.ldbl))
@@ -447,9 +456,8 @@ diff -urN glibc-2.17-c758a686/stdio-common/printf_fp.c glibc-2.17-c758a686/stdio
if (isupper (info->spec))
{
special = "NAN";
-diff -urN glibc-2.17-c758a686/stdio-common/printf_fphex.c glibc-2.17-c758a686/stdio-common/printf_fphex.c
---- glibc-2.17-c758a686/stdio-common/printf_fphex.c 2014-05-27 19:53:22.000000000 -0500
-+++ glibc-2.17-c758a686/stdio-common/printf_fphex.c 2014-05-27 19:53:45.000000000 -0500
+--- a/stdio-common/printf_fphex.c
++++ b/stdio-common/printf_fphex.c
@@ -93,7 +93,7 @@
union
{
@@ -497,9 +505,8 @@ diff -urN glibc-2.17-c758a686/stdio-common/printf_fphex.c glibc-2.17-c758a686/st
}
else
#endif /* no long double */
-diff -urN glibc-2.17-c758a686/stdio-common/printf_size.c glibc-2.17-c758a686/stdio-common/printf_size.c
---- glibc-2.17-c758a686/stdio-common/printf_size.c 2014-05-27 19:53:22.000000000 -0500
-+++ glibc-2.17-c758a686/stdio-common/printf_size.c 2014-05-27 19:53:45.000000000 -0500
+--- a/stdio-common/printf_size.c
++++ b/stdio-common/printf_size.c
@@ -103,7 +103,7 @@
union
{
@@ -540,9 +547,8 @@ diff -urN glibc-2.17-c758a686/stdio-common/printf_size.c glibc-2.17-c758a686/std
++tag;
}
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128/printf_fphex.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128/printf_fphex.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128/printf_fphex.c 2014-05-27 19:53:20.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128/printf_fphex.c 2014-05-27 19:53:45.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128/printf_fphex.c
++++ b/sysdeps/ieee754/ldbl-128/printf_fphex.c
@@ -24,13 +24,15 @@
digits we use only the implicit digits for the number before \
the decimal point. */ \
@@ -575,9 +581,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128/printf_fphex.c glibc-2.17
\
if (exponent == 0) \
{ \
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c 2014-05-27 19:53:20.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c 2014-05-27 19:53:45.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
++++ b/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
@@ -28,14 +28,14 @@
unsigned long long hi, lo; \
int ediff; \
@@ -595,9 +600,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c glibc-2
53rd bit. */ \
if (u.d[1].ieee.exponent != 0) \
lo |= (1ULL << (52 + 7)); \
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-96/printf_fphex.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-96/printf_fphex.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-96/printf_fphex.c 2014-05-27 19:53:20.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-96/printf_fphex.c 2014-05-27 19:53:45.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-96/printf_fphex.c
++++ b/sysdeps/ieee754/ldbl-96/printf_fphex.c
@@ -25,11 +25,13 @@
/* The "strange" 80 bit format on ix86 and m68k has an explicit \
leading digit in the 64 bit mantissa. */ \
@@ -623,9 +627,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-96/printf_fphex.c glibc-2.17-
\
if (exponent == 0) \
{ \
-diff -urN glibc-2.17-c758a686/sysdeps/x86_64/fpu/printf_fphex.c glibc-2.17-c758a686/sysdeps/x86_64/fpu/printf_fphex.c
---- glibc-2.17-c758a686/sysdeps/x86_64/fpu/printf_fphex.c 2014-05-27 19:53:20.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/x86_64/fpu/printf_fphex.c 2014-05-27 19:53:45.000000000 -0500
+--- a/sysdeps/x86_64/fpu/printf_fphex.c
++++ b/sysdeps/x86_64/fpu/printf_fphex.c
@@ -25,10 +25,11 @@
/* The "strange" 80 bit format on ix86 and m68k has an explicit \
leading digit in the 64 bit mantissa. */ \
diff --git a/packages/glibc/2.17/0029-glibc-ppc64le-07.patch b/packages/glibc/2.17/0029-glibc-ppc64le-07.patch
index 120576e..eff61d3 100644
--- a/packages/glibc/2.17/0029-glibc-ppc64le-07.patch
+++ b/packages/glibc/2.17/0029-glibc-ppc64le-07.patch
@@ -42,9 +42,35 @@
# * sysdeps/ieee754/ldbl-128ibm/s_tanl.c (__tanl): Likewise.
# * sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c (__logbl): Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c 2014-05-27 19:59:00.000000000 -0500
+---
+# sysdeps/ieee754/ldbl-128ibm/e_acoshl.c | 8 ++++-
+# sysdeps/ieee754/ldbl-128ibm/e_acosl.c | 36 ++++++++++++-------------
+# sysdeps/ieee754/ldbl-128ibm/e_asinl.c | 26 +++++++-----------
+# sysdeps/ieee754/ldbl-128ibm/e_atanhl.c | 6 ++--
+# sysdeps/ieee754/ldbl-128ibm/e_coshl.c | 4 ++
+# sysdeps/ieee754/ldbl-128ibm/e_log2l.c | 8 +++--
+# sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c | 5 ++-
+# sysdeps/ieee754/ldbl-128ibm/e_sinhl.c | 4 ++
+# sysdeps/ieee754/ldbl-128ibm/k_cosl.c | 10 ++++--
+# sysdeps/ieee754/ldbl-128ibm/k_sincosl.c | 12 +++++---
+# sysdeps/ieee754/ldbl-128ibm/k_sinl.c | 8 ++++-
+# sysdeps/ieee754/ldbl-128ibm/s_asinhl.c | 5 ++-
+# sysdeps/ieee754/ldbl-128ibm/s_atanl.c | 15 ++++------
+# sysdeps/ieee754/ldbl-128ibm/s_cosl.c | 4 ++
+# sysdeps/ieee754/ldbl-128ibm/s_fabsl.c | 10 +++++-
+# sysdeps/ieee754/ldbl-128ibm/s_finitel.c | 12 +++++---
+# sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c | 5 ++-
+# sysdeps/ieee754/ldbl-128ibm/s_isnanl.c | 14 +++++----
+# sysdeps/ieee754/ldbl-128ibm/s_logbl.c | 5 ++-
+# sysdeps/ieee754/ldbl-128ibm/s_signbitl.c | 4 ++
+# sysdeps/ieee754/ldbl-128ibm/s_sincosl.c | 4 ++
+# sysdeps/ieee754/ldbl-128ibm/s_sinl.c | 4 ++
+# sysdeps/ieee754/ldbl-128ibm/s_tanl.c | 4 ++
+# sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c | 8 ++---
+# 24 files changed, 134 insertions(+), 87 deletions(-)
+#
+--- a/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c
@@ -36,8 +36,12 @@
{
long double t;
@@ -60,9 +86,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c glibc-2.17-
if(hx<0x3ff0000000000000LL) { /* x < 1 */
return (x-x)/(x-x);
} else if(hx >=0x41b0000000000000LL) { /* x > 2**28 */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acosl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acosl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acosl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acosl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_acosl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_acosl.c
@@ -151,26 +151,25 @@
long double
__ieee754_acosl (long double x)
@@ -147,9 +172,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_acosl.c glibc-2.17-c
w = w - f2 * f2;
w = w / (2.0 * s);
/* Arcsine of s. */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_asinl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_asinl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_asinl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
@@ -131,19 +131,18 @@
long double
__ieee754_asinl (long double x)
@@ -217,9 +241,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_asinl.c glibc-2.17-c
c = (t - w * w) / (s + w);
r = p / q;
p = 2.0 * s * r - (pio2_lo - 2.0 * c);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
@@ -40,8 +40,10 @@
{
long double t;
@@ -233,9 +256,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c glibc-2.17-
ix = hx&0x7fffffffffffffffLL;
if (ix >= 0x3ff0000000000000LL) { /* |x|>=1 */
if (ix > 0x3ff0000000000000LL)
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_coshl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_coshl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_coshl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_coshl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_coshl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_coshl.c
@@ -41,9 +41,11 @@
{
long double t,w;
@@ -249,9 +271,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_coshl.c glibc-2.17-c
ix &= 0x7fffffffffffffffLL;
/* x is INF or NaN */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log2l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log2l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log2l.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log2l.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_log2l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_log2l.c
@@ -177,11 +177,13 @@
long double z;
long double y;
@@ -269,9 +290,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log2l.c glibc-2.17-c
return (-1.0L / (x - x));
if (hx < 0)
return (x - x) / (x - x);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
@@ -200,10 +200,11 @@
double tx[8];
int exp;
@@ -286,9 +306,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c glibc-2.
ix = hx & 0x7fffffffffffffffLL;
if (ix <= 0x3fe921fb54442d10LL) /* x in <-pi/4, pi/4> */
{
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c
@@ -38,9 +38,11 @@
{
long double t,w,h;
@@ -302,9 +321,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c glibc-2.17-c
ix = jx&0x7fffffffffffffffLL;
/* x is INF or NaN */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_cosl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_cosl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_cosl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_cosl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/k_cosl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/k_cosl.c
@@ -81,8 +81,11 @@
{
long double h, l, z, sin_l, cos_l_m1;
@@ -329,9 +347,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_cosl.c glibc-2.17-c7
l = y - (h - x);
z = l * l;
sin_l = l*(ONE+z*(SSIN1+z*(SSIN2+z*(SSIN3+z*(SSIN4+z*SSIN5)))));
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c
@@ -100,9 +100,12 @@
{
long double h, l, z, sin_l, cos_l_m1;
@@ -358,9 +375,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c glibc-2.17
if (iy)
l = y - (h - x);
else
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sinl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sinl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sinl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sinl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/k_sinl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/k_sinl.c
@@ -82,7 +82,10 @@
long double h, l, z, sin_l, cos_l_m1;
int64_t ix;
@@ -383,9 +399,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_sinl.c glibc-2.17-c7
if (iy)
l = (ix < 0 ? -y : y) - (h - x);
else
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c
@@ -38,7 +38,10 @@
{
long double t,w;
@@ -398,9 +413,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c glibc-2.17-
ix = hx&0x7fffffffffffffffLL;
if(ix>=0x7ff0000000000000LL) return x+x; /* x is inf or NaN */
if(ix< 0x3e20000000000000LL) { /* |x|<2**-29 */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_atanl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_atanl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_atanl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_atanl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_atanl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_atanl.c
@@ -173,23 +173,20 @@
long double
__atanl (long double x)
@@ -431,9 +445,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_atanl.c glibc-2.17-c
return (x + x);
/* Infinity. */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_cosl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_cosl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_cosl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_cosl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_cosl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_cosl.c
@@ -53,9 +53,11 @@
{
long double y[2],z=0.0L;
@@ -447,9 +460,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_cosl.c glibc-2.17-c7
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c
@@ -29,10 +29,16 @@
long double __fabsl(long double x)
{
@@ -469,9 +481,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c glibc-2.17-c
return x;
}
long_double_symbol (libm, __fabsl, fabsl);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_finitel.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_finitel.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_finitel.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_finitel.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_finitel.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_finitel.c
@@ -29,10 +29,14 @@
int
___finitel (long double x)
@@ -491,9 +502,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_finitel.c glibc-2.17
}
hidden_ver (___finitel, __finitel)
weak_alias (___finitel, ____finitel)
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c
@@ -46,8 +46,10 @@
{
u_int64_t hx, lx;
@@ -514,9 +524,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c glibc-
if ((lx & 0x7fffffffffffffff) /* lower is non-zero */
&& ((lx^hx) & 0x8000000000000000ULL)) { /* and sign differs */
/* +/- denormal */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c 2014-05-27 19:59:00.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
@@ -29,12 +29,14 @@
int
___isnanl (long double x)
@@ -538,9 +547,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c glibc-2.17-
}
hidden_ver (___isnanl, __isnanl)
#ifndef IS_IN_libm
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_logbl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_logbl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_logbl.c 2014-05-27 19:59:19.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
@@ -27,9 +27,10 @@
__logbl (long double x)
{
@@ -554,9 +562,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_logbl.c glibc-2.17-c
hx &= 0x7fffffffffffffffLL; /* high |x| */
if (hx == 0)
return -1.0 / fabs (x);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c 2014-05-27 19:59:19.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c
@@ -25,8 +25,10 @@
___signbitl (long double x)
{
@@ -569,9 +576,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c glibc-2.1
return e < 0;
}
#ifdef IS_IN_libm
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c 2014-05-27 19:59:19.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c
@@ -27,9 +27,11 @@
__sincosl (long double x, long double *sinx, long double *cosx)
{
@@ -585,9 +591,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c glibc-2.17
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sinl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sinl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sinl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sinl.c 2014-05-27 19:59:19.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_sinl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_sinl.c
@@ -53,9 +53,11 @@
{
long double y[2],z=0.0L;
@@ -601,9 +606,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_sinl.c glibc-2.17-c7
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanl.c 2014-05-27 19:59:19.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_tanl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_tanl.c
@@ -53,9 +53,11 @@
{
long double y[2],z=0.0L;
@@ -617,9 +621,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanl.c glibc-2.17-c7
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c 2014-05-27 19:58:07.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c 2014-05-27 19:59:19.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c
++++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c
@@ -35,14 +35,14 @@
long double
__logbl (long double x)
diff --git a/packages/glibc/2.17/0030-glibc-ppc64le-08.patch b/packages/glibc/2.17/0030-glibc-ppc64le-08.patch
index 5f79844..4e40482 100644
--- a/packages/glibc/2.17/0030-glibc-ppc64le-08.patch
+++ b/packages/glibc/2.17/0030-glibc-ppc64le-08.patch
@@ -47,9 +47,33 @@
# * sysdeps/ieee754/ldbl-128ibm/s_tanhl.c (__tanhl): Likewise.
# * sysdeps/powerpc/fpu/libm-test-ulps: Adjust tan_towardzero ulps.
#
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c 2014-05-27 23:05:55.000000000 -0500
+---
+# sysdeps/ieee754/ldbl-128ibm/e_atan2l.c | 14 +-
+# sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c | 7 -
+# sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c | 16 +--
+# sysdeps/ieee754/ldbl-128ibm/e_jnl.c | 32 +++---
+# sysdeps/ieee754/ldbl-128ibm/e_log10l.c | 8 +
+# sysdeps/ieee754/ldbl-128ibm/e_logl.c | 32 +++---
+# sysdeps/ieee754/ldbl-128ibm/e_powl.c | 136 +++++++++++-----------------
+# sysdeps/ieee754/ldbl-128ibm/k_tanl.c | 34 +++----
+# sysdeps/ieee754/ldbl-128ibm/s_expm1l.c | 12 +-
+# sysdeps/ieee754/ldbl-128ibm/s_frexpl.c | 19 ++-
+# sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c | 15 ++-
+# sysdeps/ieee754/ldbl-128ibm/s_isinfl.c | 17 ++-
+# sysdeps/ieee754/ldbl-128ibm/s_log1pl.c | 11 +-
+# sysdeps/ieee754/ldbl-128ibm/s_modfl.c | 27 +++--
+# sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c | 57 +++++++----
+# sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c | 14 +-
+# sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c | 8 -
+# sysdeps/ieee754/ldbl-128ibm/s_remquol.c | 14 +-
+# sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c | 21 +++-
+# sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c | 21 +++-
+# sysdeps/ieee754/ldbl-128ibm/s_tanhl.c | 8 +
+# sysdeps/powerpc/fpu/libm-test-ulps | 3
+# 22 files changed, 287 insertions(+), 239 deletions(-)
+#
+--- a/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c
@@ -56,11 +56,15 @@
{
long double z;
@@ -87,9 +111,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c glibc-2.17-
/* when x is INF */
if(ix==0x7ff0000000000000LL) {
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c
@@ -29,11 +29,12 @@
and the exp function. But due to the required boundary
conditions we must check some values separately. */
@@ -106,9 +129,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c glibc-2.1
{
/* Return value for x == 0 is Inf with divide by zero exception. */
*signgamp = 0;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c
@@ -31,26 +31,24 @@
int __ieee754_ilogbl(long double x)
@@ -143,9 +165,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c glibc-2.17-
return INT_MAX;
}
return FP_ILOGBNAN;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_jnl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_jnl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_jnl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
@@ -70,26 +70,25 @@
long double
__ieee754_jnl (int n, long double x)
@@ -226,9 +247,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_jnl.c glibc-2.17-c75
a = temp;
}
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log10l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log10l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log10l.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log10l.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_log10l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_log10l.c
@@ -182,11 +182,13 @@
long double z;
long double y;
@@ -246,9 +266,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_log10l.c glibc-2.17-
return (-1.0L / (x - x));
if (hx < 0)
return (x - x) / (x - x);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_logl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_logl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_logl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_logl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_logl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_logl.c
@@ -185,18 +185,20 @@
long double
__ieee754_logl(long double x)
@@ -328,9 +347,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_logl.c glibc-2.17-c7
y += e * ln2a;
return y;
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_powl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_powl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_powl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_powl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_powl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_powl.c
@@ -151,37 +151,32 @@
long double y1, t1, t2, r, s, t, u, v, w;
long double s2, s_h, s_l, t_h, t_l, ay;
@@ -584,9 +602,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_powl.c glibc-2.17-c7
u = t * lg2_h;
v = (p_l - (t - p_h)) * lg2 + t * lg2_l;
z = u + v;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_tanl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_tanl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_tanl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_tanl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/k_tanl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/k_tanl.c
@@ -85,17 +85,17 @@
__kernel_tanl (long double x, long double y, int iy)
{
@@ -645,9 +662,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/k_tanl.c glibc-2.17-c7
+ return z1 + z * (s + z1 * v);
}
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
@@ -92,19 +92,19 @@
__expm1l (long double x)
{
@@ -682,9 +698,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c glibc-2.17-
return x;
/* Overflow. */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c
@@ -36,16 +36,21 @@
long double __frexpl(long double x, int *eptr)
@@ -731,9 +746,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c glibc-2.17-
return x;
}
#ifdef IS_IN_libm
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c
@@ -1,6 +1,7 @@
/*
* __isinf_nsl(x) returns != 0 if x is ±inf, else 0;
@@ -761,9 +775,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c glibc-2.
+ mask >>= 63;
+ return ~mask;
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c
@@ -11,6 +11,7 @@
/*
* isinfl(x) returns 1 if x is inf, -1 if x is -inf, else 0;
@@ -795,9 +808,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c glibc-2.17-
}
hidden_ver (___isinfl, __isinfl)
#ifndef IS_IN_libm
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c
@@ -126,19 +126,18 @@
__log1pl (long double xm1)
{
@@ -823,9 +835,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c glibc-2.17-
return xm1;
x = xm1 + 1.0L;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_modfl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_modfl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_modfl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_modfl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_modfl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_modfl.c
@@ -37,43 +37,54 @@
{
int64_t i0,i1,j0;
@@ -889,9 +900,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_modfl.c glibc-2.17-c
return x - *iptr;
}
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
@@ -30,27 +30,28 @@
long double __nextafterl(long double x, long double y)
@@ -994,9 +1004,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c glibc-2
return x + u;
}
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c 2014-05-27 23:10:26.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
@@ -34,23 +34,23 @@
{
int32_t hx,ix;
@@ -1028,9 +1037,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c glibc-2
u = math_opt_barrier (x);
u = u * u;
math_force_eval (u); /* raise underflow flag */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
@@ -27,16 +27,16 @@
{
int32_t hx,ix;
@@ -1052,9 +1060,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c glibc-
/* y is nan */
return x+y;
if((long double) x==y) return y; /* x=y, return y */
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_remquol.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_remquol.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_remquol.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_remquol.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_remquol.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_remquol.c
@@ -33,20 +33,24 @@
int64_t hx,hy;
u_int64_t sx,lx,ly,qs;
@@ -1085,9 +1092,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_remquol.c glibc-2.17
return (x * y) / (x * y);
if (hy <= 0x7fbfffffffffffffLL)
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c 2014-05-27 23:15:30.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c
@@ -41,11 +41,15 @@
{
int64_t k,l,hx,lx;
@@ -1139,9 +1145,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c glibc-2.1
return x*twolm54;
}
long_double_symbol (libm, __scalblnl, scalblnl);
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c 2014-05-27 23:16:25.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c
@@ -41,11 +41,15 @@
{
int64_t k,l,hx,lx;
@@ -1193,9 +1198,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c glibc-2.17
return x*twolm54;
}
#ifdef IS_IN_libm
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c 2014-05-27 23:05:55.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c
@@ -47,10 +47,12 @@
long double __tanhl(long double x)
{
@@ -1220,9 +1224,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c glibc-2.17-c
return x; /* x == +-0 */
if (ix<0x3c60000000000000LL) /* |x|<2**-57 */
return x*(one+x); /* tanh(small) = small */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps 2014-05-27 23:05:51.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps 2014-05-27 23:08:26.000000000 -0500
+--- a/sysdeps/powerpc/fpu/libm-test-ulps
++++ b/sysdeps/powerpc/fpu/libm-test-ulps
@@ -2641,6 +2641,9 @@
ifloat: 1
ildouble: 2
diff --git a/packages/glibc/2.17/0031-glibc-ppc64le-09.patch b/packages/glibc/2.17/0031-glibc-ppc64le-09.patch
index 969d3a1..22ac662 100644
--- a/packages/glibc/2.17/0031-glibc-ppc64le-09.patch
+++ b/packages/glibc/2.17/0031-glibc-ppc64le-09.patch
@@ -42,9 +42,16 @@
# * math/libm-test.inc: Add tests for errors discovered in IBM long
# double versions of fmodl, remainderl, erfl and erfcl.
#
-diff -urN glibc-2.17-c758a686/math/libm-test.inc glibc-2.17-c758a686/math/libm-test.inc
---- glibc-2.17-c758a686/math/libm-test.inc 2014-05-27 20:02:29.000000000 -0500
-+++ glibc-2.17-c758a686/math/libm-test.inc 2014-05-27 20:09:59.000000000 -0500
+---
+# math/libm-test.inc | 18 ++++
+# sysdeps/ieee754/ldbl-128ibm/e_fmodl.c | 127 +++++++++++++++--------------
+# sysdeps/ieee754/ldbl-128ibm/e_hypotl.c | 88 ++++++++++----------
+# sysdeps/ieee754/ldbl-128ibm/e_remainderl.c | 18 ++--
+# sysdeps/ieee754/ldbl-128ibm/s_erfl.c | 57 ++++++-------
+# 5 files changed, 172 insertions(+), 136 deletions(-)
+#
+--- a/math/libm-test.inc
++++ b/math/libm-test.inc
@@ -4040,6 +4040,10 @@
TEST_f_f (erf, 2.0L, 0.995322265018952734162069256367252929L);
TEST_f_f (erf, 4.125L, 0.999999994576599200434933994687765914L);
@@ -91,9 +98,8 @@ diff -urN glibc-2.17-c758a686/math/libm-test.inc glibc-2.17-c758a686/math/libm-t
END (remainder);
}
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c 2014-05-27 20:02:27.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c 2014-05-27 20:04:08.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c
@@ -27,76 +27,83 @@
long double
__ieee754_fmodl (long double x, long double y)
@@ -254,9 +260,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c glibc-2.17-c
return Zero[(u_int64_t)sx>>63];
while(hx<0x0001000000000000LL) { /* normalize x */
hx = hx+hx+(lx>>63); lx = lx+lx;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c 2014-05-27 20:02:27.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c 2014-05-27 20:04:08.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c
@@ -45,76 +45,84 @@
#include <math.h>
#include <math_private.h>
@@ -382,9 +387,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c glibc-2.17-
}
if(k!=0)
return w*kld;
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c 2014-05-27 20:02:27.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c 2014-05-27 20:04:08.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
@@ -33,18 +33,22 @@
int64_t hx,hp;
u_int64_t sx,lx,lp;
@@ -424,9 +428,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c glibc-2
return x;
}
strong_alias (__ieee754_remainderl, __remainderl_finite)
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_erfl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_erfl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_erfl.c 2014-05-27 20:02:27.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/s_erfl.c 2014-05-27 20:04:08.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/s_erfl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/s_erfl.c
@@ -760,16 +760,16 @@
__erfl (long double x)
{
diff --git a/packages/glibc/2.17/0032-glibc-ppc64le-10.patch b/packages/glibc/2.17/0032-glibc-ppc64le-10.patch
index ae80fe6..8e1c1df 100644
--- a/packages/glibc/2.17/0032-glibc-ppc64le-10.patch
+++ b/packages/glibc/2.17/0032-glibc-ppc64le-10.patch
@@ -13,9 +13,13 @@
# * sysdeps/ieee754/ldbl-128ibm/math_ldbl.h: Don't include ieee854
# version of math_ldbl.h.
#
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h 2014-05-27 22:10:43.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h 2014-05-27 22:11:10.000000000 -0500
+---
+# sysdeps/ieee754/ldbl-128ibm/ieee754.h | 55 --------------------------------
+# sysdeps/ieee754/ldbl-128ibm/math_ldbl.h | 1
+# 2 files changed, 56 deletions(-)
+#
+--- a/sysdeps/ieee754/ldbl-128ibm/ieee754.h
++++ b/sysdeps/ieee754/ldbl-128ibm/ieee754.h
@@ -112,61 +112,6 @@
#define IEEE754_DOUBLE_BIAS 0x3ff /* Added to exponent. */
@@ -78,9 +82,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/ieee754.h glibc-2.17-c
/* IBM extended format for long double.
Each long double is made up of two IEEE doubles. The value of the
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-27 22:10:43.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h 2014-05-27 22:11:10.000000000 -0500
+--- a/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
++++ b/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
@@ -2,7 +2,6 @@
#error "Never use <math_ldbl.h> directly; include <math_private.h> instead."
#endif
diff --git a/packages/glibc/2.17/0033-glibc-ppc64le-11.patch b/packages/glibc/2.17/0033-glibc-ppc64le-11.patch
index ec12797..a168e37 100644
--- a/packages/glibc/2.17/0033-glibc-ppc64le-11.patch
+++ b/packages/glibc/2.17/0033-glibc-ppc64le-11.patch
@@ -12,9 +12,12 @@
# (t515, tm256): Double rather than long double.
# (__ieee754_sqrtl): Rewrite using 64-bit arithmetic.
#
-diff -urN glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c
---- glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c 2014-05-27 22:20:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c 2014-05-27 22:21:39.000000000 -0500
+---
+# sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c | 51 +++++++++++++++-------------------
+# 1 file changed, 23 insertions(+), 28 deletions(-)
+#
+--- a/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c
++++ b/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c
@@ -34,15 +34,13 @@
#include <math_private.h>
diff --git a/packages/glibc/2.17/0034-glibc-ppc64le-12.patch b/packages/glibc/2.17/0034-glibc-ppc64le-12.patch
index 5e2d378..52e5b3c 100644
--- a/packages/glibc/2.17/0034-glibc-ppc64le-12.patch
+++ b/packages/glibc/2.17/0034-glibc-ppc64le-12.patch
@@ -11,9 +11,12 @@
# (lrint): Correct for little-endian.
# (lrintf): Call lrint.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/bits/mathinline.h glibc-2.17-c758a686/sysdeps/powerpc/fpu/bits/mathinline.h
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/bits/mathinline.h 2014-05-27 22:28:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/bits/mathinline.h 2014-05-27 22:28:37.000000000 -0500
+---
+# sysdeps/powerpc/fpu/bits/mathinline.h | 26 ++++++++++++++------------
+# 1 file changed, 14 insertions(+), 12 deletions(-)
+#
+--- a/sysdeps/powerpc/fpu/bits/mathinline.h
++++ b/sysdeps/powerpc/fpu/bits/mathinline.h
@@ -62,21 +62,28 @@
__MATH_INLINE int
__NTH (__signbitf (float __x))
diff --git a/packages/glibc/2.17/0035-glibc-ppc64le-13.patch b/packages/glibc/2.17/0035-glibc-ppc64le-13.patch
index 52830a1..345a19c 100644
--- a/packages/glibc/2.17/0035-glibc-ppc64le-13.patch
+++ b/packages/glibc/2.17/0035-glibc-ppc64le-13.patch
@@ -23,9 +23,25 @@
# * sysdeps/powerpc/fpu/fsetexcptflg.c (__fesetexceptflag): Adjust.
# * sysdeps/powerpc/fpu/ftestexcept.c (fetestexcept): Adjust.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrt.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrt.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrt.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrt.c 2014-05-27 22:31:43.000000000 -0500
+---
+# sysdeps/powerpc/fpu/e_sqrt.c | 2 +-
+# sysdeps/powerpc/fpu/e_sqrtf.c | 2 +-
+# sysdeps/powerpc/fpu/fclrexcpt.c | 4 ++--
+# sysdeps/powerpc/fpu/fedisblxcpt.c | 10 +++++-----
+# sysdeps/powerpc/fpu/feenablxcpt.c | 10 +++++-----
+# sysdeps/powerpc/fpu/fegetexcept.c | 10 +++++-----
+# sysdeps/powerpc/fpu/feholdexcpt.c | 5 ++---
+# sysdeps/powerpc/fpu/fenv_libc.h | 2 +-
+# sysdeps/powerpc/fpu/fesetenv.c | 4 ++--
+# sysdeps/powerpc/fpu/feupdateenv.c | 6 +++---
+# sysdeps/powerpc/fpu/fgetexcptflg.c | 2 +-
+# sysdeps/powerpc/fpu/fraiseexcpt.c | 12 ++++++------
+# sysdeps/powerpc/fpu/fsetexcptflg.c | 8 ++++----
+# sysdeps/powerpc/fpu/ftestexcept.c | 2 +-
+# 14 files changed, 39 insertions(+), 40 deletions(-)
+#
+--- a/sysdeps/powerpc/fpu/e_sqrt.c
++++ b/sysdeps/powerpc/fpu/e_sqrt.c
@@ -145,7 +145,7 @@
feraiseexcept (FE_INVALID_SQRT);
@@ -35,9 +51,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrt.c glibc-2.17-c758a686/s
#endif
feraiseexcept (FE_INVALID);
x = a_nan.value;
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrtf.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrtf.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrtf.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrtf.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/e_sqrtf.c
++++ b/sysdeps/powerpc/fpu/e_sqrtf.c
@@ -121,7 +121,7 @@
feraiseexcept (FE_INVALID_SQRT);
@@ -47,9 +62,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/e_sqrtf.c glibc-2.17-c758a686/
#endif
feraiseexcept (FE_INVALID);
x = a_nan.value;
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fclrexcpt.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/fclrexcpt.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fclrexcpt.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fclrexcpt.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fclrexcpt.c
++++ b/sysdeps/powerpc/fpu/fclrexcpt.c
@@ -28,8 +28,8 @@
u.fenv = fegetenv_register ();
@@ -61,9 +75,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fclrexcpt.c glibc-2.17-c758a68
/* Put the new state in effect. */
fesetenv_register (u.fenv);
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fedisblxcpt.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/fedisblxcpt.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fedisblxcpt.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fedisblxcpt.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fedisblxcpt.c
++++ b/sysdeps/powerpc/fpu/fedisblxcpt.c
@@ -32,15 +32,15 @@
fe.fenv = fegetenv_register ();
@@ -85,9 +98,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fedisblxcpt.c glibc-2.17-c758a
fesetenv_register (fe.fenv);
new = __fegetexcept ();
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/feenablxcpt.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/feenablxcpt.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/feenablxcpt.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/feenablxcpt.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/feenablxcpt.c
++++ b/sysdeps/powerpc/fpu/feenablxcpt.c
@@ -32,15 +32,15 @@
fe.fenv = fegetenv_register ();
@@ -109,9 +121,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/feenablxcpt.c glibc-2.17-c758a
fesetenv_register (fe.fenv);
new = __fegetexcept ();
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fegetexcept.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/fegetexcept.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fegetexcept.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fegetexcept.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fegetexcept.c
++++ b/sysdeps/powerpc/fpu/fegetexcept.c
@@ -27,15 +27,15 @@
fe.fenv = fegetenv_register ();
@@ -133,9 +144,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fegetexcept.c glibc-2.17-c758a
result |= FE_INVALID;
return result;
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/feholdexcpt.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/feholdexcpt.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/feholdexcpt.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/feholdexcpt.c 2014-05-27 22:33:09.000000000 -0500
+--- a/sysdeps/powerpc/fpu/feholdexcpt.c
++++ b/sysdeps/powerpc/fpu/feholdexcpt.c
@@ -30,13 +30,12 @@
/* Clear everything except for the rounding modes and non-IEEE arithmetic
@@ -152,9 +162,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/feholdexcpt.c glibc-2.17-c758a
(void)__fe_mask_env ();
/* Put the new state in effect. */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fenv_libc.h glibc-2.17-c758a686/sysdeps/powerpc/fpu/fenv_libc.h
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fenv_libc.h 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fenv_libc.h 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fenv_libc.h
++++ b/sysdeps/powerpc/fpu/fenv_libc.h
@@ -69,7 +69,7 @@
typedef union
{
@@ -164,9 +173,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fenv_libc.h glibc-2.17-c758a68
} fenv_union_t;
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fesetenv.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/fesetenv.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fesetenv.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fesetenv.c 2014-05-27 22:35:18.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fesetenv.c
++++ b/sysdeps/powerpc/fpu/fesetenv.c
@@ -36,14 +36,14 @@
exceptions, then unmask SIGFPE in the MSR FE0/FE1 bits. This will put the
hardware into "precise mode" and may cause the FPU to run slower on some
@@ -184,9 +192,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fesetenv.c glibc-2.17-c758a686
(void)__fe_mask_env ();
fesetenv_register (*envp);
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/feupdateenv.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/feupdateenv.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/feupdateenv.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/feupdateenv.c 2014-05-27 22:34:23.000000000 -0500
+--- a/sysdeps/powerpc/fpu/feupdateenv.c
++++ b/sysdeps/powerpc/fpu/feupdateenv.c
@@ -36,20 +36,20 @@
/* Restore rounding mode and exception enable from *envp and merge
exceptions. Leave fraction rounded/inexact and FP result/CC bits
@@ -211,9 +218,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/feupdateenv.c glibc-2.17-c758a
(void)__fe_mask_env ();
/* Atomically enable and raise (if appropriate) exceptions set in `new'. */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fgetexcptflg.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/fgetexcptflg.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fgetexcptflg.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fgetexcptflg.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fgetexcptflg.c
++++ b/sysdeps/powerpc/fpu/fgetexcptflg.c
@@ -28,7 +28,7 @@
u.fenv = fegetenv_register ();
@@ -223,9 +229,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fgetexcptflg.c glibc-2.17-c758
/* Success. */
return 0;
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fraiseexcpt.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/fraiseexcpt.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fraiseexcpt.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fraiseexcpt.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fraiseexcpt.c
++++ b/sysdeps/powerpc/fpu/fraiseexcpt.c
@@ -34,11 +34,11 @@
u.fenv = fegetenv_register ();
@@ -252,9 +257,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fraiseexcpt.c glibc-2.17-c758a
set_fpscr_bit (FPSCR_VXSNAN);
}
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fsetexcptflg.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/fsetexcptflg.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fsetexcptflg.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fsetexcptflg.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/fsetexcptflg.c
++++ b/sysdeps/powerpc/fpu/fsetexcptflg.c
@@ -32,10 +32,10 @@
flag = *flagp & excepts;
@@ -270,9 +274,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fsetexcptflg.c glibc-2.17-c758
/* Store the new status word (along with the rest of the environment).
This may cause floating-point exceptions if the restored state
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/ftestexcept.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/ftestexcept.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/ftestexcept.c 2014-05-27 22:31:42.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/ftestexcept.c 2014-05-27 22:31:43.000000000 -0500
+--- a/sysdeps/powerpc/fpu/ftestexcept.c
++++ b/sysdeps/powerpc/fpu/ftestexcept.c
@@ -28,6 +28,6 @@
/* The FE_INVALID bit is dealt with correctly by the hardware, so we can
diff --git a/packages/glibc/2.17/0036-glibc-ppc64le-14.patch b/packages/glibc/2.17/0036-glibc-ppc64le-14.patch
index 9025fd7..769d12b 100644
--- a/packages/glibc/2.17/0036-glibc-ppc64le-14.patch
+++ b/packages/glibc/2.17/0036-glibc-ppc64le-14.patch
@@ -15,9 +15,12 @@
# use vector int constants.
# (__float_and_test24, __float_and8, __float_get_exp): Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_float_bitwise.h glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_float_bitwise.h
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_float_bitwise.h 2014-05-27 22:37:18.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_float_bitwise.h 2014-05-27 22:37:20.000000000 -0500
+---
+# sysdeps/powerpc/fpu/s_float_bitwise.h | 54 ++++++++++++++++++----------------
+# 1 file changed, 29 insertions(+), 25 deletions(-)
+#
+--- a/sysdeps/powerpc/fpu/s_float_bitwise.h
++++ b/sysdeps/powerpc/fpu/s_float_bitwise.h
@@ -23,18 +23,19 @@
#include <math_private.h>
diff --git a/packages/glibc/2.17/0037-glibc-ppc64le-15.patch b/packages/glibc/2.17/0037-glibc-ppc64le-15.patch
index 29b3b54..1acfede 100644
--- a/packages/glibc/2.17/0037-glibc-ppc64le-15.patch
+++ b/packages/glibc/2.17/0037-glibc-ppc64le-15.patch
@@ -20,9 +20,13 @@
# * sysdeps/powerpc/fpu/s_llround.c (__llround): Rewrite.
# * sysdeps/powerpc/fpu/s_llroundf.c (__llroundf): Rewrite.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c 2014-05-27 22:38:55.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c 2014-05-27 22:38:58.000000000 -0500
+---
+# sysdeps/powerpc/fpu/s_llround.c | 33 ++++++++++++++++-----------------
+# sysdeps/powerpc/fpu/s_llroundf.c | 33 ++++++++++++++++-----------------
+# 2 files changed, 32 insertions(+), 34 deletions(-)
+#
+--- a/sysdeps/powerpc/fpu/s_llround.c
++++ b/sysdeps/powerpc/fpu/s_llround.c
@@ -19,29 +19,28 @@
#include <math.h>
#include <math_ldbl_opt.h>
@@ -69,9 +73,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llround.c glibc-2.17-c758a68
}
weak_alias (__llround, llround)
#ifdef NO_LONG_DOUBLE
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llroundf.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llroundf.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llroundf.c 2014-05-27 22:38:55.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/s_llroundf.c 2014-05-27 22:38:58.000000000 -0500
+--- a/sysdeps/powerpc/fpu/s_llroundf.c
++++ b/sysdeps/powerpc/fpu/s_llroundf.c
@@ -18,28 +18,27 @@
#include <math.h>
diff --git a/packages/glibc/2.17/0038-glibc-ppc64le-16.patch b/packages/glibc/2.17/0038-glibc-ppc64le-16.patch
index 0da0865..3f4bfba 100644
--- a/packages/glibc/2.17/0038-glibc-ppc64le-16.patch
+++ b/packages/glibc/2.17/0038-glibc-ppc64le-16.patch
@@ -13,9 +13,13 @@
# * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_GET_DI_FPSCR): Likewise.
# (_SET_DI_FPSCR, _GET_SI_FPSCR, _SET_SI_FPSCR): Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fpu_control.h glibc-2.17-c758a686/sysdeps/powerpc/fpu/fpu_control.h
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/fpu_control.h 2014-05-27 22:40:18.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/fpu_control.h 2014-05-27 22:43:40.000000000 -0500
+---
+# sysdeps/powerpc/fpu/fpu_control.h | 32 ++++++-----
+# sysdeps/powerpc/fpu/tst-setcontext-fpscr.c | 83 ++++++++++++++---------------
+# 2 files changed, 60 insertions(+), 55 deletions(-)
+#
+--- a/sysdeps/powerpc/fpu/fpu_control.h
++++ b/sysdeps/powerpc/fpu/fpu_control.h
@@ -45,22 +45,26 @@
#define _FPU_IEEE 0x000000f0
@@ -57,9 +61,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/fpu_control.h glibc-2.17-c758a
/* Default control word set at startup. */
extern fpu_control_t __fpu_control;
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c glibc-2.17-c758a686/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c 2014-05-27 22:40:18.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c 2014-05-27 22:40:21.000000000 -0500
+--- a/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c
++++ b/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c
@@ -83,7 +83,7 @@
return 0;
}
diff --git a/packages/glibc/2.17/0039-glibc-ppc64le-17.patch b/packages/glibc/2.17/0039-glibc-ppc64le-17.patch
index 5ed69a9..204c09e 100644
--- a/packages/glibc/2.17/0039-glibc-ppc64le-17.patch
+++ b/packages/glibc/2.17/0039-glibc-ppc64le-17.patch
@@ -28,9 +28,30 @@
# * sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S: Use HISHORT.
# * sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysign.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysign.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysign.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysign.S 2014-05-27 22:45:46.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/fpu/s_copysign.S | 2 +-
+# sysdeps/powerpc/powerpc32/fpu/s_copysignl.S | 2 +-
+# sysdeps/powerpc/powerpc32/fpu/s_lrint.S | 4 ++--
+# sysdeps/powerpc/powerpc32/fpu/s_lround.S | 2 +-
+# sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S | 2 +-
+# sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S | 5 ++---
+# sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S | 7 +++----
+# sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S | 4 ++--
+# sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S | 6 ++----
+# sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S | 5 ++---
+# sysdeps/powerpc/sysdep.h | 15 +++++++++++++++
+# 19 files changed, 48 insertions(+), 38 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/fpu/s_copysign.S
++++ b/sysdeps/powerpc/powerpc32/fpu/s_copysign.S
@@ -29,7 +29,7 @@
stwu r1,-16(r1)
cfi_adjust_cfa_offset (16)
@@ -40,9 +61,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysign.S glibc-2
cmpwi r3,0
addi r1,r1,16
cfi_adjust_cfa_offset (-16)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S
++++ b/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S
@@ -30,7 +30,7 @@
fmr fp0,fp1
fabs fp1,fp1
@@ -52,9 +72,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S glibc-
cmpwi cr6,r3,0
addi r1,r1,16
cfi_adjust_cfa_offset (-16)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lrint.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lrint.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lrint.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lrint.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/fpu/s_lrint.S
++++ b/sysdeps/powerpc/powerpc32/fpu/s_lrint.S
@@ -24,10 +24,10 @@
stwu r1,-16(r1)
fctiw fp13,fp1
@@ -68,9 +87,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lrint.S glibc-2.17
addi r1,r1,16
blr
END (__lrint)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lround.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lround.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lround.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lround.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/fpu/s_lround.S
++++ b/sysdeps/powerpc/powerpc32/fpu/s_lround.S
@@ -67,7 +67,7 @@
nop /* Ensure the following load is in a different dispatch */
nop /* group to avoid pipe stall on POWER4&5. */
@@ -80,9 +98,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_lround.S glibc-2.1
.Lout:
addi r1,r1,16
blr
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S 2014-05-27 22:48:09.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S
++++ b/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S
@@ -29,8 +29,8 @@
nop /* Insure the following load is in a different dispatch group */
nop /* to avoid pipe stall on POWER4&5. */
@@ -94,9 +111,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S gl
addi r1,r1,16
blr
END (__llrint)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S 2014-05-27 22:48:44.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S
++++ b/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S
@@ -28,8 +28,8 @@
nop /* Insure the following load is in a different dispatch group */
nop /* to avoid pipe stall on POWER4&5. */
@@ -108,9 +124,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S g
addi r1,r1,16
blr
END (__llrintf)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
++++ b/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
@@ -27,8 +27,8 @@
ori r1,r1,0
stfd fp1,24(r1) /* copy FPR to GPR */
@@ -122,9 +137,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S gli
lis r0,0x7ff0 /* const long r0 0x7ff00000 00000000 */
clrlwi r4,r4,1 /* x = fabs(x) */
cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S
++++ b/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S
@@ -39,8 +39,8 @@
nop /* Ensure the following load is in a different dispatch */
nop /* group to avoid pipe stall on POWER4&5. */
@@ -136,9 +150,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S
addi r1,r1,16
blr
END (__llround)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S
++++ b/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S
@@ -38,7 +38,7 @@
nop /* Ensure the following load is in a different dispatch */
nop /* group to avoid pipe stall on POWER4&5. */
@@ -148,9 +161,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S g
addi r1,r1,16
blr
END (__lround)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
++++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
@@ -27,8 +27,8 @@
ori r1,r1,0
stfd fp1,24(r1) /* copy FPR to GPR */
@@ -162,9 +174,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S gli
lis r0,0x7ff0 /* const long r0 0x7ff00000 00000000 */
clrlwi r4,r4,1 /* x = fabs(x) */
cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S 2014-05-27 22:46:52.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S
++++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S
@@ -29,8 +29,8 @@
/* Insure the following load is in a different dispatch group by
inserting "group ending nop". */
@@ -176,9 +187,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S gl
addi r1,r1,16
blr
END (__llrint)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S 2014-05-27 22:47:29.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S
++++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S
@@ -28,8 +28,8 @@
/* Insure the following load is in a different dispatch group by
inserting "group ending nop". */
@@ -190,9 +200,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S g
addi r1,r1,16
blr
END (__llrintf)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S
++++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S
@@ -39,8 +39,8 @@
/* Insure the following load is in a different dispatch group by
inserting "group ending nop". */
@@ -204,9 +213,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S g
addi r1,r1,16
blr
END (__llround)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S
++++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S
@@ -54,9 +54,8 @@
stfd fp1,8(r1) /* Transfer FP to GPR's. */
@@ -219,9 +227,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S gl
clrlwi r0,r0,17 /* r0 = abs(r0). */
addi r1,r1,16 /* Reset the stack pointer. */
cmpwi cr7,r0,0x7ff0 /* r4 == 0x7ff0?. */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S
++++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S
@@ -48,14 +48,13 @@
li r3,0
bflr 29 /* If not INF, return. */
@@ -240,9 +247,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S gli
addi r1,r1,16 /* Reset the stack pointer. */
cmpwi cr7,r4,0x7ff0 /* r4 == 0x7ff0? */
li r3,1
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S
++++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S
@@ -53,8 +53,8 @@
stwu r1,-16(r1) /* Allocate stack space. */
stfd fp1,8(r1) /* Transfer FP to GPR's. */
@@ -254,9 +260,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S gli
addi r1,r1,16 /* Reset the stack pointer. */
lis r0,0x7ff0 /* Load the upper portion for an INF/NaN. */
clrlwi r4,r4,1 /* r4 = abs(r4). */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S
++++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S
@@ -39,10 +39,8 @@
stfd fp1,-16(r1) /* Transfer FP to GPR's. */
@@ -270,9 +275,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S gl
clrlwi r4,r4,17 /* r4 = abs(r4). */
cmpwi cr7,r4,0x7ff0 /* r4 == 0x7ff0? */
bltlr cr7 /* LT means finite, other non-finite. */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S
++++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S
@@ -38,9 +38,8 @@
stfd fp1,-16(r1) /* Transfer FP to GPR's. */
@@ -285,9 +289,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S gli
cmpwi cr7,r4,0x7ff0 /* r4 == 0x7ff0? */
li r3,1
beqlr cr7 /* EQ means INF, otherwise -INF. */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/sysdep.h glibc-2.17-c758a686/sysdeps/powerpc/sysdep.h
---- glibc-2.17-c758a686/sysdeps/powerpc/sysdep.h 2014-05-27 22:45:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/sysdep.h 2014-05-27 22:45:46.000000000 -0500
+--- a/sysdeps/powerpc/sysdep.h
++++ b/sysdeps/powerpc/sysdep.h
@@ -144,6 +144,21 @@
#define VRSAVE 256
diff --git a/packages/glibc/2.17/0040-glibc-ppc64le-18.patch b/packages/glibc/2.17/0040-glibc-ppc64le-18.patch
index f5e327e..7ed51b9 100644
--- a/packages/glibc/2.17/0040-glibc-ppc64le-18.patch
+++ b/packages/glibc/2.17/0040-glibc-ppc64le-18.patch
@@ -12,9 +12,13 @@
# constant for 0x1p52. Load little-endian words of double from
# correct stack offsets.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_roundf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_roundf.S 2014-05-27 22:50:13.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_roundf.S 2014-05-27 22:50:13.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/fpu/s_roundf.S | 3 +--
+# sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S | 20 +++++++++-----------
+# 2 files changed, 10 insertions(+), 13 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
++++ b/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
@@ -19,7 +19,7 @@
#include <sysdep.h>
@@ -32,9 +36,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/s_roundf.S glibc-2.1
lfs fp10,.LC1@l(r9)
#endif
ble- cr6,.L4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S 2014-05-27 22:50:13.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S 2014-05-27 22:50:13.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S
++++ b/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S
@@ -19,12 +19,10 @@
#include <sysdep.h>
#include <math_ldbl_opt.h>
diff --git a/packages/glibc/2.17/0041-glibc-ppc64le-19.patch b/packages/glibc/2.17/0041-glibc-ppc64le-19.patch
index bbf7228..9655e0b 100644
--- a/packages/glibc/2.17/0041-glibc-ppc64le-19.patch
+++ b/packages/glibc/2.17/0041-glibc-ppc64le-19.patch
@@ -15,9 +15,17 @@
# * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
# * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S 2014-05-27 22:52:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S 2014-05-27 22:52:18.000000000 -0500
+---
+# sysdeps/powerpc/powerpc64/fpu/s_ceilf.S | 4 +++-
+# sysdeps/powerpc/powerpc64/fpu/s_floorf.S | 4 +++-
+# sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S | 4 +++-
+# sysdeps/powerpc/powerpc64/fpu/s_rintf.S | 4 +++-
+# sysdeps/powerpc/powerpc64/fpu/s_roundf.S | 6 ++++--
+# sysdeps/powerpc/powerpc64/fpu/s_truncf.S | 4 +++-
+# 6 files changed, 19 insertions(+), 7 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S
++++ b/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
@@ -30,9 +38,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S glibc-2.17
.section ".text"
EALIGN (__ceilf, 4, 0)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_floorf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_floorf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_floorf.S 2014-05-27 22:52:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_floorf.S 2014-05-27 22:52:18.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/fpu/s_floorf.S
++++ b/sysdeps/powerpc/powerpc64/fpu/s_floorf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
@@ -45,9 +52,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_floorf.S glibc-2.1
.section ".text"
EALIGN (__floorf, 4, 0)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S 2014-05-27 22:52:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S 2014-05-27 22:52:18.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S
++++ b/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S
@@ -26,8 +26,10 @@
/* float [fp1] nearbyintf(float [fp1]) */
@@ -60,9 +66,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S glibc
.section ".text"
EALIGN (__nearbyintf, 4, 0)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_rintf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_rintf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_rintf.S 2014-05-27 22:52:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_rintf.S 2014-05-27 22:52:18.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/fpu/s_rintf.S
++++ b/sysdeps/powerpc/powerpc64/fpu/s_rintf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
@@ -75,9 +80,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_rintf.S glibc-2.17
.section ".text"
EALIGN (__rintf, 4, 0)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_roundf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_roundf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_roundf.S 2014-05-27 22:52:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_roundf.S 2014-05-27 22:52:18.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/fpu/s_roundf.S
++++ b/sysdeps/powerpc/powerpc64/fpu/s_roundf.S
@@ -19,10 +19,12 @@
#include <sysdep.h>
@@ -93,9 +97,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_roundf.S glibc-2.1
.section ".text"
/* float [fp1] roundf (float x [fp1])
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_truncf.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_truncf.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_truncf.S 2014-05-27 22:52:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_truncf.S 2014-05-27 22:52:18.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/fpu/s_truncf.S
++++ b/sysdeps/powerpc/powerpc64/fpu/s_truncf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
diff --git a/packages/glibc/2.17/0042-glibc-ppc64le-20.patch b/packages/glibc/2.17/0042-glibc-ppc64le-20.patch
index 1342f97..fe20d66 100644
--- a/packages/glibc/2.17/0042-glibc-ppc64le-20.patch
+++ b/packages/glibc/2.17/0042-glibc-ppc64le-20.patch
@@ -10,9 +10,12 @@
# * sysdeps/powerpc/powerpc32/power4/hp-timing.h (HP_TIMING_NOW):
# Don't use a union to pack hi/low value.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/hp-timing.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/hp-timing.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/hp-timing.h 2014-05-27 22:53:37.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/hp-timing.h 2014-05-27 22:53:39.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power4/hp-timing.h | 21 +++++++++------------
+# 1 file changed, 9 insertions(+), 12 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power4/hp-timing.h
++++ b/sysdeps/powerpc/powerpc32/power4/hp-timing.h
@@ -87,18 +87,15 @@
#define HP_TIMING_NOW(Var) \
diff --git a/packages/glibc/2.17/0043-glibc-ppc64le-21.patch b/packages/glibc/2.17/0043-glibc-ppc64le-21.patch
index a945404..630b52a 100644
--- a/packages/glibc/2.17/0043-glibc-ppc64le-21.patch
+++ b/packages/glibc/2.17/0043-glibc-ppc64le-21.patch
@@ -26,9 +26,16 @@
# * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise CR save. Don't
# destroy vmx regs when saving unaligned.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/jmpbuf-offsets.h glibc-2.17-c758a686/sysdeps/powerpc/jmpbuf-offsets.h
---- glibc-2.17-c758a686/sysdeps/powerpc/jmpbuf-offsets.h 2014-05-27 22:55:23.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/jmpbuf-offsets.h 2014-05-27 22:55:27.000000000 -0500
+---
+# sysdeps/powerpc/jmpbuf-offsets.h | 6 -
+# sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S | 8 +-
+# sysdeps/powerpc/powerpc32/fpu/setjmp-common.S | 81 +++++++++++------------
+# sysdeps/powerpc/powerpc64/__longjmp-common.S | 4 -
+# sysdeps/powerpc/powerpc64/setjmp-common.S | 80 ++++++++++------------
+# 5 files changed, 86 insertions(+), 93 deletions(-)
+#
+--- a/sysdeps/powerpc/jmpbuf-offsets.h
++++ b/sysdeps/powerpc/jmpbuf-offsets.h
@@ -21,12 +21,10 @@
#define JB_LR 2 /* The address we will return to */
#if __WORDSIZE == 64
@@ -44,9 +51,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/jmpbuf-offsets.h glibc-2.17-c758a6
# define JB_VRS 40 /* VRs 20 through 31 are saved, 12*4 words total. */
#else
# define JB_GPRS 3 /* GPRs 14 through 31 are saved, 18 in total. */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S 2014-05-27 22:55:23.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S 2014-05-27 22:55:27.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
++++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
@@ -46,16 +46,16 @@
# endif
mtlr r6
@@ -68,9 +74,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S g
# endif
andis. r5,r5,(PPC_FEATURE_HAS_ALTIVEC >> 16)
beq L(no_vmx)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S 2014-05-27 22:55:23.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S 2014-05-27 22:55:27.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
++++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
@@ -97,14 +97,14 @@
# else
lwz r5,_rtld_global_ro@got(r5)
@@ -171,9 +176,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S glib
b L(no_vmx)
L(aligned_save_vmx):
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S 2014-05-27 22:55:23.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S 2014-05-27 22:55:27.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/__longjmp-common.S
++++ b/sysdeps/powerpc/powerpc64/__longjmp-common.S
@@ -60,7 +60,7 @@
beq L(no_vmx)
la r5,((JB_VRS)*8)(3)
@@ -192,9 +196,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S glibc
ld r23,((JB_GPRS+9)*8)(r3)
lfd fp23,((JB_FPRS+9)*8)(r3)
ld r24,((JB_GPRS+10)*8)(r3)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S 2014-05-27 22:55:23.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S 2014-05-27 22:55:27.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/setjmp-common.S
++++ b/sysdeps/powerpc/powerpc64/setjmp-common.S
@@ -98,7 +98,7 @@
mfcr r0
std r16,((JB_GPRS+2)*8)(3)
diff --git a/packages/glibc/2.17/0044-glibc-ppc64le-22.patch b/packages/glibc/2.17/0044-glibc-ppc64le-22.patch
index 12a0ff0..657fbae 100644
--- a/packages/glibc/2.17/0044-glibc-ppc64le-22.patch
+++ b/packages/glibc/2.17/0044-glibc-ppc64le-22.patch
@@ -24,9 +24,21 @@
# * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
# * nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c: Likewise.
#
-diff -urN glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c
---- glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c 2014-05-27 23:22:12.000000000 -0500
-+++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c 2014-05-27 23:23:44.000000000 -0500
+---
+# nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c | 13 ++++---------
+# sysdeps/powerpc/longjmp.c | 6 +++---
+# sysdeps/powerpc/novmx-longjmp.c | 12 +++---------
+# sysdeps/powerpc/powerpc32/bsd-_setjmp.S | 4 ++--
+# sysdeps/powerpc/powerpc32/bsd-setjmp.S | 4 ++--
+# sysdeps/powerpc/powerpc32/fpu/__longjmp.S | 4 ++--
+# sysdeps/powerpc/powerpc32/fpu/setjmp.S | 4 ++--
+# sysdeps/powerpc/powerpc32/mcount.c | 2 +-
+# sysdeps/powerpc/powerpc32/setjmp.S | 4 ++--
+# sysdeps/powerpc/powerpc64/setjmp.S | 12 ++++++------
+# 10 files changed, 27 insertions(+), 38 deletions(-)
+#
+--- a/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c
++++ b/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c
@@ -41,13 +41,8 @@
__novmx__libc_longjmp (env, val);
}
@@ -51,9 +63,8 @@ diff -urN glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c
-versioned_symbol (libc, __vmx_siglongjmp, siglongjmp, GLIBC_2_3_4);
+versioned_symbol (libpthread, __vmx_longjmp, longjmp, GLIBC_2_3_4);
+versioned_symbol (libpthread, __vmx_siglongjmp, siglongjmp, GLIBC_2_3_4);
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/longjmp.c glibc-2.17-c758a686/sysdeps/powerpc/longjmp.c
---- glibc-2.17-c758a686/sysdeps/powerpc/longjmp.c 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/longjmp.c 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/longjmp.c
++++ b/sysdeps/powerpc/longjmp.c
@@ -56,6 +56,6 @@
default_symbol_version (__vmx__libc_longjmp, __libc_longjmp, GLIBC_PRIVATE);
@@ -64,9 +75,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/longjmp.c glibc-2.17-c758a686/sysd
+versioned_symbol (libc, __vmx_longjmp, _longjmp, GLIBC_2_3_4);
+versioned_symbol (libc, __vmxlongjmp, longjmp, GLIBC_2_3_4);
+versioned_symbol (libc, __vmxsiglongjmp, siglongjmp, GLIBC_2_3_4);
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/novmx-longjmp.c glibc-2.17-c758a686/sysdeps/powerpc/novmx-longjmp.c
---- glibc-2.17-c758a686/sysdeps/powerpc/novmx-longjmp.c 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/novmx-longjmp.c 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/novmx-longjmp.c
++++ b/sysdeps/powerpc/novmx-longjmp.c
@@ -51,13 +51,7 @@
weak_alias (__novmx__libc_siglongjmp, __novmxlongjmp)
weak_alias (__novmx__libc_siglongjmp, __novmxsiglongjmp)
@@ -84,9 +94,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/novmx-longjmp.c glibc-2.17-c758a68
+compat_symbol (libc, __novmxlongjmp, longjmp, GLIBC_2_0);
+compat_symbol (libc, __novmxsiglongjmp, siglongjmp, GLIBC_2_0);
#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)) */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-_setjmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-_setjmp.S 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-_setjmp.S 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
++++ b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
@@ -32,7 +32,7 @@
/* Build a versioned object for libc. */
@@ -105,9 +114,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-_setjmp.S glibc-2.17
/* __GI__setjmp prototype is needed for ntpl i.e. _setjmp is defined
as a libc_hidden_proto & is used in sysdeps/generic/libc-start.c
if HAVE_CLEANUP_JMP_BUF is defined */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-setjmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-setjmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-setjmp.S 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-setjmp.S 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/bsd-setjmp.S
++++ b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
@@ -27,7 +27,7 @@
b __novmx__sigsetjmp@local
END (__novmxsetjmp)
@@ -123,9 +131,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/bsd-setjmp.S glibc-2.17-
strong_alias (__vmx__setjmp, __setjmp)
-default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4)
+versioned_symbol (libc, __vmxsetjmp, setjmp, GLIBC_2_3_4)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp.S 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp.S 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/fpu/__longjmp.S
++++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp.S
@@ -26,14 +26,14 @@
#else /* !NOT_IN_libc */
@@ -143,9 +150,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/__longjmp.S glibc-2.
# undef __longjmp
# define __longjmp __novmx__longjmp
# include "__longjmp-common.S"
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp.S 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp.S 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/fpu/setjmp.S
++++ b/sysdeps/powerpc/powerpc32/fpu/setjmp.S
@@ -26,7 +26,7 @@
#else /* !NOT_IN_libc */
@@ -164,9 +170,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/fpu/setjmp.S glibc-2.17-
# define __sigsetjmp __novmx__sigsetjmp
# define __sigjmp_save __novmx__sigjmp_save
# include "setjmp-common.S"
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/mcount.c glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/mcount.c
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/mcount.c 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/mcount.c 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/mcount.c
++++ b/sysdeps/powerpc/powerpc32/mcount.c
@@ -9,7 +9,7 @@
/* __mcount_internal was added in glibc 2.15 with version GLIBC_PRIVATE,
but it should have been put in version GLIBC_2.15. Mark the
@@ -176,9 +181,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/mcount.c glibc-2.17-c758
#if SHLIB_COMPAT (libc, GLIBC_2_15, GLIBC_2_16)
strong_alias (___mcount_internal, ___mcount_internal_private);
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/setjmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/setjmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/setjmp.S 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/setjmp.S 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/setjmp.S
++++ b/sysdeps/powerpc/powerpc32/setjmp.S
@@ -25,7 +25,7 @@
#else /* !NOT_IN_libc */
@@ -197,9 +201,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/setjmp.S glibc-2.17-c758
# define __sigsetjmp __novmx__sigsetjmp
# define __sigjmp_save __novmx__sigjmp_save
# include "setjmp-common.S"
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp.S 2014-05-27 23:22:10.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp.S 2014-05-27 23:22:12.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/setjmp.S
++++ b/sysdeps/powerpc/powerpc64/setjmp.S
@@ -26,9 +26,9 @@
#else /* !NOT_IN_libc */
diff --git a/packages/glibc/2.17/0045-glibc-ppc64le-23.patch b/packages/glibc/2.17/0045-glibc-ppc64le-23.patch
index 00288b9..aa2fd93 100644
--- a/packages/glibc/2.17/0045-glibc-ppc64le-23.patch
+++ b/packages/glibc/2.17/0045-glibc-ppc64le-23.patch
@@ -12,9 +12,14 @@
# * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: Ditto.
# * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: Ditto.
#
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S 2014-05-27 23:25:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S 2014-05-27 23:25:38.000000000 -0500
+---
+# sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S | 8 ++---
+# sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S | 8 ++---
+# sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S | 16 +++++-----
+# 3 files changed, 16 insertions(+), 16 deletions(-)
+#
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
@@ -151,15 +151,15 @@
# ifdef SHARED
lwz r7,_rtld_global_ro@got(r7)
@@ -35,9 +40,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/getconte
# endif
andis. r7,r7,(PPC_FEATURE_HAS_ALTIVEC >> 16)
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S 2014-05-27 23:25:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S 2014-05-27 23:25:38.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
@@ -79,15 +79,15 @@
# ifdef SHARED
lwz r7,_rtld_global_ro@got(r7)
@@ -58,9 +62,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/setconte
#endif
#ifdef __CONTEXT_ENABLE_FPRS
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S 2014-05-27 23:25:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S 2014-05-27 23:25:38.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
@@ -152,15 +152,15 @@
# ifdef SHARED
lwz r7,_rtld_global_ro@got(r7)
diff --git a/packages/glibc/2.17/0046-glibc-ppc64le-24.patch b/packages/glibc/2.17/0046-glibc-ppc64le-24.patch
index 5870d4f..ee0b7d8 100644
--- a/packages/glibc/2.17/0046-glibc-ppc64le-24.patch
+++ b/packages/glibc/2.17/0046-glibc-ppc64le-24.patch
@@ -12,9 +12,13 @@
# conditional form of branch and link when obtaining pc.
# * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S 2014-05-28 12:25:49.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S 2014-05-28 12:25:51.000000000 -0500
+---
+# sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S | 8 ++++++--
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S | 6 ++++--
+# 2 files changed, 10 insertions(+), 4 deletions(-)
+#
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
@@ -47,7 +47,9 @@
#ifdef PIC
mflr r0
@@ -37,9 +41,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecont
1: mflr r6
addi r6,r6,L(novec_exitcode)-1b
mtlr r0
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S 2014-05-28 12:25:49.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S 2014-05-28 12:25:51.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
@@ -124,8 +124,10 @@
/* If the target function returns we need to do some cleanup. We use a
diff --git a/packages/glibc/2.17/0047-glibc-ppc64le-25.patch b/packages/glibc/2.17/0047-glibc-ppc64le-25.patch
index 144d3f3..c7d741a 100644
--- a/packages/glibc/2.17/0047-glibc-ppc64le-25.patch
+++ b/packages/glibc/2.17/0047-glibc-ppc64le-25.patch
@@ -30,9 +30,15 @@
# Rearrange tmp reg use to suit. Comment.
# * sysdeps/powerpc/powerpc32/strlen.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strlen.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strlen.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strlen.S 2014-05-28 12:28:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strlen.S 2014-05-28 12:28:45.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power7/strlen.S | 17 ++++--
+# sysdeps/powerpc/powerpc32/strlen.S | 69 ++++++++++++++++++++------
+# sysdeps/powerpc/powerpc64/power7/strlen.S | 17 ++++--
+# sysdeps/powerpc/powerpc64/strlen.S | 77 +++++++++++++++++++++---------
+# 4 files changed, 132 insertions(+), 48 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power7/strlen.S
++++ b/sysdeps/powerpc/powerpc32/power7/strlen.S
@@ -31,7 +31,11 @@
li r0,0 /* Word with null chars to use with cmpb. */
li r5,-1 /* MASK = 0xffffffffffffffff. */
@@ -73,9 +79,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strlen.S glibc-2.
add r3,r5,r0 /* Compute final length. */
blr
END (BP_SYM (strlen))
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strlen.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strlen.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strlen.S 2014-05-28 12:28:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strlen.S 2014-05-28 12:32:24.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/strlen.S
++++ b/sysdeps/powerpc/powerpc32/strlen.S
@@ -31,7 +31,12 @@
1 is subtracted you get a value in the range 0x00-0x7f, none of which
have their high bit set. The expression here is
@@ -212,9 +217,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strlen.S glibc-2.17-c758
+
END (BP_SYM (strlen))
libc_hidden_builtin_def (strlen)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strlen.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strlen.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strlen.S 2014-05-28 12:28:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strlen.S 2014-05-28 12:28:45.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/strlen.S
++++ b/sysdeps/powerpc/powerpc64/power7/strlen.S
@@ -32,7 +32,11 @@
with cmpb. */
li r5,-1 /* MASK = 0xffffffffffffffff. */
@@ -255,9 +259,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strlen.S glibc-2.
add r3,r5,r0 /* Compute final length. */
blr
END (BP_SYM (strlen))
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strlen.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strlen.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strlen.S 2014-05-28 12:28:44.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strlen.S 2014-05-28 12:38:17.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/strlen.S
++++ b/sysdeps/powerpc/powerpc64/strlen.S
@@ -31,7 +31,12 @@
1 is subtracted you get a value in the range 0x00-0x7f, none of which
have their high bit set. The expression here is
diff --git a/packages/glibc/2.17/0048-glibc-ppc64le-26.patch b/packages/glibc/2.17/0048-glibc-ppc64le-26.patch
index 93fd255..7b10bfb 100644
--- a/packages/glibc/2.17/0048-glibc-ppc64le-26.patch
+++ b/packages/glibc/2.17/0048-glibc-ppc64le-26.patch
@@ -17,9 +17,13 @@
# Delete "zero" tail, use "end_max" instead.
# * sysdeps/powerpc/powerpc32/power7/strnlen.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strnlen.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strnlen.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strnlen.S 2014-05-28 12:40:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strnlen.S 2014-05-28 12:44:52.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power7/strnlen.S | 106 ++++++++++++++-------------
+# sysdeps/powerpc/powerpc64/power7/strnlen.S | 111 +++++++++++++++--------------
+# 2 files changed, 115 insertions(+), 102 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power7/strnlen.S
++++ b/sysdeps/powerpc/powerpc32/power7/strnlen.S
@@ -30,51 +30,47 @@
add r7,r3,r4 /* Calculate the last acceptable address. */
cmplwi r4,16
@@ -194,9 +198,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strnlen.S glibc-2
END (BP_SYM (__strnlen))
weak_alias (BP_SYM (__strnlen), BP_SYM(strnlen))
libc_hidden_builtin_def (strnlen)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strnlen.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strnlen.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strnlen.S 2014-05-28 12:40:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strnlen.S 2014-05-28 13:24:41.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/strnlen.S
++++ b/sysdeps/powerpc/powerpc64/power7/strnlen.S
@@ -26,33 +26,29 @@
ENTRY (BP_SYM (__strnlen))
CALL_MCOUNT 2
diff --git a/packages/glibc/2.17/0049-glibc-ppc64le-27.patch b/packages/glibc/2.17/0049-glibc-ppc64le-27.patch
index 83ca794..188cdf2 100644
--- a/packages/glibc/2.17/0049-glibc-ppc64le-27.patch
+++ b/packages/glibc/2.17/0049-glibc-ppc64le-27.patch
@@ -23,9 +23,19 @@
# * sysdeps/powerpc/powerpc64/power7/strncmp.S: Likewise.
# * sysdeps/powerpc/powerpc32/power7/strncmp.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/strncmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/strncmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/strncmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/strncmp.S 2014-05-28 13:27:02.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power4/strncmp.S | 56 ++++++++++++++++++------
+# sysdeps/powerpc/powerpc32/power7/strncmp.S | 55 +++++++++++++++++-------
+# sysdeps/powerpc/powerpc32/strcmp.S | 42 +++++++++++++++++-
+# sysdeps/powerpc/powerpc32/strncmp.S | 56 ++++++++++++++++++------
+# sysdeps/powerpc/powerpc64/power4/strncmp.S | 63 ++++++++++++++++++++++++----
+# sysdeps/powerpc/powerpc64/power7/strncmp.S | 61 +++++++++++++++++++++++----
+# sysdeps/powerpc/powerpc64/strcmp.S | 65 ++++++++++++++++++++++++-----
+# sysdeps/powerpc/powerpc64/strncmp.S | 65 ++++++++++++++++++++++++-----
+# 8 files changed, 381 insertions(+), 82 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power4/strncmp.S
++++ b/sysdeps/powerpc/powerpc32/power4/strncmp.S
@@ -26,7 +26,7 @@
EALIGN (BP_SYM(strncmp), 4, 0)
@@ -124,9 +134,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/strncmp.S glibc-2
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strncmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strncmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strncmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strncmp.S 2014-05-28 13:27:02.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/strncmp.S
++++ b/sysdeps/powerpc/powerpc32/power7/strncmp.S
@@ -28,7 +28,7 @@
EALIGN (BP_SYM(strncmp),5,0)
@@ -225,9 +234,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strncmp.S glibc-2
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcmp.S 2014-05-28 13:27:02.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/strcmp.S
++++ b/sysdeps/powerpc/powerpc32/strcmp.S
@@ -26,7 +26,7 @@
EALIGN (BP_SYM (strcmp), 4, 0)
@@ -301,9 +309,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcmp.S glibc-2.17-c758
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strncmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strncmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strncmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strncmp.S 2014-05-28 13:27:02.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/strncmp.S
++++ b/sysdeps/powerpc/powerpc32/strncmp.S
@@ -26,7 +26,7 @@
EALIGN (BP_SYM(strncmp), 4, 0)
@@ -402,9 +409,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strncmp.S glibc-2.17-c75
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/strncmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/strncmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/strncmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/strncmp.S 2014-05-28 13:27:02.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power4/strncmp.S
++++ b/sysdeps/powerpc/powerpc64/power4/strncmp.S
@@ -27,7 +27,7 @@
EALIGN (BP_SYM(strncmp), 4, 0)
CALL_MCOUNT 3
@@ -516,9 +522,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/strncmp.S glibc-2
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strncmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strncmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strncmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strncmp.S 2014-05-28 13:27:02.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/strncmp.S
++++ b/sysdeps/powerpc/powerpc64/power7/strncmp.S
@@ -29,7 +29,7 @@
EALIGN (BP_SYM(strncmp),5,0)
CALL_MCOUNT 3
@@ -628,9 +633,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strncmp.S glibc-2
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcmp.S 2014-05-28 13:37:15.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/strcmp.S
++++ b/sysdeps/powerpc/powerpc64/strcmp.S
@@ -27,7 +27,7 @@
EALIGN (BP_SYM(strcmp), 4, 0)
CALL_MCOUNT 2
@@ -743,9 +747,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcmp.S glibc-2.17-c758
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strncmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strncmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strncmp.S 2014-05-28 13:26:59.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strncmp.S 2014-05-28 13:38:31.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/strncmp.S
++++ b/sysdeps/powerpc/powerpc64/strncmp.S
@@ -27,7 +27,7 @@
EALIGN (BP_SYM(strncmp), 4, 0)
CALL_MCOUNT 3
diff --git a/packages/glibc/2.17/0050-glibc-ppc64le-28.patch b/packages/glibc/2.17/0050-glibc-ppc64le-28.patch
index 05f63e9..e3e23d7 100644
--- a/packages/glibc/2.17/0050-glibc-ppc64le-28.patch
+++ b/packages/glibc/2.17/0050-glibc-ppc64le-28.patch
@@ -16,9 +16,15 @@
# * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
# * sysdeps/powerpc/powerpc32/stpcpy.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/stpcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/stpcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/stpcpy.S 2014-05-28 13:40:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/stpcpy.S 2014-05-28 13:40:01.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/stpcpy.S | 18 +++++++++++++++++-
+# sysdeps/powerpc/powerpc32/strcpy.S | 18 +++++++++++++++++-
+# sysdeps/powerpc/powerpc64/stpcpy.S | 18 +++++++++++++++++-
+# sysdeps/powerpc/powerpc64/strcpy.S | 27 +++++++++++++++++++++++++++
+# 4 files changed, 78 insertions(+), 3 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/stpcpy.S
++++ b/sysdeps/powerpc/powerpc32/stpcpy.S
@@ -74,7 +74,22 @@
mr rALT, rWORD
@@ -51,9 +57,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/stpcpy.S glibc-2.17-c758
/* Oh well. In this case, we just do a byte-by-byte copy. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcpy.S 2014-05-28 13:40:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcpy.S 2014-05-28 13:40:01.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/strcpy.S
++++ b/sysdeps/powerpc/powerpc32/strcpy.S
@@ -78,7 +78,22 @@
mr rALT, rWORD
@@ -86,9 +91,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strcpy.S glibc-2.17-c758
/* Oh well. In this case, we just do a byte-by-byte copy. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/stpcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/stpcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/stpcpy.S 2014-05-28 13:40:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/stpcpy.S 2014-05-28 13:40:01.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/stpcpy.S
++++ b/sysdeps/powerpc/powerpc64/stpcpy.S
@@ -75,7 +75,22 @@
mr rALT, rWORD
@@ -121,9 +125,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/stpcpy.S glibc-2.17-c758
/* Oh well. In this case, we just do a byte-by-byte copy. */
.align 4
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcpy.S 2014-05-28 13:40:01.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strcpy.S 2014-05-28 13:40:01.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/strcpy.S
++++ b/sysdeps/powerpc/powerpc64/strcpy.S
@@ -90,6 +90,32 @@
mr rALT, rWORD
/* We've hit the end of the string. Do the rest byte-by-byte. */
diff --git a/packages/glibc/2.17/0051-glibc-ppc64le-29.patch b/packages/glibc/2.17/0051-glibc-ppc64le-29.patch
index 291155e..f0817e5 100644
--- a/packages/glibc/2.17/0051-glibc-ppc64le-29.patch
+++ b/packages/glibc/2.17/0051-glibc-ppc64le-29.patch
@@ -30,11 +30,18 @@
# earlier in tail.
# * sysdeps/powerpc/powerpc32/strchr.S: Likewise.
#
-Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
-===================================================================
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S.orig
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
-@@ -37,8 +37,8 @@ ENTRY (BP_SYM(strchr))
+---
+# sysdeps/powerpc/powerpc32/power7/strchr.S | 51 +++++++++++++-----
+# sysdeps/powerpc/powerpc32/power7/strchrnul.S | 27 +++++++--
+# sysdeps/powerpc/powerpc32/strchr.S | 71 ++++++++++++++++++-------
+# sysdeps/powerpc/powerpc64/power7/strchr.S | 43 ++++++++++++---
+# sysdeps/powerpc/powerpc64/power7/strchrnul.S | 19 +++++-
+# sysdeps/powerpc/powerpc64/strchr.S | 75 +++++++++++++++++++--------
+# 6 files changed, 212 insertions(+), 74 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power7/strchr.S
++++ b/sysdeps/powerpc/powerpc32/power7/strchr.S
+@@ -37,8 +37,8 @@
beq cr7,L(null_match)
/* Replicate byte to word. */
@@ -45,7 +52,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
/* Now r4 has a word of c bytes and r0 has
a word of null bytes. */
-@@ -48,11 +48,17 @@ ENTRY (BP_SYM(strchr))
+@@ -48,11 +48,17 @@
/* Move the words left and right to discard the bits that are
not part of the string and to bring them back as zeros. */
@@ -64,7 +71,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
or r5,r10,r11 /* OR the results to speed things up. */
cmpwi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
-@@ -67,7 +73,7 @@ ENTRY (BP_SYM(strchr))
+@@ -67,7 +73,7 @@
/* Handle WORD2 of pair. */
lwzu r12,4(r8)
@@ -73,7 +80,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
cmpb r11,r12,r0
or r5,r10,r11
cmpwi cr7,r5,0
-@@ -102,22 +108,31 @@ L(loop):
+@@ -102,22 +108,31 @@
bne cr6,L(done)
/* The c/null byte must be in the second word. Adjust the address
@@ -112,7 +119,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
add r3,r8,r0 /* Return address of the matching c byte
or null in case c was not found. */
blr
-@@ -135,10 +150,14 @@ L(null_match):
+@@ -135,10 +150,14 @@
cmpb r5,r12,r0 /* Compare each byte against null bytes. */
/* Move the words left and right to discard the bits that are
@@ -129,7 +136,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
cmpwi cr7,r5,0 /* If r10 == 0, no c or null bytes
have been found. */
bne cr7,L(done_null)
-@@ -193,7 +212,13 @@ L(loop_null):
+@@ -193,7 +212,13 @@
0xff in the same position as the null byte in the original
word from the string. Use that to calculate the pointer. */
L(done_null):
@@ -143,11 +150,9 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchr.S
srwi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching null byte. */
blr
-Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
-===================================================================
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S.orig
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
-@@ -29,8 +29,8 @@ ENTRY (BP_SYM(__strchrnul))
+--- a/sysdeps/powerpc/powerpc32/power7/strchrnul.S
++++ b/sysdeps/powerpc/powerpc32/power7/strchrnul.S
+@@ -29,8 +29,8 @@
clrrwi r8,r3,2 /* Align the address to word boundary. */
/* Replicate byte to word. */
@@ -158,7 +163,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
rlwinm r6,r3,3,27,28 /* Calculate padding. */
lwz r12,0(r8) /* Load word from memory. */
-@@ -45,10 +45,17 @@ ENTRY (BP_SYM(__strchrnul))
+@@ -45,10 +45,17 @@
/* Move the words left and right to discard the bits that are
not part of the string and bring them back as zeros. */
@@ -176,7 +181,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
or r5,r9,r10 /* OR the results to speed things up. */
cmpwi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
-@@ -56,7 +63,7 @@ ENTRY (BP_SYM(__strchrnul))
+@@ -56,7 +63,7 @@
mtcrf 0x01,r8
@@ -185,7 +190,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
the main loop. Otherwise, go through the alignment code. */
bt 29,L(loop)
-@@ -78,7 +85,7 @@ L(loop):
+@@ -78,7 +85,7 @@
single register for speed. This is an attempt
to speed up the null-checking process for bigger strings. */
lwz r12,4(r8)
@@ -194,7 +199,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
cmpb r10,r12,r0
cmpb r9,r12,r4
cmpb r6,r11,r0
-@@ -97,9 +104,9 @@ L(loop):
+@@ -97,9 +104,9 @@
addi r8,r8,-4
bne cr6,L(done)
@@ -207,7 +212,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
mr r5,r10
addi r8,r8,4
-@@ -107,7 +114,13 @@ L(loop):
+@@ -107,7 +114,13 @@
0xff in the same position as the c/null byte in the original
word from the string. Use that to calculate the pointer. */
L(done):
@@ -221,11 +226,9 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/strchrnul.S
srwi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of matching c/null byte. */
blr
-Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strchr.S
-===================================================================
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strchr.S.orig
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strchr.S
-@@ -44,6 +44,8 @@ ENTRY (BP_SYM (strchr))
+--- a/sysdeps/powerpc/powerpc32/strchr.S
++++ b/sysdeps/powerpc/powerpc32/strchr.S
+@@ -44,6 +44,8 @@
#define rIGN r10 /* number of bits we should ignore in the first word */
#define rMASK r11 /* mask with the bits to ignore set to 0 */
#define rTMP3 r12
@@ -234,7 +237,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strchr.S
CHECK_BOUNDS_LOW (rSTR, rTMP1, rTMP2)
STORE_RETURN_BOUNDS (rTMP1, rTMP2)
-@@ -59,53 +61,74 @@ ENTRY (BP_SYM (strchr))
+@@ -59,53 +61,74 @@
addi r7F7F, r7F7F, 0x7f7f
/* Test the first (partial?) word. */
lwz rWORD, 0(rSTR)
@@ -327,7 +330,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strchr.S
srwi rCLZB, rCLZB, 3
add rRTN, rSTR, rCLZB
CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, twlge)
-@@ -113,13 +136,21 @@ L(missed):
+@@ -113,13 +136,21 @@
blr
L(foundit):
@@ -351,11 +354,9 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/strchr.S
add rRTN, rSTR, rCLZB
CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, twlge)
STORE_RETURN_VALUE (rSTR)
-Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S
-===================================================================
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S.orig
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S
-@@ -37,8 +37,8 @@ ENTRY (BP_SYM(strchr))
+--- a/sysdeps/powerpc/powerpc64/power7/strchr.S
++++ b/sysdeps/powerpc/powerpc64/power7/strchr.S
+@@ -37,8 +37,8 @@
beq cr7,L(null_match)
/* Replicate byte to doubleword. */
@@ -366,7 +367,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S
insrdi r4,r4,32,0
/* Now r4 has a doubleword of c bytes and r0 has
-@@ -49,11 +49,17 @@ ENTRY (BP_SYM(strchr))
+@@ -49,11 +49,17 @@
/* Move the doublewords left and right to discard the bits that are
not part of the string and bring them back as zeros. */
@@ -385,7 +386,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S
or r5,r10,r11 /* OR the results to speed things up. */
cmpdi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
-@@ -110,15 +116,24 @@ L(loop):
+@@ -110,15 +116,24 @@
mr r11,r7
addi r8,r8,8
@@ -415,7 +416,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S
add r3,r8,r0 /* Return address of the matching c byte
or null in case c was not found. */
blr
-@@ -137,9 +152,13 @@ L(null_match):
+@@ -137,9 +152,13 @@
/* Move the doublewords left and right to discard the bits that are
not part of the string and bring them back as zeros. */
@@ -430,7 +431,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S
cmpdi cr7,r5,0 /* If r10 == 0, no c or null bytes
have been found. */
bne cr7,L(done_null)
-@@ -194,7 +213,13 @@ L(loop_null):
+@@ -194,7 +213,13 @@
0xff in the same position as the null byte in the original
doubleword from the string. Use that to calculate the pointer. */
L(done_null):
@@ -444,11 +445,9 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchr.S
srdi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching null byte. */
blr
-Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchrnul.S
-===================================================================
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchrnul.S.orig
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchrnul.S
-@@ -29,8 +29,8 @@ ENTRY (BP_SYM(__strchrnul))
+--- a/sysdeps/powerpc/powerpc64/power7/strchrnul.S
++++ b/sysdeps/powerpc/powerpc64/power7/strchrnul.S
+@@ -29,8 +29,8 @@
clrrdi r8,r3,3 /* Align the address to doubleword boundary. */
/* Replicate byte to doubleword. */
@@ -459,7 +458,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchrnul.S
insrdi r4,r4,32,0
rlwinm r6,r3,3,26,28 /* Calculate padding. */
-@@ -46,10 +46,17 @@ ENTRY (BP_SYM(__strchrnul))
+@@ -46,10 +46,17 @@
/* Move the doublewords left and right to discard the bits that are
not part of the string and to bring them back as zeros. */
@@ -477,7 +476,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchrnul.S
or r5,r9,r10 /* OR the results to speed things up. */
cmpdi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
-@@ -99,7 +106,7 @@ L(loop):
+@@ -99,7 +106,7 @@
bne cr6,L(done)
/* The c/null byte must be in the second doubleword. Adjust the
@@ -486,7 +485,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchrnul.S
the pointer. */
mr r5,r10
addi r8,r8,8
-@@ -108,7 +115,13 @@ L(loop):
+@@ -108,7 +115,13 @@
0xff in the same position as the c/null byte in the original
doubleword from the string. Use that to calculate the pointer. */
L(done):
@@ -500,11 +499,9 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/strchrnul.S
srdi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of matching c/null byte. */
blr
-Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strchr.S
-===================================================================
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strchr.S.orig
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strchr.S
-@@ -50,14 +50,16 @@ ENTRY (BP_SYM (strchr))
+--- a/sysdeps/powerpc/powerpc64/strchr.S
++++ b/sysdeps/powerpc/powerpc64/strchr.S
+@@ -50,14 +50,16 @@
#define rIGN r10 /* number of bits we should ignore in the first word */
#define rMASK r11 /* mask with the bits to ignore set to 0 */
#define rTMP3 r12
@@ -523,7 +520,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strchr.S
rlwinm rIGN, rRTN, 3, 26, 28
insrdi rCHR, rCHR, 32, 0
lis rFEFE, -0x101
-@@ -70,53 +72,74 @@ ENTRY (BP_SYM (strchr))
+@@ -70,53 +72,74 @@
add rFEFE, rFEFE, rTMP1
/* Test the first (partial?) word. */
ld rWORD, 0(rSTR)
@@ -616,7 +613,7 @@ Index: glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/strchr.S
srdi rCLZB, rCLZB, 3
add rRTN, rSTR, rCLZB
CHECK_BOUNDS_HIGH_RTN (rSTR, rTMP2, tdlge)
-@@ -124,13 +147,21 @@ L(missed):
+@@ -124,13 +147,21 @@
blr
L(foundit):
diff --git a/packages/glibc/2.17/0052-glibc-ppc64le-30.patch b/packages/glibc/2.17/0052-glibc-ppc64le-30.patch
index 3834dcc..0b8f04a 100644
--- a/packages/glibc/2.17/0052-glibc-ppc64le-30.patch
+++ b/packages/glibc/2.17/0052-glibc-ppc64le-30.patch
@@ -34,9 +34,15 @@
# addi 1,1,64 to pop stack frame. Simplify return value code.
# * sysdeps/powerpc/powerpc32/power4/memcmp.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcmp.S 2014-05-28 19:22:37.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcmp.S 2014-05-28 23:55:52.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power4/memcmp.S | 1070 +++++++++++++------
+# sysdeps/powerpc/powerpc32/power7/memcmp.S | 1624 ++++++++++++++++++-----------
+# sysdeps/powerpc/powerpc64/power4/memcmp.S | 1156 ++++++++++++++-------
+# sysdeps/powerpc/powerpc64/power7/memcmp.S | 1648 ++++++++++++++++++------------
+# 4 files changed, 3523 insertions(+), 1975 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power4/memcmp.S
++++ b/sysdeps/powerpc/powerpc32/power4/memcmp.S
@@ -1,4 +1,4 @@
-/* Optimized strcmp implementation for PowerPC64.
+/* Optimized strcmp implementation for PowerPC32.
@@ -1700,9 +1706,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcmp.S glibc-2.
blr
END (BP_SYM (memcmp))
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcmp.S 2014-05-28 19:22:37.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcmp.S 2014-05-28 21:44:57.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/memcmp.S
++++ b/sysdeps/powerpc/powerpc32/power7/memcmp.S
@@ -25,10 +25,9 @@
size_t size [r5]) */
@@ -3663,9 +3668,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcmp.S glibc-2.
+
libc_hidden_builtin_def (memcmp)
weak_alias (memcmp,bcmp)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcmp.S 2014-05-28 19:22:37.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcmp.S 2014-05-29 09:35:25.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power4/memcmp.S
++++ b/sysdeps/powerpc/powerpc64/power4/memcmp.S
@@ -1,5 +1,5 @@
-/* Optimized strcmp implementation for PowerPC64.
- Copyright (C) 2003, 2006, 2011 Free Software Foundation, Inc.
@@ -5395,9 +5399,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcmp.S glibc-2.
+END (memcmp)
libc_hidden_builtin_def (memcmp)
weak_alias (memcmp, bcmp)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcmp.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcmp.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcmp.S 2014-05-28 19:22:37.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcmp.S 2014-05-29 09:35:08.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/memcmp.S
++++ b/sysdeps/powerpc/powerpc64/power7/memcmp.S
@@ -1,5 +1,5 @@
/* Optimized memcmp implementation for POWER7/PowerPC64.
- Copyright (C) 2010, 2011 Free Software Foundation, Inc.
diff --git a/packages/glibc/2.17/0053-glibc-ppc64le-31.patch b/packages/glibc/2.17/0053-glibc-ppc64le-31.patch
index de90661..8f8fa74 100644
--- a/packages/glibc/2.17/0053-glibc-ppc64le-31.patch
+++ b/packages/glibc/2.17/0053-glibc-ppc64le-31.patch
@@ -21,9 +21,20 @@
# * sysdeps/powerpc/powerpc64/power7/mempcpy.S: Likewise. Make better
# use of regs. Use power7 mtocrf. Tidy function tails.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcpy.S 2014-05-29 13:04:56.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power4/memcpy.S | 58 ++
+# sysdeps/powerpc/powerpc32/power6/memcpy.S | 81 +++
+# sysdeps/powerpc/powerpc32/power7/memcpy.S | 24
+# sysdeps/powerpc/powerpc32/power7/mempcpy.S | 28 -
+# sysdeps/powerpc/powerpc64/memcpy.S | 27 +
+# sysdeps/powerpc/powerpc64/power4/memcpy.S | 157 ++++--
+# sysdeps/powerpc/powerpc64/power6/memcpy.S | 451 +++++++++++++++---
+# sysdeps/powerpc/powerpc64/power7/memcpy.S | 706 +++++++++++++----------------
+# sysdeps/powerpc/powerpc64/power7/mempcpy.S | 26 -
+# 9 files changed, 1035 insertions(+), 523 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power4/memcpy.S
++++ b/sysdeps/powerpc/powerpc32/power4/memcpy.S
@@ -205,15 +205,28 @@
blt cr6,5f
srwi 7,6,16
@@ -163,9 +174,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memcpy.S glibc-2.
or 0,0,8
stw 0,0(4)
3:
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memcpy.S 2014-05-29 13:04:56.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power6/memcpy.S
++++ b/sysdeps/powerpc/powerpc32/power6/memcpy.S
@@ -221,15 +221,28 @@
blt cr6,5f
srwi 7,6,16
@@ -385,9 +395,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memcpy.S glibc-2.
b L(wdu_32tailx)
.align 4
L(wdu_32tailx):
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcpy.S 2014-05-29 13:04:56.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/memcpy.S
++++ b/sysdeps/powerpc/powerpc32/power7/memcpy.S
@@ -385,7 +385,7 @@
beq L(copy_GE_32_unaligned_cont)
@@ -441,9 +450,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memcpy.S glibc-2.
addi 11,11,32
stvx 6,0,10
stvx 10,10,6
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/mempcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/mempcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/mempcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/mempcpy.S 2014-05-29 13:04:56.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/mempcpy.S
++++ b/sysdeps/powerpc/powerpc32/power7/mempcpy.S
@@ -327,7 +327,7 @@
beq L(copy_GE_32_unaligned_cont)
@@ -499,9 +507,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/mempcpy.S glibc-2
addi 11,11,32
stvx 6,0,10
stvx 10,10,6
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memcpy.S 2014-05-29 13:04:56.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/memcpy.S
++++ b/sysdeps/powerpc/powerpc64/memcpy.S
@@ -214,15 +214,28 @@
blt cr6,5f
srdi 7,6,16
@@ -569,9 +576,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memcpy.S glibc-2.17-c758
or 0,0,8
beq 8f
ld 7,16(5)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcpy.S 2014-05-29 13:05:51.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power4/memcpy.S
++++ b/sysdeps/powerpc/powerpc64/power4/memcpy.S
@@ -1,5 +1,5 @@
/* Optimized memcpy implementation for PowerPC64.
- Copyright (C) 2003, 2006, 2011 Free Software Foundation, Inc.
@@ -954,9 +960,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memcpy.S glibc-2.
-END_GEN_TB (BP_SYM (memcpy),TB_TOCLESS)
+END_GEN_TB (memcpy,TB_TOCLESS)
libc_hidden_builtin_def (memcpy)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memcpy.S 2014-05-29 13:05:27.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power6/memcpy.S
++++ b/sysdeps/powerpc/powerpc64/power6/memcpy.S
@@ -1,5 +1,5 @@
/* Optimized memcpy implementation for PowerPC64.
- Copyright (C) 2003, 2006, 2007, 2011 Free Software Foundation, Inc.
@@ -2073,9 +2078,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memcpy.S glibc-2.
-END_GEN_TB (BP_SYM (memcpy),TB_TOCLESS)
+END_GEN_TB (memcpy,TB_TOCLESS)
libc_hidden_builtin_def (memcpy)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcpy.S 2014-05-29 13:05:40.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/memcpy.S
++++ b/sysdeps/powerpc/powerpc64/power7/memcpy.S
@@ -1,5 +1,5 @@
/* Optimized memcpy implementation for PowerPC64/POWER7.
- Copyright (C) 2010, 2011 Free Software Foundation, Inc.
@@ -2892,9 +2896,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memcpy.S glibc-2.
-END_GEN_TB (BP_SYM (memcpy),TB_TOCLESS)
+END_GEN_TB (memcpy,TB_TOCLESS)
libc_hidden_builtin_def (memcpy)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/mempcpy.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/mempcpy.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/mempcpy.S 2014-05-29 13:04:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/mempcpy.S 2014-05-29 13:04:56.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/mempcpy.S
++++ b/sysdeps/powerpc/powerpc64/power7/mempcpy.S
@@ -367,13 +367,21 @@
mr 11,12
mtcrf 0x01,9
diff --git a/packages/glibc/2.17/0054-glibc-ppc64le-32.patch b/packages/glibc/2.17/0054-glibc-ppc64le-32.patch
index 058d53a..808741e 100644
--- a/packages/glibc/2.17/0054-glibc-ppc64le-32.patch
+++ b/packages/glibc/2.17/0054-glibc-ppc64le-32.patch
@@ -18,9 +18,18 @@
# * sysdeps/powerpc/powerpc32/power6/memset.S: Likewise.
# * sysdeps/powerpc/powerpc32/power7/memset.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memset.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memset.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memset.S 2014-05-29 13:07:41.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memset.S 2014-05-29 13:07:46.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power4/memset.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power6/memset.S | 4 ++--
+# sysdeps/powerpc/powerpc32/power7/memset.S | 4 ++--
+# sysdeps/powerpc/powerpc64/memset.S | 10 +++++-----
+# sysdeps/powerpc/powerpc64/power4/memset.S | 30 +++++++++++++++---------------
+# sysdeps/powerpc/powerpc64/power6/memset.S | 10 +++++-----
+# sysdeps/powerpc/powerpc64/power7/memset.S | 6 +++---
+# 7 files changed, 34 insertions(+), 34 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power4/memset.S
++++ b/sysdeps/powerpc/powerpc32/power4/memset.S
@@ -52,7 +52,7 @@
/* Align to word boundary. */
@@ -39,9 +48,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power4/memset.S glibc-2.
ble cr5, L(medium)
/* Align to 32-byte boundary. */
andi. rALIGN, rMEMP, 0x1C
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memset.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memset.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memset.S 2014-05-29 13:07:41.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memset.S 2014-05-29 13:07:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power6/memset.S
++++ b/sysdeps/powerpc/powerpc32/power6/memset.S
@@ -50,7 +50,7 @@
ble- cr1, L(small)
/* Align to word boundary. */
@@ -60,9 +68,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power6/memset.S glibc-2.
ble cr5, L(medium)
/* Align to 32-byte boundary. */
andi. rALIGN, rMEMP, 0x1C
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memset.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memset.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memset.S 2014-05-29 13:07:41.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memset.S 2014-05-29 13:07:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/memset.S
++++ b/sysdeps/powerpc/powerpc32/power7/memset.S
@@ -37,8 +37,8 @@
cfi_offset(31,-8)
@@ -74,9 +81,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memset.S glibc-2.
ble cr6,L(small) /* If length <= 8, use short copy code. */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memset.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memset.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memset.S 2014-05-29 13:07:41.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memset.S 2014-05-29 13:07:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/memset.S
++++ b/sysdeps/powerpc/powerpc64/memset.S
@@ -73,14 +73,14 @@
/* Align to doubleword boundary. */
@@ -120,9 +126,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/memset.S glibc-2.17-c758
cmpldi cr1, rLEN, 16
L(medium_tail2):
add rMEMP, rMEMP, rLEN
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memset.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memset.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memset.S 2014-05-29 13:07:41.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memset.S 2014-05-29 13:07:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power4/memset.S
++++ b/sysdeps/powerpc/powerpc64/power4/memset.S
@@ -68,14 +68,14 @@
/* Align to doubleword boundary. */
@@ -201,9 +206,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power4/memset.S glibc-2.
cmpldi cr1, rLEN, 16
L(medium_tail2):
add rMEMP, rMEMP, rLEN
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memset.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memset.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memset.S 2014-05-29 13:07:41.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memset.S 2014-05-29 13:07:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power6/memset.S
++++ b/sysdeps/powerpc/powerpc64/power6/memset.S
@@ -65,14 +65,14 @@
/* Align to doubleword boundary. */
@@ -247,9 +251,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power6/memset.S glibc-2.
cmpldi cr1, rLEN, 16
L(medium_tail2):
add rMEMP, rMEMP, rLEN
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memset.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memset.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memset.S 2014-05-29 13:07:41.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memset.S 2014-05-29 13:07:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/memset.S
++++ b/sysdeps/powerpc/powerpc64/power7/memset.S
@@ -34,8 +34,8 @@
mr 10,3
diff --git a/packages/glibc/2.17/0055-glibc-ppc64le-33.patch b/packages/glibc/2.17/0055-glibc-ppc64le-33.patch
index 9da11df..bba83ad 100644
--- a/packages/glibc/2.17/0055-glibc-ppc64le-33.patch
+++ b/packages/glibc/2.17/0055-glibc-ppc64le-33.patch
@@ -48,9 +48,17 @@
# support. Avoid rlwimi.
# * sysdeps/powerpc/powerpc32/power7/rawmemchr.S: Likewise.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memchr.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memchr.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memchr.S 2014-05-29 13:09:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memchr.S 2014-05-29 13:13:37.000000000 -0500
+---
+# sysdeps/powerpc/powerpc32/power7/memchr.S | 195 +++++++++++--------------
+# sysdeps/powerpc/powerpc32/power7/memrchr.S | 197 ++++++++++++++------------
+# sysdeps/powerpc/powerpc32/power7/rawmemchr.S | 17 +-
+# sysdeps/powerpc/powerpc64/power7/memchr.S | 204 ++++++++++++---------------
+# sysdeps/powerpc/powerpc64/power7/memrchr.S | 204 ++++++++++++++-------------
+# sysdeps/powerpc/powerpc64/power7/rawmemchr.S | 17 +-
+# 6 files changed, 424 insertions(+), 410 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc32/power7/memchr.S
++++ b/sysdeps/powerpc/powerpc32/power7/memchr.S
@@ -1,5 +1,5 @@
/* Optimized memchr implementation for PowerPC32/POWER7 using cmpb insn.
- Copyright (C) 2010-2012 Free Software Foundation, Inc.
@@ -330,9 +338,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memchr.S glibc-2.
+END (__memchr)
+weak_alias (__memchr, memchr)
libc_hidden_builtin_def (memchr)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memrchr.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memrchr.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memrchr.S 2014-05-29 13:09:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memrchr.S 2014-05-29 13:13:47.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/memrchr.S
++++ b/sysdeps/powerpc/powerpc32/power7/memrchr.S
@@ -1,5 +1,5 @@
/* Optimized memrchr implementation for PowerPC32/POWER7 using cmpb insn.
- Copyright (C) 2010 Free Software Foundation, Inc.
@@ -602,9 +609,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/memrchr.S glibc-2
+END (__memrchr)
+weak_alias (__memrchr, memrchr)
libc_hidden_builtin_def (memrchr)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/rawmemchr.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/rawmemchr.S 2014-05-29 13:09:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/rawmemchr.S 2014-05-29 13:09:19.000000000 -0500
+--- a/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
++++ b/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
@@ -29,16 +29,21 @@
clrrwi r8,r3,2 /* Align the address to word boundary. */
@@ -645,9 +651,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/power7/rawmemchr.S glibc
add r3,r8,r0 /* Return address of the matching char. */
blr
END (BP_SYM (__rawmemchr))
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memchr.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memchr.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memchr.S 2014-05-29 13:09:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memchr.S 2014-05-29 13:13:57.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/memchr.S
++++ b/sysdeps/powerpc/powerpc64/power7/memchr.S
@@ -1,5 +1,5 @@
/* Optimized memchr implementation for PowerPC64/POWER7 using cmpb insn.
- Copyright (C) 2010-2012 Free Software Foundation, Inc.
@@ -932,9 +937,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memchr.S glibc-2.
+END (__memchr)
+weak_alias (__memchr, memchr)
libc_hidden_builtin_def (memchr)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memrchr.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memrchr.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memrchr.S 2014-05-29 13:09:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memrchr.S 2014-05-29 13:14:06.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/memrchr.S
++++ b/sysdeps/powerpc/powerpc64/power7/memrchr.S
@@ -1,5 +1,5 @@
/* Optimized memrchr implementation for PowerPC64/POWER7 using cmpb insn.
- Copyright (C) 2010 Free Software Foundation, Inc.
@@ -1209,9 +1213,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/memrchr.S glibc-2
+END (__memrchr)
+weak_alias (__memrchr, memrchr)
libc_hidden_builtin_def (memrchr)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/rawmemchr.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/rawmemchr.S 2014-05-29 13:09:17.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/power7/rawmemchr.S 2014-05-29 13:09:19.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
++++ b/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
@@ -29,8 +29,8 @@
clrrdi r8,r3,3 /* Align the address to doubleword boundary. */
diff --git a/packages/glibc/2.17/0056-glibc-ppc64le-34.patch b/packages/glibc/2.17/0056-glibc-ppc64le-34.patch
index ef6362d..7ad1853 100644
--- a/packages/glibc/2.17/0056-glibc-ppc64le-34.patch
+++ b/packages/glibc/2.17/0056-glibc-ppc64le-34.patch
@@ -18,10 +18,16 @@
#
# PowerPC: Change powerpc64le start ABI to 2.17.
#
-diff -urN glibc-2.17-c758a686/configure glibc-2.17-c758a686/configure
---- glibc-2.17-c758a686/configure 2014-05-26 19:52:31.000000000 -0500
-+++ glibc-2.17-c758a686/configure 2014-05-26 19:54:13.000000000 -0500
-@@ -4195,8 +4195,8 @@
+---
+# configure | 4 ++--
+# configure.in | 4 ++--
+# nptl/shlib-versions | 1 +
+# shlib-versions | 1 +
+# 4 files changed, 6 insertions(+), 4 deletions(-)
+#
+--- a/configure
++++ b/configure
+@@ -4176,8 +4176,8 @@
# base_machine, we don't change it.
test -n "$base_machine" || case "$machine" in
i[34567]86) base_machine=i386 machine=i386/$machine ;;
@@ -32,10 +38,9 @@ diff -urN glibc-2.17-c758a686/configure glibc-2.17-c758a686/configure
s390) base_machine=s390 machine=s390/s390-32 ;;
s390x) base_machine=s390 machine=s390/s390-64 ;;
sh3*) base_machine=sh machine=sh/sh3 ;;
-diff -urN glibc-2.17-c758a686/configure.in glibc-2.17-c758a686/configure.in
---- glibc-2.17-c758a686/configure.in 2014-05-26 19:52:30.000000000 -0500
-+++ glibc-2.17-c758a686/configure.in 2014-05-26 19:54:45.000000000 -0500
-@@ -549,8 +549,8 @@
+--- a/configure.in
++++ b/configure.in
+@@ -539,8 +539,8 @@
# base_machine, we don't change it.
test -n "$base_machine" || case "$machine" in
i[34567]86) base_machine=i386 machine=i386/$machine ;;
@@ -46,18 +51,16 @@ diff -urN glibc-2.17-c758a686/configure.in glibc-2.17-c758a686/configure.in
s390) base_machine=s390 machine=s390/s390-32 ;;
s390x) base_machine=s390 machine=s390/s390-64 ;;
sh3*) base_machine=sh machine=sh/sh3 ;;
-diff -urN glibc-2.17-c758a686/nptl/shlib-versions glibc-2.17-c758a686/nptl/shlib-versions
---- glibc-2.17-c758a686/nptl/shlib-versions 2014-05-26 19:52:31.000000000 -0500
-+++ glibc-2.17-c758a686/nptl/shlib-versions 2014-05-26 19:53:31.000000000 -0500
+--- a/nptl/shlib-versions
++++ b/nptl/shlib-versions
@@ -2,4 +2,5 @@
sh.*-.*-linux.* libpthread=0 GLIBC_2.2
s390x-.*-linux.* libpthread=0 GLIBC_2.2
powerpc64-.*-linux.* libpthread=0 GLIBC_2.3
+powerpc.*le-.*-linux.* libpthread=0 GLIBC_2.17
.*-.*-linux.* libpthread=0
-diff -urN glibc-2.17-c758a686/shlib-versions glibc-2.17-c758a686/shlib-versions
---- glibc-2.17-c758a686/shlib-versions 2014-05-26 19:52:31.000000000 -0500
-+++ glibc-2.17-c758a686/shlib-versions 2014-05-26 19:53:31.000000000 -0500
+--- a/shlib-versions
++++ b/shlib-versions
@@ -23,6 +23,7 @@
s390x-.*-linux.* DEFAULT GLIBC_2.2
diff --git a/packages/glibc/2.17/0057-glibc-ppc64le-35.patch b/packages/glibc/2.17/0057-glibc-ppc64le-35.patch
index 17434b9..2aa0053 100644
--- a/packages/glibc/2.17/0057-glibc-ppc64le-35.patch
+++ b/packages/glibc/2.17/0057-glibc-ppc64le-35.patch
@@ -29,9 +29,13 @@
# is already done on other platforms. This fixes the libgo
# regression on ELFv2.
#
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S 2014-05-29 13:16:16.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S 2014-05-29 13:16:17.000000000 -0500
+---
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S | 9 ++++++++
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S | 18 ++++++++++++++++
+# 2 files changed, 27 insertions(+)
+#
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
@@ -129,6 +129,10 @@
the cpu link stack used to predict blr return addresses. */
bcl 20,31,L(gotexitcodeaddr);
@@ -55,9 +59,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecont
/* The address of the exit code is in the link register. Store the lr
in the ucontext as LNK so the target function will return to our
exit code. */
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S 2014-05-29 13:16:16.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S 2014-05-29 13:16:17.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
@@ -129,6 +129,10 @@
lfd fp1,(SIGCONTEXT_FP_REGS+(PT_R1*8))(r31)
lfd fp0,(SIGCONTEXT_FP_REGS+(PT_R0*8))(r31)
diff --git a/packages/glibc/2.17/0058-glibc-ppc64le-36.patch b/packages/glibc/2.17/0058-glibc-ppc64le-36.patch
index fbe351c..b710258 100644
--- a/packages/glibc/2.17/0058-glibc-ppc64le-36.patch
+++ b/packages/glibc/2.17/0058-glibc-ppc64le-36.patch
@@ -19,10 +19,14 @@
# The patch also fixes a bug in overflow checking for the R_PPC64_ADDR30
# and R_PPC64_ADDR32 relocations.
#
-diff -urN glibc-2.17-c758a686/elf/elf.h glibc-2.17-c758a686/elf/elf.h
---- glibc-2.17-c758a686/elf/elf.h 2014-05-29 13:17:35.000000000 -0500
-+++ glibc-2.17-c758a686/elf/elf.h 2014-05-29 13:17:35.000000000 -0500
-@@ -2243,6 +2243,17 @@
+---
+# elf/elf.h | 11 +++++++++++
+# sysdeps/powerpc/powerpc64/dl-machine.h | 24 ++++++++++++++++++++++--
+# 2 files changed, 33 insertions(+), 2 deletions(-)
+#
+--- a/elf/elf.h
++++ b/elf/elf.h
+@@ -2240,6 +2240,17 @@
#define R_PPC64_DTPREL16_HIGHERA 104 /* half16 (sym+add)@dtprel@highera */
#define R_PPC64_DTPREL16_HIGHEST 105 /* half16 (sym+add)@dtprel@highest */
#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta */
@@ -40,9 +44,8 @@ diff -urN glibc-2.17-c758a686/elf/elf.h glibc-2.17-c758a686/elf/elf.h
/* GNU extension to support local ifunc. */
#define R_PPC64_JMP_IREL 247
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 13:17:34.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 13:17:35.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-machine.h
++++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -663,11 +663,25 @@
case R_PPC64_TPREL16_HI:
diff --git a/packages/glibc/2.17/0059-glibc-ppc64le-37.patch b/packages/glibc/2.17/0059-glibc-ppc64le-37.patch
index dad59a6..84e3ffe 100644
--- a/packages/glibc/2.17/0059-glibc-ppc64le-37.patch
+++ b/packages/glibc/2.17/0059-glibc-ppc64le-37.patch
@@ -17,9 +17,12 @@
# to avoid changing the ABI; see the recent discussion when adding
# the EBB fields.
#
-diff -urN glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h
---- glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h 2014-05-29 13:19:25.000000000 -0500
-+++ glibc-2.17-c758a686/nptl/sysdeps/powerpc/tls.h 2014-05-29 13:19:25.000000000 -0500
+---
+# nptl/sysdeps/powerpc/tls.h | 2 ++
+# 1 file changed, 2 insertions(+)
+#
+--- a/nptl/sysdeps/powerpc/tls.h
++++ b/nptl/sysdeps/powerpc/tls.h
@@ -61,6 +61,8 @@
are private. */
typedef struct
diff --git a/packages/glibc/2.17/0060-glibc-ppc64le-38.patch b/packages/glibc/2.17/0060-glibc-ppc64le-38.patch
index 196f0ad..43a4a92 100644
--- a/packages/glibc/2.17/0060-glibc-ppc64le-38.patch
+++ b/packages/glibc/2.17/0060-glibc-ppc64le-38.patch
@@ -16,9 +16,16 @@
#
# No relevant change in generated code expected.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S 2014-05-29 13:56:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S 2014-05-29 13:56:37.000000000 -0500
+---
+# sysdeps/powerpc/powerpc64/crti.S | 24 +----------------
+# sysdeps/powerpc/powerpc64/dl-machine.h | 18 ------------
+# sysdeps/powerpc/powerpc64/dl-trampoline.S | 24 ++++-------------
+# sysdeps/powerpc/powerpc64/sysdep.h | 31 ++++++++++++++++++++--
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S | 4 --
+# 5 files changed, 39 insertions(+), 62 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc64/crti.S
++++ b/sysdeps/powerpc/powerpc64/crti.S
@@ -60,18 +60,8 @@
.LC0:
.tc PREINIT_FUNCTION[TC], PREINIT_FUNCTION
@@ -59,9 +66,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S glibc-2.17-c758a6
.align ALIGNARG (2)
BODY_LABEL (_fini):
mflr 0
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 13:56:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 13:56:37.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-machine.h
++++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -122,14 +122,7 @@
#define RTLD_START \
asm (".pushsection \".text\"\n" \
@@ -109,9 +115,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-
" bctr\n" \
".LT__dl_start_user:\n" \
" .long 0\n" \
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 13:56:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 13:56:37.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-trampoline.S
++++ b/sysdeps/powerpc/powerpc64/dl-trampoline.S
@@ -71,12 +71,8 @@
ld r5,INT_PARMS+16(r1)
ld r4,INT_PARMS+8(r1)
@@ -160,9 +165,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S glibc-2.
/* Load the floating point registers. */
lfd fp1,FPR_PARMS+0(r1)
lfd fp2,FPR_PARMS+8(r1)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h 2014-05-29 13:56:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h 2014-05-29 13:56:37.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/sysdep.h
++++ b/sysdeps/powerpc/powerpc64/sysdep.h
@@ -74,6 +74,14 @@
#endif
.endm
@@ -246,9 +250,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h glibc-2.17-c758
# define END_2(name) \
".size " #name ",.-" BODY_PREFIX #name ";\n" \
".size " BODY_PREFIX #name ",.-" BODY_PREFIX #name ";"
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S 2014-05-29 13:56:35.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S 2014-05-29 13:56:37.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
@@ -104,9 +104,7 @@
std r2,40(r1)
diff --git a/packages/glibc/2.17/0061-glibc-ppc64le-39.patch b/packages/glibc/2.17/0061-glibc-ppc64le-39.patch
index f837d99..f39f271 100644
--- a/packages/glibc/2.17/0061-glibc-ppc64le-39.patch
+++ b/packages/glibc/2.17/0061-glibc-ppc64le-39.patch
@@ -33,10 +33,20 @@
# The hack in VDSO_IFUNC_RET to "synthesize" a function descriptor
# for vDSO routines is also no longer necessary for ELFv2.
#
-diff -urN glibc-2.17-c758a686/elf/elf.h glibc-2.17-c758a686/elf/elf.h
---- glibc-2.17-c758a686/elf/elf.h 2014-05-29 13:58:25.000000000 -0500
-+++ glibc-2.17-c758a686/elf/elf.h 2014-05-29 13:58:25.000000000 -0500
-@@ -2263,6 +2263,12 @@
+---
+# elf/elf.h | 6
+# sysdeps/powerpc/powerpc64/crti.S | 2
+# sysdeps/powerpc/powerpc64/dl-irel.h | 4
+# sysdeps/powerpc/powerpc64/dl-machine.h | 99 ++++++++++++----
+# sysdeps/powerpc/powerpc64/setjmp-common.S | 21 +--
+# sysdeps/powerpc/powerpc64/sysdep.h | 54 ++++++++
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h | 4
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S | 7 +
+# 8 files changed, 162 insertions(+), 35 deletions(-)
+#
+--- a/elf/elf.h
++++ b/elf/elf.h
+@@ -2260,6 +2260,12 @@
#define R_PPC64_REL16_HI 251 /* half16 (sym+add-.)@h */
#define R_PPC64_REL16_HA 252 /* half16 (sym+add-.)@ha */
@@ -49,9 +59,8 @@ diff -urN glibc-2.17-c758a686/elf/elf.h glibc-2.17-c758a686/elf/elf.h
/* PowerPC64 specific values for the Dyn d_tag field. */
#define DT_PPC64_GLINK (DT_LOPROC + 0)
#define DT_PPC64_OPD (DT_LOPROC + 1)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S 2014-05-29 13:58:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S 2014-05-29 13:58:25.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/crti.S
++++ b/sysdeps/powerpc/powerpc64/crti.S
@@ -64,6 +64,7 @@
ENTRY_2(_init)
.align ALIGNARG (2)
@@ -68,9 +77,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S glibc-2.17-c758a6
mflr 0
std 0, 16(r1)
stdu r1, -112(r1)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-irel.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-irel.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-irel.h 2014-05-29 13:58:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-irel.h 2014-05-29 13:58:25.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-irel.h
++++ b/sysdeps/powerpc/powerpc64/dl-irel.h
@@ -50,7 +50,11 @@
{
Elf64_Addr *const reloc_addr = (void *) reloc->r_offset;
@@ -83,9 +91,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-irel.h glibc-2.17-c75
}
else
__libc_fatal ("unexpected reloc type in static binary");
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 13:58:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 14:05:46.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-machine.h
++++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -31,6 +31,7 @@
in l_info array. */
#define DT_PPC64(x) (DT_PPC64_##x - DT_LOPROC + DT_NUM)
@@ -311,9 +318,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-
return ((Elf64_Addr (*) (unsigned long int)) value) (GLRO(dl_hwcap));
}
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S 2014-05-29 13:58:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S 2014-05-29 14:00:27.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/setjmp-common.S
++++ b/sysdeps/powerpc/powerpc64/setjmp-common.S
@@ -55,21 +55,22 @@
that saves r2 since the call won't go via a plt call stub. See
bugz #269. __GI__setjmp is used in csu/libc-start.c when
@@ -366,9 +372,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S glibc-2.
#endif
-END (BP_SYM (__sigsetjmp))
+END (__sigsetjmp)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h 2014-05-29 13:58:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h 2014-05-29 13:58:25.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/sysdep.h
++++ b/sysdeps/powerpc/powerpc64/sysdep.h
@@ -74,6 +74,8 @@
#endif
.endm
@@ -463,9 +468,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h glibc-2.17-c758
+#endif /* _CALL_ELF */
#endif /* __ASSEMBLER__ */
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h 2014-05-29 13:58:24.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h 2014-05-29 13:58:25.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
@@ -23,6 +23,8 @@
/* Now define our stuff. */
@@ -482,9 +486,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs
+#endif
+
#endif /* ldsodefs.h */
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S 2014-05-29 13:58:24.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S 2014-05-29 13:58:25.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
@@ -111,6 +111,7 @@
L(noparms):
diff --git a/packages/glibc/2.17/0062-glibc-ppc64le-40.patch b/packages/glibc/2.17/0062-glibc-ppc64le-40.patch
index 663d2f3..87b707d 100644
--- a/packages/glibc/2.17/0062-glibc-ppc64le-40.patch
+++ b/packages/glibc/2.17/0062-glibc-ppc64le-40.patch
@@ -27,10 +27,15 @@
# the target function for the first time, since it assumed that function
# would always reload its own TOC anyway ...
#
-diff -urN glibc-2.17-c758a686/elf/elf.h glibc-2.17-c758a686/elf/elf.h
---- glibc-2.17-c758a686/elf/elf.h 2014-05-29 14:08:44.000000000 -0500
-+++ glibc-2.17-c758a686/elf/elf.h 2014-05-29 14:08:44.000000000 -0500
-@@ -2273,8 +2273,19 @@
+---
+# elf/elf.h | 11 +++++++
+# sysdeps/powerpc/powerpc64/dl-machine.h | 44 ++++++++++++++++++++++++++++--
+# sysdeps/powerpc/powerpc64/dl-trampoline.S | 8 +++++
+# 3 files changed, 61 insertions(+), 2 deletions(-)
+#
+--- a/elf/elf.h
++++ b/elf/elf.h
+@@ -2270,8 +2270,19 @@
#define DT_PPC64_GLINK (DT_LOPROC + 0)
#define DT_PPC64_OPD (DT_LOPROC + 1)
#define DT_PPC64_OPDSZ (DT_LOPROC + 2)
@@ -50,9 +55,8 @@ diff -urN glibc-2.17-c758a686/elf/elf.h glibc-2.17-c758a686/elf/elf.h
/* ARM specific declarations */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 14:08:40.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 14:08:44.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-machine.h
++++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -425,6 +425,42 @@
return lazy;
}
@@ -132,9 +136,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-
#else
elf_machine_fixup_plt (map, sym_map, reloc, reloc_addr, value);
#endif
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 14:08:40.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 14:08:44.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-trampoline.S
++++ b/sysdeps/powerpc/powerpc64/dl-trampoline.S
@@ -74,6 +74,10 @@
/* Prepare for calling the function returned by fixup. */
PPC64_LOAD_FUNCPTR r3
diff --git a/packages/glibc/2.17/0063-glibc-ppc64le-41.patch b/packages/glibc/2.17/0063-glibc-ppc64le-41.patch
index 506d761..2df36ef 100644
--- a/packages/glibc/2.17/0063-glibc-ppc64le-41.patch
+++ b/packages/glibc/2.17/0063-glibc-ppc64le-41.patch
@@ -34,9 +34,24 @@
# a stack frame, and the patch changes them to add extra space in
# these frames as temporary space for the ELFv2 ABI.
#
-diff -urN glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
---- glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h 2014-05-29 14:10:00.000000000 -0500
-+++ glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h 2014-05-29 14:10:00.000000000 -0500
+---
+# nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h | 60 ++++---
+# sysdeps/powerpc/powerpc64/__longjmp-common.S | 4
+# sysdeps/powerpc/powerpc64/crti.S | 8 -
+# sysdeps/powerpc/powerpc64/crtn.S | 8 -
+# sysdeps/powerpc/powerpc64/dl-trampoline.S | 48 +++---
+# sysdeps/powerpc/powerpc64/ppc-mcount.S | 14 -
+# sysdeps/powerpc/powerpc64/setjmp-common.S | 16 +-
+# sysdeps/powerpc/powerpc64/sysdep.h | 76 +++++++---
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S | 16 +-
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S | 4
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S | 32 ++--
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S | 29 ++-
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym | 21 --
+# 13 files changed, 186 insertions(+), 150 deletions(-)
+#
+--- a/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
++++ b/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
@@ -31,6 +31,14 @@
# define DASHDASHPFX(str) __##str
# endif
@@ -131,9 +146,8 @@ diff -urN glibc-2.17-c758a686/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sys
# ifdef IS_IN_libpthread
# ifdef SHARED
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/__longjmp-common.S
++++ b/sysdeps/powerpc/powerpc64/__longjmp-common.S
@@ -133,7 +133,7 @@
ld r14,((JB_GPRS+0)*8)(r3)
lfd fp14,((JB_FPRS+0)*8)(r3)
@@ -152,9 +166,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/__longjmp-common.S glibc
ld r21,((JB_GPRS+7)*8)(r3)
lfd fp21,((JB_FPRS+7)*8)(r3)
ld r22,((JB_GPRS+8)*8)(r3)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/crti.S
++++ b/sysdeps/powerpc/powerpc64/crti.S
@@ -66,8 +66,8 @@
BODY_LABEL (_init):
LOCALENTRY(_init)
@@ -174,9 +187,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crti.S glibc-2.17-c758a6
- stdu r1, -112(r1)
+ std 0, FRAME_LR_SAVE(r1)
+ stdu r1, -FRAME_MIN_SIZE_PARM(r1)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crtn.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crtn.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crtn.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crtn.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/crtn.S
++++ b/sysdeps/powerpc/powerpc64/crtn.S
@@ -39,13 +39,13 @@
#include <sysdep.h>
@@ -195,9 +207,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/crtn.S glibc-2.17-c758a6
+ ld r0, FRAME_LR_SAVE(r1)
mtlr r0
blr
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-trampoline.S
++++ b/sysdeps/powerpc/powerpc64/dl-trampoline.S
@@ -26,13 +26,13 @@
parm1 (r3) and the index (r0) need to be converted to an offset
(index * 24) in parm2 (r4). */
@@ -363,9 +374,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S glibc-2.
ld r31,584(r1)
ld r30,576(r1)
mtlr r0
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/ppc-mcount.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/ppc-mcount.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/ppc-mcount.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/ppc-mcount.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/ppc-mcount.S
++++ b/sysdeps/powerpc/powerpc64/ppc-mcount.S
@@ -24,16 +24,16 @@
ENTRY(_mcount)
mflr r4
@@ -390,9 +400,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/ppc-mcount.S glibc-2.17-
blr
END(_mcount)
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/setjmp-common.S
++++ b/sysdeps/powerpc/powerpc64/setjmp-common.S
@@ -56,7 +56,7 @@
bugz #269. __GI__setjmp is used in csu/libc-start.c when
HAVE_CLEANUP_JMP_BUF is defined. */
@@ -432,9 +441,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/setjmp-common.S glibc-2.
mtlr r0
blr
#endif
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/sysdep.h
++++ b/sysdeps/powerpc/powerpc64/sysdep.h
@@ -20,25 +20,67 @@
#ifdef __ASSEMBLER__
@@ -557,9 +565,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/sysdep.h glibc-2.17-c758
mtlr 0; \
cfi_restore(lr); \
blr; \
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S
@@ -33,24 +33,24 @@
cmpld reg, r1; \
bge+ .Lok; \
@@ -593,9 +600,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/____long
add r4,r4,r0; \
sub r3,r3,reg; \
cmpld r3,r0; \
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
@@ -31,9 +31,9 @@
CALL_MCOUNT 1
DISCARD_BOUNDS (r3) /* the bounds are meaningless, so toss 'em. */
@@ -608,9 +614,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S gl
ld r5,.LC__curbrk@toc(r2)
std r3,0(r5)
cmpld r6,r3
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
@@ -45,22 +45,22 @@
cror cr0*4+eq,cr1*4+eq,cr0*4+eq
beq- cr0,L(badargs)
@@ -679,9 +684,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
#ifdef RESET_PID
cfi_restore(r29)
#endif
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S
@@ -46,8 +46,13 @@
# endif
#endif
@@ -731,9 +735,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S
mtlr r4
mtcr r0
addi r1,r1,FRAMESIZE
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym 2014-05-29 14:09:56.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym 2014-05-29 14:10:00.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym
@@ -8,27 +8,6 @@
SIG_SETMASK
diff --git a/packages/glibc/2.17/0064-glibc-ppc64le-42.patch b/packages/glibc/2.17/0064-glibc-ppc64le-42.patch
index f5fa53e..3d3150a 100644
--- a/packages/glibc/2.17/0064-glibc-ppc64le-42.patch
+++ b/packages/glibc/2.17/0064-glibc-ppc64le-42.patch
@@ -26,9 +26,16 @@
# were stored in the wrong place, and it removes the unnecessary
# save/restore of CR.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/bits/link.h glibc-2.17-c758a686/sysdeps/powerpc/bits/link.h
---- glibc-2.17-c758a686/sysdeps/powerpc/bits/link.h 2014-05-29 14:11:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/bits/link.h 2014-05-29 14:11:20.000000000 -0500
+---
+# sysdeps/powerpc/bits/link.h | 46 ++++++++++
+# sysdeps/powerpc/ldsodefs.h | 18 +++-
+# sysdeps/powerpc/powerpc64/dl-machine.h | 5 +
+# sysdeps/powerpc/powerpc64/dl-trampoline.S | 131 ++++++++++++++++++++----------
+# sysdeps/powerpc/powerpc64/tst-audit.h | 8 +
+# 5 files changed, 163 insertions(+), 45 deletions(-)
+#
+--- a/sysdeps/powerpc/bits/link.h
++++ b/sysdeps/powerpc/bits/link.h
@@ -63,7 +63,7 @@
__END_DECLS
@@ -87,9 +94,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/bits/link.h glibc-2.17-c758a686/sy
+__END_DECLS
+
#endif
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/ldsodefs.h glibc-2.17-c758a686/sysdeps/powerpc/ldsodefs.h
---- glibc-2.17-c758a686/sysdeps/powerpc/ldsodefs.h 2014-05-29 14:11:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/ldsodefs.h 2014-05-29 14:11:20.000000000 -0500
+--- a/sysdeps/powerpc/ldsodefs.h
++++ b/sysdeps/powerpc/ldsodefs.h
@@ -25,6 +25,8 @@
struct La_ppc32_retval;
struct La_ppc64_regs;
@@ -129,9 +135,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/ldsodefs.h glibc-2.17-c758a686/sys
#include_next <ldsodefs.h>
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 14:11:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h 2014-05-29 14:11:20.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-machine.h
++++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -546,8 +546,13 @@
@@ -146,9 +151,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-machine.h glibc-2.17-
#endif /* dl_machine_h */
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 14:11:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S 2014-05-29 14:11:20.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/dl-trampoline.S
++++ b/sysdeps/powerpc/powerpc64/dl-trampoline.S
@@ -50,11 +50,8 @@
/* Store the LR in the LR Save area. */
std r0,FRAME_SIZE+FRAME_LR_SAVE(r1)
@@ -382,9 +386,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/dl-trampoline.S glibc-2.
mtlr r0
ld r1,0(r1)
blr
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/tst-audit.h glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/tst-audit.h
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/tst-audit.h 2014-05-29 14:11:12.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/tst-audit.h 2014-05-29 14:11:20.000000000 -0500
+--- a/sysdeps/powerpc/powerpc64/tst-audit.h
++++ b/sysdeps/powerpc/powerpc64/tst-audit.h
@@ -18,8 +18,16 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
diff --git a/packages/glibc/2.17/0065-glibc-ppc64le-43.patch b/packages/glibc/2.17/0065-glibc-ppc64le-43.patch
index 8c43abb..ab73b1c 100644
--- a/packages/glibc/2.17/0065-glibc-ppc64le-43.patch
+++ b/packages/glibc/2.17/0065-glibc-ppc64le-43.patch
@@ -18,9 +18,16 @@
# check in sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac,
# replacing the hard-coded value of default-abi in the Makefile.
#
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Makefile glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Makefile
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Makefile 2014-05-29 14:12:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Makefile 2014-05-29 14:12:30.000000000 -0500
+---
+# sysdeps/unix/sysv/linux/powerpc/Makefile | 11 -
+# sysdeps/unix/sysv/linux/powerpc/ldconfig.h | 3
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile | 2
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/configure | 166 +++++++++++++++++
+# sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac | 15 +
+# 5 files changed, 190 insertions(+), 7 deletions(-)
+#
+--- a/sysdeps/unix/sysv/linux/powerpc/Makefile
++++ b/sysdeps/unix/sysv/linux/powerpc/Makefile
@@ -1,9 +1,12 @@
-abi-variants := 32 64
+abi-variants := 32 64-v1 64-v2
@@ -38,9 +45,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/Makefile glibc-2.1
ifeq ($(subdir),rt)
librt-routines += rt-sysdep
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/ldconfig.h glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/ldconfig.h
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/ldconfig.h 2014-05-29 14:12:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/ldconfig.h 2014-05-29 14:12:30.000000000 -0500
+--- a/sysdeps/unix/sysv/linux/powerpc/ldconfig.h
++++ b/sysdeps/unix/sysv/linux/powerpc/ldconfig.h
@@ -20,7 +20,8 @@
#define SYSDEP_KNOWN_INTERPRETER_NAMES \
@@ -51,15 +57,13 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/ldconfig.h glibc-2
#define SYSDEP_KNOWN_LIBRARY_NAMES \
{ "libc.so.6", FLAG_ELF_LIBC6 }, \
{ "libm.so.6", FLAG_ELF_LIBC6 },
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile 2014-05-29 14:12:25.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile 1969-12-31 18:00:00.000000000 -0600
+--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile
++++ /dev/null
@@ -1,2 +0,0 @@
-# See Makeconfig regarding the use of default-abi.
-default-abi := 64
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure 1969-12-31 18:00:00.000000000 -0600
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure 2014-05-29 14:12:30.000000000 -0500
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
@@ -0,0 +1,166 @@
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/powerpc/powerpc64/.
@@ -227,9 +231,8 @@ diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configur
+ config_vars="$config_vars
+default-abi = 64-v1"
+fi
-diff -urN glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
---- glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac 1969-12-31 18:00:00.000000000 -0600
-+++ glibc-2.17-c758a686/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac 2014-05-29 14:12:30.000000000 -0500
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
@@ -0,0 +1,15 @@
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/powerpc/powerpc64/.
diff --git a/packages/glibc/2.17/0066-glibc-ppc64le-44.patch b/packages/glibc/2.17/0066-glibc-ppc64le-44.patch
index e074cb9..8ae0f5d 100644
--- a/packages/glibc/2.17/0066-glibc-ppc64le-44.patch
+++ b/packages/glibc/2.17/0066-glibc-ppc64le-44.patch
@@ -7,9 +7,12 @@
# [BZ #16786]
# * sysdeps/powerpc/powerpc64/fpu/s_copysign.S: Don't trash stack.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_copysign.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_copysign.S
---- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_copysign.S 2014-05-29 14:13:47.000000000 -0500
-+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/fpu/s_copysign.S 2014-05-29 14:13:50.000000000 -0500
+---
+# sysdeps/powerpc/powerpc64/fpu/s_copysign.S | 4 ++--
+# 1 file changed, 2 insertions(+), 2 deletions(-)
+#
+--- a/sysdeps/powerpc/powerpc64/fpu/s_copysign.S
++++ b/sysdeps/powerpc/powerpc64/fpu/s_copysign.S
@@ -27,11 +27,11 @@
/* double [f1] copysign (double [f1] x, double [f2] y);
copysign(x,y) returns a value with the magnitude of x and
diff --git a/packages/glibc/2.17/0067-glibc-ppc64le-45.patch b/packages/glibc/2.17/0067-glibc-ppc64le-45.patch
index 9030fc2..f68f0cb 100644
--- a/packages/glibc/2.17/0067-glibc-ppc64le-45.patch
+++ b/packages/glibc/2.17/0067-glibc-ppc64le-45.patch
@@ -12,9 +12,12 @@
#
# The ABI testing for libpthread.so now passes for ppc64le.
#
-diff -urN glibc-2.17-c758a686/Versions.def glibc-2.17-c758a686/Versions.def
---- glibc-2.17-c758a686/Versions.def 2014-06-02 21:13:12.000000000 +0000
-+++ glibc-2.17-c758a686/Versions.def 2014-06-02 21:14:38.000000000 +0000
+---
+# Versions.def | 2 ++
+# 1 file changed, 2 insertions(+)
+#
+--- a/Versions.def
++++ b/Versions.def
@@ -92,6 +92,7 @@
GLIBC_2.2
GLIBC_2.2.3
diff --git a/packages/glibc/2.17/0068-glibc-ppc64le-46.patch b/packages/glibc/2.17/0068-glibc-ppc64le-46.patch
index 6f3d1d9..8c65c5c 100644
--- a/packages/glibc/2.17/0068-glibc-ppc64le-46.patch
+++ b/packages/glibc/2.17/0068-glibc-ppc64le-46.patch
@@ -7,9 +7,12 @@
# ppc64le patch that touches the same ULPs file. See glibc-power-libm-test-ulps.patch
# for the ppc64/ppc version.
#
-diff -urN glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps
---- glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps 2014-07-25 22:07:06.280020855 -0400
-+++ glibc-2.17-c758a686/sysdeps/powerpc/fpu/libm-test-ulps 2014-07-25 22:26:54.650021033 -0400
+---
+# sysdeps/powerpc/fpu/libm-test-ulps | 3 +++
+# 1 file changed, 3 insertions(+)
+#
+--- a/sysdeps/powerpc/fpu/libm-test-ulps
++++ b/sysdeps/powerpc/fpu/libm-test-ulps
@@ -2644,6 +2644,9 @@
Test "tan_towardzero (2)":
ildouble: 1
diff --git a/packages/glibc/2.17/0069-uses-power6-mtfsf-when-not-supported.patch b/packages/glibc/2.17/0069-uses-power6-mtfsf-when-not-supported.patch
index 8864739..d99da10 100644
--- a/packages/glibc/2.17/0069-uses-power6-mtfsf-when-not-supported.patch
+++ b/packages/glibc/2.17/0069-uses-power6-mtfsf-when-not-supported.patch
@@ -6,11 +6,14 @@
* sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
(__novec_swapcontext): Likewise.
-diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
-index e47a57a..a1ed419 100644
+---
+ sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S | 18 ++++++++++------
+ sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S | 18 ++++++++++++----
+ 2 files changed, 26 insertions(+), 10 deletions(-)
+
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
-@@ -79,12 +79,13 @@ ENTRY(__novec_setcontext)
+@@ -80,12 +80,13 @@
lfd fp31,(SIGCONTEXT_FP_REGS+(PT_R31*8))(r31)
lfd fp30,(SIGCONTEXT_FP_REGS+(PT_R30*8))(r31)
@@ -26,7 +29,7 @@ index e47a57a..a1ed419 100644
/* Availability of DFP indicates a 64-bit FPSCR. */
andi. r6,r5,PPC_FEATURE_HAS_DFP
beq 5f
-@@ -95,8 +96,10 @@ ENTRY(__novec_setcontext)
+@@ -96,8 +97,10 @@
5:
mtfsf 0xff,fp0
6:
@@ -38,7 +41,7 @@ index e47a57a..a1ed419 100644
lfd fp29,(SIGCONTEXT_FP_REGS+(PT_R29*8))(r31)
lfd fp28,(SIGCONTEXT_FP_REGS+(PT_R28*8))(r31)
lfd fp27,(SIGCONTEXT_FP_REGS+(PT_R27*8))(r31)
-@@ -362,12 +365,13 @@ L(has_no_vec):
+@@ -363,12 +366,13 @@
lfd fp31,(SIGCONTEXT_FP_REGS+(PT_R31*8))(r31)
lfd fp30,(SIGCONTEXT_FP_REGS+(PT_R30*8))(r31)
@@ -54,7 +57,7 @@ index e47a57a..a1ed419 100644
/* Availability of DFP indicates a 64-bit FPSCR. */
andi. r6,r5,PPC_FEATURE_HAS_DFP
beq 7f
-@@ -378,8 +382,10 @@ L(has_no_vec):
+@@ -379,8 +383,10 @@
7:
mtfsf 0xff,fp0
8:
@@ -66,11 +69,9 @@ index e47a57a..a1ed419 100644
lfd fp29,(SIGCONTEXT_FP_REGS+(PT_R29*8))(r31)
lfd fp28,(SIGCONTEXT_FP_REGS+(PT_R28*8))(r31)
lfd fp27,(SIGCONTEXT_FP_REGS+(PT_R27*8))(r31)
-diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
-index bc02a21..b25904d 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
-@@ -173,6 +173,10 @@ ENTRY(__novec_swapcontext)
+@@ -174,6 +174,10 @@
lfd fp0,(SIGCONTEXT_FP_REGS+(32*8))(r31)
lfd fp31,(SIGCONTEXT_FP_REGS+(PT_R31*8))(r31)
lfd fp30,(SIGCONTEXT_FP_REGS+(PT_R30*8))(r31)
@@ -81,7 +82,7 @@ index bc02a21..b25904d 100644
# ifdef _ARCH_PWR6
/* Use the extended four-operand version of the mtfsf insn. */
mtfsf 0xff,fp0,1,0
-@@ -189,8 +193,10 @@ ENTRY(__novec_swapcontext)
+@@ -190,8 +194,10 @@
5:
mtfsf 0xff,fp0
6:
@@ -93,7 +94,7 @@ index bc02a21..b25904d 100644
lfd fp29,(SIGCONTEXT_FP_REGS+(PT_R29*8))(r31)
lfd fp28,(SIGCONTEXT_FP_REGS+(PT_R28*8))(r31)
lfd fp27,(SIGCONTEXT_FP_REGS+(PT_R27*8))(r31)
-@@ -652,12 +658,14 @@ L(has_no_vec2):
+@@ -653,12 +659,14 @@
lfd fp0,(SIGCONTEXT_FP_REGS+(32*8))(r31)
lfd fp31,(SIGCONTEXT_FP_REGS+(PT_R31*8))(r31)
lfd fp30,(SIGCONTEXT_FP_REGS+(PT_R30*8))(r31)
@@ -110,7 +111,7 @@ index bc02a21..b25904d 100644
/* Availability of DFP indicates a 64-bit FPSCR. */
andi. r6,r8,PPC_FEATURE_HAS_DFP
beq 7f
-@@ -668,8 +676,10 @@ L(has_no_vec2):
+@@ -669,8 +677,10 @@
7:
mtfsf 0xff,fp0
8: