Selaa lähdekoodia

Clean it up a little.

Joakim Tjernlund 20 vuotta sitten
vanhempi
commit
651cfd37e2
1 muutettua tiedostoa jossa 6 lisäystä ja 10 poistoa
  1. 6 10
      libc/sysdeps/linux/i386/crt1.S

+ 6 - 10
libc/sysdeps/linux/i386/crt1.S

@@ -89,14 +89,14 @@ _start:
 
 #if defined L_Scrt1
 	/* Load PIC register.  */
-	call 1f
-	addl $_GLOBAL_OFFSET_TABLE_, %ebx
+	call .L0
+.L0:
+	pop %ebx
+	addl $_GLOBAL_OFFSET_TABLE_+[.-.L0],%ebx
 
 	/* Push address of our own entry points to .fini and .init.  */
-	leal _fini@GOTOFF(%ebx), %eax
-	pushl %eax
-	leal _init@GOTOFF(%ebx), %eax
-	pushl %eax
+	pushl _fini@GOT(%ebx)
+	pushl _init@GOT(%ebx)
 
 	pushl %ecx		/* Push second argument: argv.  */
 	pushl %esi		/* Push first argument: argc.  */
@@ -123,10 +123,6 @@ _start:
 
 	hlt			/* Crash if somehow `exit' does return.  */
 
-#if defined L_Scrt1
-1:	movl	(%esp), %ebx
-	ret
-#endif
 /* Define a symbol for the first piece of initialized data.  */
 	.data
 	.globl __data_start