Fix these fails:
alpha-dec-vms +FAIL: ld-scripts/asciz
alpha-dec-vms +FAIL: ld-scripts/ascii
i386-go32 +FAIL: ld-scripts/asciz
sh-coff +FAIL: ld-scripts/asciz
It's better to positively select targets for .section support than to
try to exclude all targets that don't. Make a new is_coff_format so
we can easily select such.
binutils/
* testsuite/lib/binutils-common.exp (is_coff_format): New.
ld/
* testsuite/ld-scripts/ascii.d: Use is_elf_format and
is_coff_format to select targets, exclude ti coff.
* testsuite/ld-scripts/asciz.d: Likewise. Accept trailing zeros.
+# True if the object format is known to COFF or PE (but not ECOFF or XCOFF)
+#
+proc is_coff_format {} {
+ if { [is_pecoff_format]
+ || [istarget *-*-coff*]
+ || [istarget *-*-go32*]
+ || [istarget *-*-msdosdjgpp*]
+ || [istarget tic4x-*-*]
+ || [istarget tic54x-*-*]
+ || [istarget z8k-*-*] } {
+ return 1
+ }
+ return 0
+}
+
proc is_som_format {} {
if { ![istarget hppa*-*-*] || [istarget hppa*64*-*-*] } {
return 0;
proc is_som_format {} {
if { ![istarget hppa*-*-*] || [istarget hppa*64*-*-*] } {
return 0;
#source: ascii.s
#ld: -T ascii.t
#objdump: -s -j .header
#source: ascii.s
#ld: -T ascii.t
#objdump: -s -j .header
-#notarget: [is_aout_format]
-#skip: tic4x-*-* tic54x-*-* *-*-*ecoff *-*-macho *-*-aix*
+#target: [is_elf_format] [is_coff_format]
+#notarget: tic4x-*-* tic54x-*-*
#source: asciz.s
#ld: -T asciz.t
#objdump: -s -j .data
#source: asciz.s
#ld: -T asciz.t
#objdump: -s -j .data
-#notarget: [is_aout_format]
-#skip: tic4x-*-* tic54x-*-* *-*-*ecoff *-*-macho *-*-aix*
+#target: [is_elf_format] [is_coff_format]
+#notarget: tic4x-*-* tic54x-*-*
.... 54686973 20697320 61207374 72696e67 This is a string
.... 00546869 73206973 20616e6f 74686572 .This is another
.... 0a537472 696e6700 006e6f71 756f7465 .String..noquote
.... 54686973 20697320 61207374 72696e67 This is a string
.... 00546869 73206973 20616e6f 74686572 .This is another
.... 0a537472 696e6700 006e6f71 756f7465 .String..noquote