diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2015-04-13 04:58:16 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2015-04-13 04:58:29 -0700 |
commit | f0bf6bfd70fd550a0b01f8bef938a205702b0465 (patch) | |
tree | ec967d94aab5d2f64bdfcbc326fa32b545f18b8f /bfd | |
parent | 8cd8f2f8ac49276437b7da37f275706ea1c1c925 (diff) | |
download | gdb-f0bf6bfd70fd550a0b01f8bef938a205702b0465.zip gdb-f0bf6bfd70fd550a0b01f8bef938a205702b0465.tar.gz gdb-f0bf6bfd70fd550a0b01f8bef938a205702b0465.tar.bz2 |
Don't check object claimed by plugin
When ELF linker backend searchs the symbol table of an archive element,
it should skip the object which has been claimed by plugin.
PR ld/18250
* elflink.c (elf_link_is_defined_archive_symbol): Return FALSE
if the object has been claimed by plugin.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elflink.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 207884a..729630d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2015-04-13 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/18250 + * elflink.c (elf_link_is_defined_archive_symbol): Return FALSE + if the object has been claimed by plugin. + 2015-04-11 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_relocate_section): Replace SYMBOLIC_BIND diff --git a/bfd/elflink.c b/bfd/elflink.c index 98d3108..e3d1abe 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -2936,6 +2936,10 @@ elf_link_is_defined_archive_symbol (bfd * abfd, carsym * symdef) if (abfd == NULL) return FALSE; + /* Return FALSE if the object has been claimed by plugin. */ + if (abfd->plugin_format == bfd_plugin_yes) + return FALSE; + if (! bfd_check_format (abfd, bfd_object)) return FALSE; |