在 2026-7-2 22:38, Jon Turney 写道:
The exported _pei386_runtime_relocator function currently only exists as a non-functional stub in the Cygwin runtime, merely to satisfy this reference synthesized in ld [1].The function still has contents in the MinGW runtime [2], but is already referenced by being explcitly called at crt startup/dll load. We'd like to drop the (slightly confusing) stub from the Cygwin runtime, especially in possible future architectures (e.g aarch64), where backwards compatibilty concerns don't exist. So, for PE+ targets, stop explicitly emitting a reference to _pei386_runtime_relocator in the linker. (The archeological record is unclear why this functionality exists in ld. Since --enable-runtime-pseudo-reloc-v1 exists for 32-bit PE arches, and out of an abundance of caution, keep emitting it for those targets (i.e. i386) where it conceivably might still be needed or useful with an ancient runtime.) Cc'ed to mingw-w64-public list. [1] https://cygwin.com/cgit/newlib-cygwin/tree/winsup/cygwin/lib/pseudo-reloc-dummy.c [2] https://sourceforge.net/p/mingw-w64/mingw-w64/ci/master/tree/mingw-w64-crt/crt/pseudo-reloc.c#l479 Signed-off-by: Jon Turney <[email protected]> Cc: [email protected]
AFAICT there's no reason to keep it. Even the original MinGW.org code calls it explicitly: https://sourceforge.net/p/mingw/mingw-org-wsl/ci/5.1-trunk/tree/mingwrt/crt1.c#l343 -- Best regards, LIU Hao
OpenPGP_signature.asc
Description: OpenPGP digital signature
_______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
