diff options
Diffstat (limited to 'ld/testsuite/ld-ifunc/ifunc.exp')
-rw-r--r-- | ld/testsuite/ld-ifunc/ifunc.exp | 99 |
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" \ + ] \ ] |