[binutils-gdb] PR 29655 test: xfail more targets

Alan Modra via Binutils-cvs <[email protected]> Thu, 18 Jun 2026 05:19:15 +0000 (GMT)
Newsgroups gmane.comp.gnu.binutils.cvs
Message-ID <[email protected]>
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=bcf8ba6ec3458b0264a967d9f00fc50d7a883682

commit bcf8ba6ec3458b0264a967d9f00fc50d7a883682
Author: Alan Modra <[email protected]>
Date:   Thu Jun 18 11:47:05 2026 +0930

    PR 29655 test: xfail more targets
    
    Apparently some libraries (Qt5 is called out in PR 29655) want to know
    if one of their functions has been overridden, and do so by comparing
    the address of the function with the address of a local hidden alias.
    This is a bug in every such library that tries that trick, because if
    the main program is non-PIC and calls the function in question then
    the globally visible address of the function is set to the PLT call
    stub code for that function in the main executable.  This will happen
    even when there is no real overriding of the function.
    
    On the other hand if the main executable is PIC then there should be
    no need to define function addresses on PLT call stub code, but some
    linker target support still does so.  This is a minor bug in the
    linker as it results in more work in ld.so and sligntly slower
    startup.  However, I don't think it is an important issue if target
    maintainers can't fix the problem.
    
            * testsuite/ld-elf/shared.exp (pr29655): xfail more targets.

Diff:
---
 ld/testsuite/ld-elf/shared.exp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ld/testsuite/ld-elf/shared.exp b/ld/testsuite/ld-elf/shared.exp
index a4437162e3a..f69a0d402bd 100644
--- a/ld/testsuite/ld-elf/shared.exp
+++ b/ld/testsuite/ld-elf/shared.exp
@@ -1879,7 +1879,7 @@ run_cc_link_tests [list \
 # of a function defined in a DSO results in the function address (from GOT)
 # and not the "canonical PLT" address from the PDE.
 # PR ld/34151
-setup_xfail sparc*-*-*
+setup_xfail sparc*-*-* m68k-*-* riscv*-*-* s390-*-* sh*-*-* tile*-*-*
 run_cc_link_tests [list \
     [list \
 	"Build pr29655" \