From a42ad61bae4d378f290df67015b14dec1236545f Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 15 Mar 2009 00:26:14 +0000 Subject: * elf/dl-runtime.c (reloc_offset): Define. (reloc_index): Define. (_dl_fixup): Rename reloc_offset parameter to reloc_arg. (_dl_fixup_profile): Likewise. Use reloc_index instead of computing index from reloc_offset. (_dl_call_pltexit): Likewise. * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_resolve): Just pass the relocation index to _dl_fixup. (_dl_runtime_profile): Likewise for _dl_fixup_profile and _dl_call_pltexit. * sysdeps/x86_64/dl-runtime.c: New file. --- sysdeps/x86_64/dl-trampoline.S | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'sysdeps/x86_64/dl-trampoline.S') diff --git a/sysdeps/x86_64/dl-trampoline.S b/sysdeps/x86_64/dl-trampoline.S index c9be759e37..0ae47a47db 100644 --- a/sysdeps/x86_64/dl-trampoline.S +++ b/sysdeps/x86_64/dl-trampoline.S @@ -35,10 +35,6 @@ _dl_runtime_resolve: movq %r8, 40(%rsp) movq %r9, 48(%rsp) movq 64(%rsp), %rsi # Copy args pushed by PLT in register. - movq %rsi, %r11 # Multiply by 24 - addq %r11, %rsi - addq %r11, %rsi - shlq $3, %rsi movq 56(%rsp), %rdi # %rdi: link_map, %rsi: reloc_offset call _dl_fixup # Call resolver. movq %rax, %r11 # Save return value @@ -116,10 +112,6 @@ _dl_runtime_profile: movq %rsp, %rcx # La_x86_64_regs pointer to %rcx. movq 48(%rbx), %rdx # Load return address if needed. movq 40(%rbx), %rsi # Copy args pushed by PLT in register. - movq %rsi,%r11 # Multiply by 24. - addq %r11,%rsi - addq %r11,%rsi - shlq $3, %rsi movq 32(%rbx), %rdi # %rdi: link_map, %rsi: reloc_offset leaq 16(%rbx), %r8 call _dl_profile_fixup # Call resolver. @@ -204,10 +196,6 @@ _dl_runtime_profile: movq 24(%rbx), %rdx # La_x86_64_regs argument to %rdx. movq 40(%rbx), %rsi # Copy args pushed by PLT in register. - movq %rsi,%r11 # Multiply by 24. - addq %r11,%rsi - addq %r11,%rsi - shlq $3, %rsi movq 32(%rbx), %rdi # %rdi: link_map, %rsi: reloc_offset call _dl_call_pltexit -- cgit v1.2.1