summaryrefslogtreecommitdiff
path: root/ldso
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-07-08 05:18:41 +0000
committerMike Frysinger <vapier@gentoo.org>2005-07-08 05:18:41 +0000
commit935404384b6c3c04ed1c06011bfb45c4b06741c7 (patch)
tree49bcfde50137a074950085d45f32aacc37c513c2 /ldso
parent28ecffc3d934301d7339a05ff5b5f26ae2f78070 (diff)
err, x86_64 is RELA, not REL
Diffstat (limited to 'ldso')
-rw-r--r--ldso/ldso/x86_64/dl-sysdep.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/ldso/ldso/x86_64/dl-sysdep.h b/ldso/ldso/x86_64/dl-sysdep.h
index e8346452c..a156e7be3 100644
--- a/ldso/ldso/x86_64/dl-sysdep.h
+++ b/ldso/ldso/x86_64/dl-sysdep.h
@@ -102,14 +102,14 @@ elf_machine_load_address (void)
}
static __always_inline void
-elf_machine_relative (Elf64_Addr load_off, const Elf64_Addr rel_addr,
- Elf64_Word relative_count)
+elf_machine_relative(Elf64_Addr load_off, const Elf64_Addr rel_addr,
+ Elf64_Word relative_count)
{
- Elf64_Rel * rpnt = (void *) rel_addr;
+ Elf64_Rela *rpnt = (void *)rel_addr;
--rpnt;
do {
Elf64_Addr *const reloc_addr = (void *) (load_off + (++rpnt)->r_offset);
- *reloc_addr += load_off;
+ *reloc_addr = load_off + rpnt->r_addend;
} while (--relative_count);
}