PR ld/12365
authorAlan Modra <amodra@gmail.com>
Wed, 20 Apr 2011 00:22:08 +0000 (00:22 +0000)
committerAlan Modra <amodra@gmail.com>
Wed, 20 Apr 2011 00:22:08 +0000 (00:22 +0000)
commit02d002477b60cff9f0f5abbd5fc27e2889b13421
treeddb5245de932bf699df9cd2dda541ad9c96eef26
parent24f58f47de96a6c061fc6eeb37a699c03dde970a
PR ld/12365
bfd/
* elfcode.h (elf_slurp_symbol_table): Put common plugin IR symbols
in their own common section.
* elflink.c (elf_link_add_object_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Don't lose flags
if common section is pre-existing.
(_bfd_generic_link_add_one_symbol): Likewise.
ld/
* ldfile.c (ldfile_try_open_bfd): Move code creating and switching
to plugin IR BFD..
* ldmain.c (add_archive_element): ..and similar code here..
* plugin.c (plugin_maybe_claim): ..to here.  New function.
(plugin_call_claim_file): Make static.
(asymbol_from_plugin_symbol): Set ELF st_shndx for common syms.
(plugin_multiple_common): New function.
(plugin_call_all_symbols_read): Hook in plugin_multiple_common.
* plugin.h (plugin_call_claim_file): Don't declare.
(plugin_maybe_claim): Declare.
bfd/ChangeLog
bfd/elfcode.h
bfd/elflink.c
bfd/linker.c
ld/ChangeLog
ld/ldfile.c
ld/ldmain.c
ld/plugin.c
ld/plugin.h