summaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorStephane Carrez <stcarrez@nerim.fr>2002-12-01 13:24:03 +0000
committerStephane Carrez <stcarrez@nerim.fr>2002-12-01 13:24:03 +0000
commit2decaa495b16f9f6bae2f8c6a4c2698f83f43175 (patch)
tree75fc82e835aecef23bef7491479315f181b00438 /bfd
parentde0f47ccae4ba0b067575f4b3cbc02152881f680 (diff)
downloadgdb-2decaa495b16f9f6bae2f8c6a4c2698f83f43175.tar.gz
Fix PR savannah/1417:
* elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Don't adjust branch if it goes to the start of the deleted region.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-m68hc11.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index ae96c5a3c4b..15468ab4a06 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,11 @@
2002-12-01 Stephane Carrez <stcarrez@nerim.fr>
+ Fix PR savannah/1417:
+ * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Don't adjust
+ branch if it goes to the start of the deleted region.
+
+2002-12-01 Stephane Carrez <stcarrez@nerim.fr>
+
* bfd-in2.h (bfd_mach_m6812): Rebuild.
* archures.c (bfd_mach_m6812_default, bfd_mach_m6812,
bfd_mach_m6812s): Declare.
diff --git a/bfd/elf32-m68hc11.c b/bfd/elf32-m68hc11.c
index aa6cb515161..98ea6a69cd5 100644
--- a/bfd/elf32-m68hc11.c
+++ b/bfd/elf32-m68hc11.c
@@ -1194,7 +1194,7 @@ m68hc11_elf_relax_delete_bytes (abfd, sec, addr, count)
offset = bfd_get_8 (abfd, contents + irel->r_offset + branch_pos);
raddr += old_offset;
raddr += ((unsigned short) offset | ((offset & 0x80) ? 0xff00 : 0));
- if (irel->r_offset < addr && raddr >= addr)
+ if (irel->r_offset < addr && raddr > addr)
{
offset -= count;
bfd_put_8 (abfd, offset, contents + irel->r_offset + branch_pos);