diff options
author | Cupertino Miranda <cmiranda@synopsys.com> | 2016-05-20 12:26:27 +0530 |
---|---|---|
committer | Waldemar Brodkorb <wbx@uclibc-ng.org> | 2016-05-28 21:47:17 +0200 |
commit | ff6db61ba779a21612b5b16aa2c4a6f2c5c0aac8 (patch) | |
tree | 1aaf83c4250d135d5a79c9d59e983ed72f95c608 | |
parent | fb91f53426df19d86edda803ba1b712a61f2a187 (diff) |
ldso/ARC: fix DT_RELACOUNT handling
With new binutils supporting DT_RELACOUNT, ldso was crashing as it was
parsing relocs incorrectly.
Apparently that code ran for first time and was never tested.
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
-rw-r--r-- | ldso/ldso/arc/dl-sysdep.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ldso/ldso/arc/dl-sysdep.h b/ldso/ldso/arc/dl-sysdep.h index b6bda9d14..caece997d 100644 --- a/ldso/ldso/arc/dl-sysdep.h +++ b/ldso/ldso/arc/dl-sysdep.h @@ -166,7 +166,7 @@ static __always_inline void elf_machine_relative (Elf32_Addr load_off, const Elf32_Addr rel_addr, Elf32_Word relative_count) { - Elf32_Rel * rpnt = (void *) rel_addr; + Elf32_Rela * rpnt = (void *) rel_addr; --rpnt; do { Elf32_Addr *const reloc_addr = (void *) (load_off + (++rpnt)->r_offset); |