diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | 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 <nickc@cambridge.redhat.com> + + * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff + targets as well as sh-pe. + 2001-08-03 Ben Harris <bjh21@netbsd.org> * 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. */ |