Browse Source

Patch from Michael Shmulevich (michaels@jungo.com) -- functions were not
declared type function.

Manuel Novoa III 24 years ago
parent
commit
bf6e755b6a
2 changed files with 7 additions and 4 deletions
  1. 1 0
      libc/sysdeps/linux/i386/clone.S
  2. 6 4
      libc/sysdeps/linux/i386/setjmp.S

+ 1 - 0
libc/sysdeps/linux/i386/clone.S

@@ -27,6 +27,7 @@
 
 
         .text
         .text
 .globl __clone;
 .globl __clone;
+.type	 __clone,@function
 .align 4;                                                               \
 .align 4;                                                               \
 __clone:
 __clone:
 	/* Sanity check arguments.  */
 	/* Sanity check arguments.  */

+ 6 - 4
libc/sysdeps/linux/i386/setjmp.S

@@ -22,6 +22,7 @@
 #include <bits/setjmp.h>
 #include <bits/setjmp.h>
 
 
 .globl __setjmp;
 .globl __setjmp;
+.type	 __setjmp,@function
 .align 4;                                                               \
 .align 4;                                                               \
 __setjmp:
 __setjmp:
 	popl %eax		/* Pop return address.  */
 	popl %eax		/* Pop return address.  */
@@ -31,6 +32,7 @@ __setjmp:
 	pushl %eax		/* Push back return address.  */
 	pushl %eax		/* Push back return address.  */
 
 
 .globl __sigsetjmp;
 .globl __sigsetjmp;
+.type	 __sigsetjmp,@function
 .align 4;                                                               \
 .align 4;                                                               \
 __sigsetjmp:
 __sigsetjmp:
 	movl 4(%esp), %eax	/* User's jmp_buf in %eax.  */
 	movl 4(%esp), %eax	/* User's jmp_buf in %eax.  */
@@ -45,15 +47,15 @@ __sigsetjmp:
      	movl %ecx, (JB_PC*4)(%eax)
      	movl %ecx, (JB_PC*4)(%eax)
 
 
 	/* Make a tail call to __sigjmp_save; it takes the same args.  */
 	/* Make a tail call to __sigjmp_save; it takes the same args.  */
-#ifdef	PIC
+#if defined(PIC)
 	/* We cannot use the PLT, because it requires that %ebx be set, but
 	/* We cannot use the PLT, because it requires that %ebx be set, but
            we can't save and restore our caller's value.  Instead, we do an
            we can't save and restore our caller's value.  Instead, we do an
            indirect jump through the GOT, using for the temporary register
            indirect jump through the GOT, using for the temporary register
            %ecx, which is call-clobbered.  */
            %ecx, which is call-clobbered.  */
-	call L(here)
+	call Lhere
-L(here):
+Lhere:
 	popl %ecx
 	popl %ecx
-	addl $_GLOBAL_OFFSET_TABLE_+[.-L(here)], %ecx
+	addl $_GLOBAL_OFFSET_TABLE_+[.-Lhere], %ecx
 	movl (__sigjmp_save)(%ecx), %ecx
 	movl (__sigjmp_save)(%ecx), %ecx
 	jmp *%ecx
 	jmp *%ecx
 #else
 #else