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

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

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

commit 64f5c0afcc4683f0003b60d6a5a299beb08f38de
Author: H.J. Lu <hjl.to...@gmail.com>
Date:   Wed Mar 25 06:54:20 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.

    (cherry picked from commit c3a1714ce7806002726a60c0db09371425fe3097)

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

Reply via email to