summaryrefslogtreecommitdiff
path: root/packages/glibc
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2022-02-11 02:00:59 (GMT)
committerAlexey Neyman <stilor@att.net>2022-02-11 08:47:51 (GMT)
commit86c2982568de1ad4d4cc12a65b19231331484405 (patch)
tree2e0b3fb78c30877c0c152d59d0e0fff817b73822 /packages/glibc
parent1210b0c2f45e32ef0867ca00e16b6aadb6a81bf9 (diff)
Run patches thru `manage-packages -P`
This refreshes the line numbers, removes any fuzz (which would make any future forward ports easier) and standardizes the patch/file headers (which makes them easier to read). Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'packages/glibc')
-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
-rw-r--r--packages/glibc/2.19/0017-Fix-cmpli-usage-in-power6-memset.patch10
-rw-r--r--packages/glibc/2.19/0018-fix-GCC-10-detection.patch (renamed from packages/glibc/2.19/0017-fix-GCC-10-detection.patch)9
-rw-r--r--packages/glibc/2.23/0013-Fix-cmpli-usage-in-power6-memset.patch10
-rw-r--r--packages/glibc/2.24/0013-fix-cmpli-usage-in-power6-memset.patch12
-rw-r--r--packages/glibc/2.27/0001-Fix-build-with-GCC-10-when-long-double-double.patch9
-rw-r--r--packages/glibc/2.28/0001-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch18
-rw-r--r--packages/glibc/2.28/0002-Fix-build-with-GCC-10-when-long-double-double.patch9
-rw-r--r--packages/glibc/2.29/0001-Add-ARC-architecture.patch423
-rw-r--r--packages/glibc/2.29/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch18
-rw-r--r--packages/glibc/2.29/0003-Fix-build-with-GCC-10-when-long-double-double.patch9
-rw-r--r--packages/glibc/2.30/0001-Add-ARC-architecture.patch434
-rw-r--r--packages/glibc/2.30/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch18
-rw-r--r--packages/glibc/2.30/0003-Fix-build-with-GCC-10-when-long-double-double.patch9
-rw-r--r--packages/glibc/2.31/0001-Add-ARC-architecture.patch533
-rw-r--r--packages/glibc/2.31/0002-Fix-build-with-GCC-10-when-long-double-double.patch9
-rw-r--r--packages/glibc/2.32/0000-typedef-caddr.patch2
-rw-r--r--packages/glibc/2.32/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch7
-rw-r--r--packages/glibc/2.32/0002-Add-ARC700-support.patch23
-rw-r--r--packages/glibc/2.33/0000-typedef-caddr.patch2
-rw-r--r--packages/glibc/2.33/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch2
-rw-r--r--packages/glibc/2.33/0002-Add-ARC700-support.patch23
-rw-r--r--packages/glibc/2.34/0000-typedef-caddr.patch2
-rw-r--r--packages/glibc/2.34/0001-Add-ARC700-support.patch23
-rw-r--r--packages/glibc/2.35/0000-typedef-caddr.patch2
-rw-r--r--packages/glibc/2.35/0001-Add-ARC700-support.patch23
-rw-r--r--packages/glibc/2.35/0002-linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch7
78 files changed, 1452 insertions, 2131 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:
diff --git a/packages/glibc/2.19/0017-Fix-cmpli-usage-in-power6-memset.patch b/packages/glibc/2.19/0017-Fix-cmpli-usage-in-power6-memset.patch
index 5213378..a660266 100644
--- a/packages/glibc/2.19/0017-Fix-cmpli-usage-in-power6-memset.patch
+++ b/packages/glibc/2.19/0017-Fix-cmpli-usage-in-power6-memset.patch
@@ -24,9 +24,14 @@ the powerpc32 change.
sysdeps/powerpc/powerpc32/power6/memset.S (memset): Use cmplwi instead of cmpli.
sysdeps/powerpc/powerpc64/power6/memset.S (memset): Use cmpldi instead of cmpli.
+---
+ sysdeps/powerpc/powerpc32/power6/memset.S | 2 +-
+ sysdeps/powerpc/powerpc64/power6/memset.S | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
--- a/sysdeps/powerpc/powerpc32/power6/memset.S
+++ b/sysdeps/powerpc/powerpc32/power6/memset.S
-@@ -394,7 +394,7 @@ L(cacheAlignedx):
+@@ -394,7 +394,7 @@
/* A simple loop for the longer (>640 bytes) lengths. This form limits
the branch miss-predicted to exactly 1 at loop exit.*/
L(cacheAligned512):
@@ -35,10 +40,9 @@ the powerpc32 change.
blt cr1,L(cacheAligned1)
dcbz 0,rMEMP
addi rLEN,rLEN,-128
-
--- a/sysdeps/powerpc/powerpc64/power6/memset.S
+++ b/sysdeps/powerpc/powerpc64/power6/memset.S
-@@ -251,7 +251,7 @@ L(cacheAlignedx):
+@@ -251,7 +251,7 @@
/* A simple loop for the longer (>640 bytes) lengths. This form limits
the branch miss-predicted to exactly 1 at loop exit.*/
L(cacheAligned512):
diff --git a/packages/glibc/2.19/0017-fix-GCC-10-detection.patch b/packages/glibc/2.19/0018-fix-GCC-10-detection.patch
index 1fe4ee8..d4a7796 100644
--- a/packages/glibc/2.19/0017-fix-GCC-10-detection.patch
+++ b/packages/glibc/2.19/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 fc023d0c70..b201f71b4b 100755
--- a/configure
+++ b/configure
-@@ -4710,7 +4710,7 @@ $as_echo_n "checking version of $CC... " >&6; }
+@@ -4710,7 +4710,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 fc023d0c70..b201f71b4b 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.23/0013-Fix-cmpli-usage-in-power6-memset.patch b/packages/glibc/2.23/0013-Fix-cmpli-usage-in-power6-memset.patch
index 5213378..a660266 100644
--- a/packages/glibc/2.23/0013-Fix-cmpli-usage-in-power6-memset.patch
+++ b/packages/glibc/2.23/0013-Fix-cmpli-usage-in-power6-memset.patch
@@ -24,9 +24,14 @@ the powerpc32 change.
sysdeps/powerpc/powerpc32/power6/memset.S (memset): Use cmplwi instead of cmpli.
sysdeps/powerpc/powerpc64/power6/memset.S (memset): Use cmpldi instead of cmpli.
+---
+ sysdeps/powerpc/powerpc32/power6/memset.S | 2 +-
+ sysdeps/powerpc/powerpc64/power6/memset.S | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
--- a/sysdeps/powerpc/powerpc32/power6/memset.S
+++ b/sysdeps/powerpc/powerpc32/power6/memset.S
-@@ -394,7 +394,7 @@ L(cacheAlignedx):
+@@ -394,7 +394,7 @@
/* A simple loop for the longer (>640 bytes) lengths. This form limits
the branch miss-predicted to exactly 1 at loop exit.*/
L(cacheAligned512):
@@ -35,10 +40,9 @@ the powerpc32 change.
blt cr1,L(cacheAligned1)
dcbz 0,rMEMP
addi rLEN,rLEN,-128
-
--- a/sysdeps/powerpc/powerpc64/power6/memset.S
+++ b/sysdeps/powerpc/powerpc64/power6/memset.S
-@@ -251,7 +251,7 @@ L(cacheAlignedx):
+@@ -251,7 +251,7 @@
/* A simple loop for the longer (>640 bytes) lengths. This form limits
the branch miss-predicted to exactly 1 at loop exit.*/
L(cacheAligned512):
diff --git a/packages/glibc/2.24/0013-fix-cmpli-usage-in-power6-memset.patch b/packages/glibc/2.24/0013-fix-cmpli-usage-in-power6-memset.patch
index 9dc84b2..391d104 100644
--- a/packages/glibc/2.24/0013-fix-cmpli-usage-in-power6-memset.patch
+++ b/packages/glibc/2.24/0013-fix-cmpli-usage-in-power6-memset.patch
@@ -24,15 +24,13 @@ Machado Filho
* sysdeps/powerpc/powerpc64/power6/memset.S (memset): Use cmpldi
instead of cmpli.
---
- sysdeps/powerpc/powerpc32/power6/memset.S | 2 +-
- sysdeps/powerpc/powerpc64/power6/memset.S | 2 +-
+ sysdeps/powerpc/powerpc32/power6/memset.S | 2 +-
+ sysdeps/powerpc/powerpc64/power6/memset.S | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
-diff --git a/sysdeps/powerpc/powerpc32/power6/memset.S b/sysdeps/powerpc/powerpc32/power6/memset.S
-index b2a222edd22..d5dbe83af2f 100644
--- a/sysdeps/powerpc/powerpc32/power6/memset.S
+++ b/sysdeps/powerpc/powerpc32/power6/memset.S
-@@ -394,7 +394,7 @@ L(cacheAlignedx):
+@@ -394,7 +394,7 @@
/* A simple loop for the longer (>640 bytes) lengths. This form limits
the branch miss-predicted to exactly 1 at loop exit.*/
L(cacheAligned512):
@@ -41,11 +39,9 @@ index b2a222edd22..d5dbe83af2f 100644
blt cr1,L(cacheAligned1)
dcbz 0,rMEMP
addi rLEN,rLEN,-128
-diff --git a/sysdeps/powerpc/powerpc64/power6/memset.S b/sysdeps/powerpc/powerpc64/power6/memset.S
-index c2d1c4e600c..d445b1e1ef1 100644
--- a/sysdeps/powerpc/powerpc64/power6/memset.S
+++ b/sysdeps/powerpc/powerpc64/power6/memset.S
-@@ -251,7 +251,7 @@ L(cacheAlignedx):
+@@ -251,7 +251,7 @@
/* A simple loop for the longer (>640 bytes) lengths. This form limits
the branch miss-predicted to exactly 1 at loop exit.*/
L(cacheAligned512):
diff --git a/packages/glibc/2.27/0001-Fix-build-with-GCC-10-when-long-double-double.patch b/packages/glibc/2.27/0001-Fix-build-with-GCC-10-when-long-double-double.patch
index ca0d8a7..ff5fe14 100644
--- a/packages/glibc/2.27/0001-Fix-build-with-GCC-10-when-long-double-double.patch
+++ b/packages/glibc/2.27/0001-Fix-build-with-GCC-10-when-long-double-double.patch
@@ -25,14 +25,12 @@ irrelevant for other reasons).
Tested with build-many-glibcs.py for arm-linux-gnueabi (compilers and
glibcs builds), where it fixes the build that previously failed.
---
- math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 122 insertions(+)
-diff --git a/math/Makefile b/math/Makefile
-index 84a8b94c74..0a5a40430e 100644
--- a/math/Makefile
+++ b/math/Makefile
-@@ -650,6 +650,128 @@ ifneq ($(long-double-fcts),yes)
+@@ -568,6 +568,128 @@
# We won't compile the `long double' code at all. Tell the `double' code
# to define aliases for the `FUNCl' names.
math-CPPFLAGS += -DNO_LONG_DOUBLE
@@ -161,6 +159,3 @@ index 84a8b94c74..0a5a40430e 100644
endif
# These files quiet sNaNs in a way that is optimized away without
---
-2.25.1
-
diff --git a/packages/glibc/2.28/0001-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch b/packages/glibc/2.28/0001-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
index b3c82e1..faface3 100644
--- a/packages/glibc/2.28/0001-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
+++ b/packages/glibc/2.28/0001-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
@@ -10,16 +10,13 @@ references to _dl_cet_check and _dl_open_check.
(cherry picked from commit 9fb8139079ef0bb1aa33a4ae418cbb113b9b9da7)
---
- NEWS | 1 +
- configure | 23 ++++++++++++++++++++++-
- configure.ac | 9 ++++++++-
- 3 files changed, 31 insertions(+), 2 deletions(-)
+ configure | 23 ++++++++++++++++++++++-
+ configure.ac | 9 ++++++++-
+ 2 files changed, 30 insertions(+), 2 deletions(-)
-diff --git a/configure b/configure
-index fde57d63fe..c02753c0fe 100755
--- a/configure
+++ b/configure
-@@ -3762,11 +3762,32 @@ else
+@@ -3762,11 +3762,32 @@
fi
@@ -53,11 +50,9 @@ index fde57d63fe..c02753c0fe 100755
fi
-diff --git a/configure.ac b/configure.ac
-index 014e09a5d5..139554b94a 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -464,11 +464,18 @@ AC_ARG_ENABLE([mathvec],
+@@ -464,11 +464,18 @@
[build_mathvec=$enableval],
[build_mathvec=notset])
@@ -77,6 +72,3 @@ index 014e09a5d5..139554b94a 100644
# We keep the original values in `$config_*' and never modify them, so we
# can write them unchanged into config.make. Everything else uses
---
-2.20.1
-
diff --git a/packages/glibc/2.28/0002-Fix-build-with-GCC-10-when-long-double-double.patch b/packages/glibc/2.28/0002-Fix-build-with-GCC-10-when-long-double-double.patch
index ca0d8a7..6eeb460 100644
--- a/packages/glibc/2.28/0002-Fix-build-with-GCC-10-when-long-double-double.patch
+++ b/packages/glibc/2.28/0002-Fix-build-with-GCC-10-when-long-double-double.patch
@@ -25,14 +25,12 @@ irrelevant for other reasons).
Tested with build-many-glibcs.py for arm-linux-gnueabi (compilers and
glibcs builds), where it fixes the build that previously failed.
---
- math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 122 insertions(+)
-diff --git a/math/Makefile b/math/Makefile
-index 84a8b94c74..0a5a40430e 100644
--- a/math/Makefile
+++ b/math/Makefile
-@@ -650,6 +650,128 @@ ifneq ($(long-double-fcts),yes)
+@@ -664,6 +664,128 @@
# We won't compile the `long double' code at all. Tell the `double' code
# to define aliases for the `FUNCl' names.
math-CPPFLAGS += -DNO_LONG_DOUBLE
@@ -161,6 +159,3 @@ index 84a8b94c74..0a5a40430e 100644
endif
# These files quiet sNaNs in a way that is optimized away without
---
-2.25.1
-
diff --git a/packages/glibc/2.29/0001-Add-ARC-architecture.patch b/packages/glibc/2.29/0001-Add-ARC-architecture.patch
index f7441dd..8ccdb65 100644
--- a/packages/glibc/2.29/0001-Add-ARC-architecture.patch
+++ b/packages/glibc/2.29/0001-Add-ARC-architecture.patch
@@ -11,11 +11,115 @@ Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Upstream-Status: Pending
---
-diff --git a/elf/elf.h b/elf/elf.h
-index 47a514a389f..bc2184f643c 100644
+---
+ elf/elf.h | 70
+ scripts/build-many-glibcs.py | 4
+ support/Makefile | 5
+ sysdeps/arc/Implies | 4
+ sysdeps/arc/Makefile | 25
+ sysdeps/arc/Versions | 6
+ sysdeps/arc/__longjmp.S | 50
+ sysdeps/arc/abort-instr.h | 2
+ sysdeps/arc/atomic-machine.h | 73
+ sysdeps/arc/bits/endian.h | 12
+ sysdeps/arc/bits/fenv.h | 72
+ sysdeps/arc/bits/link.h | 52
+ sysdeps/arc/bits/setjmp.h | 26
+ sysdeps/arc/bsd-_setjmp.S | 1
+ sysdeps/arc/bsd-setjmp.S | 1
+ sysdeps/arc/configure | 14
+ sysdeps/arc/configure.ac | 11
+ sysdeps/arc/dl-machine.h | 340 +++
+ sysdeps/arc/dl-runtime.c | 39
+ sysdeps/arc/dl-sysdep.h | 25
+ sysdeps/arc/dl-tls.h | 30
+ sysdeps/arc/dl-trampoline.S | 80
+ sysdeps/arc/entry.h | 5
+ sysdeps/arc/gccframe.h | 21
+ sysdeps/arc/gmp-mparam.h | 23
+ sysdeps/arc/jmpbuf-offsets.h | 47
+ sysdeps/arc/jmpbuf-unwind.h | 47
+ sysdeps/arc/ldsodefs.h | 43
+ sysdeps/arc/libc-tls.c | 27
+ sysdeps/arc/machine-gmon.h | 35
+ sysdeps/arc/memusage.h | 23
+ sysdeps/arc/nofpu/Implies | 1
+ sysdeps/arc/nofpu/libm-test-ulps | 390 +++
+ sysdeps/arc/nofpu/libm-test-ulps-name | 1
+ sysdeps/arc/nofpu/math-tests-exceptions.h | 27
+ sysdeps/arc/nofpu/math-tests-rounding.h | 27
+ sysdeps/arc/nptl/Makefile | 22
+ sysdeps/arc/nptl/bits/pthreadtypes-arch.h | 71
+ sysdeps/arc/nptl/bits/semaphore.h | 32
+ sysdeps/arc/nptl/pthread-offsets.h | 4
+ sysdeps/arc/nptl/pthreaddef.h | 32
+ sysdeps/arc/nptl/tcb-offsets.sym | 11
+ sysdeps/arc/nptl/tls.h | 150 +
+ sysdeps/arc/preconfigure | 14
+ sysdeps/arc/setjmp.S | 66
+ sysdeps/arc/sfp-machine.h | 73
+ sysdeps/arc/sotruss-lib.c | 51
+ sysdeps/arc/stackinfo.h | 33
+ sysdeps/arc/start.S | 89
+ sysdeps/arc/sysdep.h | 48
+ sysdeps/arc/tls-macros.h | 47
+ sysdeps/arc/tst-audit.h | 23
+ sysdeps/unix/make-syscalls.sh | 2
+ sysdeps/unix/sysv/linux/arc/Implies | 3
+ sysdeps/unix/sysv/linux/arc/Makefile | 20
+ sysdeps/unix/sysv/linux/arc/Versions | 16
+ sysdeps/unix/sysv/linux/arc/bits/procfs.h | 35
+ sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h | 12
+ sysdeps/unix/sysv/linux/arc/c++-types.data | 67
+ sysdeps/unix/sysv/linux/arc/clone.S | 98
+ sysdeps/unix/sysv/linux/arc/configure | 4
+ sysdeps/unix/sysv/linux/arc/configure.ac | 4
+ sysdeps/unix/sysv/linux/arc/dl-static.c | 84
+ sysdeps/unix/sysv/linux/arc/getcontext.S | 63
+ sysdeps/unix/sysv/linux/arc/ipc_priv.h | 21
+ sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h | 6
+ sysdeps/unix/sysv/linux/arc/kernel-features.h | 28
+ sysdeps/unix/sysv/linux/arc/ld.abilist | 9
+ sysdeps/unix/sysv/linux/arc/ldsodefs.h | 32
+ sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist | 1
+ sysdeps/unix/sysv/linux/arc/libanl.abilist | 4
+ sysdeps/unix/sysv/linux/arc/libc.abilist | 2089 ++++++++++++++++++++
+ sysdeps/unix/sysv/linux/arc/libcrypt.abilist | 2
+ sysdeps/unix/sysv/linux/arc/libdl.abilist | 9
+ sysdeps/unix/sysv/linux/arc/libm.abilist | 753 +++++++
+ sysdeps/unix/sysv/linux/arc/libpthread.abilist | 235 ++
+ sysdeps/unix/sysv/linux/arc/libresolv.abilist | 79
+ sysdeps/unix/sysv/linux/arc/librt.abilist | 35
+ sysdeps/unix/sysv/linux/arc/libthread_db.abilist | 40
+ sysdeps/unix/sysv/linux/arc/libutil.abilist | 6
+ sysdeps/unix/sysv/linux/arc/localplt.data | 16
+ sysdeps/unix/sysv/linux/arc/makecontext.c | 75
+ sysdeps/unix/sysv/linux/arc/mmap_internal.h | 27
+ sysdeps/unix/sysv/linux/arc/profil-counter.h | 2
+ sysdeps/unix/sysv/linux/arc/pt-vfork.S | 1
+ sysdeps/unix/sysv/linux/arc/setcontext.S | 92
+ sysdeps/unix/sysv/linux/arc/shlib-versions | 2
+ sysdeps/unix/sysv/linux/arc/sigaction.c | 31
+ sysdeps/unix/sysv/linux/arc/sigcontextinfo.h | 23
+ sysdeps/unix/sysv/linux/arc/sigrestorer.S | 29
+ sysdeps/unix/sysv/linux/arc/swapcontext.S | 92
+ sysdeps/unix/sysv/linux/arc/sys/cachectl.h | 36
+ sysdeps/unix/sysv/linux/arc/sys/ucontext.h | 63
+ sysdeps/unix/sysv/linux/arc/sys/user.h | 31
+ sysdeps/unix/sysv/linux/arc/syscall.S | 38
+ sysdeps/unix/sysv/linux/arc/syscalls.list | 3
+ sysdeps/unix/sysv/linux/arc/sysdep.c | 33
+ sysdeps/unix/sysv/linux/arc/sysdep.h | 251 ++
+ sysdeps/unix/sysv/linux/arc/ucontext-macros.h | 29
+ sysdeps/unix/sysv/linux/arc/ucontext_i.sym | 20
+ sysdeps/unix/sysv/linux/arc/vfork.S | 42
+ sysdeps/unix/sysv/linux/syscall-names.list | 3
+ timezone/zic.c | 2
+ 103 files changed, 7115 insertions(+), 8 deletions(-)
+
--- a/elf/elf.h
+++ b/elf/elf.h
-@@ -330,7 +330,7 @@ typedef struct
+@@ -330,7 +330,7 @@
#define EM_CLOUDSHIELD 192 /* CloudShield */
#define EM_COREA_1ST 193 /* KIPO-KAIST Core-A 1st gen. */
#define EM_COREA_2ND 194 /* KIPO-KAIST Core-A 2nd gen. */
@@ -24,7 +128,7 @@ index 47a514a389f..bc2184f643c 100644
#define EM_OPEN8 196 /* Open8 RISC */
#define EM_RL78 197 /* Renesas RL78 */
#define EM_VIDEOCORE5 198 /* Broadcom VideoCore V */
-@@ -3996,6 +3996,74 @@ enum
+@@ -3996,6 +3996,74 @@
#define R_NDS32_TLS_TPOFF 102
#define R_NDS32_TLS_DESC 119
@@ -99,11 +203,9 @@ index 47a514a389f..bc2184f643c 100644
__END_DECLS
#endif /* elf.h */
-diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
-index 025876486a3..40bf9398d48 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
-@@ -155,6 +155,9 @@ class Context(object):
+@@ -155,6 +155,9 @@
'cfg': ['--disable-multi-arch']}])
self.add_config(arch='aarch64_be',
os_name='linux-gnu')
@@ -113,7 +215,7 @@ index 025876486a3..40bf9398d48 100755
self.add_config(arch='alpha',
os_name='linux-gnu')
self.add_config(arch='arm',
-@@ -1265,6 +1268,7 @@ class Config(object):
+@@ -1265,6 +1268,7 @@
def install_linux_headers(self, cmdlist):
"""Install Linux kernel headers."""
arch_map = {'aarch64': 'arm64',
@@ -121,11 +223,9 @@ index 025876486a3..40bf9398d48 100755
'alpha': 'alpha',
'arm': 'arm',
'csky': 'csky',
-diff --git a/support/Makefile b/support/Makefile
-index 432cf2fe6cb..e2a0c0cccf4 100644
--- a/support/Makefile
+++ b/support/Makefile
-@@ -169,12 +169,7 @@ CFLAGS-support_paths.c = \
+@@ -169,12 +169,7 @@
-DINSTDIR_PATH=\"$(prefix)\" \
-DLIBDIR_PATH=\"$(libdir)\"
@@ -138,9 +238,6 @@ index 432cf2fe6cb..e2a0c0cccf4 100644
LDLIBS-test-container = $(libsupport)
-diff --git a/sysdeps/arc/Implies b/sysdeps/arc/Implies
-new file mode 100644
-index 00000000000..a0f0b00cfac
--- /dev/null
+++ b/sysdeps/arc/Implies
@@ -0,0 +1,4 @@
@@ -148,9 +245,6 @@ index 00000000000..a0f0b00cfac
+wordsize-32
+ieee754/flt-32
+ieee754/dbl-64
-diff --git a/sysdeps/arc/Makefile b/sysdeps/arc/Makefile
-new file mode 100644
-index 00000000000..8d2fbe00c5e
--- /dev/null
+++ b/sysdeps/arc/Makefile
@@ -0,0 +1,25 @@
@@ -179,9 +273,6 @@ index 00000000000..8d2fbe00c5e
+ifeq ($(subdir),debug)
+CFLAGS-backtrace.c += -funwind-tables
+endif
-diff --git a/sysdeps/arc/Versions b/sysdeps/arc/Versions
-new file mode 100644
-index 00000000000..a41ad34f953
--- /dev/null
+++ b/sysdeps/arc/Versions
@@ -0,0 +1,6 @@
@@ -191,9 +282,6 @@ index 00000000000..a41ad34f953
+ __mcount;
+ }
+}
-diff --git a/sysdeps/arc/__longjmp.S b/sysdeps/arc/__longjmp.S
-new file mode 100644
-index 00000000000..8296aa445f6
--- /dev/null
+++ b/sysdeps/arc/__longjmp.S
@@ -0,0 +1,50 @@
@@ -247,17 +335,11 @@ index 00000000000..8296aa445f6
+ mov.z r0, 1 ; can't let setjmp return 0 when it is due to longjmp
+
+END (__longjmp)
-diff --git a/sysdeps/arc/abort-instr.h b/sysdeps/arc/abort-instr.h
-new file mode 100644
-index 00000000000..49f33613c40
--- /dev/null
+++ b/sysdeps/arc/abort-instr.h
@@ -0,0 +1,2 @@
+/* FLAG 1 is privilege mode only instruction, hence will crash any program. */
+#define ABORT_INSTRUCTION asm ("flag 1")
-diff --git a/sysdeps/arc/atomic-machine.h b/sysdeps/arc/atomic-machine.h
-new file mode 100644
-index 00000000000..bdc91d0558f
--- /dev/null
+++ b/sysdeps/arc/atomic-machine.h
@@ -0,0 +1,73 @@
@@ -334,9 +416,6 @@ index 00000000000..bdc91d0558f
+#endif
+
+#endif /* _ARC_BITS_ATOMIC_H */
-diff --git a/sysdeps/arc/bits/endian.h b/sysdeps/arc/bits/endian.h
-new file mode 100644
-index 00000000000..46f41e3cffe
--- /dev/null
+++ b/sysdeps/arc/bits/endian.h
@@ -0,0 +1,12 @@
@@ -352,9 +431,6 @@ index 00000000000..46f41e3cffe
+#ifdef __BIG_ENDIAN__
+# error "Big Endian NOt supported on ARC"
+#endif
-diff --git a/sysdeps/arc/bits/fenv.h b/sysdeps/arc/bits/fenv.h
-new file mode 100644
-index 00000000000..58388fb43a3
--- /dev/null
+++ b/sysdeps/arc/bits/fenv.h
@@ -0,0 +1,72 @@
@@ -430,9 +506,6 @@ index 00000000000..58388fb43a3
+/* Default floating-point control modes. */
+# define FE_DFL_MODE ((const femode_t *) -1L)
+#endif
-diff --git a/sysdeps/arc/bits/link.h b/sysdeps/arc/bits/link.h
-new file mode 100644
-index 00000000000..c4508ab6664
--- /dev/null
+++ b/sysdeps/arc/bits/link.h
@@ -0,0 +1,52 @@
@@ -488,9 +561,6 @@ index 00000000000..c4508ab6664
+ const char *symname);
+
+__END_DECLS
-diff --git a/sysdeps/arc/bits/setjmp.h b/sysdeps/arc/bits/setjmp.h
-new file mode 100644
-index 00000000000..3cb457d097c
--- /dev/null
+++ b/sysdeps/arc/bits/setjmp.h
@@ -0,0 +1,26 @@
@@ -520,23 +590,14 @@ index 00000000000..3cb457d097c
+typedef long int __jmp_buf[32];
+
+#endif
-diff --git a/sysdeps/arc/bsd-_setjmp.S b/sysdeps/arc/bsd-_setjmp.S
-new file mode 100644
-index 00000000000..90b99cd8c3e
--- /dev/null
+++ b/sysdeps/arc/bsd-_setjmp.S
@@ -0,0 +1 @@
+/* _setjmp is in setjmp.S. */
-diff --git a/sysdeps/arc/bsd-setjmp.S b/sysdeps/arc/bsd-setjmp.S
-new file mode 100644
-index 00000000000..d3b823c118b
--- /dev/null
+++ b/sysdeps/arc/bsd-setjmp.S
@@ -0,0 +1 @@
+/* setjmp is in setjmp.S. */
-diff --git a/sysdeps/arc/configure b/sysdeps/arc/configure
-new file mode 100644
-index 00000000000..52e286da2eb
--- /dev/null
+++ b/sysdeps/arc/configure
@@ -0,0 +1,14 @@
@@ -554,9 +615,6 @@ index 00000000000..52e286da2eb
+cat >>confdefs.h <<_ACEOF
+#define ASM_LINE_SEP $libc_cv_asm_line_sep
+_ACEOF
-diff --git a/sysdeps/arc/configure.ac b/sysdeps/arc/configure.ac
-new file mode 100644
-index 00000000000..1074d312f03
--- /dev/null
+++ b/sysdeps/arc/configure.ac
@@ -0,0 +1,11 @@
@@ -571,9 +629,6 @@ index 00000000000..1074d312f03
+# canonical newline as there's lots of code out there which will break
+libc_cv_asm_line_sep='`'
+AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
-diff --git a/sysdeps/arc/dl-machine.h b/sysdeps/arc/dl-machine.h
-new file mode 100644
-index 00000000000..c81acb9d4fd
--- /dev/null
+++ b/sysdeps/arc/dl-machine.h
@@ -0,0 +1,340 @@
@@ -917,9 +972,6 @@ index 00000000000..c81acb9d4fd
+}
+
+#endif /* RESOLVE_MAP */
-diff --git a/sysdeps/arc/dl-runtime.c b/sysdeps/arc/dl-runtime.c
-new file mode 100644
-index 00000000000..48f4a5a7e1d
--- /dev/null
+++ b/sysdeps/arc/dl-runtime.c
@@ -0,0 +1,39 @@
@@ -962,9 +1014,6 @@ index 00000000000..48f4a5a7e1d
+#define reloc_offset reloc_index * sizeof (PLTREL)
+
+#include <elf/dl-runtime.c>
-diff --git a/sysdeps/arc/dl-sysdep.h b/sysdeps/arc/dl-sysdep.h
-new file mode 100644
-index 00000000000..ffc30b69372
--- /dev/null
+++ b/sysdeps/arc/dl-sysdep.h
@@ -0,0 +1,25 @@
@@ -993,9 +1042,6 @@ index 00000000000..ffc30b69372
+#define DL_ARGV_NOT_RELRO 1
+
+#define DL_EXTERN_PROTECTED_DATA
-diff --git a/sysdeps/arc/dl-tls.h b/sysdeps/arc/dl-tls.h
-new file mode 100644
-index 00000000000..7f0cf91e402
--- /dev/null
+++ b/sysdeps/arc/dl-tls.h
@@ -0,0 +1,30 @@
@@ -1029,9 +1075,6 @@ index 00000000000..7f0cf91e402
+
+/* Value used for dtv entries for which the allocation is delayed. */
+#define TLS_DTV_UNALLOCATED ((void *) -1l)
-diff --git a/sysdeps/arc/dl-trampoline.S b/sysdeps/arc/dl-trampoline.S
-new file mode 100644
-index 00000000000..9da75fb1fe2
--- /dev/null
+++ b/sysdeps/arc/dl-trampoline.S
@@ -0,0 +1,80 @@
@@ -1115,9 +1158,6 @@ index 00000000000..9da75fb1fe2
+ cfi_adjust_cfa_offset (-4)
+ cfi_restore (r0)
+END (_dl_runtime_resolve)
-diff --git a/sysdeps/arc/entry.h b/sysdeps/arc/entry.h
-new file mode 100644
-index 00000000000..adb01d981af
--- /dev/null
+++ b/sysdeps/arc/entry.h
@@ -0,0 +1,5 @@
@@ -1126,9 +1166,6 @@ index 00000000000..adb01d981af
+#endif
+
+#define ENTRY_POINT __start
-diff --git a/sysdeps/arc/gccframe.h b/sysdeps/arc/gccframe.h
-new file mode 100644
-index 00000000000..40487fa77b4
--- /dev/null
+++ b/sysdeps/arc/gccframe.h
@@ -0,0 +1,21 @@
@@ -1153,9 +1190,6 @@ index 00000000000..40487fa77b4
+#define FIRST_PSEUDO_REGISTER 40
+
+#include <sysdeps/generic/gccframe.h>
-diff --git a/sysdeps/arc/gmp-mparam.h b/sysdeps/arc/gmp-mparam.h
-new file mode 100644
-index 00000000000..e30695fc6b2
--- /dev/null
+++ b/sysdeps/arc/gmp-mparam.h
@@ -0,0 +1,23 @@
@@ -1182,9 +1216,6 @@ index 00000000000..e30695fc6b2
+#include <sysdeps/generic/gmp-mparam.h>
+
+#define IEEE_DOUBLE_BIG_ENDIAN 0
-diff --git a/sysdeps/arc/jmpbuf-offsets.h b/sysdeps/arc/jmpbuf-offsets.h
-new file mode 100644
-index 00000000000..9760f3a3891
--- /dev/null
+++ b/sysdeps/arc/jmpbuf-offsets.h
@@ -0,0 +1,47 @@
@@ -1235,9 +1266,6 @@ index 00000000000..9760f3a3891
+
+/* Helper for generic ____longjmp_chk(). */
+#define JB_FRAME_ADDRESS(buf) ((void *) (unsigned long int) (buf[JB_SP]))
-diff --git a/sysdeps/arc/jmpbuf-unwind.h b/sysdeps/arc/jmpbuf-unwind.h
-new file mode 100644
-index 00000000000..47be5758c75
--- /dev/null
+++ b/sysdeps/arc/jmpbuf-unwind.h
@@ -0,0 +1,47 @@
@@ -1288,9 +1316,6 @@ index 00000000000..47be5758c75
+
+/* We use the normal longjmp for unwinding. */
+#define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val)
-diff --git a/sysdeps/arc/ldsodefs.h b/sysdeps/arc/ldsodefs.h
-new file mode 100644
-index 00000000000..53ef4e1e83d
--- /dev/null
+++ b/sysdeps/arc/ldsodefs.h
@@ -0,0 +1,43 @@
@@ -1337,9 +1362,6 @@ index 00000000000..53ef4e1e83d
+#include_next <ldsodefs.h>
+
+#endif
-diff --git a/sysdeps/arc/libc-tls.c b/sysdeps/arc/libc-tls.c
-new file mode 100644
-index 00000000000..903a75a41b5
--- /dev/null
+++ b/sysdeps/arc/libc-tls.c
@@ -0,0 +1,27 @@
@@ -1370,9 +1392,6 @@ index 00000000000..903a75a41b5
+ dtv_t *dtv = THREAD_DTV ();
+ return (char *) dtv[1].pointer.val + ti->ti_offset;
+}
-diff --git a/sysdeps/arc/machine-gmon.h b/sysdeps/arc/machine-gmon.h
-new file mode 100644
-index 00000000000..1d9e8108d9b
--- /dev/null
+++ b/sysdeps/arc/machine-gmon.h
@@ -0,0 +1,35 @@
@@ -1411,9 +1430,6 @@ index 00000000000..1d9e8108d9b
+ __mcount_internal ((unsigned long int) frompc, \
+ (unsigned long int) __builtin_return_address(0)); \
+}
-diff --git a/sysdeps/arc/memusage.h b/sysdeps/arc/memusage.h
-new file mode 100644
-index 00000000000..29f234f5bac
--- /dev/null
+++ b/sysdeps/arc/memusage.h
@@ -0,0 +1,23 @@
@@ -1440,16 +1456,10 @@ index 00000000000..29f234f5bac
+#define uatomic32_t unsigned int
+
+#include <sysdeps/generic/memusage.h>
-diff --git a/sysdeps/arc/nofpu/Implies b/sysdeps/arc/nofpu/Implies
-new file mode 100644
-index 00000000000..abcbadb25f2
--- /dev/null
+++ b/sysdeps/arc/nofpu/Implies
@@ -0,0 +1 @@
+ieee754/soft-fp
-diff --git a/sysdeps/arc/nofpu/libm-test-ulps b/sysdeps/arc/nofpu/libm-test-ulps
-new file mode 100644
-index 00000000000..0e8ef313fa9
--- /dev/null
+++ b/sysdeps/arc/nofpu/libm-test-ulps
@@ -0,0 +1,390 @@
@@ -1843,16 +1853,10 @@ index 00000000000..0e8ef313fa9
+ifloat: 3
+
+# end of automatic generation
-diff --git a/sysdeps/arc/nofpu/libm-test-ulps-name b/sysdeps/arc/nofpu/libm-test-ulps-name
-new file mode 100644
-index 00000000000..8c4fba4f9ae
--- /dev/null
+++ b/sysdeps/arc/nofpu/libm-test-ulps-name
@@ -0,0 +1 @@
+ARC
-diff --git a/sysdeps/arc/nofpu/math-tests-exceptions.h b/sysdeps/arc/nofpu/math-tests-exceptions.h
-new file mode 100644
-index 00000000000..f5c0b73589e
--- /dev/null
+++ b/sysdeps/arc/nofpu/math-tests-exceptions.h
@@ -0,0 +1,27 @@
@@ -1883,9 +1887,6 @@ index 00000000000..f5c0b73589e
+#define EXCEPTION_TESTS_long_double 0
+
+#endif
-diff --git a/sysdeps/arc/nofpu/math-tests-rounding.h b/sysdeps/arc/nofpu/math-tests-rounding.h
-new file mode 100644
-index 00000000000..e8f76338b1e
--- /dev/null
+++ b/sysdeps/arc/nofpu/math-tests-rounding.h
@@ -0,0 +1,27 @@
@@ -1916,9 +1917,6 @@ index 00000000000..e8f76338b1e
+#define ROUNDING_TESTS_long_double(MODE) ((MODE) == FE_TONEAREST)
+
+#endif
-diff --git a/sysdeps/arc/nptl/Makefile b/sysdeps/arc/nptl/Makefile
-new file mode 100644
-index 00000000000..3c33c9cc112
--- /dev/null
+++ b/sysdeps/arc/nptl/Makefile
@@ -0,0 +1,22 @@
@@ -1944,9 +1942,6 @@ index 00000000000..3c33c9cc112
+ifeq ($(subdir),csu)
+gen-as-const-headers += tcb-offsets.sym
+endif
-diff --git a/sysdeps/arc/nptl/bits/pthreadtypes-arch.h b/sysdeps/arc/nptl/bits/pthreadtypes-arch.h
-new file mode 100644
-index 00000000000..eae884f61cf
--- /dev/null
+++ b/sysdeps/arc/nptl/bits/pthreadtypes-arch.h
@@ -0,0 +1,71 @@
@@ -2021,9 +2016,6 @@ index 00000000000..eae884f61cf
+#define __PTHREAD_RWLOCK_ELISION_EXTRA 0
+
+#endif /* bits/pthreadtypes-arch.h */
-diff --git a/sysdeps/arc/nptl/bits/semaphore.h b/sysdeps/arc/nptl/bits/semaphore.h
-new file mode 100644
-index 00000000000..662d08401d0
--- /dev/null
+++ b/sysdeps/arc/nptl/bits/semaphore.h
@@ -0,0 +1,32 @@
@@ -2059,9 +2051,6 @@ index 00000000000..662d08401d0
+ char __size[__SIZEOF_SEM_T];
+ long int __align;
+} sem_t;
-diff --git a/sysdeps/arc/nptl/pthread-offsets.h b/sysdeps/arc/nptl/pthread-offsets.h
-new file mode 100644
-index 00000000000..c363e8cda8d
--- /dev/null
+++ b/sysdeps/arc/nptl/pthread-offsets.h
@@ -0,0 +1,4 @@
@@ -2069,9 +2058,6 @@ index 00000000000..c363e8cda8d
+#define __PTHREAD_MUTEX_KIND_OFFSET 16
+#define __PTHREAD_MUTEX_SPINS_OFFSET 20
+#define __PTHREAD_MUTEX_LIST_OFFSET 24
-diff --git a/sysdeps/arc/nptl/pthreaddef.h b/sysdeps/arc/nptl/pthreaddef.h
-new file mode 100644
-index 00000000000..80a109bbd52
--- /dev/null
+++ b/sysdeps/arc/nptl/pthreaddef.h
@@ -0,0 +1,32 @@
@@ -2107,9 +2093,6 @@ index 00000000000..80a109bbd52
+
+/* Location of current stack frame. */
+#define CURRENT_STACK_FRAME __builtin_frame_address (0)
-diff --git a/sysdeps/arc/nptl/tcb-offsets.sym b/sysdeps/arc/nptl/tcb-offsets.sym
-new file mode 100644
-index 00000000000..56950e0676e
--- /dev/null
+++ b/sysdeps/arc/nptl/tcb-offsets.sym
@@ -0,0 +1,11 @@
@@ -2124,9 +2107,6 @@ index 00000000000..56950e0676e
+TLS_TCB_SIZE sizeof(tcbhead_t)
+
+PTHREAD_TID offsetof(struct pthread, tid)
-diff --git a/sysdeps/arc/nptl/tls.h b/sysdeps/arc/nptl/tls.h
-new file mode 100644
-index 00000000000..2c90109d570
--- /dev/null
+++ b/sysdeps/arc/nptl/tls.h
@@ -0,0 +1,150 @@
@@ -2280,9 +2260,6 @@ index 00000000000..2c90109d570
+#endif /* __ASSEMBLER__ */
+
+#endif /* tls.h */
-diff --git a/sysdeps/arc/preconfigure b/sysdeps/arc/preconfigure
-new file mode 100644
-index 00000000000..1152a179c4a
--- /dev/null
+++ b/sysdeps/arc/preconfigure
@@ -0,0 +1,14 @@
@@ -2300,9 +2277,6 @@ index 00000000000..1152a179c4a
+ fi
+ ;;
+esac
-diff --git a/sysdeps/arc/setjmp.S b/sysdeps/arc/setjmp.S
-new file mode 100644
-index 00000000000..518545a99e8
--- /dev/null
+++ b/sysdeps/arc/setjmp.S
@@ -0,0 +1,66 @@
@@ -2372,9 +2346,6 @@ index 00000000000..518545a99e8
+END (__sigsetjmp)
+
+libc_hidden_def (__sigsetjmp)
-diff --git a/sysdeps/arc/sfp-machine.h b/sysdeps/arc/sfp-machine.h
-new file mode 100644
-index 00000000000..5ceaf56a988
--- /dev/null
+++ b/sysdeps/arc/sfp-machine.h
@@ -0,0 +1,73 @@
@@ -2451,9 +2422,6 @@ index 00000000000..5ceaf56a988
+ } while (0)
+
+#define _FP_TININESS_AFTER_ROUNDING 0
-diff --git a/sysdeps/arc/sotruss-lib.c b/sysdeps/arc/sotruss-lib.c
-new file mode 100644
-index 00000000000..ffbb5bbd6d0
--- /dev/null
+++ b/sysdeps/arc/sotruss-lib.c
@@ -0,0 +1,51 @@
@@ -2508,9 +2476,6 @@ index 00000000000..ffbb5bbd6d0
+
+ return 0;
+}
-diff --git a/sysdeps/arc/stackinfo.h b/sysdeps/arc/stackinfo.h
-new file mode 100644
-index 00000000000..fe69161382a
--- /dev/null
+++ b/sysdeps/arc/stackinfo.h
@@ -0,0 +1,33 @@
@@ -2547,9 +2512,6 @@ index 00000000000..fe69161382a
+#define DEFAULT_STACK_PERMS (PF_R|PF_W)
+
+#endif /* stackinfo.h */
-diff --git a/sysdeps/arc/start.S b/sysdeps/arc/start.S
-new file mode 100644
-index 00000000000..4ade1e871f6
--- /dev/null
+++ b/sysdeps/arc/start.S
@@ -0,0 +1,89 @@
@@ -2642,9 +2604,6 @@ index 00000000000..4ade1e871f6
+ .long 0
+ .weak data_start
+ data_start = __data_start
-diff --git a/sysdeps/arc/sysdep.h b/sysdeps/arc/sysdep.h
-new file mode 100644
-index 00000000000..127e9b01e73
--- /dev/null
+++ b/sysdeps/arc/sysdep.h
@@ -0,0 +1,48 @@
@@ -2696,9 +2655,6 @@ index 00000000000..127e9b01e73
+# define CALL_MCOUNT /* Do nothing for now. */
+
+#endif /* __ASSEMBLER__ */
-diff --git a/sysdeps/arc/tls-macros.h b/sysdeps/arc/tls-macros.h
-new file mode 100644
-index 00000000000..4d54683eda4
--- /dev/null
+++ b/sysdeps/arc/tls-macros.h
@@ -0,0 +1,47 @@
@@ -2749,9 +2705,6 @@ index 00000000000..4d54683eda4
+ "add %0, %1, %0 \n" \
+ : "=&r" (__result) : "r" (tp)); \
+ __result; })
-diff --git a/sysdeps/arc/tst-audit.h b/sysdeps/arc/tst-audit.h
-new file mode 100644
-index 00000000000..9237ad2440c
--- /dev/null
+++ b/sysdeps/arc/tst-audit.h
@@ -0,0 +1,23 @@
@@ -2778,8 +2731,6 @@ index 00000000000..9237ad2440c
+#define La_regs La_arc_regs
+#define La_retval La_arc_retval
+#define int_retval lrv_reg[0]
-diff --git a/sysdeps/unix/make-syscalls.sh b/sysdeps/unix/make-syscalls.sh
-index e39b2d6d521..6a5c10d54e8 100644
--- a/sysdeps/unix/make-syscalls.sh
+++ b/sysdeps/unix/make-syscalls.sh
@@ -7,7 +7,7 @@
@@ -2791,18 +2742,12 @@ index e39b2d6d521..6a5c10d54e8 100644
# actual wrapper.
#
# Syscall Signature Prefixes:
-diff --git a/sysdeps/unix/sysv/linux/arc/Implies b/sysdeps/unix/sysv/linux/arc/Implies
-new file mode 100644
-index 00000000000..7f739a0340b
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Implies
@@ -0,0 +1,3 @@
+arc/nptl
+unix/sysv/linux/generic/wordsize-32
+unix/sysv/linux/generic
-diff --git a/sysdeps/unix/sysv/linux/arc/Makefile b/sysdeps/unix/sysv/linux/arc/Makefile
-new file mode 100644
-index 00000000000..a6c6dfc6ec6
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Makefile
@@ -0,0 +1,20 @@
@@ -2826,9 +2771,6 @@ index 00000000000..a6c6dfc6ec6
+sysdep-dl-routines += dl-static
+endif
+endif
-diff --git a/sysdeps/unix/sysv/linux/arc/Versions b/sysdeps/unix/sysv/linux/arc/Versions
-new file mode 100644
-index 00000000000..3d12161f7fe
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Versions
@@ -0,0 +1,16 @@
@@ -2848,9 +2790,6 @@ index 00000000000..3d12161f7fe
+ __default_rt_sa_restorer;
+ }
+}
-diff --git a/sysdeps/unix/sysv/linux/arc/bits/procfs.h b/sysdeps/unix/sysv/linux/arc/bits/procfs.h
-new file mode 100644
-index 00000000000..b37deaee587
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/bits/procfs.h
@@ -0,0 +1,35 @@
@@ -2889,9 +2828,6 @@ index 00000000000..b37deaee587
+
+/* There's no seperate floating point reg file in ARCv2. */
+typedef struct { } elf_fpregset_t;
-diff --git a/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h b/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h
-new file mode 100644
-index 00000000000..795638a30bd
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h
@@ -0,0 +1,12 @@
@@ -2907,9 +2843,6 @@ index 00000000000..795638a30bd
+} __sigset_t;
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/c++-types.data b/sysdeps/unix/sysv/linux/arc/c++-types.data
-new file mode 100644
-index 00000000000..303f4570c8e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/c++-types.data
@@ -0,0 +1,67 @@
@@ -2980,9 +2913,6 @@ index 00000000000..303f4570c8e
+useconds_t:j
+ushort:t
+u_short:t
-diff --git a/sysdeps/unix/sysv/linux/arc/clone.S b/sysdeps/unix/sysv/linux/arc/clone.S
-new file mode 100644
-index 00000000000..55c2a2b60ed
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/clone.S
@@ -0,0 +1,98 @@
@@ -3084,9 +3014,6 @@ index 00000000000..55c2a2b60ed
+PSEUDO_END (__clone)
+libc_hidden_def (__clone)
+weak_alias (__clone, clone)
-diff --git a/sysdeps/unix/sysv/linux/arc/configure b/sysdeps/unix/sysv/linux/arc/configure
-new file mode 100644
-index 00000000000..f74fa7cb025
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/configure
@@ -0,0 +1,4 @@
@@ -3094,9 +3021,6 @@ index 00000000000..f74fa7cb025
+ # Local configure fragment for sysdeps/unix/sysv/linux/arc.
+
+arch_minimum_kernel=3.9.0
-diff --git a/sysdeps/unix/sysv/linux/arc/configure.ac b/sysdeps/unix/sysv/linux/arc/configure.ac
-new file mode 100644
-index 00000000000..a9528032d32
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/configure.ac
@@ -0,0 +1,4 @@
@@ -3104,9 +3028,6 @@ index 00000000000..a9528032d32
+# Local configure fragment for sysdeps/unix/sysv/linux/arc.
+
+arch_minimum_kernel=3.9.0
-diff --git a/sysdeps/unix/sysv/linux/arc/dl-static.c b/sysdeps/unix/sysv/linux/arc/dl-static.c
-new file mode 100644
-index 00000000000..1a8757c9840
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/dl-static.c
@@ -0,0 +1,84 @@
@@ -3194,9 +3115,6 @@ index 00000000000..1a8757c9840
+}
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/getcontext.S b/sysdeps/unix/sysv/linux/arc/getcontext.S
-new file mode 100644
-index 00000000000..723cc237d87
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/getcontext.S
@@ -0,0 +1,63 @@
@@ -3263,9 +3181,6 @@ index 00000000000..723cc237d87
+
+PSEUDO_END (__getcontext)
+weak_alias (__getcontext, getcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/ipc_priv.h b/sysdeps/unix/sysv/linux/arc/ipc_priv.h
-new file mode 100644
-index 00000000000..309eb3064e9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ipc_priv.h
@@ -0,0 +1,21 @@
@@ -3290,9 +3205,6 @@ index 00000000000..309eb3064e9
+#include <sys/ipc.h> /* For __key_t */
+
+#define __IPC_64 0x0
-diff --git a/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h b/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h
-new file mode 100644
-index 00000000000..6c129398483
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h
@@ -0,0 +1,6 @@
@@ -3302,9 +3214,6 @@ index 00000000000..6c129398483
+#define SIGJMP_BUF_ALIGN __alignof__ (unsigned long int)
+#define MASK_WAS_SAVED_OFFSET (32 * sizeof (unsigned long int))
+#define SAVED_MASK_OFFSET (33 * sizeof (unsigned long int))
-diff --git a/sysdeps/unix/sysv/linux/arc/kernel-features.h b/sysdeps/unix/sysv/linux/arc/kernel-features.h
-new file mode 100644
-index 00000000000..00255337bc8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/kernel-features.h
@@ -0,0 +1,28 @@
@@ -3336,9 +3245,6 @@ index 00000000000..00255337bc8
+
+#undef __ASSUME_CLONE_DEFAULT
+#define __ASSUME_CLONE_BACKWARDS 1
-diff --git a/sysdeps/unix/sysv/linux/arc/ld.abilist b/sysdeps/unix/sysv/linux/arc/ld.abilist
-new file mode 100644
-index 00000000000..71576160edd
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ld.abilist
@@ -0,0 +1,9 @@
@@ -3351,9 +3257,6 @@ index 00000000000..71576160edd
+GLIBC_2.29 free F
+GLIBC_2.29 malloc F
+GLIBC_2.29 realloc F
-diff --git a/sysdeps/unix/sysv/linux/arc/ldsodefs.h b/sysdeps/unix/sysv/linux/arc/ldsodefs.h
-new file mode 100644
-index 00000000000..8c5c6800af1
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ldsodefs.h
@@ -0,0 +1,32 @@
@@ -3389,16 +3292,10 @@ index 00000000000..8c5c6800af1
+#define DL_STATIC_INIT(map) _dl_static_init (map)
+
+#endif /* ldsodefs.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist
-new file mode 100644
-index 00000000000..96b4163a254
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist
@@ -0,0 +1 @@
+GLIBC_2.29 __ctype_get_mb_cur_max F
-diff --git a/sysdeps/unix/sysv/linux/arc/libanl.abilist b/sysdeps/unix/sysv/linux/arc/libanl.abilist
-new file mode 100644
-index 00000000000..416a6f8ddb2
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libanl.abilist
@@ -0,0 +1,4 @@
@@ -3406,9 +3303,6 @@ index 00000000000..416a6f8ddb2
+GLIBC_2.29 gai_error F
+GLIBC_2.29 gai_suspend F
+GLIBC_2.29 getaddrinfo_a F
-diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
-new file mode 100644
-index 00000000000..1e9a5dc9f09
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -0,0 +1,2089 @@
@@ -5501,17 +5395,11 @@ index 00000000000..1e9a5dc9f09
+GLIBC_2.29 xencrypt F
+GLIBC_2.29 xprt_register F
+GLIBC_2.29 xprt_unregister F
-diff --git a/sysdeps/unix/sysv/linux/arc/libcrypt.abilist b/sysdeps/unix/sysv/linux/arc/libcrypt.abilist
-new file mode 100644
-index 00000000000..da3abbf8fb8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libcrypt.abilist
@@ -0,0 +1,2 @@
+GLIBC_2.29 crypt F
+GLIBC_2.29 crypt_r F
-diff --git a/sysdeps/unix/sysv/linux/arc/libdl.abilist b/sysdeps/unix/sysv/linux/arc/libdl.abilist
-new file mode 100644
-index 00000000000..8fcb609ddcf
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libdl.abilist
@@ -0,0 +1,9 @@
@@ -5524,9 +5412,6 @@ index 00000000000..8fcb609ddcf
+GLIBC_2.29 dlopen F
+GLIBC_2.29 dlsym F
+GLIBC_2.29 dlvsym F
-diff --git a/sysdeps/unix/sysv/linux/arc/libm.abilist b/sysdeps/unix/sysv/linux/arc/libm.abilist
-new file mode 100644
-index 00000000000..497f6226447
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libm.abilist
@@ -0,0 +1,753 @@
@@ -6283,9 +6168,6 @@ index 00000000000..497f6226447
+GLIBC_2.29 ynf32x F
+GLIBC_2.29 ynf64 F
+GLIBC_2.29 ynl F
-diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
-new file mode 100644
-index 00000000000..ea4b79a518e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -0,0 +1,235 @@
@@ -6524,9 +6406,6 @@ index 00000000000..ea4b79a518e
+GLIBC_2.29 wait F
+GLIBC_2.29 waitpid F
+GLIBC_2.29 write F
-diff --git a/sysdeps/unix/sysv/linux/arc/libresolv.abilist b/sysdeps/unix/sysv/linux/arc/libresolv.abilist
-new file mode 100644
-index 00000000000..2830a7efd17
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libresolv.abilist
@@ -0,0 +1,79 @@
@@ -6609,9 +6488,6 @@ index 00000000000..2830a7efd17
+GLIBC_2.29 ns_sprintrr F
+GLIBC_2.29 ns_sprintrrf F
+GLIBC_2.29 ns_subdomain F
-diff --git a/sysdeps/unix/sysv/linux/arc/librt.abilist b/sysdeps/unix/sysv/linux/arc/librt.abilist
-new file mode 100644
-index 00000000000..c6690ef7c13
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/librt.abilist
@@ -0,0 +1,35 @@
@@ -6650,9 +6526,6 @@ index 00000000000..c6690ef7c13
+GLIBC_2.29 timer_getoverrun F
+GLIBC_2.29 timer_gettime F
+GLIBC_2.29 timer_settime F
-diff --git a/sysdeps/unix/sysv/linux/arc/libthread_db.abilist b/sysdeps/unix/sysv/linux/arc/libthread_db.abilist
-new file mode 100644
-index 00000000000..37e9bace552
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libthread_db.abilist
@@ -0,0 +1,40 @@
@@ -6696,9 +6569,6 @@ index 00000000000..37e9bace552
+GLIBC_2.29 td_thr_tlsbase F
+GLIBC_2.29 td_thr_tsd F
+GLIBC_2.29 td_thr_validate F
-diff --git a/sysdeps/unix/sysv/linux/arc/libutil.abilist b/sysdeps/unix/sysv/linux/arc/libutil.abilist
-new file mode 100644
-index 00000000000..cbd11999a4f
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libutil.abilist
@@ -0,0 +1,6 @@
@@ -6708,9 +6578,6 @@ index 00000000000..cbd11999a4f
+GLIBC_2.29 logout F
+GLIBC_2.29 logwtmp F
+GLIBC_2.29 openpty F
-diff --git a/sysdeps/unix/sysv/linux/arc/localplt.data b/sysdeps/unix/sysv/linux/arc/localplt.data
-new file mode 100644
-index 00000000000..e902fd0607a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/localplt.data
@@ -0,0 +1,16 @@
@@ -6730,9 +6597,6 @@ index 00000000000..e902fd0607a
+ld.so: _dl_catch_error
+ld.so: _dl_signal_exception
+ld.so: _dl_catch_exception
-diff --git a/sysdeps/unix/sysv/linux/arc/makecontext.c b/sysdeps/unix/sysv/linux/arc/makecontext.c
-new file mode 100644
-index 00000000000..3d46452e175
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/makecontext.c
@@ -0,0 +1,75 @@
@@ -6811,9 +6675,6 @@ index 00000000000..3d46452e175
+}
+
+weak_alias (__makecontext, makecontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/mmap_internal.h b/sysdeps/unix/sysv/linux/arc/mmap_internal.h
-new file mode 100644
-index 00000000000..3f28f352d91
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/mmap_internal.h
@@ -0,0 +1,27 @@
@@ -6844,24 +6705,15 @@ index 00000000000..3f28f352d91
+#include_next <mmap_internal.h>
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/profil-counter.h b/sysdeps/unix/sysv/linux/arc/profil-counter.h
-new file mode 100644
-index 00000000000..8a6a0bcf3d5
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/profil-counter.h
@@ -0,0 +1,2 @@
+/* We can use the ix86 version. */
+#include <sysdeps/unix/sysv/linux/i386/profil-counter.h>
-diff --git a/sysdeps/unix/sysv/linux/arc/pt-vfork.S b/sysdeps/unix/sysv/linux/arc/pt-vfork.S
-new file mode 100644
-index 00000000000..1cc89317007
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/pt-vfork.S
@@ -0,0 +1 @@
+/* Not needed. */
-diff --git a/sysdeps/unix/sysv/linux/arc/setcontext.S b/sysdeps/unix/sysv/linux/arc/setcontext.S
-new file mode 100644
-index 00000000000..8cf4ffcaf5a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/setcontext.S
@@ -0,0 +1,92 @@
@@ -6957,17 +6809,11 @@ index 00000000000..8cf4ffcaf5a
+ /* Exit with status 0. */
+ b HIDDEN_JUMPTARGET(exit)
+END (__startcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/shlib-versions b/sysdeps/unix/sysv/linux/arc/shlib-versions
-new file mode 100644
-index 00000000000..e527acd7789
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/shlib-versions
@@ -0,0 +1,2 @@
+DEFAULT GLIBC_2.29
+ld=ld-linux-arc.so.2
-diff --git a/sysdeps/unix/sysv/linux/arc/sigaction.c b/sysdeps/unix/sysv/linux/arc/sigaction.c
-new file mode 100644
-index 00000000000..db7293865f3
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigaction.c
@@ -0,0 +1,31 @@
@@ -7002,9 +6848,6 @@ index 00000000000..db7293865f3
+#define RESET_SA_RESTORER(act, kact)
+
+#include <sysdeps/unix/sysv/linux/sigaction.c>
-diff --git a/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h b/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h
-new file mode 100644
-index 00000000000..acf03c6afd9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h
@@ -0,0 +1,23 @@
@@ -7031,9 +6874,6 @@ index 00000000000..acf03c6afd9
+
+#define SIGCONTEXT int _code, struct ucontext_t *
+#define GET_PC(ctx) ((void *) (ctx)->uc_mcontext.__scratch.__ret)
-diff --git a/sysdeps/unix/sysv/linux/arc/sigrestorer.S b/sysdeps/unix/sysv/linux/arc/sigrestorer.S
-new file mode 100644
-index 00000000000..573b54e36cf
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigrestorer.S
@@ -0,0 +1,29 @@
@@ -7066,9 +6906,6 @@ index 00000000000..573b54e36cf
+ ARC_TRAP_INSN
+ j_s [blink]
+PSEUDO_END_NOERRNO (__default_rt_sa_restorer)
-diff --git a/sysdeps/unix/sysv/linux/arc/swapcontext.S b/sysdeps/unix/sysv/linux/arc/swapcontext.S
-new file mode 100644
-index 00000000000..853d3805de6
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/swapcontext.S
@@ -0,0 +1,92 @@
@@ -7164,9 +7001,6 @@ index 00000000000..853d3805de6
+
+PSEUDO_END (__swapcontext)
+weak_alias (__swapcontext, swapcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/cachectl.h b/sysdeps/unix/sysv/linux/arc/sys/cachectl.h
-new file mode 100644
-index 00000000000..2d93e49e6a9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/cachectl.h
@@ -0,0 +1,36 @@
@@ -7206,9 +7040,6 @@ index 00000000000..2d93e49e6a9
+__END_DECLS
+
+#endif /* sys/cachectl.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/ucontext.h b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
-new file mode 100644
-index 00000000000..7e357bcd65e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
@@ -0,0 +1,63 @@
@@ -7275,9 +7106,6 @@ index 00000000000..7e357bcd65e
+#undef __ctx
+
+#endif /* sys/ucontext.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/user.h b/sysdeps/unix/sysv/linux/arc/sys/user.h
-new file mode 100644
-index 00000000000..50d0dc7827a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/user.h
@@ -0,0 +1,31 @@
@@ -7312,9 +7140,6 @@ index 00000000000..50d0dc7827a
+};
+
+#endif /* sys/user.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/syscall.S b/sysdeps/unix/sysv/linux/arc/syscall.S
-new file mode 100644
-index 00000000000..3fe5fcdd041
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/syscall.S
@@ -0,0 +1,38 @@
@@ -7356,18 +7181,12 @@ index 00000000000..3fe5fcdd041
+ brhi r0, -1024, .Lcall_syscall_err
+ j [blink]
+PSEUDO_END (syscall)
-diff --git a/sysdeps/unix/sysv/linux/arc/syscalls.list b/sysdeps/unix/sysv/linux/arc/syscalls.list
-new file mode 100644
-index 00000000000..d0ef5977ee0
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/syscalls.list
@@ -0,0 +1,3 @@
+# File name Caller Syscall name Args Strong name Weak names
+
+cacheflush - cacheflush i:pii _flush_cache cacheflush
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.c b/sysdeps/unix/sysv/linux/arc/sysdep.c
-new file mode 100644
-index 00000000000..5618f378515
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.c
@@ -0,0 +1,33 @@
@@ -7404,9 +7223,6 @@ index 00000000000..5618f378515
+#if IS_IN (libc)
+hidden_def (__syscall_error)
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.h b/sysdeps/unix/sysv/linux/arc/sysdep.h
-new file mode 100644
-index 00000000000..9ad95d97ae1
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.h
@@ -0,0 +1,251 @@
@@ -7661,9 +7477,6 @@ index 00000000000..9ad95d97ae1
+#endif /* !__ASSEMBLER__ */
+
+#endif /* linux/arc/sysdep.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/ucontext-macros.h b/sysdeps/unix/sysv/linux/arc/ucontext-macros.h
-new file mode 100644
-index 00000000000..ed261399c98
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ucontext-macros.h
@@ -0,0 +1,29 @@
@@ -7696,9 +7509,6 @@ index 00000000000..ed261399c98
+#define LOAD_REG(reg, rbase, off) ld reg, [rbase, UCONTEXT_MCONTEXT + off * 4]
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/ucontext_i.sym b/sysdeps/unix/sysv/linux/arc/ucontext_i.sym
-new file mode 100644
-index 00000000000..d84e92f9f54
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ucontext_i.sym
@@ -0,0 +1,20 @@
@@ -7722,9 +7532,6 @@ index 00000000000..d84e92f9f54
+UCONTEXT_MCONTEXT ucontext (uc_mcontext)
+UCONTEXT_SIGMASK ucontext (uc_sigmask)
+UCONTEXT_SIZE sizeof (ucontext_t)
-diff --git a/sysdeps/unix/sysv/linux/arc/vfork.S b/sysdeps/unix/sysv/linux/arc/vfork.S
-new file mode 100644
-index 00000000000..7f981d0681c
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/vfork.S
@@ -0,0 +1,42 @@
@@ -7770,11 +7577,9 @@ index 00000000000..7f981d0681c
+libc_hidden_def (__vfork)
+
+weak_alias (__vfork, vfork)
-diff --git a/sysdeps/unix/sysv/linux/syscall-names.list b/sysdeps/unix/sysv/linux/syscall-names.list
-index b650dc07cc6..5a9f63ff511 100644
--- a/sysdeps/unix/sysv/linux/syscall-names.list
+++ b/sysdeps/unix/sysv/linux/syscall-names.list
-@@ -42,6 +42,9 @@ adjtimex
+@@ -42,6 +42,9 @@
afs_syscall
alarm
alloc_hugepages
@@ -7784,11 +7589,9 @@ index b650dc07cc6..5a9f63ff511 100644
arch_prctl
arm_fadvise64_64
arm_sync_file_range
-diff --git a/timezone/zic.c b/timezone/zic.c
-index 2ebc66a9af5..8e8d94fac3a 100644
--- a/timezone/zic.c
+++ b/timezone/zic.c
-@@ -39,7 +39,7 @@ typedef int_fast64_t zic_t;
+@@ -39,7 +39,7 @@
#include <sys/stat.h>
#endif
#ifdef S_IRUSR
diff --git a/packages/glibc/2.29/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch b/packages/glibc/2.29/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
index e188dd0..5e3b87f 100644
--- a/packages/glibc/2.29/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
+++ b/packages/glibc/2.29/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
@@ -10,16 +10,13 @@ references to _dl_cet_check and _dl_open_check.
(cherry picked from commit 9fb8139079ef0bb1aa33a4ae418cbb113b9b9da7)
---
- NEWS | 1 +
- configure | 23 ++++++++++++++++++++++-
- configure.ac | 9 ++++++++-
- 3 files changed, 31 insertions(+), 2 deletions(-)
+ configure | 23 ++++++++++++++++++++++-
+ configure.ac | 9 ++++++++-
+ 2 files changed, 30 insertions(+), 2 deletions(-)
-diff --git a/configure b/configure
-index 101dfddf37..6a2df7c2be 100755
--- a/configure
+++ b/configure
-@@ -3777,11 +3777,32 @@ else
+@@ -3777,11 +3777,32 @@
fi
@@ -53,11 +50,9 @@ index 101dfddf37..6a2df7c2be 100755
fi
-diff --git a/configure.ac b/configure.ac
-index 46a74687a6..f483afdc2e 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -472,11 +472,18 @@ AC_ARG_ENABLE([mathvec],
+@@ -472,11 +472,18 @@
[build_mathvec=$enableval],
[build_mathvec=notset])
@@ -77,6 +72,3 @@ index 46a74687a6..f483afdc2e 100644
# We keep the original values in `$config_*' and never modify them, so we
# can write them unchanged into config.make. Everything else uses
---
-2.20.1
-
diff --git a/packages/glibc/2.29/0003-Fix-build-with-GCC-10-when-long-double-double.patch b/packages/glibc/2.29/0003-Fix-build-with-GCC-10-when-long-double-double.patch
index ca0d8a7..ef5fa4f 100644
--- a/packages/glibc/2.29/0003-Fix-build-with-GCC-10-when-long-double-double.patch
+++ b/packages/glibc/2.29/0003-Fix-build-with-GCC-10-when-long-double-double.patch
@@ -25,14 +25,12 @@ irrelevant for other reasons).
Tested with build-many-glibcs.py for arm-linux-gnueabi (compilers and
glibcs builds), where it fixes the build that previously failed.
---
- math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 122 insertions(+)
-diff --git a/math/Makefile b/math/Makefile
-index 84a8b94c74..0a5a40430e 100644
--- a/math/Makefile
+++ b/math/Makefile
-@@ -650,6 +650,128 @@ ifneq ($(long-double-fcts),yes)
+@@ -657,6 +657,128 @@
# We won't compile the `long double' code at all. Tell the `double' code
# to define aliases for the `FUNCl' names.
math-CPPFLAGS += -DNO_LONG_DOUBLE
@@ -161,6 +159,3 @@ index 84a8b94c74..0a5a40430e 100644
endif
# These files quiet sNaNs in a way that is optimized away without
---
-2.25.1
-
diff --git a/packages/glibc/2.30/0001-Add-ARC-architecture.patch b/packages/glibc/2.30/0001-Add-ARC-architecture.patch
index be2ee8a..dce1d20 100644
--- a/packages/glibc/2.30/0001-Add-ARC-architecture.patch
+++ b/packages/glibc/2.30/0001-Add-ARC-architecture.patch
@@ -9,11 +9,116 @@ git diff glibc-2.30..arc-2.30-2019.09.06 ':!NEWS' ':!ChangeLog'
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
---
-diff --git a/elf/elf.h b/elf/elf.h
-index 7c6d6094edb..0aa5cb58463 100644
+---
+ elf/elf.h | 70
+ locale/Makefile | 5
+ scripts/build-many-glibcs.py | 4
+ stdlib/longlong.h | 6
+ support/Makefile | 5
+ sysdeps/arc/Implies | 4
+ sysdeps/arc/Makefile | 25
+ sysdeps/arc/Versions | 6
+ sysdeps/arc/__longjmp.S | 50
+ sysdeps/arc/abort-instr.h | 2
+ sysdeps/arc/atomic-machine.h | 73
+ sysdeps/arc/bits/endian.h | 12
+ sysdeps/arc/bits/fenv.h | 72
+ sysdeps/arc/bits/link.h | 52
+ sysdeps/arc/bits/setjmp.h | 26
+ sysdeps/arc/bsd-_setjmp.S | 1
+ sysdeps/arc/bsd-setjmp.S | 1
+ sysdeps/arc/configure | 14
+ sysdeps/arc/configure.ac | 11
+ sysdeps/arc/dl-machine.h | 340 +++
+ sysdeps/arc/dl-runtime.c | 39
+ sysdeps/arc/dl-sysdep.h | 25
+ sysdeps/arc/dl-tls.h | 30
+ sysdeps/arc/dl-trampoline.S | 80
+ sysdeps/arc/entry.h | 5
+ sysdeps/arc/gccframe.h | 21
+ sysdeps/arc/gmp-mparam.h | 23
+ sysdeps/arc/jmpbuf-offsets.h | 47
+ sysdeps/arc/jmpbuf-unwind.h | 47
+ sysdeps/arc/ldsodefs.h | 43
+ sysdeps/arc/libc-tls.c | 27
+ sysdeps/arc/machine-gmon.h | 35
+ sysdeps/arc/memusage.h | 23
+ sysdeps/arc/nofpu/Implies | 1
+ sysdeps/arc/nofpu/libm-test-ulps | 390 +++
+ sysdeps/arc/nofpu/libm-test-ulps-name | 1
+ sysdeps/arc/nofpu/math-tests-exceptions.h | 27
+ sysdeps/arc/nofpu/math-tests-rounding.h | 27
+ sysdeps/arc/nptl/Makefile | 22
+ sysdeps/arc/nptl/bits/pthreadtypes-arch.h | 71
+ sysdeps/arc/nptl/bits/semaphore.h | 32
+ sysdeps/arc/nptl/pthread-offsets.h | 4
+ sysdeps/arc/nptl/pthreaddef.h | 32
+ sysdeps/arc/nptl/tcb-offsets.sym | 11
+ sysdeps/arc/nptl/tls.h | 150 +
+ sysdeps/arc/preconfigure | 15
+ sysdeps/arc/setjmp.S | 66
+ sysdeps/arc/sfp-machine.h | 73
+ sysdeps/arc/sotruss-lib.c | 51
+ sysdeps/arc/stackinfo.h | 33
+ sysdeps/arc/start.S | 89
+ sysdeps/arc/sysdep.h | 48
+ sysdeps/arc/tls-macros.h | 47
+ sysdeps/arc/tst-audit.h | 23
+ sysdeps/unix/sysv/linux/arc/Implies | 3
+ sysdeps/unix/sysv/linux/arc/Makefile | 20
+ sysdeps/unix/sysv/linux/arc/Versions | 16
+ sysdeps/unix/sysv/linux/arc/bits/procfs.h | 35
+ sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h | 12
+ sysdeps/unix/sysv/linux/arc/c++-types.data | 67
+ sysdeps/unix/sysv/linux/arc/clone.S | 98
+ sysdeps/unix/sysv/linux/arc/configure | 4
+ sysdeps/unix/sysv/linux/arc/configure.ac | 4
+ sysdeps/unix/sysv/linux/arc/dl-static.c | 84
+ sysdeps/unix/sysv/linux/arc/getcontext.S | 63
+ sysdeps/unix/sysv/linux/arc/ipc_priv.h | 21
+ sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h | 6
+ sysdeps/unix/sysv/linux/arc/kernel-features.h | 28
+ sysdeps/unix/sysv/linux/arc/ld.abilist | 9
+ sysdeps/unix/sysv/linux/arc/ldsodefs.h | 32
+ sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist | 1
+ sysdeps/unix/sysv/linux/arc/libanl.abilist | 4
+ sysdeps/unix/sysv/linux/arc/libc.abilist | 2084 ++++++++++++++++++++
+ sysdeps/unix/sysv/linux/arc/libcrypt.abilist | 2
+ sysdeps/unix/sysv/linux/arc/libdl.abilist | 9
+ sysdeps/unix/sysv/linux/arc/libm.abilist | 753 +++++++
+ sysdeps/unix/sysv/linux/arc/libpthread.abilist | 240 ++
+ sysdeps/unix/sysv/linux/arc/libresolv.abilist | 79
+ sysdeps/unix/sysv/linux/arc/librt.abilist | 35
+ sysdeps/unix/sysv/linux/arc/libthread_db.abilist | 40
+ sysdeps/unix/sysv/linux/arc/libutil.abilist | 6
+ sysdeps/unix/sysv/linux/arc/localplt.data | 16
+ sysdeps/unix/sysv/linux/arc/makecontext.c | 75
+ sysdeps/unix/sysv/linux/arc/mmap_internal.h | 27
+ sysdeps/unix/sysv/linux/arc/profil-counter.h | 2
+ sysdeps/unix/sysv/linux/arc/pt-vfork.S | 1
+ sysdeps/unix/sysv/linux/arc/setcontext.S | 92
+ sysdeps/unix/sysv/linux/arc/shlib-versions | 2
+ sysdeps/unix/sysv/linux/arc/sigaction.c | 31
+ sysdeps/unix/sysv/linux/arc/sigcontextinfo.h | 23
+ sysdeps/unix/sysv/linux/arc/sigrestorer.S | 29
+ sysdeps/unix/sysv/linux/arc/swapcontext.S | 92
+ sysdeps/unix/sysv/linux/arc/sys/cachectl.h | 36
+ sysdeps/unix/sysv/linux/arc/sys/ucontext.h | 63
+ sysdeps/unix/sysv/linux/arc/sys/user.h | 31
+ sysdeps/unix/sysv/linux/arc/syscall.S | 38
+ sysdeps/unix/sysv/linux/arc/syscalls.list | 3
+ sysdeps/unix/sysv/linux/arc/sysdep.c | 33
+ sysdeps/unix/sysv/linux/arc/sysdep.h | 251 ++
+ sysdeps/unix/sysv/linux/arc/ucontext-macros.h | 29
+ sysdeps/unix/sysv/linux/arc/ucontext_i.sym | 20
+ sysdeps/unix/sysv/linux/arc/vfork.S | 42
+ sysdeps/unix/sysv/linux/syscall-names.list | 3
+ timezone/zic.c | 2
+ 104 files changed, 7120 insertions(+), 13 deletions(-)
+
--- a/elf/elf.h
+++ b/elf/elf.h
-@@ -330,7 +330,7 @@ typedef struct
+@@ -330,7 +330,7 @@
#define EM_CLOUDSHIELD 192 /* CloudShield */
#define EM_COREA_1ST 193 /* KIPO-KAIST Core-A 1st gen. */
#define EM_COREA_2ND 194 /* KIPO-KAIST Core-A 2nd gen. */
@@ -22,7 +127,7 @@ index 7c6d6094edb..0aa5cb58463 100644
#define EM_OPEN8 196 /* Open8 RISC */
#define EM_RL78 197 /* Renesas RL78 */
#define EM_VIDEOCORE5 198 /* Broadcom VideoCore V */
-@@ -4024,6 +4024,74 @@ enum
+@@ -4024,6 +4024,74 @@
#define R_NDS32_TLS_TPOFF 102
#define R_NDS32_TLS_DESC 119
@@ -97,11 +202,9 @@ index 7c6d6094edb..0aa5cb58463 100644
__END_DECLS
#endif /* elf.h */
-diff --git a/locale/Makefile b/locale/Makefile
-index d78cf9b83ac..23fe4bcd8a7 100644
--- a/locale/Makefile
+++ b/locale/Makefile
-@@ -28,6 +28,7 @@ routines = setlocale findlocale loadlocale loadarchive \
+@@ -28,6 +28,7 @@
localeconv nl_langinfo nl_langinfo_l mb_cur_max \
newlocale duplocale freelocale uselocale
tests = tst-C-locale tst-locname tst-duplocale
@@ -109,7 +212,7 @@ index d78cf9b83ac..23fe4bcd8a7 100644
categories = ctype messages monetary numeric time paper name \
address telephone measurement identification collate
aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \
-@@ -62,10 +63,6 @@ lib-modules := charmap-dir simple-hash xmalloc xstrdup \
+@@ -62,10 +63,6 @@
GPERF = gperf
GPERFFLAGS = -acCgopt -k1,2,5,9,$$ -L ANSI-C
@@ -120,11 +223,9 @@ index d78cf9b83ac..23fe4bcd8a7 100644
include ../Rules
CFLAGS-md5.c += -I../crypt
-diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
-index aa6884e046d..9d3f22e2ccc 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
-@@ -155,6 +155,9 @@ class Context(object):
+@@ -155,6 +155,9 @@
'cfg': ['--disable-multi-arch']}])
self.add_config(arch='aarch64_be',
os_name='linux-gnu')
@@ -134,7 +235,7 @@ index aa6884e046d..9d3f22e2ccc 100755
self.add_config(arch='alpha',
os_name='linux-gnu')
self.add_config(arch='arm',
-@@ -1259,6 +1262,7 @@ class Config(object):
+@@ -1259,6 +1262,7 @@
def install_linux_headers(self, cmdlist):
"""Install Linux kernel headers."""
arch_map = {'aarch64': 'arm64',
@@ -142,11 +243,9 @@ index aa6884e046d..9d3f22e2ccc 100755
'alpha': 'alpha',
'arm': 'arm',
'csky': 'csky',
-diff --git a/stdlib/longlong.h b/stdlib/longlong.h
-index 3dd8dc3aa80..1f0ce420425 100644
--- a/stdlib/longlong.h
+++ b/stdlib/longlong.h
-@@ -199,7 +199,8 @@ extern UDItype __udiv_qrnnd (UDItype *, UDItype, UDItype, UDItype);
+@@ -199,7 +199,8 @@
: "%r" ((USItype) (ah)), \
"rICal" ((USItype) (bh)), \
"%r" ((USItype) (al)), \
@@ -156,7 +255,7 @@ index 3dd8dc3aa80..1f0ce420425 100644
#define sub_ddmmss(sh, sl, ah, al, bh, bl) \
__asm__ ("sub.f %1, %4, %5\n\tsbc %0, %2, %3" \
: "=r" ((USItype) (sh)), \
-@@ -207,7 +208,8 @@ extern UDItype __udiv_qrnnd (UDItype *, UDItype, UDItype, UDItype);
+@@ -207,7 +208,8 @@
: "r" ((USItype) (ah)), \
"rICal" ((USItype) (bh)), \
"r" ((USItype) (al)), \
@@ -166,11 +265,9 @@ index 3dd8dc3aa80..1f0ce420425 100644
#define __umulsidi3(u,v) ((UDItype)(USItype)u*(USItype)v)
#ifdef __ARC_NORM__
-diff --git a/support/Makefile b/support/Makefile
-index ab66913a02d..c64a0a4b907 100644
--- a/support/Makefile
+++ b/support/Makefile
-@@ -184,12 +184,7 @@ CFLAGS-support_paths.c = \
+@@ -184,12 +184,7 @@
-DSBINDIR_PATH=\"$(sbindir)\" \
-DROOTSBINDIR_PATH=\"$(rootsbindir)\"
@@ -183,9 +280,6 @@ index ab66913a02d..c64a0a4b907 100644
ifeq (yes,$(have-selinux))
LDLIBS-$(LINKS_DSO_PROGRAM) += -lselinux
-diff --git a/sysdeps/arc/Implies b/sysdeps/arc/Implies
-new file mode 100644
-index 00000000000..a0f0b00cfac
--- /dev/null
+++ b/sysdeps/arc/Implies
@@ -0,0 +1,4 @@
@@ -193,9 +287,6 @@ index 00000000000..a0f0b00cfac
+wordsize-32
+ieee754/flt-32
+ieee754/dbl-64
-diff --git a/sysdeps/arc/Makefile b/sysdeps/arc/Makefile
-new file mode 100644
-index 00000000000..8d2fbe00c5e
--- /dev/null
+++ b/sysdeps/arc/Makefile
@@ -0,0 +1,25 @@
@@ -224,9 +315,6 @@ index 00000000000..8d2fbe00c5e
+ifeq ($(subdir),debug)
+CFLAGS-backtrace.c += -funwind-tables
+endif
-diff --git a/sysdeps/arc/Versions b/sysdeps/arc/Versions
-new file mode 100644
-index 00000000000..ca0856d2dbd
--- /dev/null
+++ b/sysdeps/arc/Versions
@@ -0,0 +1,6 @@
@@ -236,9 +324,6 @@ index 00000000000..ca0856d2dbd
+ __mcount;
+ }
+}
-diff --git a/sysdeps/arc/__longjmp.S b/sysdeps/arc/__longjmp.S
-new file mode 100644
-index 00000000000..8296aa445f6
--- /dev/null
+++ b/sysdeps/arc/__longjmp.S
@@ -0,0 +1,50 @@
@@ -292,17 +377,11 @@ index 00000000000..8296aa445f6
+ mov.z r0, 1 ; can't let setjmp return 0 when it is due to longjmp
+
+END (__longjmp)
-diff --git a/sysdeps/arc/abort-instr.h b/sysdeps/arc/abort-instr.h
-new file mode 100644
-index 00000000000..49f33613c40
--- /dev/null
+++ b/sysdeps/arc/abort-instr.h
@@ -0,0 +1,2 @@
+/* FLAG 1 is privilege mode only instruction, hence will crash any program. */
+#define ABORT_INSTRUCTION asm ("flag 1")
-diff --git a/sysdeps/arc/atomic-machine.h b/sysdeps/arc/atomic-machine.h
-new file mode 100644
-index 00000000000..bdc91d0558f
--- /dev/null
+++ b/sysdeps/arc/atomic-machine.h
@@ -0,0 +1,73 @@
@@ -379,9 +458,6 @@ index 00000000000..bdc91d0558f
+#endif
+
+#endif /* _ARC_BITS_ATOMIC_H */
-diff --git a/sysdeps/arc/bits/endian.h b/sysdeps/arc/bits/endian.h
-new file mode 100644
-index 00000000000..46f41e3cffe
--- /dev/null
+++ b/sysdeps/arc/bits/endian.h
@@ -0,0 +1,12 @@
@@ -397,9 +473,6 @@ index 00000000000..46f41e3cffe
+#ifdef __BIG_ENDIAN__
+# error "Big Endian NOt supported on ARC"
+#endif
-diff --git a/sysdeps/arc/bits/fenv.h b/sysdeps/arc/bits/fenv.h
-new file mode 100644
-index 00000000000..58388fb43a3
--- /dev/null
+++ b/sysdeps/arc/bits/fenv.h
@@ -0,0 +1,72 @@
@@ -475,9 +548,6 @@ index 00000000000..58388fb43a3
+/* Default floating-point control modes. */
+# define FE_DFL_MODE ((const femode_t *) -1L)
+#endif
-diff --git a/sysdeps/arc/bits/link.h b/sysdeps/arc/bits/link.h
-new file mode 100644
-index 00000000000..c4508ab6664
--- /dev/null
+++ b/sysdeps/arc/bits/link.h
@@ -0,0 +1,52 @@
@@ -533,9 +603,6 @@ index 00000000000..c4508ab6664
+ const char *symname);
+
+__END_DECLS
-diff --git a/sysdeps/arc/bits/setjmp.h b/sysdeps/arc/bits/setjmp.h
-new file mode 100644
-index 00000000000..3cb457d097c
--- /dev/null
+++ b/sysdeps/arc/bits/setjmp.h
@@ -0,0 +1,26 @@
@@ -565,23 +632,14 @@ index 00000000000..3cb457d097c
+typedef long int __jmp_buf[32];
+
+#endif
-diff --git a/sysdeps/arc/bsd-_setjmp.S b/sysdeps/arc/bsd-_setjmp.S
-new file mode 100644
-index 00000000000..90b99cd8c3e
--- /dev/null
+++ b/sysdeps/arc/bsd-_setjmp.S
@@ -0,0 +1 @@
+/* _setjmp is in setjmp.S. */
-diff --git a/sysdeps/arc/bsd-setjmp.S b/sysdeps/arc/bsd-setjmp.S
-new file mode 100644
-index 00000000000..d3b823c118b
--- /dev/null
+++ b/sysdeps/arc/bsd-setjmp.S
@@ -0,0 +1 @@
+/* setjmp is in setjmp.S. */
-diff --git a/sysdeps/arc/configure b/sysdeps/arc/configure
-new file mode 100644
-index 00000000000..52e286da2eb
--- /dev/null
+++ b/sysdeps/arc/configure
@@ -0,0 +1,14 @@
@@ -599,9 +657,6 @@ index 00000000000..52e286da2eb
+cat >>confdefs.h <<_ACEOF
+#define ASM_LINE_SEP $libc_cv_asm_line_sep
+_ACEOF
-diff --git a/sysdeps/arc/configure.ac b/sysdeps/arc/configure.ac
-new file mode 100644
-index 00000000000..1074d312f03
--- /dev/null
+++ b/sysdeps/arc/configure.ac
@@ -0,0 +1,11 @@
@@ -616,9 +671,6 @@ index 00000000000..1074d312f03
+# canonical newline as there's lots of code out there which will break
+libc_cv_asm_line_sep='`'
+AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
-diff --git a/sysdeps/arc/dl-machine.h b/sysdeps/arc/dl-machine.h
-new file mode 100644
-index 00000000000..c81acb9d4fd
--- /dev/null
+++ b/sysdeps/arc/dl-machine.h
@@ -0,0 +1,340 @@
@@ -962,9 +1014,6 @@ index 00000000000..c81acb9d4fd
+}
+
+#endif /* RESOLVE_MAP */
-diff --git a/sysdeps/arc/dl-runtime.c b/sysdeps/arc/dl-runtime.c
-new file mode 100644
-index 00000000000..48f4a5a7e1d
--- /dev/null
+++ b/sysdeps/arc/dl-runtime.c
@@ -0,0 +1,39 @@
@@ -1007,9 +1056,6 @@ index 00000000000..48f4a5a7e1d
+#define reloc_offset reloc_index * sizeof (PLTREL)
+
+#include <elf/dl-runtime.c>
-diff --git a/sysdeps/arc/dl-sysdep.h b/sysdeps/arc/dl-sysdep.h
-new file mode 100644
-index 00000000000..ffc30b69372
--- /dev/null
+++ b/sysdeps/arc/dl-sysdep.h
@@ -0,0 +1,25 @@
@@ -1038,9 +1084,6 @@ index 00000000000..ffc30b69372
+#define DL_ARGV_NOT_RELRO 1
+
+#define DL_EXTERN_PROTECTED_DATA
-diff --git a/sysdeps/arc/dl-tls.h b/sysdeps/arc/dl-tls.h
-new file mode 100644
-index 00000000000..7f0cf91e402
--- /dev/null
+++ b/sysdeps/arc/dl-tls.h
@@ -0,0 +1,30 @@
@@ -1074,9 +1117,6 @@ index 00000000000..7f0cf91e402
+
+/* Value used for dtv entries for which the allocation is delayed. */
+#define TLS_DTV_UNALLOCATED ((void *) -1l)
-diff --git a/sysdeps/arc/dl-trampoline.S b/sysdeps/arc/dl-trampoline.S
-new file mode 100644
-index 00000000000..9da75fb1fe2
--- /dev/null
+++ b/sysdeps/arc/dl-trampoline.S
@@ -0,0 +1,80 @@
@@ -1160,9 +1200,6 @@ index 00000000000..9da75fb1fe2
+ cfi_adjust_cfa_offset (-4)
+ cfi_restore (r0)
+END (_dl_runtime_resolve)
-diff --git a/sysdeps/arc/entry.h b/sysdeps/arc/entry.h
-new file mode 100644
-index 00000000000..adb01d981af
--- /dev/null
+++ b/sysdeps/arc/entry.h
@@ -0,0 +1,5 @@
@@ -1171,9 +1208,6 @@ index 00000000000..adb01d981af
+#endif
+
+#define ENTRY_POINT __start
-diff --git a/sysdeps/arc/gccframe.h b/sysdeps/arc/gccframe.h
-new file mode 100644
-index 00000000000..40487fa77b4
--- /dev/null
+++ b/sysdeps/arc/gccframe.h
@@ -0,0 +1,21 @@
@@ -1198,9 +1232,6 @@ index 00000000000..40487fa77b4
+#define FIRST_PSEUDO_REGISTER 40
+
+#include <sysdeps/generic/gccframe.h>
-diff --git a/sysdeps/arc/gmp-mparam.h b/sysdeps/arc/gmp-mparam.h
-new file mode 100644
-index 00000000000..e30695fc6b2
--- /dev/null
+++ b/sysdeps/arc/gmp-mparam.h
@@ -0,0 +1,23 @@
@@ -1227,9 +1258,6 @@ index 00000000000..e30695fc6b2
+#include <sysdeps/generic/gmp-mparam.h>
+
+#define IEEE_DOUBLE_BIG_ENDIAN 0
-diff --git a/sysdeps/arc/jmpbuf-offsets.h b/sysdeps/arc/jmpbuf-offsets.h
-new file mode 100644
-index 00000000000..9760f3a3891
--- /dev/null
+++ b/sysdeps/arc/jmpbuf-offsets.h
@@ -0,0 +1,47 @@
@@ -1280,9 +1308,6 @@ index 00000000000..9760f3a3891
+
+/* Helper for generic ____longjmp_chk(). */
+#define JB_FRAME_ADDRESS(buf) ((void *) (unsigned long int) (buf[JB_SP]))
-diff --git a/sysdeps/arc/jmpbuf-unwind.h b/sysdeps/arc/jmpbuf-unwind.h
-new file mode 100644
-index 00000000000..47be5758c75
--- /dev/null
+++ b/sysdeps/arc/jmpbuf-unwind.h
@@ -0,0 +1,47 @@
@@ -1333,9 +1358,6 @@ index 00000000000..47be5758c75
+
+/* We use the normal longjmp for unwinding. */
+#define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val)
-diff --git a/sysdeps/arc/ldsodefs.h b/sysdeps/arc/ldsodefs.h
-new file mode 100644
-index 00000000000..53ef4e1e83d
--- /dev/null
+++ b/sysdeps/arc/ldsodefs.h
@@ -0,0 +1,43 @@
@@ -1382,9 +1404,6 @@ index 00000000000..53ef4e1e83d
+#include_next <ldsodefs.h>
+
+#endif
-diff --git a/sysdeps/arc/libc-tls.c b/sysdeps/arc/libc-tls.c
-new file mode 100644
-index 00000000000..903a75a41b5
--- /dev/null
+++ b/sysdeps/arc/libc-tls.c
@@ -0,0 +1,27 @@
@@ -1415,9 +1434,6 @@ index 00000000000..903a75a41b5
+ dtv_t *dtv = THREAD_DTV ();
+ return (char *) dtv[1].pointer.val + ti->ti_offset;
+}
-diff --git a/sysdeps/arc/machine-gmon.h b/sysdeps/arc/machine-gmon.h
-new file mode 100644
-index 00000000000..1d9e8108d9b
--- /dev/null
+++ b/sysdeps/arc/machine-gmon.h
@@ -0,0 +1,35 @@
@@ -1456,9 +1472,6 @@ index 00000000000..1d9e8108d9b
+ __mcount_internal ((unsigned long int) frompc, \
+ (unsigned long int) __builtin_return_address(0)); \
+}
-diff --git a/sysdeps/arc/memusage.h b/sysdeps/arc/memusage.h
-new file mode 100644
-index 00000000000..29f234f5bac
--- /dev/null
+++ b/sysdeps/arc/memusage.h
@@ -0,0 +1,23 @@
@@ -1485,16 +1498,10 @@ index 00000000000..29f234f5bac
+#define uatomic32_t unsigned int
+
+#include <sysdeps/generic/memusage.h>
-diff --git a/sysdeps/arc/nofpu/Implies b/sysdeps/arc/nofpu/Implies
-new file mode 100644
-index 00000000000..abcbadb25f2
--- /dev/null
+++ b/sysdeps/arc/nofpu/Implies
@@ -0,0 +1 @@
+ieee754/soft-fp
-diff --git a/sysdeps/arc/nofpu/libm-test-ulps b/sysdeps/arc/nofpu/libm-test-ulps
-new file mode 100644
-index 00000000000..0e8ef313fa9
--- /dev/null
+++ b/sysdeps/arc/nofpu/libm-test-ulps
@@ -0,0 +1,390 @@
@@ -1888,16 +1895,10 @@ index 00000000000..0e8ef313fa9
+ifloat: 3
+
+# end of automatic generation
-diff --git a/sysdeps/arc/nofpu/libm-test-ulps-name b/sysdeps/arc/nofpu/libm-test-ulps-name
-new file mode 100644
-index 00000000000..8c4fba4f9ae
--- /dev/null
+++ b/sysdeps/arc/nofpu/libm-test-ulps-name
@@ -0,0 +1 @@
+ARC
-diff --git a/sysdeps/arc/nofpu/math-tests-exceptions.h b/sysdeps/arc/nofpu/math-tests-exceptions.h
-new file mode 100644
-index 00000000000..f5c0b73589e
--- /dev/null
+++ b/sysdeps/arc/nofpu/math-tests-exceptions.h
@@ -0,0 +1,27 @@
@@ -1928,9 +1929,6 @@ index 00000000000..f5c0b73589e
+#define EXCEPTION_TESTS_long_double 0
+
+#endif
-diff --git a/sysdeps/arc/nofpu/math-tests-rounding.h b/sysdeps/arc/nofpu/math-tests-rounding.h
-new file mode 100644
-index 00000000000..e8f76338b1e
--- /dev/null
+++ b/sysdeps/arc/nofpu/math-tests-rounding.h
@@ -0,0 +1,27 @@
@@ -1961,9 +1959,6 @@ index 00000000000..e8f76338b1e
+#define ROUNDING_TESTS_long_double(MODE) ((MODE) == FE_TONEAREST)
+
+#endif
-diff --git a/sysdeps/arc/nptl/Makefile b/sysdeps/arc/nptl/Makefile
-new file mode 100644
-index 00000000000..3c33c9cc112
--- /dev/null
+++ b/sysdeps/arc/nptl/Makefile
@@ -0,0 +1,22 @@
@@ -1989,9 +1984,6 @@ index 00000000000..3c33c9cc112
+ifeq ($(subdir),csu)
+gen-as-const-headers += tcb-offsets.sym
+endif
-diff --git a/sysdeps/arc/nptl/bits/pthreadtypes-arch.h b/sysdeps/arc/nptl/bits/pthreadtypes-arch.h
-new file mode 100644
-index 00000000000..eae884f61cf
--- /dev/null
+++ b/sysdeps/arc/nptl/bits/pthreadtypes-arch.h
@@ -0,0 +1,71 @@
@@ -2066,9 +2058,6 @@ index 00000000000..eae884f61cf
+#define __PTHREAD_RWLOCK_ELISION_EXTRA 0
+
+#endif /* bits/pthreadtypes-arch.h */
-diff --git a/sysdeps/arc/nptl/bits/semaphore.h b/sysdeps/arc/nptl/bits/semaphore.h
-new file mode 100644
-index 00000000000..662d08401d0
--- /dev/null
+++ b/sysdeps/arc/nptl/bits/semaphore.h
@@ -0,0 +1,32 @@
@@ -2104,9 +2093,6 @@ index 00000000000..662d08401d0
+ char __size[__SIZEOF_SEM_T];
+ long int __align;
+} sem_t;
-diff --git a/sysdeps/arc/nptl/pthread-offsets.h b/sysdeps/arc/nptl/pthread-offsets.h
-new file mode 100644
-index 00000000000..c363e8cda8d
--- /dev/null
+++ b/sysdeps/arc/nptl/pthread-offsets.h
@@ -0,0 +1,4 @@
@@ -2114,9 +2100,6 @@ index 00000000000..c363e8cda8d
+#define __PTHREAD_MUTEX_KIND_OFFSET 16
+#define __PTHREAD_MUTEX_SPINS_OFFSET 20
+#define __PTHREAD_MUTEX_LIST_OFFSET 24
-diff --git a/sysdeps/arc/nptl/pthreaddef.h b/sysdeps/arc/nptl/pthreaddef.h
-new file mode 100644
-index 00000000000..80a109bbd52
--- /dev/null
+++ b/sysdeps/arc/nptl/pthreaddef.h
@@ -0,0 +1,32 @@
@@ -2152,9 +2135,6 @@ index 00000000000..80a109bbd52
+
+/* Location of current stack frame. */
+#define CURRENT_STACK_FRAME __builtin_frame_address (0)
-diff --git a/sysdeps/arc/nptl/tcb-offsets.sym b/sysdeps/arc/nptl/tcb-offsets.sym
-new file mode 100644
-index 00000000000..56950e0676e
--- /dev/null
+++ b/sysdeps/arc/nptl/tcb-offsets.sym
@@ -0,0 +1,11 @@
@@ -2169,9 +2149,6 @@ index 00000000000..56950e0676e
+TLS_TCB_SIZE sizeof(tcbhead_t)
+
+PTHREAD_TID offsetof(struct pthread, tid)
-diff --git a/sysdeps/arc/nptl/tls.h b/sysdeps/arc/nptl/tls.h
-new file mode 100644
-index 00000000000..2c90109d570
--- /dev/null
+++ b/sysdeps/arc/nptl/tls.h
@@ -0,0 +1,150 @@
@@ -2325,9 +2302,6 @@ index 00000000000..2c90109d570
+#endif /* __ASSEMBLER__ */
+
+#endif /* tls.h */
-diff --git a/sysdeps/arc/preconfigure b/sysdeps/arc/preconfigure
-new file mode 100644
-index 00000000000..d9c5429f405
--- /dev/null
+++ b/sysdeps/arc/preconfigure
@@ -0,0 +1,15 @@
@@ -2346,9 +2320,6 @@ index 00000000000..d9c5429f405
+ ;;
+
+esac
-diff --git a/sysdeps/arc/setjmp.S b/sysdeps/arc/setjmp.S
-new file mode 100644
-index 00000000000..518545a99e8
--- /dev/null
+++ b/sysdeps/arc/setjmp.S
@@ -0,0 +1,66 @@
@@ -2418,9 +2389,6 @@ index 00000000000..518545a99e8
+END (__sigsetjmp)
+
+libc_hidden_def (__sigsetjmp)
-diff --git a/sysdeps/arc/sfp-machine.h b/sysdeps/arc/sfp-machine.h
-new file mode 100644
-index 00000000000..5ceaf56a988
--- /dev/null
+++ b/sysdeps/arc/sfp-machine.h
@@ -0,0 +1,73 @@
@@ -2497,9 +2465,6 @@ index 00000000000..5ceaf56a988
+ } while (0)
+
+#define _FP_TININESS_AFTER_ROUNDING 0
-diff --git a/sysdeps/arc/sotruss-lib.c b/sysdeps/arc/sotruss-lib.c
-new file mode 100644
-index 00000000000..ffbb5bbd6d0
--- /dev/null
+++ b/sysdeps/arc/sotruss-lib.c
@@ -0,0 +1,51 @@
@@ -2554,9 +2519,6 @@ index 00000000000..ffbb5bbd6d0
+
+ return 0;
+}
-diff --git a/sysdeps/arc/stackinfo.h b/sysdeps/arc/stackinfo.h
-new file mode 100644
-index 00000000000..fe69161382a
--- /dev/null
+++ b/sysdeps/arc/stackinfo.h
@@ -0,0 +1,33 @@
@@ -2593,9 +2555,6 @@ index 00000000000..fe69161382a
+#define DEFAULT_STACK_PERMS (PF_R|PF_W)
+
+#endif /* stackinfo.h */
-diff --git a/sysdeps/arc/start.S b/sysdeps/arc/start.S
-new file mode 100644
-index 00000000000..4ade1e871f6
--- /dev/null
+++ b/sysdeps/arc/start.S
@@ -0,0 +1,89 @@
@@ -2688,9 +2647,6 @@ index 00000000000..4ade1e871f6
+ .long 0
+ .weak data_start
+ data_start = __data_start
-diff --git a/sysdeps/arc/sysdep.h b/sysdeps/arc/sysdep.h
-new file mode 100644
-index 00000000000..127e9b01e73
--- /dev/null
+++ b/sysdeps/arc/sysdep.h
@@ -0,0 +1,48 @@
@@ -2742,9 +2698,6 @@ index 00000000000..127e9b01e73
+# define CALL_MCOUNT /* Do nothing for now. */
+
+#endif /* __ASSEMBLER__ */
-diff --git a/sysdeps/arc/tls-macros.h b/sysdeps/arc/tls-macros.h
-new file mode 100644
-index 00000000000..4d54683eda4
--- /dev/null
+++ b/sysdeps/arc/tls-macros.h
@@ -0,0 +1,47 @@
@@ -2795,9 +2748,6 @@ index 00000000000..4d54683eda4
+ "add %0, %1, %0 \n" \
+ : "=&r" (__result) : "r" (tp)); \
+ __result; })
-diff --git a/sysdeps/arc/tst-audit.h b/sysdeps/arc/tst-audit.h
-new file mode 100644
-index 00000000000..9237ad2440c
--- /dev/null
+++ b/sysdeps/arc/tst-audit.h
@@ -0,0 +1,23 @@
@@ -2824,18 +2774,12 @@ index 00000000000..9237ad2440c
+#define La_regs La_arc_regs
+#define La_retval La_arc_retval
+#define int_retval lrv_reg[0]
-diff --git a/sysdeps/unix/sysv/linux/arc/Implies b/sysdeps/unix/sysv/linux/arc/Implies
-new file mode 100644
-index 00000000000..7f739a0340b
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Implies
@@ -0,0 +1,3 @@
+arc/nptl
+unix/sysv/linux/generic/wordsize-32
+unix/sysv/linux/generic
-diff --git a/sysdeps/unix/sysv/linux/arc/Makefile b/sysdeps/unix/sysv/linux/arc/Makefile
-new file mode 100644
-index 00000000000..a6c6dfc6ec6
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Makefile
@@ -0,0 +1,20 @@
@@ -2859,9 +2803,6 @@ index 00000000000..a6c6dfc6ec6
+sysdep-dl-routines += dl-static
+endif
+endif
-diff --git a/sysdeps/unix/sysv/linux/arc/Versions b/sysdeps/unix/sysv/linux/arc/Versions
-new file mode 100644
-index 00000000000..3eedf26ae23
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Versions
@@ -0,0 +1,16 @@
@@ -2881,9 +2822,6 @@ index 00000000000..3eedf26ae23
+ __default_rt_sa_restorer;
+ }
+}
-diff --git a/sysdeps/unix/sysv/linux/arc/bits/procfs.h b/sysdeps/unix/sysv/linux/arc/bits/procfs.h
-new file mode 100644
-index 00000000000..b37deaee587
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/bits/procfs.h
@@ -0,0 +1,35 @@
@@ -2922,9 +2860,6 @@ index 00000000000..b37deaee587
+
+/* There's no seperate floating point reg file in ARCv2. */
+typedef struct { } elf_fpregset_t;
-diff --git a/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h b/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h
-new file mode 100644
-index 00000000000..795638a30bd
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h
@@ -0,0 +1,12 @@
@@ -2940,9 +2875,6 @@ index 00000000000..795638a30bd
+} __sigset_t;
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/c++-types.data b/sysdeps/unix/sysv/linux/arc/c++-types.data
-new file mode 100644
-index 00000000000..303f4570c8e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/c++-types.data
@@ -0,0 +1,67 @@
@@ -3013,9 +2945,6 @@ index 00000000000..303f4570c8e
+useconds_t:j
+ushort:t
+u_short:t
-diff --git a/sysdeps/unix/sysv/linux/arc/clone.S b/sysdeps/unix/sysv/linux/arc/clone.S
-new file mode 100644
-index 00000000000..55c2a2b60ed
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/clone.S
@@ -0,0 +1,98 @@
@@ -3117,9 +3046,6 @@ index 00000000000..55c2a2b60ed
+PSEUDO_END (__clone)
+libc_hidden_def (__clone)
+weak_alias (__clone, clone)
-diff --git a/sysdeps/unix/sysv/linux/arc/configure b/sysdeps/unix/sysv/linux/arc/configure
-new file mode 100644
-index 00000000000..f74fa7cb025
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/configure
@@ -0,0 +1,4 @@
@@ -3127,9 +3053,6 @@ index 00000000000..f74fa7cb025
+ # Local configure fragment for sysdeps/unix/sysv/linux/arc.
+
+arch_minimum_kernel=3.9.0
-diff --git a/sysdeps/unix/sysv/linux/arc/configure.ac b/sysdeps/unix/sysv/linux/arc/configure.ac
-new file mode 100644
-index 00000000000..a9528032d32
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/configure.ac
@@ -0,0 +1,4 @@
@@ -3137,9 +3060,6 @@ index 00000000000..a9528032d32
+# Local configure fragment for sysdeps/unix/sysv/linux/arc.
+
+arch_minimum_kernel=3.9.0
-diff --git a/sysdeps/unix/sysv/linux/arc/dl-static.c b/sysdeps/unix/sysv/linux/arc/dl-static.c
-new file mode 100644
-index 00000000000..1a8757c9840
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/dl-static.c
@@ -0,0 +1,84 @@
@@ -3227,9 +3147,6 @@ index 00000000000..1a8757c9840
+}
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/getcontext.S b/sysdeps/unix/sysv/linux/arc/getcontext.S
-new file mode 100644
-index 00000000000..723cc237d87
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/getcontext.S
@@ -0,0 +1,63 @@
@@ -3296,9 +3213,6 @@ index 00000000000..723cc237d87
+
+PSEUDO_END (__getcontext)
+weak_alias (__getcontext, getcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/ipc_priv.h b/sysdeps/unix/sysv/linux/arc/ipc_priv.h
-new file mode 100644
-index 00000000000..309eb3064e9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ipc_priv.h
@@ -0,0 +1,21 @@
@@ -3323,9 +3237,6 @@ index 00000000000..309eb3064e9
+#include <sys/ipc.h> /* For __key_t */
+
+#define __IPC_64 0x0
-diff --git a/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h b/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h
-new file mode 100644
-index 00000000000..6c129398483
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h
@@ -0,0 +1,6 @@
@@ -3335,9 +3246,6 @@ index 00000000000..6c129398483
+#define SIGJMP_BUF_ALIGN __alignof__ (unsigned long int)
+#define MASK_WAS_SAVED_OFFSET (32 * sizeof (unsigned long int))
+#define SAVED_MASK_OFFSET (33 * sizeof (unsigned long int))
-diff --git a/sysdeps/unix/sysv/linux/arc/kernel-features.h b/sysdeps/unix/sysv/linux/arc/kernel-features.h
-new file mode 100644
-index 00000000000..00255337bc8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/kernel-features.h
@@ -0,0 +1,28 @@
@@ -3369,9 +3277,6 @@ index 00000000000..00255337bc8
+
+#undef __ASSUME_CLONE_DEFAULT
+#define __ASSUME_CLONE_BACKWARDS 1
-diff --git a/sysdeps/unix/sysv/linux/arc/ld.abilist b/sysdeps/unix/sysv/linux/arc/ld.abilist
-new file mode 100644
-index 00000000000..41183d7beed
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ld.abilist
@@ -0,0 +1,9 @@
@@ -3384,9 +3289,6 @@ index 00000000000..41183d7beed
+GLIBC_2.30 free F
+GLIBC_2.30 malloc F
+GLIBC_2.30 realloc F
-diff --git a/sysdeps/unix/sysv/linux/arc/ldsodefs.h b/sysdeps/unix/sysv/linux/arc/ldsodefs.h
-new file mode 100644
-index 00000000000..8c5c6800af1
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ldsodefs.h
@@ -0,0 +1,32 @@
@@ -3422,16 +3324,10 @@ index 00000000000..8c5c6800af1
+#define DL_STATIC_INIT(map) _dl_static_init (map)
+
+#endif /* ldsodefs.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist
-new file mode 100644
-index 00000000000..c6253c0ae8a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist
@@ -0,0 +1 @@
+GLIBC_2.30 __ctype_get_mb_cur_max F
-diff --git a/sysdeps/unix/sysv/linux/arc/libanl.abilist b/sysdeps/unix/sysv/linux/arc/libanl.abilist
-new file mode 100644
-index 00000000000..d3b753219ee
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libanl.abilist
@@ -0,0 +1,4 @@
@@ -3439,9 +3335,6 @@ index 00000000000..d3b753219ee
+GLIBC_2.30 gai_error F
+GLIBC_2.30 gai_suspend F
+GLIBC_2.30 getaddrinfo_a F
-diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
-new file mode 100644
-index 00000000000..823ae25bccf
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -0,0 +1,2084 @@
@@ -5529,17 +5422,11 @@ index 00000000000..823ae25bccf
+GLIBC_2.30 xencrypt F
+GLIBC_2.30 xprt_register F
+GLIBC_2.30 xprt_unregister F
-diff --git a/sysdeps/unix/sysv/linux/arc/libcrypt.abilist b/sysdeps/unix/sysv/linux/arc/libcrypt.abilist
-new file mode 100644
-index 00000000000..8d83578d8cf
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libcrypt.abilist
@@ -0,0 +1,2 @@
+GLIBC_2.30 crypt F
+GLIBC_2.30 crypt_r F
-diff --git a/sysdeps/unix/sysv/linux/arc/libdl.abilist b/sysdeps/unix/sysv/linux/arc/libdl.abilist
-new file mode 100644
-index 00000000000..3fc6d95b85b
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libdl.abilist
@@ -0,0 +1,9 @@
@@ -5552,9 +5439,6 @@ index 00000000000..3fc6d95b85b
+GLIBC_2.30 dlopen F
+GLIBC_2.30 dlsym F
+GLIBC_2.30 dlvsym F
-diff --git a/sysdeps/unix/sysv/linux/arc/libm.abilist b/sysdeps/unix/sysv/linux/arc/libm.abilist
-new file mode 100644
-index 00000000000..43f3a97e6f2
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libm.abilist
@@ -0,0 +1,753 @@
@@ -6311,9 +6195,6 @@ index 00000000000..43f3a97e6f2
+GLIBC_2.30 ynf32x F
+GLIBC_2.30 ynf64 F
+GLIBC_2.30 ynl F
-diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
-new file mode 100644
-index 00000000000..d89cf8d3014
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -0,0 +1,240 @@
@@ -6557,9 +6438,6 @@ index 00000000000..d89cf8d3014
+GLIBC_2.30 wait F
+GLIBC_2.30 waitpid F
+GLIBC_2.30 write F
-diff --git a/sysdeps/unix/sysv/linux/arc/libresolv.abilist b/sysdeps/unix/sysv/linux/arc/libresolv.abilist
-new file mode 100644
-index 00000000000..ca745f5b987
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libresolv.abilist
@@ -0,0 +1,79 @@
@@ -6642,9 +6520,6 @@ index 00000000000..ca745f5b987
+GLIBC_2.30 ns_sprintrr F
+GLIBC_2.30 ns_sprintrrf F
+GLIBC_2.30 ns_subdomain F
-diff --git a/sysdeps/unix/sysv/linux/arc/librt.abilist b/sysdeps/unix/sysv/linux/arc/librt.abilist
-new file mode 100644
-index 00000000000..8d39a086966
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/librt.abilist
@@ -0,0 +1,35 @@
@@ -6683,9 +6558,6 @@ index 00000000000..8d39a086966
+GLIBC_2.30 timer_getoverrun F
+GLIBC_2.30 timer_gettime F
+GLIBC_2.30 timer_settime F
-diff --git a/sysdeps/unix/sysv/linux/arc/libthread_db.abilist b/sysdeps/unix/sysv/linux/arc/libthread_db.abilist
-new file mode 100644
-index 00000000000..94220c95927
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libthread_db.abilist
@@ -0,0 +1,40 @@
@@ -6729,9 +6601,6 @@ index 00000000000..94220c95927
+GLIBC_2.30 td_thr_tlsbase F
+GLIBC_2.30 td_thr_tsd F
+GLIBC_2.30 td_thr_validate F
-diff --git a/sysdeps/unix/sysv/linux/arc/libutil.abilist b/sysdeps/unix/sysv/linux/arc/libutil.abilist
-new file mode 100644
-index 00000000000..f745157afa3
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libutil.abilist
@@ -0,0 +1,6 @@
@@ -6741,9 +6610,6 @@ index 00000000000..f745157afa3
+GLIBC_2.30 logout F
+GLIBC_2.30 logwtmp F
+GLIBC_2.30 openpty F
-diff --git a/sysdeps/unix/sysv/linux/arc/localplt.data b/sysdeps/unix/sysv/linux/arc/localplt.data
-new file mode 100644
-index 00000000000..e902fd0607a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/localplt.data
@@ -0,0 +1,16 @@
@@ -6763,9 +6629,6 @@ index 00000000000..e902fd0607a
+ld.so: _dl_catch_error
+ld.so: _dl_signal_exception
+ld.so: _dl_catch_exception
-diff --git a/sysdeps/unix/sysv/linux/arc/makecontext.c b/sysdeps/unix/sysv/linux/arc/makecontext.c
-new file mode 100644
-index 00000000000..3d46452e175
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/makecontext.c
@@ -0,0 +1,75 @@
@@ -6844,9 +6707,6 @@ index 00000000000..3d46452e175
+}
+
+weak_alias (__makecontext, makecontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/mmap_internal.h b/sysdeps/unix/sysv/linux/arc/mmap_internal.h
-new file mode 100644
-index 00000000000..51d0a25f26b
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/mmap_internal.h
@@ -0,0 +1,27 @@
@@ -6877,24 +6737,15 @@ index 00000000000..51d0a25f26b
+#include_next <mmap_internal.h>
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/profil-counter.h b/sysdeps/unix/sysv/linux/arc/profil-counter.h
-new file mode 100644
-index 00000000000..8a6a0bcf3d5
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/profil-counter.h
@@ -0,0 +1,2 @@
+/* We can use the ix86 version. */
+#include <sysdeps/unix/sysv/linux/i386/profil-counter.h>
-diff --git a/sysdeps/unix/sysv/linux/arc/pt-vfork.S b/sysdeps/unix/sysv/linux/arc/pt-vfork.S
-new file mode 100644
-index 00000000000..1cc89317007
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/pt-vfork.S
@@ -0,0 +1 @@
+/* Not needed. */
-diff --git a/sysdeps/unix/sysv/linux/arc/setcontext.S b/sysdeps/unix/sysv/linux/arc/setcontext.S
-new file mode 100644
-index 00000000000..8cf4ffcaf5a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/setcontext.S
@@ -0,0 +1,92 @@
@@ -6990,17 +6841,11 @@ index 00000000000..8cf4ffcaf5a
+ /* Exit with status 0. */
+ b HIDDEN_JUMPTARGET(exit)
+END (__startcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/shlib-versions b/sysdeps/unix/sysv/linux/arc/shlib-versions
-new file mode 100644
-index 00000000000..cbe457b9dbe
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/shlib-versions
@@ -0,0 +1,2 @@
+DEFAULT GLIBC_2.30
+ld=ld-linux-arc.so.2
-diff --git a/sysdeps/unix/sysv/linux/arc/sigaction.c b/sysdeps/unix/sysv/linux/arc/sigaction.c
-new file mode 100644
-index 00000000000..db7293865f3
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigaction.c
@@ -0,0 +1,31 @@
@@ -7035,9 +6880,6 @@ index 00000000000..db7293865f3
+#define RESET_SA_RESTORER(act, kact)
+
+#include <sysdeps/unix/sysv/linux/sigaction.c>
-diff --git a/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h b/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h
-new file mode 100644
-index 00000000000..acf03c6afd9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h
@@ -0,0 +1,23 @@
@@ -7064,9 +6906,6 @@ index 00000000000..acf03c6afd9
+
+#define SIGCONTEXT int _code, struct ucontext_t *
+#define GET_PC(ctx) ((void *) (ctx)->uc_mcontext.__scratch.__ret)
-diff --git a/sysdeps/unix/sysv/linux/arc/sigrestorer.S b/sysdeps/unix/sysv/linux/arc/sigrestorer.S
-new file mode 100644
-index 00000000000..573b54e36cf
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigrestorer.S
@@ -0,0 +1,29 @@
@@ -7099,9 +6938,6 @@ index 00000000000..573b54e36cf
+ ARC_TRAP_INSN
+ j_s [blink]
+PSEUDO_END_NOERRNO (__default_rt_sa_restorer)
-diff --git a/sysdeps/unix/sysv/linux/arc/swapcontext.S b/sysdeps/unix/sysv/linux/arc/swapcontext.S
-new file mode 100644
-index 00000000000..853d3805de6
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/swapcontext.S
@@ -0,0 +1,92 @@
@@ -7197,9 +7033,6 @@ index 00000000000..853d3805de6
+
+PSEUDO_END (__swapcontext)
+weak_alias (__swapcontext, swapcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/cachectl.h b/sysdeps/unix/sysv/linux/arc/sys/cachectl.h
-new file mode 100644
-index 00000000000..2d93e49e6a9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/cachectl.h
@@ -0,0 +1,36 @@
@@ -7239,9 +7072,6 @@ index 00000000000..2d93e49e6a9
+__END_DECLS
+
+#endif /* sys/cachectl.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/ucontext.h b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
-new file mode 100644
-index 00000000000..7e357bcd65e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
@@ -0,0 +1,63 @@
@@ -7308,9 +7138,6 @@ index 00000000000..7e357bcd65e
+#undef __ctx
+
+#endif /* sys/ucontext.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/user.h b/sysdeps/unix/sysv/linux/arc/sys/user.h
-new file mode 100644
-index 00000000000..50d0dc7827a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/user.h
@@ -0,0 +1,31 @@
@@ -7345,9 +7172,6 @@ index 00000000000..50d0dc7827a
+};
+
+#endif /* sys/user.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/syscall.S b/sysdeps/unix/sysv/linux/arc/syscall.S
-new file mode 100644
-index 00000000000..3fe5fcdd041
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/syscall.S
@@ -0,0 +1,38 @@
@@ -7389,18 +7213,12 @@ index 00000000000..3fe5fcdd041
+ brhi r0, -1024, .Lcall_syscall_err
+ j [blink]
+PSEUDO_END (syscall)
-diff --git a/sysdeps/unix/sysv/linux/arc/syscalls.list b/sysdeps/unix/sysv/linux/arc/syscalls.list
-new file mode 100644
-index 00000000000..d0ef5977ee0
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/syscalls.list
@@ -0,0 +1,3 @@
+# File name Caller Syscall name Args Strong name Weak names
+
+cacheflush - cacheflush i:pii _flush_cache cacheflush
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.c b/sysdeps/unix/sysv/linux/arc/sysdep.c
-new file mode 100644
-index 00000000000..5618f378515
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.c
@@ -0,0 +1,33 @@
@@ -7437,9 +7255,6 @@ index 00000000000..5618f378515
+#if IS_IN (libc)
+hidden_def (__syscall_error)
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.h b/sysdeps/unix/sysv/linux/arc/sysdep.h
-new file mode 100644
-index 00000000000..9ad95d97ae1
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.h
@@ -0,0 +1,251 @@
@@ -7694,9 +7509,6 @@ index 00000000000..9ad95d97ae1
+#endif /* !__ASSEMBLER__ */
+
+#endif /* linux/arc/sysdep.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/ucontext-macros.h b/sysdeps/unix/sysv/linux/arc/ucontext-macros.h
-new file mode 100644
-index 00000000000..ed261399c98
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ucontext-macros.h
@@ -0,0 +1,29 @@
@@ -7729,9 +7541,6 @@ index 00000000000..ed261399c98
+#define LOAD_REG(reg, rbase, off) ld reg, [rbase, UCONTEXT_MCONTEXT + off * 4]
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/ucontext_i.sym b/sysdeps/unix/sysv/linux/arc/ucontext_i.sym
-new file mode 100644
-index 00000000000..d84e92f9f54
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ucontext_i.sym
@@ -0,0 +1,20 @@
@@ -7755,9 +7564,6 @@ index 00000000000..d84e92f9f54
+UCONTEXT_MCONTEXT ucontext (uc_mcontext)
+UCONTEXT_SIGMASK ucontext (uc_sigmask)
+UCONTEXT_SIZE sizeof (ucontext_t)
-diff --git a/sysdeps/unix/sysv/linux/arc/vfork.S b/sysdeps/unix/sysv/linux/arc/vfork.S
-new file mode 100644
-index 00000000000..7f981d0681c
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/vfork.S
@@ -0,0 +1,42 @@
@@ -7803,11 +7609,9 @@ index 00000000000..7f981d0681c
+libc_hidden_def (__vfork)
+
+weak_alias (__vfork, vfork)
-diff --git a/sysdeps/unix/sysv/linux/syscall-names.list b/sysdeps/unix/sysv/linux/syscall-names.list
-index 21bf37c6274..1b12c8844a1 100644
--- a/sysdeps/unix/sysv/linux/syscall-names.list
+++ b/sysdeps/unix/sysv/linux/syscall-names.list
-@@ -42,6 +42,9 @@ adjtimex
+@@ -42,6 +42,9 @@
afs_syscall
alarm
alloc_hugepages
@@ -7817,11 +7621,9 @@ index 21bf37c6274..1b12c8844a1 100644
arch_prctl
arm_fadvise64_64
arm_sync_file_range
-diff --git a/timezone/zic.c b/timezone/zic.c
-index 2ebc66a9af5..8e8d94fac3a 100644
--- a/timezone/zic.c
+++ b/timezone/zic.c
-@@ -39,7 +39,7 @@ typedef int_fast64_t zic_t;
+@@ -39,7 +39,7 @@
#include <sys/stat.h>
#endif
#ifdef S_IRUSR
diff --git a/packages/glibc/2.30/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch b/packages/glibc/2.30/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
index 6f5dbc3..5941886 100644
--- a/packages/glibc/2.30/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
+++ b/packages/glibc/2.30/0002-x86-Assume-enable-cet-if-GCC-defaults-to-CET-BZ-2522.patch
@@ -8,16 +8,13 @@ is defined, yet CET functionality is not compiled and linked into the
dynamic loader, resulting in a linker failure due to undefined
references to _dl_cet_check and _dl_open_check.
---
- NEWS | 1 +
- configure | 23 ++++++++++++++++++++++-
- configure.ac | 9 ++++++++-
- 3 files changed, 31 insertions(+), 2 deletions(-)
+ configure | 23 ++++++++++++++++++++++-
+ configure.ac | 9 ++++++++-
+ 2 files changed, 30 insertions(+), 2 deletions(-)
-diff --git a/configure b/configure
-index c773c487b5..6d26b8246f 100755
--- a/configure
+++ b/configure
-@@ -3777,11 +3777,32 @@ else
+@@ -3777,11 +3777,32 @@
fi
@@ -51,11 +48,9 @@ index c773c487b5..6d26b8246f 100755
fi
-diff --git a/configure.ac b/configure.ac
-index 598ba6c4ae..7436485419 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -472,11 +472,18 @@ AC_ARG_ENABLE([mathvec],
+@@ -472,11 +472,18 @@
[build_mathvec=$enableval],
[build_mathvec=notset])
@@ -75,6 +70,3 @@ index 598ba6c4ae..7436485419 100644
# We keep the original values in `$config_*' and never modify them, so we
# can write them unchanged into config.make. Everything else uses
---
-2.20.1
-
diff --git a/packages/glibc/2.30/0003-Fix-build-with-GCC-10-when-long-double-double.patch b/packages/glibc/2.30/0003-Fix-build-with-GCC-10-when-long-double-double.patch
index ca0d8a7..d335a23 100644
--- a/packages/glibc/2.30/0003-Fix-build-with-GCC-10-when-long-double-double.patch
+++ b/packages/glibc/2.30/0003-Fix-build-with-GCC-10-when-long-double-double.patch
@@ -25,14 +25,12 @@ irrelevant for other reasons).
Tested with build-many-glibcs.py for arm-linux-gnueabi (compilers and
glibcs builds), where it fixes the build that previously failed.
---
- math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 122 insertions(+)
-diff --git a/math/Makefile b/math/Makefile
-index 84a8b94c74..0a5a40430e 100644
--- a/math/Makefile
+++ b/math/Makefile
-@@ -650,6 +650,128 @@ ifneq ($(long-double-fcts),yes)
+@@ -658,6 +658,128 @@
# We won't compile the `long double' code at all. Tell the `double' code
# to define aliases for the `FUNCl' names.
math-CPPFLAGS += -DNO_LONG_DOUBLE
@@ -161,6 +159,3 @@ index 84a8b94c74..0a5a40430e 100644
endif
# These files quiet sNaNs in a way that is optimized away without
---
-2.25.1
-
diff --git a/packages/glibc/2.31/0001-Add-ARC-architecture.patch b/packages/glibc/2.31/0001-Add-ARC-architecture.patch
index 6b5d514..e09be18 100644
--- a/packages/glibc/2.31/0001-Add-ARC-architecture.patch
+++ b/packages/glibc/2.31/0001-Add-ARC-architecture.patch
@@ -15,109 +15,109 @@ from 64-bit platforms), remove <asm/unistd.h> inclusion for
syscall numbers, GET_PC -> sigcontext_get_pc rename. Only
build-tested.]
---
- elf/elf.h | 70 +-
- locale/Makefile | 5 +-
- scripts/build-many-glibcs.py | 4 +
- stdlib/longlong.h | 6 +-
- support/Makefile | 5 -
- sysdeps/arc/Implies | 4 +
- sysdeps/arc/Makefile | 25 +
- sysdeps/arc/Versions | 6 +
- sysdeps/arc/__longjmp.S | 50 +
- sysdeps/arc/abort-instr.h | 2 +
- sysdeps/arc/atomic-machine.h | 73 +
- sysdeps/arc/bits/endianness.h | 15 +
- sysdeps/arc/bits/fenv.h | 72 +
- sysdeps/arc/bits/link.h | 52 +
- sysdeps/arc/bits/setjmp.h | 26 +
- sysdeps/arc/bsd-_setjmp.S | 1 +
- sysdeps/arc/bsd-setjmp.S | 1 +
- sysdeps/arc/configure | 14 +
- sysdeps/arc/configure.ac | 11 +
- sysdeps/arc/dl-machine.h | 340 +++
- sysdeps/arc/dl-runtime.c | 39 +
- sysdeps/arc/dl-sysdep.h | 25 +
- sysdeps/arc/dl-tls.h | 30 +
- sysdeps/arc/dl-trampoline.S | 80 +
- sysdeps/arc/entry.h | 5 +
- sysdeps/arc/gccframe.h | 21 +
- sysdeps/arc/gmp-mparam.h | 23 +
- sysdeps/arc/jmpbuf-offsets.h | 47 +
- sysdeps/arc/jmpbuf-unwind.h | 47 +
- sysdeps/arc/ldsodefs.h | 43 +
- sysdeps/arc/libc-tls.c | 27 +
- sysdeps/arc/machine-gmon.h | 35 +
- sysdeps/arc/memusage.h | 23 +
- sysdeps/arc/nofpu/Implies | 1 +
- sysdeps/arc/nofpu/libm-test-ulps | 390 +++
- sysdeps/arc/nofpu/libm-test-ulps-name | 1 +
- sysdeps/arc/nofpu/math-tests-exceptions.h | 27 +
- sysdeps/arc/nofpu/math-tests-rounding.h | 27 +
- sysdeps/arc/nptl/Makefile | 22 +
- sysdeps/arc/nptl/bits/pthreadtypes-arch.h | 43 +
- sysdeps/arc/nptl/bits/semaphore.h | 32 +
- sysdeps/arc/nptl/pthreaddef.h | 32 +
- sysdeps/arc/nptl/tcb-offsets.sym | 11 +
- sysdeps/arc/nptl/tls.h | 150 ++
- sysdeps/arc/preconfigure | 15 +
- sysdeps/arc/setjmp.S | 66 +
- sysdeps/arc/sfp-machine.h | 73 +
- sysdeps/arc/sotruss-lib.c | 51 +
- sysdeps/arc/stackinfo.h | 33 +
- sysdeps/arc/start.S | 89 +
- sysdeps/arc/sysdep.h | 48 +
- sysdeps/arc/tls-macros.h | 47 +
- sysdeps/arc/tst-audit.h | 23 +
- sysdeps/unix/sysv/linux/arc/Implies | 3 +
- sysdeps/unix/sysv/linux/arc/Makefile | 20 +
- sysdeps/unix/sysv/linux/arc/Versions | 16 +
- sysdeps/unix/sysv/linux/arc/arch-syscall.h | 317 +++
- sysdeps/unix/sysv/linux/arc/bits/procfs.h | 35 +
- .../sysv/linux/arc/bits/types/__sigset_t.h | 12 +
- sysdeps/unix/sysv/linux/arc/c++-types.data | 67 +
- sysdeps/unix/sysv/linux/arc/clone.S | 98 +
- sysdeps/unix/sysv/linux/arc/configure | 4 +
- sysdeps/unix/sysv/linux/arc/configure.ac | 4 +
- sysdeps/unix/sysv/linux/arc/dl-static.c | 84 +
- sysdeps/unix/sysv/linux/arc/getcontext.S | 63 +
- sysdeps/unix/sysv/linux/arc/ipc_priv.h | 21 +
- sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h | 6 +
- sysdeps/unix/sysv/linux/arc/kernel-features.h | 28 +
- sysdeps/unix/sysv/linux/arc/ld.abilist | 9 +
- sysdeps/unix/sysv/linux/arc/ldsodefs.h | 32 +
- .../sysv/linux/arc/libBrokenLocale.abilist | 1 +
- sysdeps/unix/sysv/linux/arc/libanl.abilist | 4 +
- sysdeps/unix/sysv/linux/arc/libc.abilist | 2084 +++++++++++++++++
- sysdeps/unix/sysv/linux/arc/libcrypt.abilist | 2 +
- sysdeps/unix/sysv/linux/arc/libdl.abilist | 9 +
- sysdeps/unix/sysv/linux/arc/libm.abilist | 753 ++++++
- .../unix/sysv/linux/arc/libpthread.abilist | 240 ++
- sysdeps/unix/sysv/linux/arc/libresolv.abilist | 79 +
- sysdeps/unix/sysv/linux/arc/librt.abilist | 35 +
- .../unix/sysv/linux/arc/libthread_db.abilist | 40 +
- sysdeps/unix/sysv/linux/arc/libutil.abilist | 6 +
- sysdeps/unix/sysv/linux/arc/localplt.data | 16 +
- sysdeps/unix/sysv/linux/arc/makecontext.c | 75 +
- sysdeps/unix/sysv/linux/arc/mmap_internal.h | 27 +
- sysdeps/unix/sysv/linux/arc/pt-vfork.S | 1 +
- sysdeps/unix/sysv/linux/arc/setcontext.S | 92 +
- sysdeps/unix/sysv/linux/arc/shlib-versions | 2 +
- sysdeps/unix/sysv/linux/arc/sigaction.c | 31 +
- sysdeps/unix/sysv/linux/arc/sigcontextinfo.h | 31 +
- sysdeps/unix/sysv/linux/arc/sigrestorer.S | 29 +
- sysdeps/unix/sysv/linux/arc/swapcontext.S | 92 +
- sysdeps/unix/sysv/linux/arc/sys/cachectl.h | 36 +
- sysdeps/unix/sysv/linux/arc/sys/ucontext.h | 63 +
- sysdeps/unix/sysv/linux/arc/sys/user.h | 31 +
- sysdeps/unix/sysv/linux/arc/syscall.S | 38 +
- sysdeps/unix/sysv/linux/arc/syscalls.list | 3 +
- sysdeps/unix/sysv/linux/arc/sysdep.c | 33 +
- sysdeps/unix/sysv/linux/arc/sysdep.h | 250 ++
- sysdeps/unix/sysv/linux/arc/ucontext-macros.h | 29 +
- sysdeps/unix/sysv/linux/arc/ucontext_i.sym | 20 +
- sysdeps/unix/sysv/linux/arc/vfork.S | 42 +
- sysdeps/unix/sysv/linux/syscall-names.list | 3 +
- timezone/zic.c | 2 +-
+ elf/elf.h | 70
+ locale/Makefile | 5
+ scripts/build-many-glibcs.py | 4
+ stdlib/longlong.h | 6
+ support/Makefile | 5
+ sysdeps/arc/Implies | 4
+ sysdeps/arc/Makefile | 25
+ sysdeps/arc/Versions | 6
+ sysdeps/arc/__longjmp.S | 50
+ sysdeps/arc/abort-instr.h | 2
+ sysdeps/arc/atomic-machine.h | 73
+ sysdeps/arc/bits/endianness.h | 15
+ sysdeps/arc/bits/fenv.h | 72
+ sysdeps/arc/bits/link.h | 52
+ sysdeps/arc/bits/setjmp.h | 26
+ sysdeps/arc/bsd-_setjmp.S | 1
+ sysdeps/arc/bsd-setjmp.S | 1
+ sysdeps/arc/configure | 14
+ sysdeps/arc/configure.ac | 11
+ sysdeps/arc/dl-machine.h | 340 +++
+ sysdeps/arc/dl-runtime.c | 39
+ sysdeps/arc/dl-sysdep.h | 25
+ sysdeps/arc/dl-tls.h | 30
+ sysdeps/arc/dl-trampoline.S | 80
+ sysdeps/arc/entry.h | 5
+ sysdeps/arc/gccframe.h | 21
+ sysdeps/arc/gmp-mparam.h | 23
+ sysdeps/arc/jmpbuf-offsets.h | 47
+ sysdeps/arc/jmpbuf-unwind.h | 47
+ sysdeps/arc/ldsodefs.h | 43
+ sysdeps/arc/libc-tls.c | 27
+ sysdeps/arc/machine-gmon.h | 35
+ sysdeps/arc/memusage.h | 23
+ sysdeps/arc/nofpu/Implies | 1
+ sysdeps/arc/nofpu/libm-test-ulps | 390 +++
+ sysdeps/arc/nofpu/libm-test-ulps-name | 1
+ sysdeps/arc/nofpu/math-tests-exceptions.h | 27
+ sysdeps/arc/nofpu/math-tests-rounding.h | 27
+ sysdeps/arc/nptl/Makefile | 22
+ sysdeps/arc/nptl/bits/pthreadtypes-arch.h | 43
+ sysdeps/arc/nptl/bits/semaphore.h | 32
+ sysdeps/arc/nptl/pthreaddef.h | 32
+ sysdeps/arc/nptl/tcb-offsets.sym | 11
+ sysdeps/arc/nptl/tls.h | 150 +
+ sysdeps/arc/preconfigure | 15
+ sysdeps/arc/setjmp.S | 66
+ sysdeps/arc/sfp-machine.h | 73
+ sysdeps/arc/sotruss-lib.c | 51
+ sysdeps/arc/stackinfo.h | 33
+ sysdeps/arc/start.S | 89
+ sysdeps/arc/sysdep.h | 48
+ sysdeps/arc/tls-macros.h | 47
+ sysdeps/arc/tst-audit.h | 23
+ sysdeps/unix/sysv/linux/arc/Implies | 3
+ sysdeps/unix/sysv/linux/arc/Makefile | 20
+ sysdeps/unix/sysv/linux/arc/Versions | 16
+ sysdeps/unix/sysv/linux/arc/arch-syscall.h | 317 +++
+ sysdeps/unix/sysv/linux/arc/bits/procfs.h | 35
+ sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h | 12
+ sysdeps/unix/sysv/linux/arc/c++-types.data | 67
+ sysdeps/unix/sysv/linux/arc/clone.S | 98
+ sysdeps/unix/sysv/linux/arc/configure | 4
+ sysdeps/unix/sysv/linux/arc/configure.ac | 4
+ sysdeps/unix/sysv/linux/arc/dl-static.c | 84
+ sysdeps/unix/sysv/linux/arc/getcontext.S | 63
+ sysdeps/unix/sysv/linux/arc/ipc_priv.h | 21
+ sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h | 6
+ sysdeps/unix/sysv/linux/arc/kernel-features.h | 28
+ sysdeps/unix/sysv/linux/arc/ld.abilist | 9
+ sysdeps/unix/sysv/linux/arc/ldsodefs.h | 32
+ sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist | 1
+ sysdeps/unix/sysv/linux/arc/libanl.abilist | 4
+ sysdeps/unix/sysv/linux/arc/libc.abilist | 2084 ++++++++++++++++++++
+ sysdeps/unix/sysv/linux/arc/libcrypt.abilist | 2
+ sysdeps/unix/sysv/linux/arc/libdl.abilist | 9
+ sysdeps/unix/sysv/linux/arc/libm.abilist | 753 +++++++
+ sysdeps/unix/sysv/linux/arc/libpthread.abilist | 240 ++
+ sysdeps/unix/sysv/linux/arc/libresolv.abilist | 79
+ sysdeps/unix/sysv/linux/arc/librt.abilist | 35
+ sysdeps/unix/sysv/linux/arc/libthread_db.abilist | 40
+ sysdeps/unix/sysv/linux/arc/libutil.abilist | 6
+ sysdeps/unix/sysv/linux/arc/localplt.data | 16
+ sysdeps/unix/sysv/linux/arc/makecontext.c | 75
+ sysdeps/unix/sysv/linux/arc/mmap_internal.h | 27
+ sysdeps/unix/sysv/linux/arc/pt-vfork.S | 1
+ sysdeps/unix/sysv/linux/arc/setcontext.S | 92
+ sysdeps/unix/sysv/linux/arc/shlib-versions | 2
+ sysdeps/unix/sysv/linux/arc/sigaction.c | 31
+ sysdeps/unix/sysv/linux/arc/sigcontextinfo.h | 31
+ sysdeps/unix/sysv/linux/arc/sigrestorer.S | 29
+ sysdeps/unix/sysv/linux/arc/swapcontext.S | 92
+ sysdeps/unix/sysv/linux/arc/sys/cachectl.h | 36
+ sysdeps/unix/sysv/linux/arc/sys/ucontext.h | 63
+ sysdeps/unix/sysv/linux/arc/sys/user.h | 31
+ sysdeps/unix/sysv/linux/arc/syscall.S | 38
+ sysdeps/unix/sysv/linux/arc/syscalls.list | 3
+ sysdeps/unix/sysv/linux/arc/sysdep.c | 33
+ sysdeps/unix/sysv/linux/arc/sysdep.h | 250 ++
+ sysdeps/unix/sysv/linux/arc/ucontext-macros.h | 29
+ sysdeps/unix/sysv/linux/arc/ucontext_i.sym | 20
+ sysdeps/unix/sysv/linux/arc/vfork.S | 42
+ sysdeps/unix/sysv/linux/syscall-names.list | 3
+ timezone/zic.c | 2
103 files changed, 7413 insertions(+), 13 deletions(-)
create mode 100644 sysdeps/arc/Implies
create mode 100644 sysdeps/arc/Makefile
@@ -216,11 +216,9 @@ build-tested.]
create mode 100644 sysdeps/unix/sysv/linux/arc/ucontext_i.sym
create mode 100644 sysdeps/unix/sysv/linux/arc/vfork.S
-diff --git a/elf/elf.h b/elf/elf.h
-index 2549a177d6..1d235cf3ac 100644
--- a/elf/elf.h
+++ b/elf/elf.h
-@@ -330,7 +330,7 @@ typedef struct
+@@ -330,7 +330,7 @@
#define EM_CLOUDSHIELD 192 /* CloudShield */
#define EM_COREA_1ST 193 /* KIPO-KAIST Core-A 1st gen. */
#define EM_COREA_2ND 194 /* KIPO-KAIST Core-A 2nd gen. */
@@ -229,7 +227,7 @@ index 2549a177d6..1d235cf3ac 100644
#define EM_OPEN8 196 /* Open8 RISC */
#define EM_RL78 197 /* Renesas RL78 */
#define EM_VIDEOCORE5 198 /* Broadcom VideoCore V */
-@@ -4027,6 +4027,74 @@ enum
+@@ -4027,6 +4027,74 @@
#define R_NDS32_TLS_TPOFF 102
#define R_NDS32_TLS_DESC 119
@@ -304,11 +302,9 @@ index 2549a177d6..1d235cf3ac 100644
__END_DECLS
#endif /* elf.h */
-diff --git a/locale/Makefile b/locale/Makefile
-index c9694e236e..95a4a432a9 100644
--- a/locale/Makefile
+++ b/locale/Makefile
-@@ -28,6 +28,7 @@ routines = setlocale findlocale loadlocale loadarchive \
+@@ -28,6 +28,7 @@
localeconv nl_langinfo nl_langinfo_l mb_cur_max \
newlocale duplocale freelocale uselocale
tests = tst-C-locale tst-locname tst-duplocale
@@ -316,7 +312,7 @@ index c9694e236e..95a4a432a9 100644
categories = ctype messages monetary numeric time paper name \
address telephone measurement identification collate
aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \
-@@ -62,10 +63,6 @@ lib-modules := charmap-dir simple-hash xmalloc xstrdup \
+@@ -62,10 +63,6 @@
GPERF = gperf
GPERFFLAGS = -acCgopt -k1,2,5,9,$$ -L ANSI-C
@@ -327,11 +323,9 @@ index c9694e236e..95a4a432a9 100644
include ../Rules
CFLAGS-md5.c += -I../crypt
-diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
-index 90b76caa93..1fdf4d44c7 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
-@@ -155,6 +155,9 @@ class Context(object):
+@@ -155,6 +155,9 @@
'cfg': ['--disable-multi-arch']}])
self.add_config(arch='aarch64_be',
os_name='linux-gnu')
@@ -341,7 +335,7 @@ index 90b76caa93..1fdf4d44c7 100755
self.add_config(arch='alpha',
os_name='linux-gnu')
self.add_config(arch='arm',
-@@ -1201,6 +1204,7 @@ class LinuxHeadersPolicyForUpdateSyscalls(object):
+@@ -1201,6 +1204,7 @@
def install_linux_headers(policy, cmdlist):
"""Install Linux kernel headers."""
arch_map = {'aarch64': 'arm64',
@@ -349,11 +343,9 @@ index 90b76caa93..1fdf4d44c7 100755
'alpha': 'alpha',
'arm': 'arm',
'csky': 'csky',
-diff --git a/stdlib/longlong.h b/stdlib/longlong.h
-index ee4aac1bb5..638b7894d4 100644
--- a/stdlib/longlong.h
+++ b/stdlib/longlong.h
-@@ -199,7 +199,8 @@ extern UDItype __udiv_qrnnd (UDItype *, UDItype, UDItype, UDItype);
+@@ -199,7 +199,8 @@
: "%r" ((USItype) (ah)), \
"rICal" ((USItype) (bh)), \
"%r" ((USItype) (al)), \
@@ -363,7 +355,7 @@ index ee4aac1bb5..638b7894d4 100644
#define sub_ddmmss(sh, sl, ah, al, bh, bl) \
__asm__ ("sub.f %1, %4, %5\n\tsbc %0, %2, %3" \
: "=r" ((USItype) (sh)), \
-@@ -207,7 +208,8 @@ extern UDItype __udiv_qrnnd (UDItype *, UDItype, UDItype, UDItype);
+@@ -207,7 +208,8 @@
: "r" ((USItype) (ah)), \
"rICal" ((USItype) (bh)), \
"r" ((USItype) (al)), \
@@ -373,11 +365,9 @@ index ee4aac1bb5..638b7894d4 100644
#define __umulsidi3(u,v) ((UDItype)(USItype)u*(USItype)v)
#ifdef __ARC_NORM__
-diff --git a/support/Makefile b/support/Makefile
-index 3325feb790..d9fdc46ffa 100644
--- a/support/Makefile
+++ b/support/Makefile
-@@ -188,12 +188,7 @@ CFLAGS-support_paths.c = \
+@@ -188,12 +188,7 @@
-DSBINDIR_PATH=\"$(sbindir)\" \
-DROOTSBINDIR_PATH=\"$(rootsbindir)\"
@@ -390,9 +380,6 @@ index 3325feb790..d9fdc46ffa 100644
ifeq (yes,$(have-selinux))
LDLIBS-$(LINKS_DSO_PROGRAM) += -lselinux
-diff --git a/sysdeps/arc/Implies b/sysdeps/arc/Implies
-new file mode 100644
-index 0000000000..a0f0b00cfa
--- /dev/null
+++ b/sysdeps/arc/Implies
@@ -0,0 +1,4 @@
@@ -400,9 +387,6 @@ index 0000000000..a0f0b00cfa
+wordsize-32
+ieee754/flt-32
+ieee754/dbl-64
-diff --git a/sysdeps/arc/Makefile b/sysdeps/arc/Makefile
-new file mode 100644
-index 0000000000..8d2fbe00c5
--- /dev/null
+++ b/sysdeps/arc/Makefile
@@ -0,0 +1,25 @@
@@ -431,9 +415,6 @@ index 0000000000..8d2fbe00c5
+ifeq ($(subdir),debug)
+CFLAGS-backtrace.c += -funwind-tables
+endif
-diff --git a/sysdeps/arc/Versions b/sysdeps/arc/Versions
-new file mode 100644
-index 0000000000..ca0856d2db
--- /dev/null
+++ b/sysdeps/arc/Versions
@@ -0,0 +1,6 @@
@@ -443,9 +424,6 @@ index 0000000000..ca0856d2db
+ __mcount;
+ }
+}
-diff --git a/sysdeps/arc/__longjmp.S b/sysdeps/arc/__longjmp.S
-new file mode 100644
-index 0000000000..8296aa445f
--- /dev/null
+++ b/sysdeps/arc/__longjmp.S
@@ -0,0 +1,50 @@
@@ -499,17 +477,11 @@ index 0000000000..8296aa445f
+ mov.z r0, 1 ; can't let setjmp return 0 when it is due to longjmp
+
+END (__longjmp)
-diff --git a/sysdeps/arc/abort-instr.h b/sysdeps/arc/abort-instr.h
-new file mode 100644
-index 0000000000..49f33613c4
--- /dev/null
+++ b/sysdeps/arc/abort-instr.h
@@ -0,0 +1,2 @@
+/* FLAG 1 is privilege mode only instruction, hence will crash any program. */
+#define ABORT_INSTRUCTION asm ("flag 1")
-diff --git a/sysdeps/arc/atomic-machine.h b/sysdeps/arc/atomic-machine.h
-new file mode 100644
-index 0000000000..bdc91d0558
--- /dev/null
+++ b/sysdeps/arc/atomic-machine.h
@@ -0,0 +1,73 @@
@@ -586,9 +558,6 @@ index 0000000000..bdc91d0558
+#endif
+
+#endif /* _ARC_BITS_ATOMIC_H */
-diff --git a/sysdeps/arc/bits/endianness.h b/sysdeps/arc/bits/endianness.h
-new file mode 100644
-index 0000000000..21fae520cd
--- /dev/null
+++ b/sysdeps/arc/bits/endianness.h
@@ -0,0 +1,15 @@
@@ -607,9 +576,6 @@ index 0000000000..21fae520cd
+# error "Big Endian NOt supported on ARC"
+#endif
+#endif /* bits/endianness.h */
-diff --git a/sysdeps/arc/bits/fenv.h b/sysdeps/arc/bits/fenv.h
-new file mode 100644
-index 0000000000..58388fb43a
--- /dev/null
+++ b/sysdeps/arc/bits/fenv.h
@@ -0,0 +1,72 @@
@@ -685,9 +651,6 @@ index 0000000000..58388fb43a
+/* Default floating-point control modes. */
+# define FE_DFL_MODE ((const femode_t *) -1L)
+#endif
-diff --git a/sysdeps/arc/bits/link.h b/sysdeps/arc/bits/link.h
-new file mode 100644
-index 0000000000..c4508ab666
--- /dev/null
+++ b/sysdeps/arc/bits/link.h
@@ -0,0 +1,52 @@
@@ -743,9 +706,6 @@ index 0000000000..c4508ab666
+ const char *symname);
+
+__END_DECLS
-diff --git a/sysdeps/arc/bits/setjmp.h b/sysdeps/arc/bits/setjmp.h
-new file mode 100644
-index 0000000000..3cb457d097
--- /dev/null
+++ b/sysdeps/arc/bits/setjmp.h
@@ -0,0 +1,26 @@
@@ -775,23 +735,14 @@ index 0000000000..3cb457d097
+typedef long int __jmp_buf[32];
+
+#endif
-diff --git a/sysdeps/arc/bsd-_setjmp.S b/sysdeps/arc/bsd-_setjmp.S
-new file mode 100644
-index 0000000000..90b99cd8c3
--- /dev/null
+++ b/sysdeps/arc/bsd-_setjmp.S
@@ -0,0 +1 @@
+/* _setjmp is in setjmp.S. */
-diff --git a/sysdeps/arc/bsd-setjmp.S b/sysdeps/arc/bsd-setjmp.S
-new file mode 100644
-index 0000000000..d3b823c118
--- /dev/null
+++ b/sysdeps/arc/bsd-setjmp.S
@@ -0,0 +1 @@
+/* setjmp is in setjmp.S. */
-diff --git a/sysdeps/arc/configure b/sysdeps/arc/configure
-new file mode 100644
-index 0000000000..52e286da2e
--- /dev/null
+++ b/sysdeps/arc/configure
@@ -0,0 +1,14 @@
@@ -809,9 +760,6 @@ index 0000000000..52e286da2e
+cat >>confdefs.h <<_ACEOF
+#define ASM_LINE_SEP $libc_cv_asm_line_sep
+_ACEOF
-diff --git a/sysdeps/arc/configure.ac b/sysdeps/arc/configure.ac
-new file mode 100644
-index 0000000000..1074d312f0
--- /dev/null
+++ b/sysdeps/arc/configure.ac
@@ -0,0 +1,11 @@
@@ -826,9 +774,6 @@ index 0000000000..1074d312f0
+# canonical newline as there's lots of code out there which will break
+libc_cv_asm_line_sep='`'
+AC_DEFINE_UNQUOTED(ASM_LINE_SEP, $libc_cv_asm_line_sep)
-diff --git a/sysdeps/arc/dl-machine.h b/sysdeps/arc/dl-machine.h
-new file mode 100644
-index 0000000000..c81acb9d4f
--- /dev/null
+++ b/sysdeps/arc/dl-machine.h
@@ -0,0 +1,340 @@
@@ -1172,9 +1117,6 @@ index 0000000000..c81acb9d4f
+}
+
+#endif /* RESOLVE_MAP */
-diff --git a/sysdeps/arc/dl-runtime.c b/sysdeps/arc/dl-runtime.c
-new file mode 100644
-index 0000000000..48f4a5a7e1
--- /dev/null
+++ b/sysdeps/arc/dl-runtime.c
@@ -0,0 +1,39 @@
@@ -1217,9 +1159,6 @@ index 0000000000..48f4a5a7e1
+#define reloc_offset reloc_index * sizeof (PLTREL)
+
+#include <elf/dl-runtime.c>
-diff --git a/sysdeps/arc/dl-sysdep.h b/sysdeps/arc/dl-sysdep.h
-new file mode 100644
-index 0000000000..ffc30b6937
--- /dev/null
+++ b/sysdeps/arc/dl-sysdep.h
@@ -0,0 +1,25 @@
@@ -1248,9 +1187,6 @@ index 0000000000..ffc30b6937
+#define DL_ARGV_NOT_RELRO 1
+
+#define DL_EXTERN_PROTECTED_DATA
-diff --git a/sysdeps/arc/dl-tls.h b/sysdeps/arc/dl-tls.h
-new file mode 100644
-index 0000000000..7f0cf91e40
--- /dev/null
+++ b/sysdeps/arc/dl-tls.h
@@ -0,0 +1,30 @@
@@ -1284,9 +1220,6 @@ index 0000000000..7f0cf91e40
+
+/* Value used for dtv entries for which the allocation is delayed. */
+#define TLS_DTV_UNALLOCATED ((void *) -1l)
-diff --git a/sysdeps/arc/dl-trampoline.S b/sysdeps/arc/dl-trampoline.S
-new file mode 100644
-index 0000000000..9da75fb1fe
--- /dev/null
+++ b/sysdeps/arc/dl-trampoline.S
@@ -0,0 +1,80 @@
@@ -1370,9 +1303,6 @@ index 0000000000..9da75fb1fe
+ cfi_adjust_cfa_offset (-4)
+ cfi_restore (r0)
+END (_dl_runtime_resolve)
-diff --git a/sysdeps/arc/entry.h b/sysdeps/arc/entry.h
-new file mode 100644
-index 0000000000..adb01d981a
--- /dev/null
+++ b/sysdeps/arc/entry.h
@@ -0,0 +1,5 @@
@@ -1381,9 +1311,6 @@ index 0000000000..adb01d981a
+#endif
+
+#define ENTRY_POINT __start
-diff --git a/sysdeps/arc/gccframe.h b/sysdeps/arc/gccframe.h
-new file mode 100644
-index 0000000000..40487fa77b
--- /dev/null
+++ b/sysdeps/arc/gccframe.h
@@ -0,0 +1,21 @@
@@ -1408,9 +1335,6 @@ index 0000000000..40487fa77b
+#define FIRST_PSEUDO_REGISTER 40
+
+#include <sysdeps/generic/gccframe.h>
-diff --git a/sysdeps/arc/gmp-mparam.h b/sysdeps/arc/gmp-mparam.h
-new file mode 100644
-index 0000000000..e30695fc6b
--- /dev/null
+++ b/sysdeps/arc/gmp-mparam.h
@@ -0,0 +1,23 @@
@@ -1437,9 +1361,6 @@ index 0000000000..e30695fc6b
+#include <sysdeps/generic/gmp-mparam.h>
+
+#define IEEE_DOUBLE_BIG_ENDIAN 0
-diff --git a/sysdeps/arc/jmpbuf-offsets.h b/sysdeps/arc/jmpbuf-offsets.h
-new file mode 100644
-index 0000000000..9760f3a389
--- /dev/null
+++ b/sysdeps/arc/jmpbuf-offsets.h
@@ -0,0 +1,47 @@
@@ -1490,9 +1411,6 @@ index 0000000000..9760f3a389
+
+/* Helper for generic ____longjmp_chk(). */
+#define JB_FRAME_ADDRESS(buf) ((void *) (unsigned long int) (buf[JB_SP]))
-diff --git a/sysdeps/arc/jmpbuf-unwind.h b/sysdeps/arc/jmpbuf-unwind.h
-new file mode 100644
-index 0000000000..47be5758c7
--- /dev/null
+++ b/sysdeps/arc/jmpbuf-unwind.h
@@ -0,0 +1,47 @@
@@ -1543,9 +1461,6 @@ index 0000000000..47be5758c7
+
+/* We use the normal longjmp for unwinding. */
+#define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val)
-diff --git a/sysdeps/arc/ldsodefs.h b/sysdeps/arc/ldsodefs.h
-new file mode 100644
-index 0000000000..53ef4e1e83
--- /dev/null
+++ b/sysdeps/arc/ldsodefs.h
@@ -0,0 +1,43 @@
@@ -1592,9 +1507,6 @@ index 0000000000..53ef4e1e83
+#include_next <ldsodefs.h>
+
+#endif
-diff --git a/sysdeps/arc/libc-tls.c b/sysdeps/arc/libc-tls.c
-new file mode 100644
-index 0000000000..903a75a41b
--- /dev/null
+++ b/sysdeps/arc/libc-tls.c
@@ -0,0 +1,27 @@
@@ -1625,9 +1537,6 @@ index 0000000000..903a75a41b
+ dtv_t *dtv = THREAD_DTV ();
+ return (char *) dtv[1].pointer.val + ti->ti_offset;
+}
-diff --git a/sysdeps/arc/machine-gmon.h b/sysdeps/arc/machine-gmon.h
-new file mode 100644
-index 0000000000..1d9e8108d9
--- /dev/null
+++ b/sysdeps/arc/machine-gmon.h
@@ -0,0 +1,35 @@
@@ -1666,9 +1575,6 @@ index 0000000000..1d9e8108d9
+ __mcount_internal ((unsigned long int) frompc, \
+ (unsigned long int) __builtin_return_address(0)); \
+}
-diff --git a/sysdeps/arc/memusage.h b/sysdeps/arc/memusage.h
-new file mode 100644
-index 0000000000..29f234f5ba
--- /dev/null
+++ b/sysdeps/arc/memusage.h
@@ -0,0 +1,23 @@
@@ -1695,16 +1601,10 @@ index 0000000000..29f234f5ba
+#define uatomic32_t unsigned int
+
+#include <sysdeps/generic/memusage.h>
-diff --git a/sysdeps/arc/nofpu/Implies b/sysdeps/arc/nofpu/Implies
-new file mode 100644
-index 0000000000..abcbadb25f
--- /dev/null
+++ b/sysdeps/arc/nofpu/Implies
@@ -0,0 +1 @@
+ieee754/soft-fp
-diff --git a/sysdeps/arc/nofpu/libm-test-ulps b/sysdeps/arc/nofpu/libm-test-ulps
-new file mode 100644
-index 0000000000..0e8ef313fa
--- /dev/null
+++ b/sysdeps/arc/nofpu/libm-test-ulps
@@ -0,0 +1,390 @@
@@ -2098,16 +1998,10 @@ index 0000000000..0e8ef313fa
+ifloat: 3
+
+# end of automatic generation
-diff --git a/sysdeps/arc/nofpu/libm-test-ulps-name b/sysdeps/arc/nofpu/libm-test-ulps-name
-new file mode 100644
-index 0000000000..8c4fba4f9a
--- /dev/null
+++ b/sysdeps/arc/nofpu/libm-test-ulps-name
@@ -0,0 +1 @@
+ARC
-diff --git a/sysdeps/arc/nofpu/math-tests-exceptions.h b/sysdeps/arc/nofpu/math-tests-exceptions.h
-new file mode 100644
-index 0000000000..f5c0b73589
--- /dev/null
+++ b/sysdeps/arc/nofpu/math-tests-exceptions.h
@@ -0,0 +1,27 @@
@@ -2138,9 +2032,6 @@ index 0000000000..f5c0b73589
+#define EXCEPTION_TESTS_long_double 0
+
+#endif
-diff --git a/sysdeps/arc/nofpu/math-tests-rounding.h b/sysdeps/arc/nofpu/math-tests-rounding.h
-new file mode 100644
-index 0000000000..e8f76338b1
--- /dev/null
+++ b/sysdeps/arc/nofpu/math-tests-rounding.h
@@ -0,0 +1,27 @@
@@ -2171,9 +2062,6 @@ index 0000000000..e8f76338b1
+#define ROUNDING_TESTS_long_double(MODE) ((MODE) == FE_TONEAREST)
+
+#endif
-diff --git a/sysdeps/arc/nptl/Makefile b/sysdeps/arc/nptl/Makefile
-new file mode 100644
-index 0000000000..3c33c9cc11
--- /dev/null
+++ b/sysdeps/arc/nptl/Makefile
@@ -0,0 +1,22 @@
@@ -2199,9 +2087,6 @@ index 0000000000..3c33c9cc11
+ifeq ($(subdir),csu)
+gen-as-const-headers += tcb-offsets.sym
+endif
-diff --git a/sysdeps/arc/nptl/bits/pthreadtypes-arch.h b/sysdeps/arc/nptl/bits/pthreadtypes-arch.h
-new file mode 100644
-index 0000000000..c104ad4444
--- /dev/null
+++ b/sysdeps/arc/nptl/bits/pthreadtypes-arch.h
@@ -0,0 +1,43 @@
@@ -2248,9 +2133,6 @@ index 0000000000..c104ad4444
+#define __ONCE_ALIGNMENT
+
+#endif /* bits/pthreadtypes-arch.h */
-diff --git a/sysdeps/arc/nptl/bits/semaphore.h b/sysdeps/arc/nptl/bits/semaphore.h
-new file mode 100644
-index 0000000000..662d08401d
--- /dev/null
+++ b/sysdeps/arc/nptl/bits/semaphore.h
@@ -0,0 +1,32 @@
@@ -2286,9 +2168,6 @@ index 0000000000..662d08401d
+ char __size[__SIZEOF_SEM_T];
+ long int __align;
+} sem_t;
-diff --git a/sysdeps/arc/nptl/pthreaddef.h b/sysdeps/arc/nptl/pthreaddef.h
-new file mode 100644
-index 0000000000..80a109bbd5
--- /dev/null
+++ b/sysdeps/arc/nptl/pthreaddef.h
@@ -0,0 +1,32 @@
@@ -2324,9 +2203,6 @@ index 0000000000..80a109bbd5
+
+/* Location of current stack frame. */
+#define CURRENT_STACK_FRAME __builtin_frame_address (0)
-diff --git a/sysdeps/arc/nptl/tcb-offsets.sym b/sysdeps/arc/nptl/tcb-offsets.sym
-new file mode 100644
-index 0000000000..56950e0676
--- /dev/null
+++ b/sysdeps/arc/nptl/tcb-offsets.sym
@@ -0,0 +1,11 @@
@@ -2341,9 +2217,6 @@ index 0000000000..56950e0676
+TLS_TCB_SIZE sizeof(tcbhead_t)
+
+PTHREAD_TID offsetof(struct pthread, tid)
-diff --git a/sysdeps/arc/nptl/tls.h b/sysdeps/arc/nptl/tls.h
-new file mode 100644
-index 0000000000..2c90109d57
--- /dev/null
+++ b/sysdeps/arc/nptl/tls.h
@@ -0,0 +1,150 @@
@@ -2497,9 +2370,6 @@ index 0000000000..2c90109d57
+#endif /* __ASSEMBLER__ */
+
+#endif /* tls.h */
-diff --git a/sysdeps/arc/preconfigure b/sysdeps/arc/preconfigure
-new file mode 100644
-index 0000000000..d9c5429f40
--- /dev/null
+++ b/sysdeps/arc/preconfigure
@@ -0,0 +1,15 @@
@@ -2518,9 +2388,6 @@ index 0000000000..d9c5429f40
+ ;;
+
+esac
-diff --git a/sysdeps/arc/setjmp.S b/sysdeps/arc/setjmp.S
-new file mode 100644
-index 0000000000..518545a99e
--- /dev/null
+++ b/sysdeps/arc/setjmp.S
@@ -0,0 +1,66 @@
@@ -2590,9 +2457,6 @@ index 0000000000..518545a99e
+END (__sigsetjmp)
+
+libc_hidden_def (__sigsetjmp)
-diff --git a/sysdeps/arc/sfp-machine.h b/sysdeps/arc/sfp-machine.h
-new file mode 100644
-index 0000000000..5ceaf56a98
--- /dev/null
+++ b/sysdeps/arc/sfp-machine.h
@@ -0,0 +1,73 @@
@@ -2669,9 +2533,6 @@ index 0000000000..5ceaf56a98
+ } while (0)
+
+#define _FP_TININESS_AFTER_ROUNDING 0
-diff --git a/sysdeps/arc/sotruss-lib.c b/sysdeps/arc/sotruss-lib.c
-new file mode 100644
-index 0000000000..ffbb5bbd6d
--- /dev/null
+++ b/sysdeps/arc/sotruss-lib.c
@@ -0,0 +1,51 @@
@@ -2726,9 +2587,6 @@ index 0000000000..ffbb5bbd6d
+
+ return 0;
+}
-diff --git a/sysdeps/arc/stackinfo.h b/sysdeps/arc/stackinfo.h
-new file mode 100644
-index 0000000000..fe69161382
--- /dev/null
+++ b/sysdeps/arc/stackinfo.h
@@ -0,0 +1,33 @@
@@ -2765,9 +2623,6 @@ index 0000000000..fe69161382
+#define DEFAULT_STACK_PERMS (PF_R|PF_W)
+
+#endif /* stackinfo.h */
-diff --git a/sysdeps/arc/start.S b/sysdeps/arc/start.S
-new file mode 100644
-index 0000000000..4ade1e871f
--- /dev/null
+++ b/sysdeps/arc/start.S
@@ -0,0 +1,89 @@
@@ -2860,9 +2715,6 @@ index 0000000000..4ade1e871f
+ .long 0
+ .weak data_start
+ data_start = __data_start
-diff --git a/sysdeps/arc/sysdep.h b/sysdeps/arc/sysdep.h
-new file mode 100644
-index 0000000000..127e9b01e7
--- /dev/null
+++ b/sysdeps/arc/sysdep.h
@@ -0,0 +1,48 @@
@@ -2914,9 +2766,6 @@ index 0000000000..127e9b01e7
+# define CALL_MCOUNT /* Do nothing for now. */
+
+#endif /* __ASSEMBLER__ */
-diff --git a/sysdeps/arc/tls-macros.h b/sysdeps/arc/tls-macros.h
-new file mode 100644
-index 0000000000..4d54683eda
--- /dev/null
+++ b/sysdeps/arc/tls-macros.h
@@ -0,0 +1,47 @@
@@ -2967,9 +2816,6 @@ index 0000000000..4d54683eda
+ "add %0, %1, %0 \n" \
+ : "=&r" (__result) : "r" (tp)); \
+ __result; })
-diff --git a/sysdeps/arc/tst-audit.h b/sysdeps/arc/tst-audit.h
-new file mode 100644
-index 0000000000..9237ad2440
--- /dev/null
+++ b/sysdeps/arc/tst-audit.h
@@ -0,0 +1,23 @@
@@ -2996,18 +2842,12 @@ index 0000000000..9237ad2440
+#define La_regs La_arc_regs
+#define La_retval La_arc_retval
+#define int_retval lrv_reg[0]
-diff --git a/sysdeps/unix/sysv/linux/arc/Implies b/sysdeps/unix/sysv/linux/arc/Implies
-new file mode 100644
-index 0000000000..7f739a0340
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Implies
@@ -0,0 +1,3 @@
+arc/nptl
+unix/sysv/linux/generic/wordsize-32
+unix/sysv/linux/generic
-diff --git a/sysdeps/unix/sysv/linux/arc/Makefile b/sysdeps/unix/sysv/linux/arc/Makefile
-new file mode 100644
-index 0000000000..a6c6dfc6ec
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Makefile
@@ -0,0 +1,20 @@
@@ -3031,9 +2871,6 @@ index 0000000000..a6c6dfc6ec
+sysdep-dl-routines += dl-static
+endif
+endif
-diff --git a/sysdeps/unix/sysv/linux/arc/Versions b/sysdeps/unix/sysv/linux/arc/Versions
-new file mode 100644
-index 0000000000..3eedf26ae2
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/Versions
@@ -0,0 +1,16 @@
@@ -3053,9 +2890,6 @@ index 0000000000..3eedf26ae2
+ __default_rt_sa_restorer;
+ }
+}
-diff --git a/sysdeps/unix/sysv/linux/arc/arch-syscall.h b/sysdeps/unix/sysv/linux/arc/arch-syscall.h
-new file mode 100644
-index 0000000000..db25a17ad0
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/arch-syscall.h
@@ -0,0 +1,317 @@
@@ -3376,9 +3210,6 @@ index 0000000000..db25a17ad0
+#define __NR_waitid 95
+#define __NR_write 64
+#define __NR_writev 66
-diff --git a/sysdeps/unix/sysv/linux/arc/bits/procfs.h b/sysdeps/unix/sysv/linux/arc/bits/procfs.h
-new file mode 100644
-index 0000000000..b37deaee58
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/bits/procfs.h
@@ -0,0 +1,35 @@
@@ -3417,9 +3248,6 @@ index 0000000000..b37deaee58
+
+/* There's no seperate floating point reg file in ARCv2. */
+typedef struct { } elf_fpregset_t;
-diff --git a/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h b/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h
-new file mode 100644
-index 0000000000..795638a30b
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/bits/types/__sigset_t.h
@@ -0,0 +1,12 @@
@@ -3435,9 +3263,6 @@ index 0000000000..795638a30b
+} __sigset_t;
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/c++-types.data b/sysdeps/unix/sysv/linux/arc/c++-types.data
-new file mode 100644
-index 0000000000..303f4570c8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/c++-types.data
@@ -0,0 +1,67 @@
@@ -3508,9 +3333,6 @@ index 0000000000..303f4570c8
+useconds_t:j
+ushort:t
+u_short:t
-diff --git a/sysdeps/unix/sysv/linux/arc/clone.S b/sysdeps/unix/sysv/linux/arc/clone.S
-new file mode 100644
-index 0000000000..55c2a2b60e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/clone.S
@@ -0,0 +1,98 @@
@@ -3612,9 +3434,6 @@ index 0000000000..55c2a2b60e
+PSEUDO_END (__clone)
+libc_hidden_def (__clone)
+weak_alias (__clone, clone)
-diff --git a/sysdeps/unix/sysv/linux/arc/configure b/sysdeps/unix/sysv/linux/arc/configure
-new file mode 100644
-index 0000000000..f74fa7cb02
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/configure
@@ -0,0 +1,4 @@
@@ -3622,9 +3441,6 @@ index 0000000000..f74fa7cb02
+ # Local configure fragment for sysdeps/unix/sysv/linux/arc.
+
+arch_minimum_kernel=3.9.0
-diff --git a/sysdeps/unix/sysv/linux/arc/configure.ac b/sysdeps/unix/sysv/linux/arc/configure.ac
-new file mode 100644
-index 0000000000..a9528032d3
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/configure.ac
@@ -0,0 +1,4 @@
@@ -3632,9 +3448,6 @@ index 0000000000..a9528032d3
+# Local configure fragment for sysdeps/unix/sysv/linux/arc.
+
+arch_minimum_kernel=3.9.0
-diff --git a/sysdeps/unix/sysv/linux/arc/dl-static.c b/sysdeps/unix/sysv/linux/arc/dl-static.c
-new file mode 100644
-index 0000000000..1a8757c984
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/dl-static.c
@@ -0,0 +1,84 @@
@@ -3722,9 +3535,6 @@ index 0000000000..1a8757c984
+}
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/getcontext.S b/sysdeps/unix/sysv/linux/arc/getcontext.S
-new file mode 100644
-index 0000000000..723cc237d8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/getcontext.S
@@ -0,0 +1,63 @@
@@ -3791,9 +3601,6 @@ index 0000000000..723cc237d8
+
+PSEUDO_END (__getcontext)
+weak_alias (__getcontext, getcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/ipc_priv.h b/sysdeps/unix/sysv/linux/arc/ipc_priv.h
-new file mode 100644
-index 0000000000..309eb3064e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ipc_priv.h
@@ -0,0 +1,21 @@
@@ -3818,9 +3625,6 @@ index 0000000000..309eb3064e
+#include <sys/ipc.h> /* For __key_t */
+
+#define __IPC_64 0x0
-diff --git a/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h b/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h
-new file mode 100644
-index 0000000000..6c12939848
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/jmp_buf-macros.h
@@ -0,0 +1,6 @@
@@ -3830,9 +3634,6 @@ index 0000000000..6c12939848
+#define SIGJMP_BUF_ALIGN __alignof__ (unsigned long int)
+#define MASK_WAS_SAVED_OFFSET (32 * sizeof (unsigned long int))
+#define SAVED_MASK_OFFSET (33 * sizeof (unsigned long int))
-diff --git a/sysdeps/unix/sysv/linux/arc/kernel-features.h b/sysdeps/unix/sysv/linux/arc/kernel-features.h
-new file mode 100644
-index 0000000000..00255337bc
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/kernel-features.h
@@ -0,0 +1,28 @@
@@ -3864,9 +3665,6 @@ index 0000000000..00255337bc
+
+#undef __ASSUME_CLONE_DEFAULT
+#define __ASSUME_CLONE_BACKWARDS 1
-diff --git a/sysdeps/unix/sysv/linux/arc/ld.abilist b/sysdeps/unix/sysv/linux/arc/ld.abilist
-new file mode 100644
-index 0000000000..41183d7bee
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ld.abilist
@@ -0,0 +1,9 @@
@@ -3879,9 +3677,6 @@ index 0000000000..41183d7bee
+GLIBC_2.30 free F
+GLIBC_2.30 malloc F
+GLIBC_2.30 realloc F
-diff --git a/sysdeps/unix/sysv/linux/arc/ldsodefs.h b/sysdeps/unix/sysv/linux/arc/ldsodefs.h
-new file mode 100644
-index 0000000000..8c5c6800af
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ldsodefs.h
@@ -0,0 +1,32 @@
@@ -3917,16 +3712,10 @@ index 0000000000..8c5c6800af
+#define DL_STATIC_INIT(map) _dl_static_init (map)
+
+#endif /* ldsodefs.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist
-new file mode 100644
-index 0000000000..c6253c0ae8
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libBrokenLocale.abilist
@@ -0,0 +1 @@
+GLIBC_2.30 __ctype_get_mb_cur_max F
-diff --git a/sysdeps/unix/sysv/linux/arc/libanl.abilist b/sysdeps/unix/sysv/linux/arc/libanl.abilist
-new file mode 100644
-index 0000000000..d3b753219e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libanl.abilist
@@ -0,0 +1,4 @@
@@ -3934,9 +3723,6 @@ index 0000000000..d3b753219e
+GLIBC_2.30 gai_error F
+GLIBC_2.30 gai_suspend F
+GLIBC_2.30 getaddrinfo_a F
-diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist
-new file mode 100644
-index 0000000000..823ae25bcc
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libc.abilist
@@ -0,0 +1,2084 @@
@@ -6024,17 +5810,11 @@ index 0000000000..823ae25bcc
+GLIBC_2.30 xencrypt F
+GLIBC_2.30 xprt_register F
+GLIBC_2.30 xprt_unregister F
-diff --git a/sysdeps/unix/sysv/linux/arc/libcrypt.abilist b/sysdeps/unix/sysv/linux/arc/libcrypt.abilist
-new file mode 100644
-index 0000000000..8d83578d8c
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libcrypt.abilist
@@ -0,0 +1,2 @@
+GLIBC_2.30 crypt F
+GLIBC_2.30 crypt_r F
-diff --git a/sysdeps/unix/sysv/linux/arc/libdl.abilist b/sysdeps/unix/sysv/linux/arc/libdl.abilist
-new file mode 100644
-index 0000000000..3fc6d95b85
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libdl.abilist
@@ -0,0 +1,9 @@
@@ -6047,9 +5827,6 @@ index 0000000000..3fc6d95b85
+GLIBC_2.30 dlopen F
+GLIBC_2.30 dlsym F
+GLIBC_2.30 dlvsym F
-diff --git a/sysdeps/unix/sysv/linux/arc/libm.abilist b/sysdeps/unix/sysv/linux/arc/libm.abilist
-new file mode 100644
-index 0000000000..43f3a97e6f
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libm.abilist
@@ -0,0 +1,753 @@
@@ -6806,9 +6583,6 @@ index 0000000000..43f3a97e6f
+GLIBC_2.30 ynf32x F
+GLIBC_2.30 ynf64 F
+GLIBC_2.30 ynl F
-diff --git a/sysdeps/unix/sysv/linux/arc/libpthread.abilist b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
-new file mode 100644
-index 0000000000..d89cf8d301
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libpthread.abilist
@@ -0,0 +1,240 @@
@@ -7052,9 +6826,6 @@ index 0000000000..d89cf8d301
+GLIBC_2.30 wait F
+GLIBC_2.30 waitpid F
+GLIBC_2.30 write F
-diff --git a/sysdeps/unix/sysv/linux/arc/libresolv.abilist b/sysdeps/unix/sysv/linux/arc/libresolv.abilist
-new file mode 100644
-index 0000000000..ca745f5b98
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libresolv.abilist
@@ -0,0 +1,79 @@
@@ -7137,9 +6908,6 @@ index 0000000000..ca745f5b98
+GLIBC_2.30 ns_sprintrr F
+GLIBC_2.30 ns_sprintrrf F
+GLIBC_2.30 ns_subdomain F
-diff --git a/sysdeps/unix/sysv/linux/arc/librt.abilist b/sysdeps/unix/sysv/linux/arc/librt.abilist
-new file mode 100644
-index 0000000000..8d39a08696
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/librt.abilist
@@ -0,0 +1,35 @@
@@ -7178,9 +6946,6 @@ index 0000000000..8d39a08696
+GLIBC_2.30 timer_getoverrun F
+GLIBC_2.30 timer_gettime F
+GLIBC_2.30 timer_settime F
-diff --git a/sysdeps/unix/sysv/linux/arc/libthread_db.abilist b/sysdeps/unix/sysv/linux/arc/libthread_db.abilist
-new file mode 100644
-index 0000000000..94220c9592
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libthread_db.abilist
@@ -0,0 +1,40 @@
@@ -7224,9 +6989,6 @@ index 0000000000..94220c9592
+GLIBC_2.30 td_thr_tlsbase F
+GLIBC_2.30 td_thr_tsd F
+GLIBC_2.30 td_thr_validate F
-diff --git a/sysdeps/unix/sysv/linux/arc/libutil.abilist b/sysdeps/unix/sysv/linux/arc/libutil.abilist
-new file mode 100644
-index 0000000000..f745157afa
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/libutil.abilist
@@ -0,0 +1,6 @@
@@ -7236,9 +6998,6 @@ index 0000000000..f745157afa
+GLIBC_2.30 logout F
+GLIBC_2.30 logwtmp F
+GLIBC_2.30 openpty F
-diff --git a/sysdeps/unix/sysv/linux/arc/localplt.data b/sysdeps/unix/sysv/linux/arc/localplt.data
-new file mode 100644
-index 0000000000..e902fd0607
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/localplt.data
@@ -0,0 +1,16 @@
@@ -7258,9 +7017,6 @@ index 0000000000..e902fd0607
+ld.so: _dl_catch_error
+ld.so: _dl_signal_exception
+ld.so: _dl_catch_exception
-diff --git a/sysdeps/unix/sysv/linux/arc/makecontext.c b/sysdeps/unix/sysv/linux/arc/makecontext.c
-new file mode 100644
-index 0000000000..3d46452e17
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/makecontext.c
@@ -0,0 +1,75 @@
@@ -7339,9 +7095,6 @@ index 0000000000..3d46452e17
+}
+
+weak_alias (__makecontext, makecontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/mmap_internal.h b/sysdeps/unix/sysv/linux/arc/mmap_internal.h
-new file mode 100644
-index 0000000000..51d0a25f26
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/mmap_internal.h
@@ -0,0 +1,27 @@
@@ -7372,16 +7125,10 @@ index 0000000000..51d0a25f26
+#include_next <mmap_internal.h>
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/pt-vfork.S b/sysdeps/unix/sysv/linux/arc/pt-vfork.S
-new file mode 100644
-index 0000000000..1cc8931700
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/pt-vfork.S
@@ -0,0 +1 @@
+/* Not needed. */
-diff --git a/sysdeps/unix/sysv/linux/arc/setcontext.S b/sysdeps/unix/sysv/linux/arc/setcontext.S
-new file mode 100644
-index 0000000000..8cf4ffcaf5
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/setcontext.S
@@ -0,0 +1,92 @@
@@ -7477,17 +7224,11 @@ index 0000000000..8cf4ffcaf5
+ /* Exit with status 0. */
+ b HIDDEN_JUMPTARGET(exit)
+END (__startcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/shlib-versions b/sysdeps/unix/sysv/linux/arc/shlib-versions
-new file mode 100644
-index 0000000000..cbe457b9db
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/shlib-versions
@@ -0,0 +1,2 @@
+DEFAULT GLIBC_2.30
+ld=ld-linux-arc.so.2
-diff --git a/sysdeps/unix/sysv/linux/arc/sigaction.c b/sysdeps/unix/sysv/linux/arc/sigaction.c
-new file mode 100644
-index 0000000000..db7293865f
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigaction.c
@@ -0,0 +1,31 @@
@@ -7522,9 +7263,6 @@ index 0000000000..db7293865f
+#define RESET_SA_RESTORER(act, kact)
+
+#include <sysdeps/unix/sysv/linux/sigaction.c>
-diff --git a/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h b/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h
-new file mode 100644
-index 0000000000..db5f4b6d21
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigcontextinfo.h
@@ -0,0 +1,31 @@
@@ -7559,9 +7297,6 @@ index 0000000000..db5f4b6d21
+}
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/sigrestorer.S b/sysdeps/unix/sysv/linux/arc/sigrestorer.S
-new file mode 100644
-index 0000000000..573b54e36c
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sigrestorer.S
@@ -0,0 +1,29 @@
@@ -7594,9 +7329,6 @@ index 0000000000..573b54e36c
+ ARC_TRAP_INSN
+ j_s [blink]
+PSEUDO_END_NOERRNO (__default_rt_sa_restorer)
-diff --git a/sysdeps/unix/sysv/linux/arc/swapcontext.S b/sysdeps/unix/sysv/linux/arc/swapcontext.S
-new file mode 100644
-index 0000000000..853d3805de
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/swapcontext.S
@@ -0,0 +1,92 @@
@@ -7692,9 +7424,6 @@ index 0000000000..853d3805de
+
+PSEUDO_END (__swapcontext)
+weak_alias (__swapcontext, swapcontext)
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/cachectl.h b/sysdeps/unix/sysv/linux/arc/sys/cachectl.h
-new file mode 100644
-index 0000000000..2d93e49e6a
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/cachectl.h
@@ -0,0 +1,36 @@
@@ -7734,9 +7463,6 @@ index 0000000000..2d93e49e6a
+__END_DECLS
+
+#endif /* sys/cachectl.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/ucontext.h b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
-new file mode 100644
-index 0000000000..7e357bcd65
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
@@ -0,0 +1,63 @@
@@ -7803,9 +7529,6 @@ index 0000000000..7e357bcd65
+#undef __ctx
+
+#endif /* sys/ucontext.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/sys/user.h b/sysdeps/unix/sysv/linux/arc/sys/user.h
-new file mode 100644
-index 0000000000..50d0dc7827
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sys/user.h
@@ -0,0 +1,31 @@
@@ -7840,9 +7563,6 @@ index 0000000000..50d0dc7827
+};
+
+#endif /* sys/user.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/syscall.S b/sysdeps/unix/sysv/linux/arc/syscall.S
-new file mode 100644
-index 0000000000..3fe5fcdd04
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/syscall.S
@@ -0,0 +1,38 @@
@@ -7884,18 +7604,12 @@ index 0000000000..3fe5fcdd04
+ brhi r0, -1024, .Lcall_syscall_err
+ j [blink]
+PSEUDO_END (syscall)
-diff --git a/sysdeps/unix/sysv/linux/arc/syscalls.list b/sysdeps/unix/sysv/linux/arc/syscalls.list
-new file mode 100644
-index 0000000000..d0ef5977ee
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/syscalls.list
@@ -0,0 +1,3 @@
+# File name Caller Syscall name Args Strong name Weak names
+
+cacheflush - cacheflush i:pii _flush_cache cacheflush
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.c b/sysdeps/unix/sysv/linux/arc/sysdep.c
-new file mode 100644
-index 0000000000..5618f37851
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.c
@@ -0,0 +1,33 @@
@@ -7932,9 +7646,6 @@ index 0000000000..5618f37851
+#if IS_IN (libc)
+hidden_def (__syscall_error)
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.h b/sysdeps/unix/sysv/linux/arc/sysdep.h
-new file mode 100644
-index 0000000000..28547ac448
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.h
@@ -0,0 +1,250 @@
@@ -8188,9 +7899,6 @@ index 0000000000..28547ac448
+#endif /* !__ASSEMBLER__ */
+
+#endif /* linux/arc/sysdep.h */
-diff --git a/sysdeps/unix/sysv/linux/arc/ucontext-macros.h b/sysdeps/unix/sysv/linux/arc/ucontext-macros.h
-new file mode 100644
-index 0000000000..ed261399c9
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ucontext-macros.h
@@ -0,0 +1,29 @@
@@ -8223,9 +7931,6 @@ index 0000000000..ed261399c9
+#define LOAD_REG(reg, rbase, off) ld reg, [rbase, UCONTEXT_MCONTEXT + off * 4]
+
+#endif
-diff --git a/sysdeps/unix/sysv/linux/arc/ucontext_i.sym b/sysdeps/unix/sysv/linux/arc/ucontext_i.sym
-new file mode 100644
-index 0000000000..d84e92f9f5
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/ucontext_i.sym
@@ -0,0 +1,20 @@
@@ -8249,9 +7954,6 @@ index 0000000000..d84e92f9f5
+UCONTEXT_MCONTEXT ucontext (uc_mcontext)
+UCONTEXT_SIGMASK ucontext (uc_sigmask)
+UCONTEXT_SIZE sizeof (ucontext_t)
-diff --git a/sysdeps/unix/sysv/linux/arc/vfork.S b/sysdeps/unix/sysv/linux/arc/vfork.S
-new file mode 100644
-index 0000000000..7f981d0681
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arc/vfork.S
@@ -0,0 +1,42 @@
@@ -8297,11 +7999,9 @@ index 0000000000..7f981d0681
+libc_hidden_def (__vfork)
+
+weak_alias (__vfork, vfork)
-diff --git a/sysdeps/unix/sysv/linux/syscall-names.list b/sysdeps/unix/sysv/linux/syscall-names.list
-index 36e087d8f4..60ecb263db 100644
--- a/sysdeps/unix/sysv/linux/syscall-names.list
+++ b/sysdeps/unix/sysv/linux/syscall-names.list
-@@ -41,6 +41,9 @@ adjtimex
+@@ -41,6 +41,9 @@
afs_syscall
alarm
alloc_hugepages
@@ -8311,11 +8011,9 @@ index 36e087d8f4..60ecb263db 100644
arch_prctl
arm_fadvise64_64
arm_sync_file_range
-diff --git a/timezone/zic.c b/timezone/zic.c
-index 2ebc66a9af..8e8d94fac3 100644
--- a/timezone/zic.c
+++ b/timezone/zic.c
-@@ -39,7 +39,7 @@ typedef int_fast64_t zic_t;
+@@ -39,7 +39,7 @@
#include <sys/stat.h>
#endif
#ifdef S_IRUSR
@@ -8324,6 +8022,3 @@ index 2ebc66a9af..8e8d94fac3 100644
#else
#define MKDIR_UMASK 0755
#endif
---
-2.20.1
-
diff --git a/packages/glibc/2.31/0002-Fix-build-with-GCC-10-when-long-double-double.patch b/packages/glibc/2.31/0002-Fix-build-with-GCC-10-when-long-double-double.patch
index ca0d8a7..5ec96fe 100644
--- a/packages/glibc/2.31/0002-Fix-build-with-GCC-10-when-long-double-double.patch
+++ b/packages/glibc/2.31/0002-Fix-build-with-GCC-10-when-long-double-double.patch
@@ -25,14 +25,12 @@ irrelevant for other reasons).
Tested with build-many-glibcs.py for arm-linux-gnueabi (compilers and
glibcs builds), where it fixes the build that previously failed.
---
- math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ math/Makefile | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 122 insertions(+)
-diff --git a/math/Makefile b/math/Makefile
-index 84a8b94c74..0a5a40430e 100644
--- a/math/Makefile
+++ b/math/Makefile
-@@ -650,6 +650,128 @@ ifneq ($(long-double-fcts),yes)
+@@ -644,6 +644,128 @@
# We won't compile the `long double' code at all. Tell the `double' code
# to define aliases for the `FUNCl' names.
math-CPPFLAGS += -DNO_LONG_DOUBLE
@@ -161,6 +159,3 @@ index 84a8b94c74..0a5a40430e 100644
endif
# These files quiet sNaNs in a way that is optimized away without
---
-2.25.1
-
diff --git a/packages/glibc/2.32/0000-typedef-caddr.patch b/packages/glibc/2.32/0000-typedef-caddr.patch
index 451884c..a328da1 100644
--- a/packages/glibc/2.32/0000-typedef-caddr.patch
+++ b/packages/glibc/2.32/0000-typedef-caddr.patch
@@ -4,7 +4,7 @@
--- a/posix/sys/types.h
+++ b/posix/sys/types.h
-@@ -112,7 +112,10 @@ typedef __ssize_t ssize_t;
+@@ -112,7 +112,10 @@
#ifdef __USE_MISC
# ifndef __daddr_t_defined
typedef __daddr_t daddr_t;
diff --git a/packages/glibc/2.32/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch b/packages/glibc/2.32/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch
index e02e69b..6b18501 100644
--- a/packages/glibc/2.32/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch
+++ b/packages/glibc/2.32/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch
@@ -8,11 +8,9 @@ the expected "stable" by the release manager. This is a mistake
that leads to the build using "-g -O1" instead of "-g -O2" if
configure was executed with "CFLAGS=" (CFLAGS set but empty).
---
- version.h | 2 +-
+ version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/version.h b/version.h
-index 83cd196798..e6ca7a8857 100644
--- a/version.h
+++ b/version.h
@@ -1,4 +1,4 @@
@@ -21,6 +19,3 @@ index 83cd196798..e6ca7a8857 100644
-#define RELEASE "release"
+#define RELEASE "stable"
#define VERSION "2.32"
---
-2.25.1
-
diff --git a/packages/glibc/2.32/0002-Add-ARC700-support.patch b/packages/glibc/2.32/0002-Add-ARC700-support.patch
index 23c94a7..22ae16c 100644
--- a/packages/glibc/2.32/0002-Add-ARC700-support.patch
+++ b/packages/glibc/2.32/0002-Add-ARC700-support.patch
@@ -11,16 +11,14 @@ pieces. I looked at uClibc-ng and a patch by Synopsis for glibc.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
---
- sysdeps/arc/atomic-machine.h | 4 ++++
- sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
- sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
+ sysdeps/arc/atomic-machine.h | 4 ++++
+ sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
+ sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
3 files changed, 17 insertions(+)
-diff --git a/sysdeps/arc/atomic-machine.h b/sysdeps/arc/atomic-machine.h
-index 1c8638bb44..bde66ae137 100644
--- a/sysdeps/arc/atomic-machine.h
+++ b/sysdeps/arc/atomic-machine.h
-@@ -64,6 +64,10 @@ typedef uintmax_t uatomic_max_t;
+@@ -64,6 +64,10 @@
__atomic_val_bysize (__arch_compare_and_exchange_val, int, \
mem, new, old, __ATOMIC_ACQUIRE)
@@ -31,11 +29,9 @@ index 1c8638bb44..bde66ae137 100644
+#endif
#endif /* _ARC_BITS_ATOMIC_H */
-diff --git a/sysdeps/unix/sysv/linux/arc/syscall.S b/sysdeps/unix/sysv/linux/arc/syscall.S
-index 6227dbf499..0609dbeeba 100644
--- a/sysdeps/unix/sysv/linux/arc/syscall.S
+++ b/sysdeps/unix/sysv/linux/arc/syscall.S
-@@ -24,8 +24,13 @@ ENTRY (syscall)
+@@ -24,8 +24,13 @@
mov_s r1, r2
mov_s r2, r3
mov_s r3, r4
@@ -49,11 +45,9 @@ index 6227dbf499..0609dbeeba 100644
ARC_TRAP_INSN
brhi r0, -4096, L (call_syscall_err)
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.h b/sysdeps/unix/sysv/linux/arc/sysdep.h
-index 8465a2f623..3faff27b1c 100644
--- a/sysdeps/unix/sysv/linux/arc/sysdep.h
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.h
-@@ -128,7 +128,11 @@ L (call_syscall_err): ASM_LINE_SEP \
+@@ -128,7 +128,11 @@
mov r8, __NR_##syscall_name ASM_LINE_SEP \
ARC_TRAP_INSN ASM_LINE_SEP
@@ -65,7 +59,7 @@ index 8465a2f623..3faff27b1c 100644
#else /* !__ASSEMBLER__ */
-@@ -139,7 +143,11 @@ extern long int __syscall_error (long int);
+@@ -139,7 +143,11 @@
hidden_proto (__syscall_error)
# endif
@@ -77,6 +71,3 @@ index 8465a2f623..3faff27b1c 100644
# undef INTERNAL_SYSCALL_NCS
# define INTERNAL_SYSCALL_NCS(number, nr_args, args...) \
---
-2.16.2
-
diff --git a/packages/glibc/2.33/0000-typedef-caddr.patch b/packages/glibc/2.33/0000-typedef-caddr.patch
index 451884c..a328da1 100644
--- a/packages/glibc/2.33/0000-typedef-caddr.patch
+++ b/packages/glibc/2.33/0000-typedef-caddr.patch
@@ -4,7 +4,7 @@
--- a/posix/sys/types.h
+++ b/posix/sys/types.h
-@@ -112,7 +112,10 @@ typedef __ssize_t ssize_t;
+@@ -112,7 +112,10 @@
#ifdef __USE_MISC
# ifndef __daddr_t_defined
typedef __daddr_t daddr_t;
diff --git a/packages/glibc/2.33/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch b/packages/glibc/2.33/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch
index 9c4b0e4..c3c13d2 100644
--- a/packages/glibc/2.33/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch
+++ b/packages/glibc/2.33/0001-Set-version.h-RELEASE-to-stable-Bug-26700.patch
@@ -8,7 +8,7 @@ the expected "stable" by the release manager. This is a mistake
that leads to the build using "-g -O1" instead of "-g -O2" if
configure was executed with "CFLAGS=" (CFLAGS set but empty).
---
- version.h | 2 +-
+ version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/version.h
diff --git a/packages/glibc/2.33/0002-Add-ARC700-support.patch b/packages/glibc/2.33/0002-Add-ARC700-support.patch
index 23c94a7..22ae16c 100644
--- a/packages/glibc/2.33/0002-Add-ARC700-support.patch
+++ b/packages/glibc/2.33/0002-Add-ARC700-support.patch
@@ -11,16 +11,14 @@ pieces. I looked at uClibc-ng and a patch by Synopsis for glibc.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
---
- sysdeps/arc/atomic-machine.h | 4 ++++
- sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
- sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
+ sysdeps/arc/atomic-machine.h | 4 ++++
+ sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
+ sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
3 files changed, 17 insertions(+)
-diff --git a/sysdeps/arc/atomic-machine.h b/sysdeps/arc/atomic-machine.h
-index 1c8638bb44..bde66ae137 100644
--- a/sysdeps/arc/atomic-machine.h
+++ b/sysdeps/arc/atomic-machine.h
-@@ -64,6 +64,10 @@ typedef uintmax_t uatomic_max_t;
+@@ -64,6 +64,10 @@
__atomic_val_bysize (__arch_compare_and_exchange_val, int, \
mem, new, old, __ATOMIC_ACQUIRE)
@@ -31,11 +29,9 @@ index 1c8638bb44..bde66ae137 100644
+#endif
#endif /* _ARC_BITS_ATOMIC_H */
-diff --git a/sysdeps/unix/sysv/linux/arc/syscall.S b/sysdeps/unix/sysv/linux/arc/syscall.S
-index 6227dbf499..0609dbeeba 100644
--- a/sysdeps/unix/sysv/linux/arc/syscall.S
+++ b/sysdeps/unix/sysv/linux/arc/syscall.S
-@@ -24,8 +24,13 @@ ENTRY (syscall)
+@@ -24,8 +24,13 @@
mov_s r1, r2
mov_s r2, r3
mov_s r3, r4
@@ -49,11 +45,9 @@ index 6227dbf499..0609dbeeba 100644
ARC_TRAP_INSN
brhi r0, -4096, L (call_syscall_err)
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.h b/sysdeps/unix/sysv/linux/arc/sysdep.h
-index 8465a2f623..3faff27b1c 100644
--- a/sysdeps/unix/sysv/linux/arc/sysdep.h
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.h
-@@ -128,7 +128,11 @@ L (call_syscall_err): ASM_LINE_SEP \
+@@ -128,7 +128,11 @@
mov r8, __NR_##syscall_name ASM_LINE_SEP \
ARC_TRAP_INSN ASM_LINE_SEP
@@ -65,7 +59,7 @@ index 8465a2f623..3faff27b1c 100644
#else /* !__ASSEMBLER__ */
-@@ -139,7 +143,11 @@ extern long int __syscall_error (long int);
+@@ -139,7 +143,11 @@
hidden_proto (__syscall_error)
# endif
@@ -77,6 +71,3 @@ index 8465a2f623..3faff27b1c 100644
# undef INTERNAL_SYSCALL_NCS
# define INTERNAL_SYSCALL_NCS(number, nr_args, args...) \
---
-2.16.2
-
diff --git a/packages/glibc/2.34/0000-typedef-caddr.patch b/packages/glibc/2.34/0000-typedef-caddr.patch
index 451884c..a328da1 100644
--- a/packages/glibc/2.34/0000-typedef-caddr.patch
+++ b/packages/glibc/2.34/0000-typedef-caddr.patch
@@ -4,7 +4,7 @@
--- a/posix/sys/types.h
+++ b/posix/sys/types.h
-@@ -112,7 +112,10 @@ typedef __ssize_t ssize_t;
+@@ -112,7 +112,10 @@
#ifdef __USE_MISC
# ifndef __daddr_t_defined
typedef __daddr_t daddr_t;
diff --git a/packages/glibc/2.34/0001-Add-ARC700-support.patch b/packages/glibc/2.34/0001-Add-ARC700-support.patch
index 23c94a7..22ae16c 100644
--- a/packages/glibc/2.34/0001-Add-ARC700-support.patch
+++ b/packages/glibc/2.34/0001-Add-ARC700-support.patch
@@ -11,16 +11,14 @@ pieces. I looked at uClibc-ng and a patch by Synopsis for glibc.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
---
- sysdeps/arc/atomic-machine.h | 4 ++++
- sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
- sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
+ sysdeps/arc/atomic-machine.h | 4 ++++
+ sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
+ sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
3 files changed, 17 insertions(+)
-diff --git a/sysdeps/arc/atomic-machine.h b/sysdeps/arc/atomic-machine.h
-index 1c8638bb44..bde66ae137 100644
--- a/sysdeps/arc/atomic-machine.h
+++ b/sysdeps/arc/atomic-machine.h
-@@ -64,6 +64,10 @@ typedef uintmax_t uatomic_max_t;
+@@ -64,6 +64,10 @@
__atomic_val_bysize (__arch_compare_and_exchange_val, int, \
mem, new, old, __ATOMIC_ACQUIRE)
@@ -31,11 +29,9 @@ index 1c8638bb44..bde66ae137 100644
+#endif
#endif /* _ARC_BITS_ATOMIC_H */
-diff --git a/sysdeps/unix/sysv/linux/arc/syscall.S b/sysdeps/unix/sysv/linux/arc/syscall.S
-index 6227dbf499..0609dbeeba 100644
--- a/sysdeps/unix/sysv/linux/arc/syscall.S
+++ b/sysdeps/unix/sysv/linux/arc/syscall.S
-@@ -24,8 +24,13 @@ ENTRY (syscall)
+@@ -24,8 +24,13 @@
mov_s r1, r2
mov_s r2, r3
mov_s r3, r4
@@ -49,11 +45,9 @@ index 6227dbf499..0609dbeeba 100644
ARC_TRAP_INSN
brhi r0, -4096, L (call_syscall_err)
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.h b/sysdeps/unix/sysv/linux/arc/sysdep.h
-index 8465a2f623..3faff27b1c 100644
--- a/sysdeps/unix/sysv/linux/arc/sysdep.h
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.h
-@@ -128,7 +128,11 @@ L (call_syscall_err): ASM_LINE_SEP \
+@@ -128,7 +128,11 @@
mov r8, __NR_##syscall_name ASM_LINE_SEP \
ARC_TRAP_INSN ASM_LINE_SEP
@@ -65,7 +59,7 @@ index 8465a2f623..3faff27b1c 100644
#else /* !__ASSEMBLER__ */
-@@ -139,7 +143,11 @@ extern long int __syscall_error (long int);
+@@ -139,7 +143,11 @@
hidden_proto (__syscall_error)
# endif
@@ -77,6 +71,3 @@ index 8465a2f623..3faff27b1c 100644
# undef INTERNAL_SYSCALL_NCS
# define INTERNAL_SYSCALL_NCS(number, nr_args, args...) \
---
-2.16.2
-
diff --git a/packages/glibc/2.35/0000-typedef-caddr.patch b/packages/glibc/2.35/0000-typedef-caddr.patch
index 451884c..a328da1 100644
--- a/packages/glibc/2.35/0000-typedef-caddr.patch
+++ b/packages/glibc/2.35/0000-typedef-caddr.patch
@@ -4,7 +4,7 @@
--- a/posix/sys/types.h
+++ b/posix/sys/types.h
-@@ -112,7 +112,10 @@ typedef __ssize_t ssize_t;
+@@ -112,7 +112,10 @@
#ifdef __USE_MISC
# ifndef __daddr_t_defined
typedef __daddr_t daddr_t;
diff --git a/packages/glibc/2.35/0001-Add-ARC700-support.patch b/packages/glibc/2.35/0001-Add-ARC700-support.patch
index 23c94a7..54729d8 100644
--- a/packages/glibc/2.35/0001-Add-ARC700-support.patch
+++ b/packages/glibc/2.35/0001-Add-ARC700-support.patch
@@ -11,16 +11,14 @@ pieces. I looked at uClibc-ng and a patch by Synopsis for glibc.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
---
- sysdeps/arc/atomic-machine.h | 4 ++++
- sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
- sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
+ sysdeps/arc/atomic-machine.h | 4 ++++
+ sysdeps/unix/sysv/linux/arc/syscall.S | 5 +++++
+ sysdeps/unix/sysv/linux/arc/sysdep.h | 8 ++++++++
3 files changed, 17 insertions(+)
-diff --git a/sysdeps/arc/atomic-machine.h b/sysdeps/arc/atomic-machine.h
-index 1c8638bb44..bde66ae137 100644
--- a/sysdeps/arc/atomic-machine.h
+++ b/sysdeps/arc/atomic-machine.h
-@@ -64,6 +64,10 @@ typedef uintmax_t uatomic_max_t;
+@@ -52,6 +52,10 @@
__atomic_val_bysize (__arch_compare_and_exchange_val, int, \
mem, new, old, __ATOMIC_ACQUIRE)
@@ -31,11 +29,9 @@ index 1c8638bb44..bde66ae137 100644
+#endif
#endif /* _ARC_BITS_ATOMIC_H */
-diff --git a/sysdeps/unix/sysv/linux/arc/syscall.S b/sysdeps/unix/sysv/linux/arc/syscall.S
-index 6227dbf499..0609dbeeba 100644
--- a/sysdeps/unix/sysv/linux/arc/syscall.S
+++ b/sysdeps/unix/sysv/linux/arc/syscall.S
-@@ -24,8 +24,13 @@ ENTRY (syscall)
+@@ -24,8 +24,13 @@
mov_s r1, r2
mov_s r2, r3
mov_s r3, r4
@@ -49,11 +45,9 @@ index 6227dbf499..0609dbeeba 100644
ARC_TRAP_INSN
brhi r0, -4096, L (call_syscall_err)
-diff --git a/sysdeps/unix/sysv/linux/arc/sysdep.h b/sysdeps/unix/sysv/linux/arc/sysdep.h
-index 8465a2f623..3faff27b1c 100644
--- a/sysdeps/unix/sysv/linux/arc/sysdep.h
+++ b/sysdeps/unix/sysv/linux/arc/sysdep.h
-@@ -128,7 +128,11 @@ L (call_syscall_err): ASM_LINE_SEP \
+@@ -128,7 +128,11 @@
mov r8, __NR_##syscall_name ASM_LINE_SEP \
ARC_TRAP_INSN ASM_LINE_SEP
@@ -65,7 +59,7 @@ index 8465a2f623..3faff27b1c 100644
#else /* !__ASSEMBLER__ */
-@@ -139,7 +143,11 @@ extern long int __syscall_error (long int);
+@@ -139,7 +143,11 @@
hidden_proto (__syscall_error)
# endif
@@ -77,6 +71,3 @@ index 8465a2f623..3faff27b1c 100644
# undef INTERNAL_SYSCALL_NCS
# define INTERNAL_SYSCALL_NCS(number, nr_args, args...) \
---
-2.16.2
-
diff --git a/packages/glibc/2.35/0002-linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch b/packages/glibc/2.35/0002-linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch
index 30cd1c4..71609df 100644
--- a/packages/glibc/2.35/0002-linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch
+++ b/packages/glibc/2.35/0002-linux-Fix-missing-__convert_scm_timestamps-BZ-28860.patch
@@ -10,11 +10,9 @@ always build it for __TIMESIZE != 64.
It fixes build for architecture with 32 bit time_t support when
configured with minimum kernel of 5.1.
---
- sysdeps/unix/sysv/linux/convert_scm_timestamps.c | 4 ++--
+ sysdeps/unix/sysv/linux/convert_scm_timestamps.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/sysdeps/unix/sysv/linux/convert_scm_timestamps.c b/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
-index 82171bf325..dfc8c2beff 100644
--- a/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
+++ b/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
@@ -16,9 +16,9 @@
@@ -29,6 +27,3 @@ index 82171bf325..dfc8c2beff 100644
# include <stdint.h>
# include <string.h>
# include <sys/socket.h>
---
-2.35.1
-