+2020-06-15 Alan Modra <amodra@gmail.com>
+
+ PR 26103
+ * testsuite/ld-linkonce/ref1.s,
+ * testsuite/ld-linkonce/ref2.s,
+ * testsuite/ld-linkonce/sym1.s,
+ * testsuite/ld-linkonce/sym2.s,
+ * testsuite/ld-linkonce/sym3.s: New test files.
+ * testsuite/ld-linkonce/linkonce.exp: Run tests for PE too.
+ Add pr26103 test. Remove unnecessary load_lib.
+
2020-06-15 Alan Modra <amodra@gmail.com>
* testsuite/ld-linkonce/zeroeh_x.s: Rename from x.s.
# Written by Hans-Peter Nilsson (hp@axis.com)
#
-# Test for ELF here (or really, .gnu.linkonce functionality), so we don't
-# have to qualify on ELF specifically in every .d-file.
-
-if { ![istarget *-*-linux*] \
- && ![istarget *-*-gnu*] \
- && ![istarget *-*-nacl*] \
- && ![istarget hppa*64*-*-hpux*] \
- && ![istarget *-*-elf] } {
+# Test .gnu.linkonce functionality
+if { ![is_elf_format] && ![is_pecoff_format] } {
return
}
-load_lib ld-lib.exp
+run_ld_link_tests [list \
+ [list "Build sym.a" \
+ "" "" \
+ "" {sym1.s sym2.s sym3.s ref2.s} {} "sym.a" ] \
+ [list "pr26103" \
+ "" "--start-group tmpdir/sym.a tmpdir/ref2.o --end-group" \
+ "" {ref1.s} {} "pr26103" ] \
+]
set rd_test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
for { set i 0 } { $i < [llength $rd_test_list] } { incr i } {
--- /dev/null
+ .data
+ .dc.a one, two, three
--- /dev/null
+ .data
+ .dc.a four
--- /dev/null
+ .data
+ .global two
+two:
+ .long 2
+
+ .section .gnu.linkonce.d.foo, "aw"
+ .global foo
+# PE signature of the comdat group
+foo:
+ .global one
+one:
+ .long 1
--- /dev/null
+ .data
+ .global three
+three:
+ .long 3
+
+ .section .gnu.linkonce.d.foo, "aw"
+ .global foo
+# PE signature of the comdat group
+foo:
+ .global onex
+onex:
+ .long 1
--- /dev/null
+ .data
+ .global four
+four:
+ .long 4
+
+ .section .gnu.linkonce.d.foo, "aw"
+ .global foo
+# PE signature of the comdat group
+foo:
+ .global oney
+oney:
+ .long 1