aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-arm.c2
-rw-r--r--ld/ChangeLog6
-rw-r--r--ld/testsuite/ld-arm/unwind-4.d2
4 files changed, 15 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 31d4eee..6c19987 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2019-07-01 Nick Clifton <nickc@redhat.com>
+
+ PR 23839
+ * elf32-arm.c (elf32_arm_update_relocs): Do not include the
+ section VMA in the offset used to update exidx relocs.
+
2019-06-28 Nick Clifton <nickc@redhat.com>
PR 24708
diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index 52fd48f..bcace92 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -15790,7 +15790,7 @@ elf32_arm_update_relocs (asection *o,
eadi = get_arm_elf_section_data (i);
edit_list = eadi->u.exidx.unwind_edit_list;
edit_tail = eadi->u.exidx.unwind_edit_tail;
- offset = o->vma + i->output_offset;
+ offset = i->output_offset;
if (eadi->elf.rel.hdr &&
eadi->elf.rel.hdr->sh_entsize == rel_hdr->sh_entsize)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index f7d7af6..d23ae59 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,9 @@
+2019-07-01 Nick Clifton <nickc@redhat.com>
+
+ PR 23839
+ * testsuite/ld-arm/unwind-4.d: Adjust for corrected calculation of
+ exidx relocs.
+
2019-06-28 Alan Modra <amodra@gmail.com>
* testsuite/ld-powerpc/callstub-1.d,
diff --git a/ld/testsuite/ld-arm/unwind-4.d b/ld/testsuite/ld-arm/unwind-4.d
index 0bed0dc..6bd4d91 100644
--- a/ld/testsuite/ld-arm/unwind-4.d
+++ b/ld/testsuite/ld-arm/unwind-4.d
@@ -13,6 +13,8 @@ OFFSET TYPE VALUE
0000000c R_ARM_PREL31 \.text
00000010 R_ARM_PREL31 \.text
00000010 R_ARM_NONE __aeabi_unwind_cpp_pr0
+00000010 R_ARM_PREL31 \.text
+00000010 R_ARM_NONE __aeabi_unwind_cpp_pr0
00000018 R_ARM_PREL31 \.text