patches/glibc/ports-2.10.1/320-hppa-pie.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Mon Feb 13 21:47:25 2012 +0100 (2012-02-13)
changeset 2883 cea814c9932a
permissions -rw-r--r--
libc/glibc: do not consume parameters when parsing them

Currently, there are two constructs used to parse arguments in
glibc backends, one that consumes args as they are parsed, and
one that does not.

Always use the construct that does not eat args as they are parsed.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 
     2 
     3 diff -durN glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/hppa/elf/start.S glibc-2.10.1/glibc-ports-2.10.1/sysdeps/hppa/elf/start.S
     4 --- glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/hppa/elf/start.S	2009-05-16 10:36:20.000000000 +0200
     5 +++ glibc-2.10.1/glibc-ports-2.10.1/sysdeps/hppa/elf/start.S	2009-11-13 00:50:28.000000000 +0100
     6 @@ -96,16 +96,16 @@
     7  
     8  #if SHARED
     9  	/* load main (1st argument) */
    10 -	addil	LR'.Lpmain, %r19
    11 -	ldw	RR'.Lpmain(%r1), %r26
    12 +	addil	LT'.Lpmain, %r19
    13 +	ldw	RT'.Lpmain(%r1), %r26
    14  	ldw	0(%r26),%r26
    15  	/* void (*init) (void) (4th argument) */
    16 -	addil	LR'.Lp__libc_csu_init, %r19
    17 -	ldw	RR'.Lp__libc_csu_init(%r1), %r23
    18 +	addil	LT'.Lp__libc_csu_init, %r19
    19 +	ldw	RT'.Lp__libc_csu_init(%r1), %r23
    20  	ldw	0(%r23), %r23
    21  	/* void (*fini) (void) (5th argument) */
    22 -	addil	LR'.Lp__libc_csu_fini, %r19
    23 -	ldw	RR'.Lp__libc_csu_fini(%r1), %r22
    24 +	addil	LT'.Lp__libc_csu_fini, %r19
    25 +	ldw	RT'.Lp__libc_csu_fini(%r1), %r22
    26  	ldw	0(%r22), %r22
    27  #else
    28  	/* load main (1st argument) */
    29 diff -durN glibc-2.10.1.orig/ports/sysdeps/hppa/elf/start.S glibc-2.10.1/ports/sysdeps/hppa/elf/start.S