]> git.ipfire.org Git - thirdparty/glibc.git/commit
x86_64: Remove unneeded static PIE check for undefined weak diagnostic
authorFangrui Song <maskray@google.com>
Thu, 8 Jul 2021 21:26:22 +0000 (14:26 -0700)
committerFangrui Song <i@maskray.me>
Sat, 28 Aug 2021 00:26:06 +0000 (17:26 -0700)
commita21d58a0dcd816bd97b9de328ad1870cc7098d9b
treef9b99f3f585691be44ae52cdd3e0c027f632aec2
parent2d20ffe431ddd299b50ba250fce43285b9617d31
x86_64: Remove unneeded static PIE check for undefined weak diagnostic

https://sourceware.org/bugzilla/show_bug.cgi?id=21782 dropped an ld
diagnostic for R_X86_64_PC32 referencing an undefined weak symbol in
-pie links.  Arguably keeping the diagnostic like other ports is more
correct, since statically resolving movl foo(%rip), %eax to the
link-time zero address produces a corrupted output.

It turns out that --enable-static-pie builds do not depend on the ld
behavior. GCC generates GOT indirection for weak declarations for
-fPIE/-fPIC, so what ld does with the PC-relative relocation doesn't
really matter.

Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
sysdeps/x86_64/configure [changed mode: 0644->0755]
sysdeps/x86_64/configure.ac