r4886 - in glibc-package/trunk/debian: . patches patches/s390
Author: aurel32
Date: 2011-08-16 16:03:56 +0000 (Tue, 16 Aug 2011)
New Revision: 4886
Added:
glibc-package/trunk/debian/patches/s390/cvs-vsyscalls.diff
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/patches/series
Log:
* Add patches/s390/cvs-vsyscalls.diff from upstream to fix wrong register
usage in the INTERNAL_VSYSCALL_NCS macro.
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2011-08-16 15:55:56 UTC (rev 4885)
+++ glibc-package/trunk/debian/changelog 2011-08-16 16:03:56 UTC (rev 4886)
@@ -14,6 +14,8 @@
rlimits on sparc. Closes: #637767.
* Add patches/amd64/cvs-pthread-stack-alignment.diff from upstream to fix
stack alignment issues on amd64.
+ * Add patches/s390/cvs-vsyscalls.diff from upstream to fix wrong register
+ usage in the INTERNAL_VSYSCALL_NCS macro.
-- Aurelien Jarno <aurel32@debian.org> Tue, 09 Aug 2011 11:40:02 +0200
Added: glibc-package/trunk/debian/patches/s390/cvs-vsyscalls.diff
===================================================================
--- glibc-package/trunk/debian/patches/s390/cvs-vsyscalls.diff (rev 0)
+++ glibc-package/trunk/debian/patches/s390/cvs-vsyscalls.diff 2011-08-16 16:03:56 UTC (rev 4886)
@@ -0,0 +1,49 @@
+2011-07-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
+ (INTERNAL_VSYSCALL_NCS): Use r10 for backing up the return address
+ register in order to avoid conflicts with the soft frame pointer
+ being held in r11 when necessary.
+ * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
+ (INTERNAL_VSYSCALL_NCS): Likewise.
+
+diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
+index 5bfdc44..13ce9ab 100644
+--- a/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
++++ b/sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h
+@@ -368,12 +368,12 @@
+ DECLARGS_##nr(args) \
+ register long _ret asm("2"); \
+ asm volatile ( \
+- "lr 11,14\n\t" \
++ "lr 10,14\n\t" \
+ "basr 14,%1\n\t" \
+- "lr 14,11\n\t" \
++ "lr 14,10\n\t" \
+ : "=d" (_ret) \
+ : "d" (fn) ASMFMT_##nr \
+- : "cc", "memory", "0", "1", "11" CLOBBER_##nr); \
++ : "cc", "memory", "0", "1", "10" CLOBBER_##nr); \
+ _ret; })
+
+ /* Pointer mangling support. */
+diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
+index 6491a3b..4d45417 100644
+--- a/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
++++ b/sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
+@@ -370,12 +370,12 @@
+ DECLARGS_##nr(args) \
+ register long _ret asm("2"); \
+ asm volatile ( \
+- "lgr 11,14\n\t" \
++ "lgr 10,14\n\t" \
+ "basr 14,%1\n\t" \
+- "lgr 14,11\n\t" \
++ "lgr 14,10\n\t" \
+ : "=d" (_ret) \
+ : "a" (fn) ASMFMT_##nr \
+- : "cc", "memory", "0", "1", "11" CLOBBER_##nr); \
++ : "cc", "memory", "0", "1", "10" CLOBBER_##nr); \
+ _ret; })
+
+ /* Pointer mangling support. */
Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series 2011-08-16 15:55:56 UTC (rev 4885)
+++ glibc-package/trunk/debian/patches/series 2011-08-16 16:03:56 UTC (rev 4886)
@@ -176,6 +176,7 @@
s390/submitted-nexttowardf.diff
s390/cvs-iconv-z9-109.diff
+s390/cvs-vsyscalls.diff
sparc/local-fork.diff
sparc/local-sparcv9-target.diff
Reply to: