bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/30343] LTO ignores linker reference to _pei386_runtime_relocator


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/30343] LTO ignores linker reference to _pei386_runtime_relocator
Date: Mon, 08 May 2023 04:35:41 +0000

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 <amodra@sourceware.org>:

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

commit defb881754df013e337eb981bc54b5e83fd01fa4
Author: Alan Modra <amodra@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

[Prev in Thread] Current Thread [Next in Thread]