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.