diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf32-arm.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index fcb645b..85dc6b2 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2019-10-04 Szabolcs Nagy <szabolcs.nagy@arm.com> + + PR ld/25062 + * elf32-arm.c (elf32_arm_final_link_relocate): Sign extend data. + 2019-09-30 Nick Alcock <nick.alcock@oracle.com> * elf-bfd.h (bfd_section_is_ctf): New inline function. diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index bb53e03..d52c046 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -12027,9 +12027,9 @@ elf32_arm_final_link_relocate (reloc_howto_type * howto, unsigned long data, insn; unsigned thumb; - data = bfd_get_32 (input_bfd, hit_data); + data = bfd_get_signed_32 (input_bfd, hit_data); thumb = data & 1; - data &= ~1u; + data &= ~1ul; if (thumb) { |