aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-ifunc/ifunc.exp
diff options
context:
space:
mode:
Diffstat (limited to 'ld/testsuite/ld-ifunc/ifunc.exp')
-rw-r--r--ld/testsuite/ld-ifunc/ifunc.exp99
1 files changed, 99 insertions, 0 deletions
diff --git a/ld/testsuite/ld-ifunc/ifunc.exp b/ld/testsuite/ld-ifunc/ifunc.exp
index 13d50a5..9445f9f 100644
--- a/ld/testsuite/ld-ifunc/ifunc.exp
+++ b/ld/testsuite/ld-ifunc/ifunc.exp
@@ -379,6 +379,23 @@ run_cc_link_tests [list \
{} \
"libpr16467c.a" \
] \
+ [list \
+ "Build libpr16467an.so" \
+ "-shared -Wl,-z,now -Wl,--version-script=pr16467a.map" \
+ "-fPIC" \
+ { pr16467a.c } \
+ {} \
+ "libpr16467an.so" \
+ ] \
+ [list \
+ "Build libpr16467bn.so" \
+ "-shared tmpdir/pr16467b.o tmpdir/libpr16467an.so \
+ -Wl,--version-script=pr16467b.map" \
+ "-fPIC" \
+ { dummy.c } \
+ {} \
+ "libpr16467bn.so" \
+ ] \
]
run_ld_link_exec_tests [list \
@@ -423,6 +440,14 @@ run_cc_link_tests [list \
{} \
"libifunc-lib.so" \
] \
+ [list \
+ "Build ifunc-libn.so" \
+ "-shared -Wl,-z,now" \
+ "-fPIC" \
+ { ifunc-lib.c } \
+ {} \
+ "libifunc-libn.so" \
+ ] \
]
run_ld_link_exec_tests [list \
@@ -436,6 +461,15 @@ run_ld_link_exec_tests [list \
"" \
] \
[list \
+ "Run pr16467 (-z now)" \
+ "-Wl,-z,now -Wl,--no-as-needed tmpdir/pr16467c.o tmpdir/libpr16467bn.so tmpdir/libpr16467an.so" \
+ "" \
+ { dummy.c } \
+ "pr16467n" \
+ "pr16467.out" \
+ "" \
+ ] \
+ [list \
"Run ifunc-main" \
"-Wl,--no-as-needed tmpdir/libifunc-lib.so" \
"" \
@@ -452,6 +486,23 @@ run_ld_link_exec_tests [list \
"ifunc-main.out" \
"-fpic" \
] \
+ [list \
+ "Run ifunc-main (-z now)" \
+ "-Wl,-z,now -Wl,--no-as-needed tmpdir/libifunc-libn.so" \
+ "" \
+ { ifunc-main.c } \
+ "ifunc-mainn" \
+ "ifunc-main.out" \
+ ] \
+ [list \
+ "Run ifunc-main with PIE (-z now)" \
+ "-pie -Wl,-z,now -Wl,--no-as-needed tmpdir/libifunc-libn.so" \
+ "" \
+ { ifunc-main.c } \
+ "ifunc-mainpn" \
+ "ifunc-main.out" \
+ "-fpie" \
+ ] \
]
# Run-time tests which require working ifunc attribute support.
@@ -477,6 +528,14 @@ run_cc_link_tests [list \
"libpr18808.so" \
] \
[list \
+ "Build libpr18808n.so" \
+ "-shared -Wl,-z,now" \
+ "-fPIC -O2 -g" \
+ { pr18808b.c } \
+ {} \
+ "libpr18808n.so" \
+ ] \
+ [list \
"Build pr18841a.o" \
"" \
"" \
@@ -500,6 +559,22 @@ run_cc_link_tests [list \
{} \
"libpr18841c.so" \
] \
+ [list \
+ "Build libpr18841bn.so" \
+ "-Wl,-z,now -shared" \
+ "-fPIC -O0 -g" \
+ { pr18841b.c } \
+ {} \
+ "libpr18841bn.so" \
+ ] \
+ [list \
+ "Build libpr18841cn.so" \
+ "-shared" \
+ "-Wl,-z,now -fPIC -O0 -g" \
+ { pr18841c.c } \
+ {} \
+ "libpr18841cn.so" \
+ ] \
]
run_ld_link_exec_tests [list \
@@ -512,6 +587,14 @@ run_ld_link_exec_tests [list \
"pr18808.out" \
] \
[list \
+ "Run pr18808 (-z now)" \
+ "-Wl,-z,now -Wl,--no-as-needed tmpdir/pr18808a.o tmpdir/libpr18808n.so" \
+ "" \
+ { dummy.c } \
+ "pr18808n" \
+ "pr18808.out" \
+ ] \
+ [list \
"Run pr18841 with libpr18841b.so" \
"-Wl,--no-as-needed tmpdir/pr18841a.o tmpdir/libpr18841b.so" \
"" \
@@ -527,4 +610,20 @@ run_ld_link_exec_tests [list \
"pr18841c" \
"pr18841.out" \
] \
+ [list \
+ "Run pr18841 with libpr18841bn.so (-z now)" \
+ "-Wl,-z,now -Wl,--no-as-needed tmpdir/pr18841a.o tmpdir/libpr18841bn.so" \
+ "" \
+ { dummy.c } \
+ "pr18841bn" \
+ "pr18841.out" \
+ ] \
+ [list \
+ "Run pr18841 with libpr18841cn.so (-z now)" \
+ "-Wl,-z,now -Wl,--as-needed tmpdir/pr18841a.o tmpdir/libpr18841cn.so" \
+ "" \
+ { dummy.c } \
+ "pr18841cn" \
+ "pr18841.out" \
+ ] \
]