From 1a2faf1f1e335ff32c1d8c5c7675cd7ce9055e33 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Wed, 29 Jan 1997 07:02:22 +0000 Subject: [PATCH] * elf32-mn10200.c (reloc_type): Add 16bit pc-relative reloc. (elf_mn10200_howto_table): Likewise. (mn10200_reloc_map): Likewise. How did I miss the 16bit pc-relative relocs?!? --- bfd/ChangeLog | 6 ++++++ bfd/elf32-mn10200.c | 16 ++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 54f836a..9d47d37 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +Wed Jan 29 00:00:49 1997 Jeffrey A Law (law@cygnus.com) + + * elf32-mn10200.c (reloc_type): Add 16bit pc-relative reloc. + (elf_mn10200_howto_table): Likewise. + (mn10200_reloc_map): Likewise. + start-sanitize-m32r Mon Jan 27 12:07:35 1997 Doug Evans diff --git a/bfd/elf32-mn10200.c b/bfd/elf32-mn10200.c index 56f8569..747c84e 100644 --- a/bfd/elf32-mn10200.c +++ b/bfd/elf32-mn10200.c @@ -40,6 +40,7 @@ enum reloc_type R_MN10200_8, R_MN10200_24, R_MN10200_PCREL8, + R_MN10200_PCREL16, R_MN10200_PCREL24, R_MN10200_MAX }; @@ -130,6 +131,20 @@ static reloc_howto_type elf_mn10200_howto_table[] = 0xff, 0xff, true), + /* Simple 16 pc-relative reloc. */ + HOWTO (R_MN10200_PCREL16, + 0, + 1, + 16, + true, + 0, + complain_overflow_bitfield, + bfd_elf_generic_reloc, + "R_MN10200_PCREL16", + false, + 0xffff, + 0xffff, + true), /* Simple 32bit pc-relative reloc with a 1 byte adjustment to get the pc-relative offset correct. */ HOWTO (R_MN10200_PCREL24, @@ -161,6 +176,7 @@ static const struct mn10200_reloc_map mn10200_reloc_map[] = { BFD_RELOC_8, R_MN10200_8, }, { BFD_RELOC_24, R_MN10200_24, }, { BFD_RELOC_8_PCREL, R_MN10200_PCREL8, }, + { BFD_RELOC_16_PCREL, R_MN10200_PCREL16, }, { BFD_RELOC_24_PCREL, R_MN10200_PCREL24, }, }; -- 2.7.4