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 <maskray@google.com>
Thu, 8 Jul 2021 21:26:22 +0000 (14:26 -0700)
commit115d242456de158e698ffb0f9a5fee3118e9e825
treeaa9d3aa72fb7c960e0f77fba1ae6f4c494a58312
parentbba4383c6b4db09c84c7a194b5e80978e6c44ee5
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