diff options
Diffstat (limited to 'ld/testsuite/ld-elfcomm/elfcomm.exp')
-rw-r--r-- | ld/testsuite/ld-elfcomm/elfcomm.exp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/ld/testsuite/ld-elfcomm/elfcomm.exp b/ld/testsuite/ld-elfcomm/elfcomm.exp index e5bd29b..e84377a 100644 --- a/ld/testsuite/ld-elfcomm/elfcomm.exp +++ b/ld/testsuite/ld-elfcomm/elfcomm.exp @@ -45,7 +45,7 @@ proc dump_common1 { testname } { send_log "$READELF -s tmpdir/common1.o | grep foo\n" catch "exec $READELF -s tmpdir/common1.o | grep foo" exec_output - if { ![regexp "(\[ \]*)(\[0-9\]+):(\[ \]*)(\[0\]*)80(\[ \]+)4(\[ \]+)OBJECT(\[ \]+)GLOBAL(\[ \]+)DEFAULT(\[ \]+)COM(\[ \]+)_?foo2" $exec_output] + if { ![regexp "(\[ \]*)(\[0-9\]+):(\[ \]*)(\[0\]*)80(\[ \]+)4(\[ \]+)OBJECT(\[ \]+)GLOBAL(\[ \]+)DEFAULT(\[ \]+)(PRC\\\[0xff03\\\]|COM)(\[ \]+)_?foo2" $exec_output] || ![regexp "(\[ \]*)(\[0-9\]+):(\[ \]*)(\[0-9\]+)(\[ \]+)21(\[ \]+)OBJECT(\[ \]+)GLOBAL(\[ \]+)DEFAULT(\[ \]+)(\[0-9\]+)(\[ \]+)_?foo1" $exec_output] } { send_log "$exec_output\n" verbose $exec_output @@ -72,7 +72,13 @@ if { [ld_simple_link $ld tmpdir/common1.o "-r tmpdir/common1a.o tmpdir/common1b. if { ![regexp "Warning: alignment (\[0-9\]+) of symbol \`_?foo1\' in tmpdir/common1b.o is smaller than 64 in tmpdir/common1a.o" $link_output] || ![regexp "Warning: size of symbol \`_?foo1\' changed from 2 in tmpdir/common1a.o to 21 in tmpdir/common1b.o" $link_output] } { - fail $test1w1 + if { [istarget mips*-*-*] } { + # This test fails on MIPS because the backend sets type_change_ok. The + # size change warning is suppressed. + xfail $test1w1 + } else { + fail $test1w1 + } } else { pass $test1w1 } |