https://sourceware.org/bugzilla/show_bug.cgi?id=25640

--- Comment #11 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by H.J. Lu <h...@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c3a1714ce7806002726a60c0db09371425fe3097

commit c3a1714ce7806002726a60c0db09371425fe3097
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Thu Mar 19 21:00:19 2020 -0700

    plugin: Use LDPT_ADD_SYMBOLS_V2 to get symbol type

    Since LTO plugin may generate more than one ltrans.o file from one input
    IR object as LTO wrapper ignores -flto-partition=none:

    lto-wrapper.c:608:

       604          /* Drop arguments that we want to take from the link line. 
*/
       605          case OPT_flto_:
       606          case OPT_flto:
       607          case OPT_flto_partition_:
       608            continue;

    the LTO wrapper approach is not only slow but also unreliable.  Since
    the LTO plugin API has been extended to add LDPT_ADD_SYMBOLS_V2 with
    symbol type and section kind, we can use LDPT_ADD_SYMBOLS_V2 to get
    symbol type, instead of invoking the LTO wrapper.

            PR binutils/25640
            * plugin.c (plugin_list_entry): Add has_symbol_type.
            (add_symbols_v2): New function.
            (bfd_plugin_open_input): Don't invoke LTO wrapper if LTO plugin
            provides symbol type.
            (try_load_plugin): Add LDPT_ADD_SYMBOLS_V2.
            (bfd_plugin_canonicalize_symtab): Use LTO plugin symbol type if
            available.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to