aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog9
-rw-r--r--ld/testsuite/ld-i386/i386.exp32
-rw-r--r--ld/testsuite/ld-x86-64/x86-64.exp20
3 files changed, 47 insertions, 14 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index c42042c..26dbc30 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,12 @@
+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-03-07 Jiong Wang <jiong.wang@arm.com>
* testsuite/ld-aarch64/implicit_got_section_1.s: New test source file.
diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp
index bf8e6b6..5b9d790 100644
--- a/ld/testsuite/ld-i386/i386.exp
+++ b/ld/testsuite/ld-i386/i386.exp
@@ -610,18 +610,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" \
] \
@@ -642,10 +650,18 @@ 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" \
] \
@@ -721,9 +737,9 @@ if { [isnative]
] \
[list \
"Run pr18900" \
- "tmpdir/pr18900.so" \
+ "tmpdir/pr18900.o tmpdir/pr18900.so" \
"" \
- { pr18900b.c pr18900c.c } \
+ { dummy.s } \
"pr18900" \
"pr18900.out" \
] \
diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp
index cac481e..4dd7cfa1 100644
--- a/ld/testsuite/ld-x86-64/x86-64.exp
+++ b/ld/testsuite/ld-x86-64/x86-64.exp
@@ -643,18 +643,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" \
] \
@@ -746,9 +754,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" \
] \