rpms/glibc/devel glibc-setjmp-mangling.patch,1.5,1.6

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Dec 19 15:53:33 UTC 2005


Author: jakub

Update of /cvs/dist/rpms/glibc/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv21919

Modified Files:
	glibc-setjmp-mangling.patch 
Log Message:
2.3.90-19


glibc-setjmp-mangling.patch:
 nptl/sysdeps/ia64/tls.h                            |   22 ++++++++++----
 nptl/sysdeps/powerpc/tcb-offsets.sym               |    1 
 nptl/sysdeps/powerpc/tls.h                         |   15 ++++++++-
 nptl/sysdeps/s390/tcb-offsets.sym                  |    1 
 nptl/sysdeps/s390/tls.h                            |    7 ++++
 sysdeps/powerpc/powerpc32/__longjmp-common.S       |    6 +++
 sysdeps/powerpc/powerpc32/setjmp-common.S          |    3 +
 sysdeps/powerpc/powerpc64/__longjmp-common.S       |    5 ++-
 sysdeps/powerpc/powerpc64/setjmp-common.S          |    3 +
 sysdeps/s390/s390-32/__longjmp.c                   |   28 ++++++++++++-----
 sysdeps/s390/s390-32/elf/setjmp.S                  |   16 ++++++++--
 sysdeps/s390/s390-32/setjmp.S                      |   16 ++++++++--
 sysdeps/s390/s390-64/__longjmp.c                   |   33 +++++++++++++--------
 sysdeps/s390/s390-64/elf/setjmp.S                  |   16 ++++++++--
 sysdeps/s390/s390-64/setjmp.S                      |   18 ++++++++---
 sysdeps/unix/sysv/linux/ia64/__longjmp.S           |    5 ++-
 sysdeps/unix/sysv/linux/ia64/setjmp.S              |   10 +++++-
 sysdeps/unix/sysv/linux/ia64/sysdep.h              |   23 ++++++++++++++
 sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h |   18 +++++++++++
 sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h |   19 ++++++++++++
 sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h      |   28 +++++++++++++++--
 sysdeps/unix/sysv/linux/s390/s390-64/socket.S      |    1 
 sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h      |   24 ++++++++++++++-
 23 files changed, 271 insertions(+), 47 deletions(-)

Index: glibc-setjmp-mangling.patch
===================================================================
RCS file: /cvs/dist/rpms/glibc/devel/glibc-setjmp-mangling.patch,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- glibc-setjmp-mangling.patch	19 Dec 2005 15:25:44 -0000	1.5
+++ glibc-setjmp-mangling.patch	19 Dec 2005 15:53:30 -0000	1.6
@@ -243,7 +243,7 @@
  	mov.m ar.unat=loc2		// restore caller's unat
  	mov rp=loc0
 --- libc/sysdeps/s390/s390-32/setjmp.S.jj	2001-07-06 06:56:03.000000000 +0200
-+++ libc/sysdeps/s390/s390-32/setjmp.S	2005-12-19 13:16:32.000000000 +0100
++++ libc/sysdeps/s390/s390-32/setjmp.S	2005-12-19 16:39:36.000000000 +0100
 @@ -1,5 +1,5 @@
  /*
 -   Copyright (C) 2000, 2001 Free Software Foundation, Inc.
@@ -251,18 +251,52 @@
     Contributed by Martin Schwidefsky (schwidefsky at de.ibm.com).
     This file is part of the GNU C Library.
  
-@@ -29,10 +29,20 @@
+@@ -29,10 +29,22 @@
  /* R2 = pointer to jmp_buf, R3 = savemask */
  
  ENTRY(__sigsetjmp)
--	stm    %r6,%r15,0(%r2)      /* store registers in jmp_buf */
++#ifdef PTR_MANGLE
 +	stm    %r6,%r13,0(%r2)      /* store registers in jmp_buf */
 +	lr     %r4,%r14
-+#ifdef PTR_MANGLE
 +	PTR_MANGLE (%r4, %r5)
++	st     %r4,32(%r2)
++	st     %r15,36(%r2)
++#else
+ 	stm    %r6,%r15,0(%r2)      /* store registers in jmp_buf */
 +#endif
+ 	std    %f4,40(%r2)
+ 	std    %f6,48(%r2)
+-#ifdef PIC
++#if defined NOT_IN_libc && defined IS_IN_rtld
++	/* In ld.so we never save the signal mask.  */
++	lhi    %r2,0
++	br     %r14
++#elif defined PIC
+ 	/* We cannot use the PLT, because it requires that %r12 be set, but
+ 	   we can't save and restore our caller's value.  Instead, we do an
+ 	   indirect jump through the GOT. */
+--- libc/sysdeps/s390/s390-32/elf/setjmp.S.jj	2005-09-12 09:29:34.000000000 +0200
++++ libc/sysdeps/s390/s390-32/elf/setjmp.S	2005-12-19 16:43:16.000000000 +0100
+@@ -1,5 +1,5 @@
+ /* setjmp for s390, ELF version.
+-   Copyright (C) 2000, 2002 Free Software Foundation, Inc.
++   Copyright (C) 2000, 2002, 2005 Free Software Foundation, Inc.
+    Contributed by Martin Schwidefsky (schwidefsky at de.ibm.com).
+    This file is part of the GNU C Library.
+ 
+@@ -46,10 +46,22 @@ END (__setjmp)
+ 
+ ENTRY(__sigsetjmp)
+ .Linternal_sigsetjmp:
++#ifdef PTR_MANGLE
++	stm    %r6,%r13,0(%r2)      /* store registers in jmp_buf */
++	lr     %r4,%r14
++	PTR_MANGLE (%r4, %r5)
 +	st     %r4,32(%r2)
 +	st     %r15,36(%r2)
++#else
+ 	stm    %r6,%r15,0(%r2)      /* store registers in jmp_buf */
++#endif
  	std    %f4,40(%r2)
  	std    %f6,48(%r2)
 -#ifdef PIC
@@ -316,25 +350,26 @@
    /* Avoid `volatile function does return' warnings.  */
    for (;;);
 --- libc/sysdeps/s390/s390-64/setjmp.S.jj	2001-07-06 06:56:03.000000000 +0200
-+++ libc/sysdeps/s390/s390-64/setjmp.S	2005-12-19 13:18:13.000000000 +0100
++++ libc/sysdeps/s390/s390-64/setjmp.S	2005-12-19 16:41:22.000000000 +0100
 @@ -1,4 +1,4 @@
 -/* Copyright (C) 2001 Free Software Foundation, Inc.
 +/* Copyright (C) 2001, 2005 Free Software Foundation, Inc.
     Contributed by Martin Schwidefsky (schwidefsky at de.ibm.com).
     This file is part of the GNU C Library.
  
-@@ -28,16 +28,24 @@
+@@ -28,16 +28,26 @@
  /* R2 = pointer to jmp_buf, R3 = savemask.  */
  
  ENTRY(__sigsetjmp)
--        stmg   %r6,%r15,0(%r2)      /* Store registers in jmp_buf.  */
-+        stmg   %r6,%r13,0(%r2)      /* Store registers in jmp_buf.  */
-+	lgr    %r4,%r14
 +#ifdef PTR_MANGLE
++	stmg   %r6,%r13,0(%r2)      /* Store registers in jmp_buf.  */
++	lgr    %r4,%r14
 +	PTR_MANGLE (%r4, %r5)
-+#endif
 +	stg    %r4,64(%r2)
 +	stg    %r15,72(%r2)
++#else
+         stmg   %r6,%r15,0(%r2)      /* Store registers in jmp_buf.  */
++#endif
  	std    %f1,80(%r2)
  	std    %f3,88(%r2)
  	std    %f5,96(%r2)
@@ -352,6 +387,41 @@
  END (__sigsetjmp)
 -
 -
+--- libc/sysdeps/s390/s390-64/elf/setjmp.S.jj	2005-09-12 09:29:34.000000000 +0200
++++ libc/sysdeps/s390/s390-64/elf/setjmp.S	2005-12-19 16:43:25.000000000 +0100
+@@ -1,5 +1,5 @@
+ /* setjmp for 64 bit S/390, ELF version.
+-   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
++   Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
+    Contributed by Martin Schwidefsky (schwidefsky at de.ibm.com).
+    This file is part of the GNU C Library.
+ 
+@@ -46,12 +46,24 @@ END (setjmp)
+ 
+ ENTRY(__sigsetjmp)
+ .Linternal_sigsetjmp:
++#ifdef PTR_MANGLE
++	stmg   %r6,%r13,0(%r2)      /* Store registers in jmp_buf.  */
++	lgr    %r4,%r14
++	PTR_MANGLE (%r4, %r5)
++	stg    %r4,64(%r2)
++	stg    %r15,72(%r2)
++#else
+         stmg   %r6,%r15,0(%r2)      /* Store registers in jmp_buf.  */
++#endif
+ 	std    %f1,80(%r2)
+ 	std    %f3,88(%r2)
+ 	std    %f5,96(%r2)
+ 	std    %f7,104(%r2)
+-#ifdef PIC
++#if defined NOT_IN_libc && defined IS_IN_rtld
++	/* In ld.so we never save the signal mask.  */
++	lghi   %r2,0
++	br     %r14
++#elif defined PIC
+         jg     __sigjmp_save at PLT    /* Branch to PLT of __sigsetjmp.  */
+ #else
+ 	jg     __sigjmp_save
 --- libc/sysdeps/s390/s390-64/__longjmp.c.jj	2001-07-06 06:56:03.000000000 +0200
 +++ libc/sysdeps/s390/s390-64/__longjmp.c	2005-12-19 13:46:12.000000000 +0100
 @@ -1,4 +1,4 @@




More information about the fedora-cvs-commits mailing list