This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Adjust test for PR ld/22269
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: binutils at sourceware dot org
- Date: Mon, 29 Jan 2018 11:40:15 +0100
- Subject: Adjust test for PR ld/22269
- Authentication-results: sourceware.org; auth=none
Hi,
on the SPARC architecture, you need to pass a special flag to GAS when you're
assembling PIC/PIE code or else you get a wrong relocation for the GOT symbol.
Tested on SPARC64/Linux (where it fixes PR22269-1), OK for mainline?
NB: it's rather confusing that run_ld_link_tests needs this tweak, but neither
run_ld_link_exec_tests nor run_cc_link_tests does. Maybe run_ld_link_tests
should be fixed instead?
2018-01-29 Eric Botcazou <ebotcazou@adacore.com>
ld/
PR ld/22269
* testsuite/ld-elf/shared.exp (AFLAGS_PIC): Define on SPARC.
(pr22269-1): Pass AFLAGS_PIC to the assembler.
--
Eric Botcazou
diff --git a/ld/testsuite/ld-elf/shared.exp b/ld/testsuite/ld-elf/shared.exp
index 5c4d78aa2d..9b9cbaadfd 100644
--- a/ld/testsuite/ld-elf/shared.exp
+++ b/ld/testsuite/ld-elf/shared.exp
@@ -42,6 +42,10 @@ set AFLAGS_PIC ""
if [istarget "tic6x-*-*"] {
append AFLAGS_PIC " -mpic -mpid=near"
}
+if [istarget "sparc*-*-*"] {
+ append AFLAGS_PIC " -K PIC"
+}
+
# This target requires a non-default emulation for successful shared
# library/executable builds.
set LFLAGS ""
@@ -577,7 +581,7 @@ run_ld_link_tests [list \
"Build pr22269-1" \
"-pie -e _start --no-dynamic-linker -z text" \
"" \
- "" \
+ "$AFLAGS_PIC" \
{ pr22269-1.c } \
{{readelf -rW pr22269-1.rd}} \
"pr22269-1" \