Update year range in copyright notice of all files.
[deliverable/binutils-gdb.git] / ld / testsuite / ld-x86-64 / no-plt.exp
index f57e131421d9908720d1a989b4492bdff75e2715..5b5c8177569cc8f35c34636221c2fc40585846f3 100644 (file)
@@ -1,5 +1,5 @@
 # Expect script for x86-64 no-PLT tests.
-#   Copyright (C) 2016 Free Software Foundation, Inc.
+#   Copyright (C) 2016-2017 Free Software Foundation, Inc.
 #
 # This file is part of the GNU Binutils.
 #
@@ -103,7 +103,7 @@ run_cc_link_tests [list \
        "" \
        {dummy.s} \
        {{readelf -Wr no-plt-1d.rd} {objdump -dwrj.text no-plt-1d.dd}} \
-       "no-plt-1a" \
+       "no-plt-1d" \
     ] \
     [list \
        "No PLT (PIE 1e)" \
@@ -134,7 +134,7 @@ run_cc_link_tests [list \
     ] \
 ]
 
-run_ld_link_exec_tests [] [list \
+run_ld_link_exec_tests [list \
     [list \
        "No PLT (dynamic 1a)" \
        "tmpdir/no-plt-check1.o tmpdir/no-plt-main1.o \
@@ -199,3 +199,88 @@ run_ld_link_exec_tests [] [list \
        "pass.out" \
     ] \
 ]
+
+# Run-time tests which require working IFUNC support.
+if { [check_ifunc_available] } {
+    run_cc_link_tests [list \
+       [list \
+           "Build pr20253-2a.o pr20253-2b.o pr20253-2c.o pr20253-2d.o" \
+           "" \
+           "-fPIE -O2 -g" \
+           { pr20253-2a.c pr20253-2b.S pr20253-2c.S pr20253-2d.S } \
+       ] \
+       [list \
+           "Build libpr20253-2a.so" \
+           "-shared tmpdir/pr20253-2b.o \
+            tmpdir/pr20253-2c.o tmpdir/pr20253-2d.o" \
+           "" \
+           { dummy.s } \
+           {} \
+           "libpr20253-2a.so" \
+       ] \
+    ]
+
+    run_ld_link_exec_tests [list \
+       [list \
+           "Run pr20253-2a" \
+           "tmpdir/pr20253-2a.o tmpdir/pr20253-2b.o \
+            tmpdir/pr20253-2c.o tmpdir/pr20253-2d.o" \
+           "" \
+           { dummy.s } \
+           "pr20253-2a" \
+           "pass.out" \
+       ] \
+       [list \
+           "Run pr20253-2b" \
+           "--static tmpdir/pr20253-2a.o tmpdir/pr20253-2b.o \
+           tmpdir/pr20253-2c.o tmpdir/pr20253-2d.o" \
+           "" \
+           { dummy.s } \
+           "pr20253-2b" \
+           "pass.out" \
+       ] \
+       [list \
+           "Run pr20253-2c" \
+           "-pie tmpdir/pr20253-2a.o tmpdir/pr20253-2b.o \
+           tmpdir/pr20253-2c.o tmpdir/pr20253-2d.o" \
+           "" \
+           { dummy.s } \
+           "pr20253-2c" \
+           "pass.out" \
+       ] \
+       [list \
+           "Run pr20253-2d" \
+           "tmpdir/pr20253-2a.o tmpdir/libpr20253-2a.so" \
+           "" \
+           { dummy.s } \
+           "pr20253-2d" \
+           "pass.out" \
+       ] \
+       [list \
+           "Run pr20253-2e" \
+           "-pie tmpdir/pr20253-2a.o tmpdir/libpr20253-2a.so" \
+           "" \
+           { dummy.s } \
+           "pr20253-2e" \
+           "pass.out" \
+       ] \
+       [list \
+           "Run pr20253-2f" \
+           "tmpdir/pr20253-2a.o" \
+           "" \
+           { pr20253-2b.S pr20253-2c.S pr20253-2d.S } \
+           "pr20253-2f" \
+           "pass.out" \
+           "-DCHECK_PLT" \
+       ] \
+       [list \
+           "Run pr20253-2g" \
+           "--static tmpdir/pr20253-2a.o" \
+           "" \
+           { pr20253-2b.S pr20253-2c.S pr20253-2d.S } \
+           "pr20253-2g" \
+           "pass.out" \
+           "-DCHECK_PLT" \
+       ] \
+    ]
+}
This page took 0.024308 seconds and 4 git commands to generate.