diff options
author | Nick Clifton <nickc@redhat.com> | 2007-05-03 15:55:38 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2007-05-03 15:55:38 +0000 |
commit | 22184a77bedbe9a50b48f0bc50ff1f8898699a39 (patch) | |
tree | 1a563035196ee0761363a56faf64d41131a243b5 /bfd | |
parent | fe7929ce4ac0d763d5669ada789c0b93140ce922 (diff) | |
download | gdb-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/ChangeLog | 7 | ||||
-rw-r--r-- | bfd/aoutx.h | 5 |
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) { |