diff options
-rw-r--r-- | binutils/ChangeLog | 10 | ||||
-rw-r--r-- | binutils/testsuite/binutils-all/ar.exp | 125 | ||||
-rw-r--r-- | binutils/testsuite/binutils-all/objdump.exp | 105 |
3 files changed, 135 insertions, 105 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 101255d..7eb9009 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,13 @@ +2020-06-02 Alan Modra <amodra@gmail.com> + + * testsuite/binutils-all/ar.exp (obj): Set up object file name + extension. Use throughout. Don't completely exclude non-ELF + alpha targets. Run long_filenames test for tic30. Exclude thin + archive tests for aix, ecoff and vms. + * estsuite/binutils-all/objdump.exp (obj): Set up object file name + extension. Use throughout. Don't exclude non-ELF alpha targets + from "bintest.a". + 2020-05-28 Max Filippov <jcmvbkbc@gmail.com> * MAINTAINERS (Xtensa): Add myself as maintainer. diff --git a/binutils/testsuite/binutils-all/ar.exp b/binutils/testsuite/binutils-all/ar.exp index bf30b01..8682781 100644 --- a/binutils/testsuite/binutils-all/ar.exp +++ b/binutils/testsuite/binutils-all/ar.exp @@ -26,8 +26,9 @@ if ![is_remote host] { } } -if { [istarget "alpha-*-*"] && ![is_elf_format] } then { - return +set obj o +if { [istarget "*-*-vms"] } then { + set obj obj } # send_user "Version [binutil_version $AR]" @@ -189,21 +190,22 @@ proc symbol_table { } { global NM global srcdir global subdir + global obj set testname "ar symbol table" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } if [is_remote host] { set archive artest.a - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete tmpdir/artest.a @@ -215,12 +217,12 @@ proc symbol_table { } { } set got [binutils_run $NM "--print-armap $archive"] - if { ![string match "*text_symbol in bintest.o*" $got] \ - || ![string match "*data_symbol in bintest.o*" $got] \ - || ![string match "*common_symbol in bintest.o*" $got] \ - || [string match "*static_text_symbol in bintest.o*" $got] \ - || [string match "*static_data_symbol in bintest.o*" $got] \ - || [string match "*external_symbol in bintest.o*" $got] } { + if { ![string match "*text_symbol in bintest.${obj}*" $got] \ + || ![string match "*data_symbol in bintest.${obj}*" $got] \ + || ![string match "*common_symbol in bintest.${obj}*" $got] \ + || [string match "*static_text_symbol in bintest.${obj}*" $got] \ + || [string match "*static_data_symbol in bintest.${obj}*" $got] \ + || [string match "*external_symbol in bintest.${obj}*" $got] } { fail $testname return } @@ -237,21 +239,22 @@ proc thin_archive { bfdtests } { global srcdir global subdir global base_dir + global obj set testname "ar thin archive" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } if [is_remote host] { set archive artest.a - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete tmpdir/artest.a @@ -272,12 +275,12 @@ proc thin_archive { bfdtests } { } set got [binutils_run $NM "--print-armap $archive"] - if { ![string match "*text_symbol in *bintest.o*" $got] \ - || ![string match "*data_symbol in *bintest.o*" $got] \ - || ![string match "*common_symbol in *bintest.o*" $got] \ - || [string match "*static_text_symbol in *bintest.o*" $got] \ - || [string match "*static_data_symbol in *bintest.o*" $got] \ - || [string match "*external_symbol in *bintest.o*" $got] } { + if { ![string match "*text_symbol in *bintest.${obj}*" $got] \ + || ![string match "*data_symbol in *bintest.${obj}*" $got] \ + || ![string match "*common_symbol in *bintest.${obj}*" $got] \ + || [string match "*static_text_symbol in *bintest.${obj}*" $got] \ + || [string match "*static_data_symbol in *bintest.${obj}*" $got] \ + || [string match "*external_symbol in *bintest.${obj}*" $got] } { fail $testname return } @@ -294,10 +297,11 @@ proc thin_archive_with_nested { bfdtests } { global srcdir global subdir global base_dir + global obj set testname "ar thin archive with nested archive" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } @@ -305,12 +309,12 @@ proc thin_archive_with_nested { bfdtests } { if [is_remote host] { set archive artest.a set archive2 artest2.a - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a set archive2 tmpdir/artest2.a - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete tmpdir/artest.a @@ -346,12 +350,12 @@ proc thin_archive_with_nested { bfdtests } { } set got [binutils_run $NM "--print-armap $archive"] - if { ![string match "*text_symbol in *bintest.o*" $got] \ - || ![string match "*data_symbol in *bintest.o*" $got] \ - || ![string match "*common_symbol in *bintest.o*" $got] \ - || [string match "*static_text_symbol in *bintest.o*" $got] \ - || [string match "*static_data_symbol in *bintest.o*" $got] \ - || [string match "*external_symbol in *bintest.o*" $got] } { + if { ![string match "*text_symbol in *bintest.${obj}*" $got] \ + || ![string match "*data_symbol in *bintest.${obj}*" $got] \ + || ![string match "*common_symbol in *bintest.${obj}*" $got] \ + || [string match "*static_text_symbol in *bintest.${obj}*" $got] \ + || [string match "*static_data_symbol in *bintest.${obj}*" $got] \ + || [string match "*external_symbol in *bintest.${obj}*" $got] } { fail $testname return } @@ -366,21 +370,22 @@ proc argument_parsing { } { global AS global srcdir global subdir + global obj set testname "ar argument parsing" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } if [is_remote host] { set archive artest.a - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete tmpdir/artest.a @@ -402,21 +407,22 @@ proc deterministic_archive { } { global NM global srcdir global subdir + global obj set testname "ar deterministic archive" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } if [is_remote host] { set archive artest.a - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete tmpdir/artest.a @@ -430,13 +436,13 @@ proc deterministic_archive { } { set got [binutils_run $AR "tv $archive"] # This only checks the file mode and uid/gid. We can't easily match # date because it's printed with the user's timezone. - if ![string match "rw-r--r-- 0/0 *bintest.o*" $got] { + if ![string match "rw-r--r-- 0/0 *bintest.${obj}*" $got] { fail $testname return } set got [binutils_run $AR "tvO $archive"] - if ![string match "rw-r--r-- 0/0 *bintest.o 0x*" $got] { + if ![string match "rw-r--r-- 0/0 *bintest.${obj} 0x*" $got] { fail $testname return } @@ -450,21 +456,22 @@ proc unique_symbol { } { global NM global srcdir global subdir + global obj set testname "ar unique symbol in archive" - if ![binutils_assemble $srcdir/$subdir/unique.s tmpdir/unique.o] { + if ![binutils_assemble $srcdir/$subdir/unique.s tmpdir/unique.${obj}] { unresolved $testname return } if [is_remote host] { set archive artest.a - set objfile [remote_download host tmpdir/unique.o] + set objfile [remote_download host tmpdir/unique.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a - set objfile tmpdir/unique.o + set objfile tmpdir/unique.${obj} } remote_file build delete tmpdir/artest.a @@ -476,7 +483,7 @@ proc unique_symbol { } { } set got [binutils_run $NM "--print-armap $archive"] - if ![string match "*foo in *unique.o*" $got] { + if ![string match "*foo in *unique.${obj}*" $got] { fail $testname return } @@ -491,21 +498,22 @@ proc delete_an_element { } { global AS global srcdir global subdir + global obj set testname "ar deleting an element" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } if [is_remote host] { set archive artest.a - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete tmpdir/artest.a @@ -532,21 +540,22 @@ proc move_an_element { } { global AS global srcdir global subdir + global obj set testname "ar moving an element" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } if [is_remote host] { set archive artest.a - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { set archive tmpdir/artest.a - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete tmpdir/artest.a @@ -612,10 +621,11 @@ proc extract_an_element { } { global AS global srcdir global subdir + global obj set testname "ar extracting an element" - if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o] { + if ![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}] { unresolved $testname return } @@ -623,10 +633,10 @@ proc extract_an_element { } { set archive artest.a if [is_remote host] { - set objfile [remote_download host tmpdir/bintest.o] + set objfile [remote_download host tmpdir/bintest.${obj}] remote_file host delete $archive } else { - set objfile tmpdir/bintest.o + set objfile tmpdir/bintest.${obj} } remote_file build delete $archive @@ -654,6 +664,7 @@ proc many_files { } { global AS global srcdir global subdir + global obj set testname "ar many files" @@ -673,7 +684,7 @@ proc many_files { } { puts $ofd " .long $i" close $ofd - set ofile "tmpdir/d-$i.o" + set ofile "tmpdir/d-$i.${obj}" if ![binutils_assemble $sfile $ofile] { unresolved $testname return @@ -710,12 +721,18 @@ proc many_files { } { # programs are built but not installed, running the testsuite on an # installed toolchain will produce ERRORs about missing bfdtest1 and # bfdtest2 executables. -if { ![istarget "tic30-*-*"] && [file exists $base_dir/bfdtest1] && [file exists $base_dir/bfdtest2] } { +if { [file exists $base_dir/bfdtest1] && [file exists $base_dir/bfdtest2] } { set bfdtests [list bfdtest1 bfdtest2] long_filenames $bfdtests - thin_archive $bfdtests - thin_archive_with_nested $bfdtests + + # xcoff, ecoff, and vms archive support doesn't handle thin archives + if { ![istarget "*-*-aix*"] + && ![istarget "*-*-*ecoff"] + && ![istarget "*-*-vms"] } { + thin_archive $bfdtests + thin_archive_with_nested $bfdtests + } } symbol_table diff --git a/binutils/testsuite/binutils-all/objdump.exp b/binutils/testsuite/binutils-all/objdump.exp index 3cb0eb7..8d3c8df 100644 --- a/binutils/testsuite/binutils-all/objdump.exp +++ b/binutils/testsuite/binutils-all/objdump.exp @@ -58,38 +58,40 @@ if [regexp $want $got] then { fail "objdump -i" } -# The remaining tests require a test file. +set obj o +if { [istarget "*-*-vms"] } then { + set obj obj +} +# The remaining tests require a test file. -if {![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.o]} then { +if {![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest.${obj}]} then { fail "objdump (assembling bintest.s)" return } -if {![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest2.o]} then { +if {![binutils_assemble $srcdir/$subdir/bintest.s tmpdir/bintest2.${obj}]} then { fail "objdump (assembling)" return } if [is_remote host] { - set testfile [remote_download host tmpdir/bintest.o] - set testfile2 [remote_download host tmpdir/bintest2.o] + set testfile [remote_download host tmpdir/bintest.${obj}] + set testfile2 [remote_download host tmpdir/bintest2.${obj}] } else { - set testfile tmpdir/bintest.o - set testfile2 tmpdir/bintest2.o + set testfile tmpdir/bintest.${obj} + set testfile2 tmpdir/bintest2.${obj} } # $testarchive exists only if it is supported. set testarchive tmpdir/bintest.a remote_file host file delete $testarchive -if { ![istarget "alpha-*-*"] || [is_elf_format] } then { - set got [binutils_run $AR "rc tmpdir/bintest.a $testfile2"] - if ![string match "" $got] then { - fail "bintest.a" - remote_file host delete tmpdir/bintest.a - } elseif [is_remote host] { - set testarchive [remote_download host tmpdir/bintest.a] - } - remote_file host delete tmpdir/bintest2.o +set got [binutils_run $AR "rc tmpdir/bintest.a $testfile2"] +if ![string match "" $got] then { + fail "bintest.a" + remote_file host delete tmpdir/bintest.a +} elseif [is_remote host] { + set testarchive [remote_download host tmpdir/bintest.a] } +remote_file host delete tmpdir/bintest2.${obj} # Test objdump -f @@ -100,7 +102,7 @@ proc test_objdump_f { testfile dumpfile } { set got [binutils_run $OBJDUMP "$OBJDUMPFLAGS -f $testfile"] - set want "$dumpfile:\[ \]*file format.*architecture:\[ \]*${cpus_regex}.*HAS_RELOC.*HAS_SYMS" + set want "${dumpfile}.*:\[ \]*file format.*architecture:\[ \]*${cpus_regex}.*HAS_RELOC.*HAS_SYMS" if ![regexp $want $got] then { fail "objdump -f ($testfile, $dumpfile)" @@ -111,7 +113,7 @@ proc test_objdump_f { testfile dumpfile } { test_objdump_f $testfile $testfile if { [ remote_file host exists $testarchive ] } then { - test_objdump_f $testarchive bintest2.o + test_objdump_f $testarchive bintest2.${obj} } # Test objdump -h @@ -122,7 +124,7 @@ proc test_objdump_h { testfile dumpfile } { set got [binutils_run $OBJDUMP "$OBJDUMPFLAGS -h $testfile"] - set want "$dumpfile:\[ \]*file format.*Sections.*\[0-9\]+\[ \]+\[^ \]*(text|TEXT|P|\\\$CODE\\\$)\[^ \]*\[ \]*(\[0-9a-fA-F\]+).*\[0-9\]+\[ \]+\[^ \]*(\\.data|DATA|D_1)\[^ \]*\[ \]*(\[0-9a-fA-F\]+)" + set want "${dumpfile}.*:\[ \]*file format.*Sections.*\[0-9\]+\[ \]+\[^ \]*(text|TEXT|P|\\\$CODE\\\$)\[^ \]*\[ \]*(\[0-9a-fA-F\]+).*\[0-9\]+\[ \]+\[^ \]*(\\.data|DATA|D_1)\[^ \]*\[ \]*(\[0-9a-fA-F\]+)" if ![regexp $want $got all text_name text_size data_name data_size] then { fail "objdump -h ($testfile, $dumpfile)" @@ -152,7 +154,7 @@ proc test_objdump_h { testfile dumpfile } { test_objdump_h $testfile $testfile if { [ remote_file host exists $testarchive ] } then { - test_objdump_h $testarchive bintest2.o + test_objdump_h $testarchive bintest2.${obj} } # Test objdump -t @@ -192,7 +194,7 @@ proc test_objdump_r { testfile dumpfile } { set got [binutils_run $OBJDUMP "$OBJDUMPFLAGS -r $testfile"] - set want "$dumpfile:\[ \]*file format.*RELOCATION RECORDS FOR \\\[\[^\]\]*(text|TEXT|P|\\\$CODE\\\$)\[^\]\]*\\\].*external_symbol" + set want "${dumpfile}.*:\[ \]*file format.*RELOCATION RECORDS FOR \\\[\[^\]\]*(text|TEXT|P|\\\$CODE\\\$)\[^\]\]*\\\].*external_symbol" if [regexp $want $got] then { pass "objdump -r ($testfile, $dumpfile)" @@ -203,7 +205,7 @@ proc test_objdump_r { testfile dumpfile } { test_objdump_r $testfile $testfile if { [ remote_file host exists $testarchive ] } then { - test_objdump_r $testarchive bintest2.o + test_objdump_r $testarchive bintest2.${obj} } # Test objdump -d @@ -213,25 +215,25 @@ proc test_objdump_d { testfile dumpfile } { set got [binutils_run $OBJDUMP "$OBJDUMPFLAGS -d $testfile"] - set want "$dumpfile:.*Disassembly of section" + set want "${dumpfile}.*:.*Disassembly of section" if ![regexp $want $got] then { fail "objdump -d $testfile: No disassembly title" return } - set want "$dumpfile:.*00+0 <text_symbol>" + set want "${dumpfile}.*:.*00+0 <text_symbol>" if ![regexp $want $got] then { fail "objdump -d $testfile: Missing symbol name and address" return } - set want "$dumpfile:.*00+. <text_symbol2>" + set want "${dumpfile}.*:.*00+. <text_symbol2>" if ![regexp $want $got] then { fail "objdump -d $testfile: Missing second symbol" return } - set want "$dumpfile:.*00+. <text_symbol3>" + set want "${dumpfile}.*:.*00+. <text_symbol3>" if ![regexp $want $got] then { fail "objdump -d $testfile: Missing third symbol" return @@ -242,7 +244,7 @@ proc test_objdump_d { testfile dumpfile } { test_objdump_d $testfile $testfile if { [ remote_file host exists $testarchive ] } then { - test_objdump_d $testarchive bintest2.o + test_objdump_d $testarchive bintest2.${obj} } # Test objdump --disassemble=<symbol> @@ -357,13 +359,13 @@ proc test_objdump_d_non_func_sym { testfile dumpfile } { # all of func, and does not stop at the next symbol. if { [is_elf_format] } then { - if {![binutils_assemble $srcdir/$subdir/disasm.s tmpdir/disasm.o]} then { + if {![binutils_assemble $srcdir/$subdir/disasm.s tmpdir/disasm.${obj}]} then { fail "objdump --disassemble=func (assembling disasm.s)" } else { if [is_remote host] { - set elftestfile [remote_download host tmpdir/disasm.o] + set elftestfile [remote_download host tmpdir/disasm.${obj}] } else { - set elftestfile tmpdir/disasm.o + set elftestfile tmpdir/disasm.${obj} } test_objdump_d_func_sym $elftestfile $elftestfile @@ -380,7 +382,7 @@ proc test_objdump_s { testfile dumpfile } { set got [binutils_run $OBJDUMP "$OBJDUMPFLAGS -s $testfile"] - set want "$dumpfile:\[ \]*file format.*Contents.*(text|TEXT|P|\\\$CODE\\\$)\[^0-9\]*\[ \]*\[0-9a-fA-F\]*\[ \]*(00000001|01000000|00000100).*Contents.*(data|DATA|D_1)\[^0-9\]*\[ \]*\[0-9a-fA-F\]*\[ \]*(00000002|02000000|00000200)" + set want "${dumpfile}.*:\[ \]*file format.*Contents.*(text|TEXT|P|\\\$CODE\\\$)\[^0-9\]*\[ \]*\[0-9a-fA-F\]*\[ \]*(00000001|01000000|00000100).*Contents.*(data|DATA|D_1)\[^0-9\]*\[ \]*\[0-9a-fA-F\]*\[ \]*(00000002|02000000|00000200)" if [regexp $want $got] then { pass "objdump -s ($testfile, $dumpfile)" @@ -391,20 +393,20 @@ proc test_objdump_s { testfile dumpfile } { test_objdump_s $testfile $testfile if { [ remote_file host exists $testarchive ] } then { - test_objdump_s $testarchive bintest2.o + test_objdump_s $testarchive bintest2.${obj} } # Test objdump -s on a file that contains a compressed .debug section if { ![is_elf_format] } then { unsupported "objdump compressed debug" -} elseif { ![binutils_assemble $srcdir/$subdir/dw2-compressed.S tmpdir/dw2-compressed.o] } then { +} elseif { ![binutils_assemble $srcdir/$subdir/dw2-compressed.S tmpdir/dw2-compressed.${obj}] } then { fail "objdump compressed debug" } else { if [is_remote host] { - set compressed_testfile [remote_download host tmpdir/dw2-compressed.o] + set compressed_testfile [remote_download host tmpdir/dw2-compressed.${obj}] } else { - set compressed_testfile tmpdir/dw2-compressed.o + set compressed_testfile tmpdir/dw2-compressed.${obj} } set got [remote_exec host "$OBJDUMP $OBJDUMPFLAGS -s -j .zdebug_abbrev $compressed_testfile" "" "/dev/null" "objdump.out"] @@ -455,14 +457,14 @@ if { ![is_elf_format] } else { set decodedline_testsrc $srcdir/$subdir/dw2-decodedline.S } - if { ![binutils_assemble $decodedline_testsrc tmpdir/dw2-decodedline.o] } then { + if { ![binutils_assemble $decodedline_testsrc tmpdir/dw2-decodedline.${obj}] } then { fail "objdump decoded line" } if [is_remote host] { - set decodedline_testfile [remote_download host tmpdir/dw2-decodedline.o] + set decodedline_testfile [remote_download host tmpdir/dw2-decodedline.${obj}] } else { - set decodedline_testfile tmpdir/dw2-decodedline.o + set decodedline_testfile tmpdir/dw2-decodedline.${obj} } set got [remote_exec host "$OBJDUMP $OBJDUMPFLAGS -WL $decodedline_testfile" "" "/dev/null" "objdump.out"] @@ -484,13 +486,13 @@ if { ![is_elf_format] if { ![is_elf_format] } then { unsupported "objdump debug_ranges test" -} elseif { ![binutils_assemble $srcdir/$subdir/dw2-ranges.S tmpdir/dw2-ranges.o] } then { +} elseif { ![binutils_assemble $srcdir/$subdir/dw2-ranges.S tmpdir/dw2-ranges.${obj}] } then { fail "objdump debug_ranges test" } else { if [is_remote host] { - set ranges_testfile [remote_download host tmpdir/dw2-ranges.o] + set ranges_testfile [remote_download host tmpdir/dw2-ranges.${obj}] } else { - set ranges_testfile tmpdir/dw2-ranges.o + set ranges_testfile tmpdir/dw2-ranges.${obj} } set got [remote_exec host "$OBJDUMP $OBJDUMPFLAGS --dwarf=Ranges $ranges_testfile" "" "/dev/null" "objdump.out"] @@ -594,14 +596,14 @@ if {[is_elf_format]} then { if { [is_elf_format] } then { set testsrc $srcdir/$subdir/debuglink.s - if { ![binutils_assemble $testsrc tmpdir/debuglink.o] } then { + if { ![binutils_assemble $testsrc tmpdir/debuglink.${obj}] } then { fail "objdump -Wk (reason: could not assemble source)" } if [is_remote host] { - set testfile [remote_download host tmpdir/debuglink.o] + set testfile [remote_download host tmpdir/debuglink.${obj}] } else { - set testfile tmpdir/debuglink.o + set testfile tmpdir/debuglink.${obj} } set got [remote_exec host "$OBJDUMP $OBJDUMPFLAGS -Wk $testfile" "" "/dev/null" "objdump.out"] @@ -627,10 +629,11 @@ proc test_follow_debuglink { options dumpfile } { global srcdir global subdir global OBJDUMP + global obj set test "follow-debuglink ($options)" - if {![binutils_assemble $srcdir/$subdir/debuglink.s tmpdir/debuglink.o]} then { + if {![binutils_assemble $srcdir/$subdir/debuglink.s tmpdir/debuglink.${obj}]} then { fail "$test (reason: assemble first source file)" return } @@ -641,10 +644,10 @@ proc test_follow_debuglink { options dumpfile } { } if ![is_remote host] { - set tempfile tmpdir/debuglink.o + set tempfile tmpdir/debuglink.${obj} } else { set tempfile [remote_download host tmpdir/linkdebug.debug] - set tempfile [remote_download host tmpdir/debuglink.o] + set tempfile [remote_download host tmpdir/debuglink.${obj}] } set got [remote_exec host "$OBJDUMP $options $tempfile" "" "/dev/null" "tmpdir/objdump.out"] @@ -716,15 +719,15 @@ if {[is_elf_format]} then { set text ".text" } # generate a copy of the test object with .text repositioned - if { [binutils_run $OBJCOPY "--change-section-address $text=0x80000000 tmpdir/bintest.o tmpdir/bintest_signed.o"] != "" } { - fail "Failed to reposition $text to 0x80000000 (tmpdir/bintest.o -> tmpdir/bintest_signed.o)" + if { [binutils_run $OBJCOPY "--change-section-address $text=0x80000000 tmpdir/bintest.${obj} tmpdir/bintest_signed.${obj}"] != "" } { + fail "Failed to reposition $text to 0x80000000 (tmpdir/bintest.${obj} -> tmpdir/bintest_signed.${obj})" return } if [is_remote host] { - set testfile3 [remote_download host tmpdir/bintest_signed.o] + set testfile3 [remote_download host tmpdir/bintest_signed.${obj}] } else { - set testfile3 tmpdir/bintest_signed.o + set testfile3 tmpdir/bintest_signed.${obj} } test_objdump_content_limited $testfile3 $text "80000004" "80000008" |