aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2001-08-31 16:23:25 +0000
committerNick Clifton <nickc@redhat.com>2001-08-31 16:23:25 +0000
commit5fb1c3f28281809a976539b4a6810cae766bbd68 (patch)
tree2dd21ab37c9fafa6af44b32d93694b483f70a48a /bfd
parent374b596dd678cf40a7963c4b39439c529f76c9be (diff)
downloadfsf-binutils-gdb-5fb1c3f28281809a976539b4a6810cae766bbd68.zip
fsf-binutils-gdb-5fb1c3f28281809a976539b4a6810cae766bbd68.tar.gz
fsf-binutils-gdb-5fb1c3f28281809a976539b4a6810cae766bbd68.tar.bz2
Do not rightshift recomputed addend during relocatable link if not USE_REL.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog3
-rw-r--r--bfd/elf32-arm.h5
2 files changed, 5 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 4f3b211..b2eb1c9 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,8 @@
2001-08-31 Nick Clifton <nickc@cambridge.redhat.com>
+ * elf32-arm.h (elf32_arm_relocate_section): Do not rightshift
+ recomputed addend during relocatable link.
+
* elflink.h (elf_gc_propagate_vtable_entries_used): Fix off-by-one
error.
diff --git a/bfd/elf32-arm.h b/bfd/elf32-arm.h
index fcde30e..2b627ec 100644
--- a/bfd/elf32-arm.h
+++ b/bfd/elf32-arm.h
@@ -1810,7 +1810,7 @@ elf32_arm_relocate_section (output_bfd, info, input_bfd, input_section,
|| r_type == R_ARM_GNU_VTINHERIT)
continue;
- elf32_arm_info_to_howto (input_bfd, & bfd_reloc, rel);
+ elf32_arm_info_to_howto (input_bfd, & bfd_reloc, (Elf32_Internal_Rel *) rel);
howto = bfd_reloc.howto;
if (info->relocateable)
@@ -1829,8 +1829,7 @@ elf32_arm_relocate_section (output_bfd, info, input_bfd, input_section,
arm_add_to_rel (input_bfd, contents + rel->r_offset,
howto, sec->output_offset + sym->st_value);
#else
- rel->r_addend += (sec->output_offset + sym->st_value)
- >> howto->rightshift;
+ rel->r_addend += (sec->output_offset + sym->st_value);
#endif
}
}