summary refs log tree commit diff
path: root/elf/do-rel.h
diff options
context:
space:
mode:
Diffstat (limited to 'elf/do-rel.h')
-rw-r--r--elf/do-rel.h7
1 files changed, 3 insertions, 4 deletions
diff --git a/elf/do-rel.h b/elf/do-rel.h
index 7f4b1259a2..2e0f26bd05 100644
--- a/elf/do-rel.h
+++ b/elf/do-rel.h
@@ -37,12 +37,11 @@
 
 static inline void
 elf_dynamic_do_rel (struct link_map *map,
-		    int reltag, int sztag,
+		    ElfW(Addr) reladdr, ElfW(Addr) relsize,
 		    int lazy)
 {
-  const ElfW(Rel) *r
-    = (const ElfW(Rel) *) (map->l_addr + map->l_info[reltag]->d_un.d_ptr);
-  const ElfW(Rel) *end = &r[map->l_info[sztag]->d_un.d_val / sizeof *r];
+  const ElfW(Rel) *r = (const ElfW(Rel) *)(map->l_addr + reladdr);
+  const ElfW(Rel) *end = (const ElfW(Rel) *)(map->l_addr + reladdr + relsize);
 
   if (lazy)
     /* Doing lazy PLT relocations; they need very little info.  */