diff --git a/srcpkgs/musl/patches/ppc64-vrregset-t-fix-layout.patch b/srcpkgs/musl/patches/ppc64-vrregset-t-fix-layout.patch deleted file mode 100644 index 5ca68a35aa..0000000000 --- a/srcpkgs/musl/patches/ppc64-vrregset-t-fix-layout.patch +++ /dev/null @@ -1,45 +0,0 @@ -commit 3c59a868956636bc8adafb1b168d090897692532 -Author: Rich Felker -Date: Wed May 22 15:17:12 2019 -0400 - - fix vrregset_t layout and member naming on powerpc64 - - the mistaken layout seems to have been adapted from 32-bit powerpc, - where vscr and vrsave are packed into the same 128-bit slot in a way - that looks like it relies on non-overlapping-ness of the value bits in - big endian. - - the powerpc64 port accounted for the fact that the 64-bit ABI puts - each in its own 128-bit slot, but ordered them incorrectly (matching - the bit order used on the 32-bit ABI), and failed to account for vscr - being padded according to endianness so that it can be accessed via - vector moves. - - in addition to ABI layout, our definition used different logical - member layout/naming from glibc, where vscr is a structure to - facilitate access as a 32-bit word or a 128-bit vector. the - inconsistency here was unintentional, so fix it. - -diff --git a/arch/powerpc64/bits/signal.h b/arch/powerpc64/bits/signal.h -index 34693a68..94c7a327 100644 ---- arch/powerpc64/bits/signal.h -+++ arch/powerpc64/bits/signal.h -@@ -17,10 +17,14 @@ typedef struct { - - typedef struct { - unsigned __int128 vrregs[32]; -- unsigned _pad[3]; -- unsigned vrsave; -- unsigned vscr; -- unsigned _pad2[3]; -+ struct { -+#if __BIG_ENDIAN__ -+ unsigned _pad[3], vscr_word; -+#else -+ unsigned vscr_word, _pad[3]; -+#endif -+ } vscr; -+ unsigned vrsave, _pad[3]; - } vrregset_t; - - typedef struct sigcontext { diff --git a/srcpkgs/musl/patches/ppc64-vrregset-t-vrregs-fix.patch b/srcpkgs/musl/patches/ppc64-vrregset-t-vrregs-fix.patch deleted file mode 100644 index 0d2664e6c9..0000000000 --- a/srcpkgs/musl/patches/ppc64-vrregset-t-vrregs-fix.patch +++ /dev/null @@ -1,29 +0,0 @@ -commit ac304227bb3ea1787d581f17d76a5f5f3abff51f -Author: Rich Felker -Date: Wed May 22 18:28:32 2019 -0400 - - make powerpc64 vrregset_t logical layout match expected API - - between v2 and v3 of the powerpc64 port patch, the change was made - from a 32x4 array of 32-bit unsigned ints for vrregs[] to a 32-element - array of __int128. this mismatches the API applications working with - mcontext_t expect from glibc, and seems to have been motivated by a - misinterpretation of a comment on how aarch64 did things as a - suggestion to do the same on powerpc64. - -diff --git a/arch/powerpc64/bits/signal.h b/arch/powerpc64/bits/signal.h -index 94c7a327..2cc0604c 100644 ---- arch/powerpc64/bits/signal.h -+++ arch/powerpc64/bits/signal.h -@@ -16,7 +16,10 @@ typedef struct { - } fpregset_t; - - typedef struct { -- unsigned __int128 vrregs[32]; -+#ifdef __GNUC__ -+ __attribute__((__aligned__(16))) -+#endif -+ unsigned vrregs[32][4]; - struct { - #if __BIG_ENDIAN__ - unsigned _pad[3], vscr_word; diff --git a/srcpkgs/musl/template b/srcpkgs/musl/template index 4a312725d6..5a267c59ff 100644 --- a/srcpkgs/musl/template +++ b/srcpkgs/musl/template @@ -1,7 +1,7 @@ # Template file for 'musl'. pkgname=musl -version=1.1.22 -revision=4 +version=1.1.23 +revision=1 archs="*-musl" build_style=gnu-configure configure_args="--prefix=/usr --disable-gcc-wrapper" @@ -12,7 +12,7 @@ maintainer="Juan RP " license="MIT" homepage="http://www.musl-libc.org/" distfiles="http://www.musl-libc.org/releases/musl-${version}.tar.gz" -checksum=8b0941a48d2f980fd7036cfbd24aa1d414f03d9a0652ecbd5ec5c7ff1bee29e3 +checksum=8a0feb41cef26c97dde382c014e68b9bb335c094bbc1356f6edaaf6b79bd14aa nostrip_files="libc.so" shlib_provides="libc.so"