aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/testsuite/ChangeLog5
-rw-r--r--ld/testsuite/ld-scripts/crossref.exp10
2 files changed, 15 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 2e0bd92..9e785a8 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,5 +1,10 @@
2015-07-27 H.J. Lu <hongjiu.lu@intel.com>
+ * ld-scripts/crossref.exp (CC): Save and restore. Append
+ $PLT_CFLAGS.
+
+2015-07-27 H.J. Lu <hongjiu.lu@intel.com>
+
* ld-i386/i386.exp (run_cc_link_tests): Add $PLT_CFLAGS to
-fPIC if needed.
* ld-x86-64/mpx.exp (run_cc_link_tests): Likewise.
diff --git a/ld/testsuite/ld-scripts/crossref.exp b/ld/testsuite/ld-scripts/crossref.exp
index 1b6a4bb..293b2a3 100644
--- a/ld/testsuite/ld-scripts/crossref.exp
+++ b/ld/testsuite/ld-scripts/crossref.exp
@@ -33,6 +33,11 @@ if { ![is_remote host] && [which $CC] == 0 } {
global CFLAGS
set old_CFLAGS "$CFLAGS"
+# Pass -fplt to CC since -fno-plt doesn't work with NOCROSSREFS tests.
+global PLT_CFLAGS
+set old_CC "$CC"
+set CC "$CC $PLT_CFLAGS"
+
# Xtensa targets currently default to putting literal values in a separate
# section and that requires linker script support, so put literals in text.
if [istarget xtensa*-*-*] {
@@ -63,6 +68,7 @@ if { ![ld_compile $CC "$srcdir/$subdir/cross1.c" tmpdir/cross1.o] \
unresolved $test1
unresolved $test2
set CFLAGS "$old_CFLAGS"
+ set CC "$old_CC"
return
}
@@ -98,6 +104,7 @@ if [string match "" $exec_output] then {
if { ![ld_compile $CC "$srcdir/$subdir/cross3.c" tmpdir/cross3.o] } {
unresolved $test2
set CFLAGS "$old_CFLAGS"
+ set CC "$old_CC"
return
}
@@ -122,12 +129,14 @@ if [string match "" $exec_output] then {
if { ![ld_compile $CC "$srcdir/$subdir/cross4.c" tmpdir/cross4.o] } {
unresolved $test3
set CFLAGS "$old_CFLAGS"
+ set CC "$old_CC"
return
}
if ![ld_relocate $ld tmpdir/cross3-partial.o "tmpdir/cross1.o tmpdir/cross4.o"] {
unresolved $test3
set CFLAGS "$old_CFLAGS"
+ set CC "$old_CC"
return
}
@@ -145,3 +154,4 @@ if [string match "" $exec_output] then {
}
set CFLAGS "$old_CFLAGS"
+set CC "$old_CC"