| Index: gdb/testsuite/gdb.base/sepdebug.exp
|
| diff --git a/gdb/testsuite/gdb.base/sepdebug.exp b/gdb/testsuite/gdb.base/sepdebug.exp
|
| index 752ff0c4aa6e31b918fd6b70ab9122f024b7c8b9..e6973fb9a6f8a663821b113a61467dea79d0aa60 100644
|
| --- a/gdb/testsuite/gdb.base/sepdebug.exp
|
| +++ b/gdb/testsuite/gdb.base/sepdebug.exp
|
| @@ -26,10 +26,6 @@
|
| # ".debug-id/ab/cdef.debug" file.
|
|
|
|
|
| -if $tracelevel then {
|
| - strace $tracelevel
|
| -}
|
| -
|
| #
|
| # test running programs
|
| #
|
| @@ -45,7 +41,7 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {deb
|
|
|
| # Note: the procedure gdb_gnu_strip_debug will produce an executable called
|
| # ${binfile}, which is just like the executable ($binfile) but without
|
| -# the debuginfo. Instead $binfile has a .gnudebuglink section which contains
|
| +# the debuginfo. Instead $binfile has a .gnu_debuglink section which contains
|
| # the name of a debuginfo only file. This file will be stored in the
|
| # gdb.base/ subdirectory.
|
|
|
| @@ -55,17 +51,31 @@ if [gdb_gnu_strip_debug $binfile] {
|
| return -1
|
| }
|
|
|
| -gdb_exit
|
| -gdb_start
|
| -gdb_reinitialize_dir $srcdir/$subdir
|
| -gdb_load ${binfile}
|
| +#
|
| +# PR gdb/9538. Verify that symlinked executable still finds the separate
|
| +# debuginfo.
|
| +#
|
| +set old_subdir ${subdir}
|
| +set subdir ${subdir}/pr9538
|
| +
|
| +# Cleanup any stale state.
|
| +remote_exec build "rm -rf ${subdir}"
|
| +
|
| +remote_exec build "mkdir ${subdir}"
|
| +remote_exec build "ln -s ${binfile} ${subdir}"
|
| +clean_restart ${testfile}${EXEEXT}
|
| if { $gdb_file_cmd_debug_info != "debug" } then {
|
| fail "No debug information found."
|
| }
|
|
|
| -if [target_info exists gdb_stub] {
|
| - gdb_step_for_stub;
|
| +# Restore subdir
|
| +set subdir ${old_subdir}
|
| +
|
| +clean_restart ${testfile}${EXEEXT}
|
| +if { $gdb_file_cmd_debug_info != "debug" } then {
|
| + fail "No debug information found."
|
| }
|
| +
|
| #
|
| # test simple breakpoint setting commands
|
| #
|
| @@ -140,17 +150,9 @@ gdb_test "break multi_line_while_conditional" \
|
| "Breakpoint.*at.* file .*$srcfile, line $bp_location4\\." \
|
| "breakpoint at start of multi line while conditional"
|
|
|
| -set bp_location5 [gdb_get_line_number "set breakpoint 5 here"]
|
| set bp_location6 [gdb_get_line_number "set breakpoint 6 here"]
|
|
|
| -#
|
| -# check to see what breakpoints are set
|
| -#
|
| -if [target_info exists gdb_stub] {
|
| - set main_line $bp_location5
|
| -} else {
|
| - set main_line $bp_location6
|
| -}
|
| +set main_line $bp_location6
|
|
|
| set bp_location7 [gdb_get_line_number "set breakpoint 7 here"]
|
| set bp_location8 [gdb_get_line_number "set breakpoint 8 here"]
|
| @@ -172,9 +174,6 @@ gdb_test "info break" \
|
| # handle arguments.
|
| # Huh? There doesn't *appear* to be anything that passes arguments
|
| # below.
|
| -if [istarget "mips-idt-*"] then {
|
| - return
|
| -}
|
|
|
| #
|
| # run until the breakpoint at main is hit. For non-stubs-using targets.
|
| @@ -379,14 +378,7 @@ gdb_test_multiple "break $bp_location1" \
|
| }
|
| }
|
|
|
| -send_gdb "commands $expect_out(1,string)\n"
|
| -send_gdb "silent\n"
|
| -send_gdb "end\n"
|
| -gdb_expect {
|
| - -re ".*$gdb_prompt $"\
|
| - {pass "set silent break bp_location1"}
|
| - timeout {fail "(timeout) set silent break bp_location1"}
|
| -}
|
| +gdb_test "commands $expect_out(1,string)\nsilent\nend" ">end" "set silent break bp_location1"
|
|
|
| gdb_test "info break $expect_out(1,string)" \
|
| "\[0-9\]*\[ \t\]*breakpoint.*:$bp_location1\r\n\[ \t\]*silent.*" \
|
| @@ -416,7 +408,7 @@ gdb_test "break $bp_location12 thread foo" \
|
| #
|
|
|
| gdb_test "break $bp_location12 foo" \
|
| - "Junk at end of arguments.*" \
|
| + "malformed linespec error: unexpected string, \"foo\".*" \
|
| "breakpoint with trailing garbage disallowed"
|
|
|
| # Verify that GDB responds gracefully to a "clear" command that has
|
| @@ -657,14 +649,10 @@ test_next_with_recursion
|
|
|
| #********
|
|
|
| -proc test_different_dir {type test_different_dir xfail} {
|
| +proc test_different_dir {type test_different_dir xfail} { with_test_prefix "$type" {
|
| global srcdir subdir objdir binfile srcfile timeout gdb_prompt
|
| - global pf_prefix
|
| global bp_location6 decimal hex
|
|
|
| - set old_pf_prefix $pf_prefix
|
| - append pf_prefix " $type:"
|
| -
|
| gdb_exit
|
| gdb_start
|
| gdb_reinitialize_dir $srcdir/$subdir
|
| @@ -672,10 +660,6 @@ proc test_different_dir {type test_different_dir xfail} {
|
| "set separate debug location"
|
| gdb_load ${binfile}
|
|
|
| - if [target_info exists gdb_stub] {
|
| - gdb_step_for_stub;
|
| - }
|
| -
|
| #
|
| # test break at function
|
| #
|
| @@ -758,9 +742,8 @@ proc test_different_dir {type test_different_dir xfail} {
|
| gdb_test_no_output "set args main"
|
| }
|
|
|
| - set pf_prefix $old_pf_prefix
|
| # proc test_different_dir
|
| -}
|
| +}}
|
|
|
|
|
| # now move the .debug file to a different location so that we can test
|
|
|