Support --as-needed in ifunc tests
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 8 Mar 2016 16:43:12 +0000 (08:43 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 8 Mar 2016 16:45:04 +0000 (08:45 -0800)
Since compiler may pass --as-needed to ld by default, link .o file
before .so file in ifunc tests.

PR ld/19774
* testsuite/ld-ifunc/ifunc.exp: Link tmpdir/pr18808a.o before
tmpdir/libpr18808.so.  Link tmpdir/pr18841a.o before
tmpdir/libpr18841b.so and tmpdir/libpr18841c.so.  Test
--as-needed for pr18841c.

ld/ChangeLog
ld/testsuite/ld-ifunc/ifunc.exp

index 26dbc30825656c3e94e4eaa515167af56f4b14b2..960190ff84e7f47da9cb19ae332d72e94e3f914c 100644 (file)
@@ -1,3 +1,11 @@
+2016-03-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/19774
+       * testsuite/ld-ifunc/ifunc.exp: Link tmpdir/pr18808a.o before
+       tmpdir/libpr18808.so.  Link tmpdir/pr18841a.o before
+       tmpdir/libpr18841b.so and tmpdir/libpr18841c.so.  Test
+       --as-needed for pr18841c.
+
 2016-03-07  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/19774
index 5a5bf72738de0ec19ccb2209f32a8e8fd6ad4051..96627e7edb608aab7bf0b242683b00f20cc2c119 100644 (file)
@@ -465,6 +465,14 @@ if { ![check_ifunc_attribute_available] } {
 }
 
 run_cc_link_tests [list \
+    [list \
+       "Build pr18808a.o" \
+       "" \
+       "" \
+       { pr18808a.c } \
+       "" \
+       "" \
+    ] \
     [list \
        "Build libpr18808.so" \
        "-shared" \
@@ -473,6 +481,14 @@ run_cc_link_tests [list \
        {} \
        "libpr18808.so" \
     ] \
+    [list \
+       "Build pr18841a.o" \
+       "" \
+       "" \
+       { pr18841a.c } \
+       "" \
+       "" \
+    ] \
     [list \
        "Build libpr18841b.so" \
        "-shared" \
@@ -494,25 +510,25 @@ run_cc_link_tests [list \
 run_ld_link_exec_tests [] [list \
     [list \
        "Run pr18808" \
-       "tmpdir/libpr18808.so" \
+       "tmpdir/pr18808a.o tmpdir/libpr18808.so" \
        "" \
-       { pr18808a.c } \
+       { dummy.c } \
        "pr18808" \
        "pr18808.out" \
     ] \
     [list \
        "Run pr18841 with libpr18841b.so" \
-       "tmpdir/libpr18841b.so" \
+       "tmpdir/pr18841a.o tmpdir/libpr18841b.so" \
        "" \
-       { pr18841a.c } \
+       { dummy.c } \
        "pr18841b" \
        "pr18841.out" \
     ] \
     [list \
        "Run pr18841 with libpr18841c.so" \
-       "tmpdir/libpr18841c.so" \
+       "--as-needed tmpdir/pr18841a.o tmpdir/libpr18841c.so" \
        "" \
-       { pr18841a.c } \
+       { dummy.c } \
        "pr18841c" \
        "pr18841.out" \
     ] \
This page took 0.034814 seconds and 4 git commands to generate.