]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Support --as-needed in i386/x86-64 tests
authorH.J. Lu <hjl.tools@gmail.com>
Mon, 7 Mar 2016 17:03:24 +0000 (09:03 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Sun, 12 Jun 2016 04:40:12 +0000 (21:40 -0700)
Since compiler may pass --as-needed to ld by default, link .o file
before .so file in i386/x86-64 tests.

PR ld/19774
* testsuite/ld-i386/i386.exp: Link tmpdir/pr18900.o before
tmpdir/pr18900.so and test --as-needed.  Link tmpdir/gotpc1.o
before tmpdir/got1d.so and test --as-needed.
* testsuite/ld-x86-64/x86-64.exp: Link tmpdir/pr18900.o before
tmpdir/pr18900.so and test --as-needed.

ld/ChangeLog
ld/testsuite/ld-i386/i386.exp
ld/testsuite/ld-x86-64/x86-64.exp

index 5a6b5bddc3af7ffbb55e52777f110390b8b1bfc8..2e5b80e69b75bdebe51090fd135ae493f437f064 100644 (file)
@@ -1,3 +1,15 @@
+2016-06-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       Backport from master
+       2016-03-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/19774
+       * testsuite/ld-i386/i386.exp: Link tmpdir/pr18900.o before
+       tmpdir/pr18900.so and test --as-needed.  Link tmpdir/gotpc1.o
+       before tmpdir/got1d.so and test --as-needed.
+       * testsuite/ld-x86-64/x86-64.exp: Link tmpdir/pr18900.o before
+       tmpdir/pr18900.so and test --as-needed.
+
 2016-05-20  H.J. Lu  <hongjiu.lu@intel.com>
 
        Backport from master
index b1332ffe211c5ccbd9aa06a40795fab05f6abb24..02e6769b59c610f7b5a04d7532c600bbf6387811 100644 (file)
@@ -511,18 +511,26 @@ if { [isnative]
            "pr18900.so" \
        ] \
        [list \
-           "Build pr18900a" \
-           "tmpdir/pr18900.so" \
+           "Build pr18900.o" \
+           "-r -nostdlib" \
            "" \
            { pr18900b.c pr18900c.c } \
+           "" \
+           "pr18900.o" \
+       ] \
+       [list \
+           "Build pr18900a" \
+           "tmpdir/pr18900.o tmpdir/pr18900.so" \
+           "" \
+           { dummy.s } \
            {{readelf {-Wrd} pr18900a.rd}} \
            "pr18900a" \
        ] \
        [list \
            "Build pr18900b" \
-           "tmpdir/pr18900.so" \
+           "-Wl,--as-needed tmpdir/pr18900.o tmpdir/pr18900.so" \
            "" \
-           { pr18900b.c pr18900c.c } \
+           { dummy.s } \
            {{readelf {-Wrd} pr18900b.rd}} \
            "pr18900b" \
        ] \
@@ -542,11 +550,19 @@ if { [isnative]
            "" \
            "got1d.so" \
        ] \
+       [list \
+           "Build gotpc1.o" \
+           "-r -nostdlib" \
+           "" \
+           { got1a.S got1b.c got1c.c } \
+           "" \
+           "gotpc1.o" \
+       ] \
        [list \
            "Build gotpc1" \
-           "tmpdir/got1d.so" \
+           "-Wl,--as-needed tmpdir/gotpc1.o tmpdir/got1d.so" \
            "-Wa,-mrelax-relocations=yes" \
-           { got1a.S got1b.c got1c.c } \
+           { dummy.s } \
            {{objdump {-dw} got1.dd}} \
            "got1" \
        ] \
@@ -622,9 +638,9 @@ if { [isnative]
        ] \
        [list \
            "Run pr18900" \
-           "tmpdir/pr18900.so" \
+           "tmpdir/pr18900.o tmpdir/pr18900.so" \
            "" \
-           { pr18900b.c pr18900c.c } \
+           { dummy.s } \
            "pr18900" \
            "pr18900.out" \
        ] \
index ac115316cbab1ae3ceab2792fe9c6d71b131f874..92236fb3ba1e91b23b01954ad93d598e5c20eaf7 100644 (file)
@@ -523,18 +523,26 @@ if { [isnative] && [which $CC] != 0 } {
            "pr18900.so" \
        ] \
        [list \
-           "Build pr18900a" \
-           "tmpdir/pr18900.so" \
+           "Build pr18900.o" \
+           "-r -nostdlib" \
            "" \
            { pr18900b.c pr18900c.c } \
+           "" \
+           "pr18900.o" \
+       ] \
+       [list \
+           "Build pr18900a" \
+           "tmpdir/pr18900.o tmpdir/pr18900.so" \
+           "" \
+           { dummy.s } \
            {{readelf {-Wrd} pr18900a.rd}} \
            "pr18900a" \
        ] \
        [list \
            "Build pr18900b" \
-           "tmpdir/pr18900.so" \
+           "-Wl,--as-needed tmpdir/pr18900.o tmpdir/pr18900.so" \
            "" \
-           { pr18900b.c pr18900c.c } \
+           { dummy.s } \
            {{readelf {-Wrd} pr18900b.rd}} \
            "pr18900b" \
        ] \
@@ -626,9 +634,9 @@ if { [isnative] && [which $CC] != 0 } {
        ] \
        [list \
            "Run pr18900" \
-           "tmpdir/pr18900.so" \
+           "tmpdir/pr18900.o tmpdir/pr18900.so" \
            "" \
-           { pr18900b.c pr18900c.c } \
+           { dummy.s } \
            "pr18900" \
            "pr18900.out" \
        ] \