r5394 - in glibc-package/branches/eglibc-2.16/debian: . patches patches/m68k
Author: aurel32
Date: 2012-11-21 21:54:59 +0000 (Wed, 21 Nov 2012)
New Revision: 5394
Added:
glibc-package/branches/eglibc-2.16/debian/patches/m68k/cvs-syscall-arguments.diff
Modified:
glibc-package/branches/eglibc-2.16/debian/changelog
glibc-package/branches/eglibc-2.16/debian/patches/series
Log:
* Add patches/m68k/cvs-syscall-arguments.diff to fix cancellable syscall
with 5 or 6 arguments. Closes: #693852.
Modified: glibc-package/branches/eglibc-2.16/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/changelog 2012-11-20 10:38:18 UTC (rev 5393)
+++ glibc-package/branches/eglibc-2.16/debian/changelog 2012-11-21 21:54:59 UTC (rev 5394)
@@ -1,6 +1,8 @@
eglibc (2.16-0experimental1) UNRELEASED; urgency=low
- *
+ [ Aurelien Jarno ]
+ * Add patches/m68k/cvs-syscall-arguments.diff to fix cancellable syscall
+ with 5 or 6 arguments. Closes: #693852.
-- Aurelien Jarno <aurel32@debian.org> Tue, 20 Nov 2012 11:37:11 +0100
Added: glibc-package/branches/eglibc-2.16/debian/patches/m68k/cvs-syscall-arguments.diff
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/patches/m68k/cvs-syscall-arguments.diff (rev 0)
+++ glibc-package/branches/eglibc-2.16/debian/patches/m68k/cvs-syscall-arguments.diff 2012-11-21 21:54:59 UTC (rev 5394)
@@ -0,0 +1,33 @@
+2012-11-18 Andreas Schwab <schwab@linux-m68k.org>
+
+ * sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h (_DOCARGS_5)
+ (UNDOCARGS_5): Save %d5 on stack instead of in %a1.
+
+diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h b/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h
+index 249e0e2..e295898 100644
+--- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h
++++ b/ports/sysdeps/unix/sysv/linux/m68k/nptl/sysdep-cancel.h
+@@ -69,8 +69,6 @@
+ # define _DOCARGS_2(n) DOCARGS_0 move.l n+4(%sp), %d2; _DOCARGS_1 (n)
+ # define UNDOCARGS_2 UNDOCARGS_0
+
+-/* TODO: We can optimize DOCARGS_{3, 4} by saving registers to a0 and a1
+- instead of pushing them on stack. */
+ # define DOCARGS_3 _DOCARGS_3 (12)
+ # define _DOCARGS_3(n) move.l %d3, -(%sp); \
+ cfi_adjust_cfa_offset (4); cfi_rel_offset (%d3, 0); \
+@@ -86,9 +84,11 @@
+ cfi_adjust_cfa_offset (-4); cfi_restore (%d4);
+
+ # define DOCARGS_5 _DOCARGS_5 (20)
+-# define _DOCARGS_5(n) move.l %d5, %a1; cfi_register (%d5, a1); \
+- move.l n(%sp), %d5; _DOCARGS_4 (n-4)
+-# define UNDOCARGS_5 UNDOCARGS_4 move.l %a1, %d5; cfi_restore (%d5);
++# define _DOCARGS_5(n) move.l %d5, -(%sp); \
++ cfi_adjust_cfa_offset (4); cfi_rel_offset (%d5, 0); \
++ move.l n+4(%sp), %d5; _DOCARGS_4 (n)
++# define UNDOCARGS_5 UNDOCARGS_4 move.l (%sp)+, %d5; \
++ cfi_adjust_cfa_offset (-4); cfi_restore (%d5);
+
+ # define DOCARGS_6 _DOCARGS_6 (24)
+ # define _DOCARGS_6(n) move.l n(%sp), %a0; _DOCARGS_5 (n-4)
Modified: glibc-package/branches/eglibc-2.16/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.16/debian/patches/series 2012-11-20 10:38:18 UTC (rev 5393)
+++ glibc-package/branches/eglibc-2.16/debian/patches/series 2012-11-21 21:54:59 UTC (rev 5394)
@@ -151,6 +151,7 @@
# m68k/local-mathinline_h.diff
m68k/local-reloc.diff
m68k/submitted-gcc34-seccomment.diff
+m68k/cvs-syscall-arguments.diff
mips/local-lowlevellock.diff
mips/local-r10k.diff
Reply to: