2382010 plugin: Don't invoke LTO-wrapper

Authored and Committed by H.J. Lu 4 years ago
    plugin: Don't invoke LTO-wrapper
    
    Don't invoke LTO-wrapper since the LTO wrapper approach is not only
    slow but also unreliable.  For GCC 10 or newer, LDPT_ADD_SYMBOLS_V2
    will be used.
    
    bfd/
    
    	* configure.ac (HAVE_EXECUTABLE_SUFFIX): Removed.
    	(EXECUTABLE_SUFFIX): Likewise.
    	* config.in: Regenerated.
    	* configure: Likewise.
    	* plugin.c (bfd_plugin_close_and_cleanup): Defined as
    	_bfd_generic_close_and_cleanup.
    	(plugin_list_entry): Remove resolution_file, resolution_option,
    	real_bfd, real_nsyms, real_syms, lto_nsyms, lto_syms, gcc,
    	lto_wrapper, gcc_env and initialized,
    	(need_lto_wrapper_p): Removed.
    	(get_lto_wrapper): Likewise.
    	(setup_lto_wrapper_env): Likewise.
    	(register_all_symbols_read): Likewise.
    	(egister_cleanup): Likewise.
    	(get_symbols): Likewise.
    	(add_input_file): Likewise.
    	(bfd_plugin_set_program_name): Remove need_lto_wrapper.
    	(add_symbols): Updated.
    	(try_claim): Likewise.
    	(try_load_plugin): Likewise.
    	(bfd_plugin_canonicalize_symtab): Likewise.
    	* plugin.h (bfd_plugin_set_program_name): Remove int argument.
    	(plugin_data_struct): Remove real_bfd, real_nsyms and
    	real_syms.
    
    binutils/
    
    	* ar.c (main): Update bfd_plugin_set_program_name call.
    	* nm.c (main): Likewise.
    
    ld/
    
    	* testsuite/ld-plugin/lto.exp (lto_link_tests): Run PR ld/25355
    	test only for GCC 10 or newer.
    
    (cherry picked from commit 3d98c46092341c1373d960d0a66ca502d5b7ee7f)
    
        
file modified
+27 -0
file modified
+0 -6
file modified
+0 -10
file modified
+0 -6
file modified
+10 -443
file modified
+1 -4
file modified
+5 -0
file modified
+1 -1
file modified
+1 -1
file modified
+5 -0