about summary refs log tree commit diff
path: root/elf/rtld.c
diff options
context:
space:
mode:
Diffstat (limited to 'elf/rtld.c')
-rw-r--r--elf/rtld.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/elf/rtld.c b/elf/rtld.c
index 0ce903a036..f65bd80954 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -83,10 +83,8 @@ _dl_start (void *arg)
   /* Figure out the run-time load address of the dynamic linker itself.  */
   bootstrap_map.l_addr = elf_machine_load_address ();
 
-  /* Read our own dynamic section and fill in the info array.
-     Conveniently, the first element of the GOT contains the
-     offset of _DYNAMIC relative to the run-time load address.  */
-  bootstrap_map.l_ld = (void *) bootstrap_map.l_addr + *elf_machine_got ();
+  /* Read our own dynamic section and fill in the info array.  */
+  bootstrap_map.l_ld = (void *) bootstrap_map.l_addr + elf_machine_dynamic ();
   elf_get_dynamic_info (bootstrap_map.l_ld, bootstrap_map.l_info);
 
 #ifdef ELF_MACHINE_BEFORE_RTLD_RELOC