aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2007-05-03 15:55:38 +0000
committerNick Clifton <nickc@redhat.com>2007-05-03 15:55:38 +0000
commit22184a77bedbe9a50b48f0bc50ff1f8898699a39 (patch)
tree1a563035196ee0761363a56faf64d41131a243b5 /bfd
parentfe7929ce4ac0d763d5669ada789c0b93140ce922 (diff)
downloadgdb-22184a77bedbe9a50b48f0bc50ff1f8898699a39.zip
gdb-22184a77bedbe9a50b48f0bc50ff1f8898699a39.tar.gz
gdb-22184a77bedbe9a50b48f0bc50ff1f8898699a39.tar.bz2
PR gas/3041
* gas/config/tc-m68k.c (relaxable_symbol): Do not relax weak symbols. (tc_gen_reloc): Adjust the addend of relocs against weak symbols. (md_apply_fix): Put zero values into the frags referencing weak symbols. * bfd/aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols in the same way as relocs against external symbols.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/aoutx.h5
2 files changed, 11 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 1c00088..00ae68e 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2007-05-03 Vincent Riviere <vincent.riviere@freesbee.fr>
+ Nick Clifton <nickc@redhat.com>
+
+ PR gas/3041
+ * aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols
+ in the same way as relocs against external symbols.
+
2007-05-02 Alan Modra <amodra@bigpond.net.au>
* elf.c (assign_file_positions_for_load_sections): Set sh_offset
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
index 98d5213..09331aa 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
@@ -1952,7 +1952,10 @@ NAME (aout, swap_std_reloc_out) (bfd *abfd,
if (bfd_is_com_section (output_section)
|| bfd_is_abs_section (output_section)
- || bfd_is_und_section (output_section))
+ || bfd_is_und_section (output_section)
+ /* PR gas/3041 a.out relocs against weak symbols
+ must be treated as if they were against externs. */
+ || (sym->flags & BSF_WEAK))
{
if (bfd_abs_section_ptr->symbol == sym)
{