summaryrefslogtreecommitdiff
path: root/bfd/elf32-m32c.c
diff options
context:
space:
mode:
authorDJ Delorie <dj@delorie.com>2007-01-26 00:00:47 +0000
committerDJ Delorie <dj@delorie.com>2007-01-26 00:00:47 +0000
commit169fae769146c0902155220044a75ed943333d21 (patch)
treea05de3b73a6e6626c8530a7fd67c860b30b3ea48 /bfd/elf32-m32c.c
parente5f49acb2d168ab943d6778ddef470bbe1e1568c (diff)
downloadbinutils-redhat-169fae769146c0902155220044a75ed943333d21.tar.gz
* elf32-m32c.c (m32c_elf_howto_table): Don't complain about
R_M32C_16 or R_M32C_24 relocs.
Diffstat (limited to 'bfd/elf32-m32c.c')
-rw-r--r--bfd/elf32-m32c.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/bfd/elf32-m32c.c b/bfd/elf32-m32c.c
index 50538c9e08..492c5bc8e8 100644
--- a/bfd/elf32-m32c.c
+++ b/bfd/elf32-m32c.c
@@ -60,13 +60,16 @@ static reloc_howto_type m32c_elf_howto_table [] =
0, /* dst_mask */
FALSE), /* pcrel_offset */
+ /* GCC intentionally overflows these next two in order to work
+ around limitations in the addressing modes, so don't complain
+ about overflow. */
HOWTO (R_M32C_16, /* type */
0, /* rightshift */
1, /* size (0 = byte, 1 = short, 2 = long) */
16, /* bitsize */
FALSE, /* pc_relative */
0, /* bitpos */
- complain_overflow_bitfield, /* complain_on_overflow */
+ complain_overflow_dont, /* complain_on_overflow */
bfd_elf_generic_reloc, /* special_function */
"R_M32C_16", /* name */
FALSE, /* partial_inplace */
@@ -80,7 +83,7 @@ static reloc_howto_type m32c_elf_howto_table [] =
24, /* bitsize */
FALSE, /* pc_relative */
0, /* bitpos */
- complain_overflow_bitfield, /* complain_on_overflow */
+ complain_overflow_dont, /* complain_on_overflow */
bfd_elf_generic_reloc, /* special_function */
"R_M32C_24", /* name */
FALSE, /* partial_inplace */