From f8131ef05c260edbfd44d70a87555ba12c266db8 Mon Sep 17 00:00:00 2001 From: nickc Date: Tue, 7 Aug 2001 18:32:07 +0000 Subject: [PATCH] Support relocs for sh-coff targets as well as sh-pe. --- bfd/ChangeLog | 5 +++++ bfd/coff-sh.c | 12 ++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 4408a8c289..a15c488a8b 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2001-08-07 Nick Clifton + + * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff + targets as well as sh-pe. + 2001-08-03 Ben Harris * elf32-arm.h (elf32_arm_final_link_relocate): Include offset of diff --git a/bfd/coff-sh.c b/bfd/coff-sh.c index c96d05e25c..3f41a2d8ee 100644 --- a/bfd/coff-sh.c +++ b/bfd/coff-sh.c @@ -23,6 +23,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "bfd.h" #include "sysdep.h" +#include "libiberty.h" #include "libbfd.h" #include "bfdlink.h" #include "coff/sh.h" @@ -460,6 +461,8 @@ coff_sh_rtype_to_howto (abfd, sec, rel, h, sym, addendp) return howto; } +#endif /* COFF_WITH_PE */ + /* This structure is used to map BFD reloc codes to SH PE relocs. */ struct shcoff_reloc_map { @@ -486,16 +489,13 @@ sh_coff_reloc_type_lookup (abfd, code) { unsigned int i; - for (i = 0; i < sizeof (sh_reloc_map) / sizeof (struct shcoff_reloc_map); i++) - { - if (sh_reloc_map[i].bfd_reloc_val == code) - return &sh_coff_howtos[(int) sh_reloc_map[i].shcoff_reloc_val]; - } + for (i = ARRAY_SIZE (sh_reloc_map); i--;) + if (sh_reloc_map[i].bfd_reloc_val == code) + return &sh_coff_howtos[(int) sh_reloc_map[i].shcoff_reloc_val]; fprintf (stderr, "SH Error: unknown reloc type %d\n", code); return NULL; } -#endif /* COFF_WITH_PE */ /* This macro is used in coffcode.h to get the howto corresponding to an internal reloc. */ -- 2.11.0