PR ld/20995: MIPS: Set GAS flags correctly for tests
authorMaciej W. Rozycki <macro@imgtec.com>
Wed, 18 Jan 2017 18:07:58 +0000 (18:07 +0000)
committerMaciej W. Rozycki <macro@imgtec.com>
Wed, 18 Jan 2017 23:19:07 +0000 (23:19 +0000)
Complement commit 9acc85a62eb7 ("Use dynrelro for symbols in relro
sections too").

ld/
PR ld/20995
* testsuite/ld-elf/elf.exp: Set GAS flags correctly for the
`mips*-*-*' target and `pr20995' and `pr20995-2' tests.

ld/ChangeLog
ld/testsuite/ld-elf/elf.exp

index 0cc3393b3621cfe3bcb584b8fe1b57dda2b12ea9..37224a0bb6cb30cf54e181296bfd6c6c31952361 100644 (file)
@@ -1,3 +1,9 @@
+2017-01-18  Maciej W. Rozycki  <macro@imgtec.com>
+
+       PR ld/20995
+       * testsuite/ld-elf/elf.exp: Set GAS flags correctly for the
+       `mips*-*-*' target and `pr20995' and `pr20995-2' tests.
+
 2017-01-18  Maciej W. Rozycki  <macro@imgtec.com>
 
        PR ld/20828
index 9a26a7cb5f1e0b697b740255733a851a80014de9..4d4a6316b5ef478a24bc24b5b369d79cd8d7dfee 100644 (file)
@@ -83,6 +83,13 @@ if { ![istarget hppa64*-hpux*] } {
 
 # Only run these tests on targets that support creating shared libraries.
 if { [check_shared_lib_support] } then {
+    # This target requires extra GAS options when building non-PIC code
+    # for linking with shared libraries.
+    set AFLAGS_NONPIC ""
+    if [istarget "mips*-*-*"] {
+       append AFLAGS_NONPIC " -call_nonpic"
+    }
+
     # Run a test to check linking a shared library with a broken linker
     # script that accidentally marks dynamic sections as notes.  The
     # resulting executable is not expected to work, but the linker
@@ -142,17 +149,17 @@ if { [check_shared_lib_support] } then {
     }
     # These targets don't copy dynamic variables into .bss.
     setup_xfail "alpha-*-*" "bfin-*-*" "ia64-*-*" "xtensa-*-*"
-    run_ld_link_tests {
-       {"pr20995"
-           "" "tmpdir/pr20995.so" ""
-           {pr20995a.s} {{readelf {-S --wide} pr20995.r}} "pr20995"}
-    }
+    run_ld_link_tests [list \
+       [list \
+           "pr20995" \
+           "" "tmpdir/pr20995.so" "$AFLAGS_NONPIC" \
+           {pr20995a.s} {{readelf {-S --wide} pr20995.r}} "pr20995"]]
     setup_xfail "alpha-*-*" "bfin-*-*" "ia64-*-*" "xtensa-*-*"
-    run_ld_link_tests {
-       {"pr20995-2"
-           "" "tmpdir/pr20995-2.so" ""
-           {pr20995a.s} {{readelf {-S --wide} pr20995.r}} "pr20995-2"}
-    }
+    run_ld_link_tests [list \
+       [list \
+           "pr20995-2" \
+           "" "tmpdir/pr20995-2.so" "$AFLAGS_NONPIC" \
+           {pr20995a.s} {{readelf {-S --wide} pr20995.r}} "pr20995-2"]]
 }
 
 set test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]