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

--- Comment #6 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by Alan Modra <amo...@sourceware.org>:

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

commit defb881754df013e337eb981bc54b5e83fd01fa4
Author: Alan Modra <amo...@gmail.com>
Date:   Sun May 7 17:46:57 2023 +0930

    PR30343, LTO ignores linker reference to _pei386_runtime_relocator

    Make a reference to _pei386_runtime_relocator before LTO recompilation.
    This is done regardless of whether such a reference will be used,
    because it can't be known whether it is needed before LTO.

    I also found it necessary to enable long section names for the bfd
    created in make_runtime_pseudo_reloc, because otherwise when writing
    it out to the bfd-in-memory we get the section written as .rdata_r
    which when read back in leads to a linker warning ".rdata_r: section
    below image base" and likely runtime misbehaviour.

            PR 30343
            * emultempl/pe.em (make_runtime_ref): New function.
            (gld${EMULATION_NAME}_before_plugin_all_symbols_read): New
function.
            (LDEMUL_BEFORE_PLUGIN_ALL_SYMBOLS_READ): Define.
            * emultempl/pep.em: Similarly to pe.em.
            * pe-dll.c (make_runtime_pseudo_reloc): Set long section names.

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

Reply via email to