[PATCH v2] ld: testsuite: Mark vers26b3 unsupported on x86_64
H.J. Lu
hjl.tools@gmail.com
Tue Aug 19 11:41:52 GMT 2025
On Tue, Aug 19, 2025 at 4:33 AM Rainer Orth <ro@cebitec.uni-bielefeld.de> wrote:
>
> After enabling the ld-elfvers tests on Solaris/x86, one of them FAILs on
> Solaris/amd64 only:
>
> FAIL: vers26b3
>
> /ld-new: tmpdir/vers26b3.o: relocation R_X86_64_32 against symbol `foo' can not be used when making a shared object; recompile with -fPIC
> ./ld-new: failed to set dynamic section sizes: bad value
>
> The error is strange: vers26b3.o *was* compiled with -fPIC and repeating
> the link with /bin/ld just works. However, the resulting vers26b3.so
> fails to load:
>
> $ ldd -r tmpdir/vers26b3.so
> [...]
> ld.so.1: vers26b3.so.ld: fatal: relocation error: R_AMD64_32: file tmpdir/vers26b3.so.ld: symbol foo: value 0x7fff34d00830 does not fit
>
> When running the test on Linux/x86_64, it fails with the same ld message
> as above, so the test is marked unsupported for both Linux/x86_64 and
> Solaris/amd64.
>
> Tested on {amd64,i386}-pc-solaris2.11 and {x86_64,i686}-pc-linux-gnu.
if { [istarget x86_64-*-solaris2*] || [istarget x86_64-*-solaris2*] } then {
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Typo. Should we just do
if [string match "yes" $pic] then {
unsupported "vers26b3"
}
> Ok for trunk?
>
> Rainer
>
> --
> -----------------------------------------------------------------------------
> Rainer Orth, Center for Biotechnology, Bielefeld University
>
>
> 2025-07-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
>
> ld:
> * testsuite/ld-elfvers/vers.exp (vers26b3): Mark unsupported on
> Linux/x86_64 and Solaris/amd64.
>
--
H.J.
More information about the Binutils
mailing list