summaryrefslogtreecommitdiff
path: root/bfd/elf32-h8300.c
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>2002-06-06 21:33:11 +0000
committerJeff Law <law@redhat.com>2002-06-06 21:33:11 +0000
commit76f99c63fbd0a32c7ff42d21ff21b18df21a9d3f (patch)
treeef6620e4cae646f7b7be47f7db5801c896637cf2 /bfd/elf32-h8300.c
parentc5984d701278f402a88234f7c0a6bf5f15577fcc (diff)
downloadbinutils-gdb-76f99c63fbd0a32c7ff42d21ff21b18df21a9d3f.tar.gz
* elf32-h8300.c (elf32_h8_relax_section): Ignore uninteresting
relocations.
Diffstat (limited to 'bfd/elf32-h8300.c')
-rw-r--r--bfd/elf32-h8300.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/bfd/elf32-h8300.c b/bfd/elf32-h8300.c
index 66e563edd75..1a841a7e74e 100644
--- a/bfd/elf32-h8300.c
+++ b/bfd/elf32-h8300.c
@@ -678,10 +678,7 @@ elf32_h8_merge_private_bfd_data (ibfd, obfd)
mov.b:16 -> mov.b:8 2 bytes
mov.b:24/32 -> mov.b:8 4 bytes
- mov.[bwl]:24/32 -> mov.[bwl]:16 2 bytes
-
-
-*/
+ mov.[bwl]:24/32 -> mov.[bwl]:16 2 bytes */
static boolean
elf32_h8_relax_section (abfd, sec, link_info, again)
@@ -748,6 +745,13 @@ elf32_h8_relax_section (abfd, sec, link_info, again)
if (irel != internal_relocs)
last_reloc = irel - 1;
+ if (ELF32_R_TYPE (irel->r_info) != R_H8_DIR24R8
+ && ELF32_R_TYPE (irel->r_info) != R_H8_PCREL16
+ && ELF32_R_TYPE (irel->r_info) != R_H8_DIR16A8
+ && ELF32_R_TYPE (irel->r_info) != R_H8_DIR24A8
+ && ELF32_R_TYPE (irel->r_info) != R_H8_DIR32A16)
+ continue;
+
/* Get the section contents if we haven't done so already. */
if (contents == NULL)
{