Просмотр исходного кода

remove attempts to be pie-compatible from i386 crt1.s

it does not work; after further consideration, a separate Scrt1.s for
pie really is essential. it would be nice if the unified approach
worked, but the linker fails to generate the correct PLT entries and
instead puts textrels in the main program, which don't work because
the kernel maps the text read-only.

new Scrt1.s will be committed soon in place of this.
Rich Felker 13 лет назад
Родитель
Сommit
c9dea48f84
1 измененных файлов с 3 добавлено и 6 удалено
  1. 3 6
      crt/i386/crt1.s

+ 3 - 6
crt/i386/crt1.s

@@ -10,13 +10,10 @@ _start:
 	pushl %esp
 	pushl %esp
 	pushl %edx
-	call 1f
-1:	addl $[_fini-.],(%esp)
-	call 1f
-1:	addl $[_init-.],(%esp)
+	pushl $_fini
+	pushl $_init
 	pushl %eax
 	pushl %ecx
-	call 1f
-1:	addl $[main-.],(%esp)
+	pushl $main
 	call __libc_start_main
 1:	jmp 1b