From 6e3acf74d0fd966128b0d68bf94bf6bc4bd5d5cd Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 23 Jan 1995 22:32:18 +0000 Subject: * coff-sh.c (sh_reloc): Don't ignore the previous contents of an R_SH_IMM32 reloc. PR 6215. --- bfd/coff-sh.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) (limited to 'bfd/coff-sh.c') diff --git a/bfd/coff-sh.c b/bfd/coff-sh.c index 80f4af4..3a9c76d 100644 --- a/bfd/coff-sh.c +++ b/bfd/coff-sh.c @@ -147,8 +147,8 @@ sh_reloc (abfd, reloc_entry, symbol_in, data, input_section, output_bfd, switch (r_type) { case R_SH_IMM32: - /* We ignore the previous contents ! */ insn = sym_value + reloc_entry->addend; + insn += bfd_get_32 (abfd, hit_data); bfd_put_32(abfd, insn, hit_data); break; default: @@ -308,12 +308,6 @@ const bfd_target shcoff_vec = COFF_SWAP_TABLE, }; - -static int no_archive() -{ - bfd_set_error (bfd_error_wrong_format); - return 0; -} const bfd_target shlcoff_vec = { "coff-shl", /* name */ @@ -341,7 +335,7 @@ const bfd_target shlcoff_vec = This is so that we only use one archive format for both object file types */ {_bfd_dummy_target, coff_object_p, /* bfd_check_format */ - no_archive, _bfd_dummy_target}, + _bfd_dummy_target, _bfd_dummy_target}, {bfd_false, coff_mkobject, _bfd_generic_mkarchive, /* bfd_set_format */ bfd_false}, {bfd_false, coff_write_object_contents, /* bfd_write_contents */ -- cgit v1.1