From b94608ca10051e7911250aaa53f1435b0512018c Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sun, 27 May 2012 14:49:55 -0400 Subject: cleanup dynamic linker start code cruft two actual issues: one is that __dynlink no longer wants/needs a GOT pointer argument, so the code to generate that argument can be removed. the other issue was that in the i386 code, argc/argv were being loaded into registers that would be call-clobbered, then copied to preserved registers, rather than just being loaded into the proper call-preserved registers to begin with. this cleanup is in preparation for adding new dynamic linker functionality (ability to explicitly invoke the dynamic linker to run a program). --- src/ldso/x86_64/start.s | 1 - 1 file changed, 1 deletion(-) (limited to 'src/ldso/x86_64') diff --git a/src/ldso/x86_64/start.s b/src/ldso/x86_64/start.s index cb0a9e1f..65e238b7 100644 --- a/src/ldso/x86_64/start.s +++ b/src/ldso/x86_64/start.s @@ -3,7 +3,6 @@ _start: mov (%rsp),%rdi lea 8(%rsp),%rsi - lea _GLOBAL_OFFSET_TABLE_(%rip),%rdx call __dynlink xor %edx,%edx jmp *%rax -- cgit v1.2.1