On 28/10/2025 13:46, Evgeny Karpov wrote:
The patch adds runtime pseudo relocation handling for 12-bit and 21-bit
relocations. The 26-bit relocation is handled using a jump stub generated by
the linker.

Thanks! I applied this.

I believe this file is also present in the MinGW-w64 runtime, so you should submit this change to that project as well.


Additionally relevant to this area, there's also some stuff related to v1 pseudo-relocations which should have been tidied-up for x86_64 (which post-dates v2) when x86 was removed (see [1]), but never was.

According to the notes I have from a few years ago (which amusingly say "maybe we'll fix this for arm64" :)):

* Remove dummy _pei386_runtime_relocator (conditionally on arm64)

* In binutils, modify the pe_create_runtime_relocator_reference function in ld/pe-dll.c so it no longer references that (for targets which have always supported v2 mode, e.g x86_64 and arm64).

* Make 'ld --enable-runtime-pseudo-reloc-v1' an error (for targets which don't support v1 mode e.g. arm64)

[1] https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=commitdiff;h=83f8e24f0b4a8cd4e03e86320c2647f4bb6939f5

Reply via email to