From: Maciej W. Rozycki Date: Thu, 21 Jun 2007 15:26:05 +0000 (+0000) Subject: gdb/: X-Git-Tag: binutils-2_18-branchpoint~412 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6a2eb47454bb7f4c86c7841c3a6c482222577904;p=platform%2Fupstream%2Fbinutils.git gdb/: * printcmd.c (do_one_display): If display/i, start with an initial line feed to avoid bad layout if there is a branch delay slot. gdb/testsuite/: * gdb.base/display.exp: Allow a newline after display/i. * gdb.base/pc-fp.exp: Likewise. * gdb.base/sigbpt.exp: Likewise. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index dbe57a9..088bece 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2007-06-21 Chris Dearman + + * printcmd.c (do_one_display): If display/i, start with an initial + line feed to avoid bad layout if there is a branch delay slot. + 2007-06-21 Nigel Stephens Maciej W. Rozycki diff --git a/gdb/printcmd.c b/gdb/printcmd.c index 45d7e8a..98d2848 100644 --- a/gdb/printcmd.c +++ b/gdb/printcmd.c @@ -1520,7 +1520,7 @@ do_one_display (struct display *d) print_expression (d->exp, gdb_stdout); annotate_display_expression_end (); - if (d->format.count != 1) + if (d->format.count != 1 || d->format.format == 'i') printf_filtered ("\n"); else printf_filtered (" "); diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index d1b22a4..fc4c764 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2007-06-21 Chris Dearman + Maciej W. Rozycki + + * gdb.base/display.exp: Allow a newline after display/i. + * gdb.base/pc-fp.exp: Likewise. + * gdb.base/sigbpt.exp: Likewise. + 2007-06-13 Daniel Jacobowitz * gdb.xml/tdesc-regs.exp: Add MIPS support. Allow multiple diff --git a/gdb/testsuite/gdb.base/display.exp b/gdb/testsuite/gdb.base/display.exp index af579cb..41180ee 100644 --- a/gdb/testsuite/gdb.base/display.exp +++ b/gdb/testsuite/gdb.base/display.exp @@ -95,7 +95,7 @@ gdb_test "break 19" ".*Breakpoint 4.*" "break 19" gdb_test "info disp" ".*There are no auto-display expressions now..*" "inf disp" gdb_test "disp i" ".*1: i = 0.*" "display i" gdb_test "disp/x j" ".*2: /x j = 0x0.*" "display j" -gdb_test "disp/i &k" ".*3: x/i &k $hex:.*" "display &k" +gdb_test "disp/i &k" ".*3: x/i &k(\r\n| )$hex:.*" "display &k" gdb_test "disp/f f" ".*4: /f f = 3.1415*" "display/f f" gdb_test "disp/s &sum" ".*5: x/s &sum $hex.*sum.:.*" "display/s &sum" diff --git a/gdb/testsuite/gdb.base/pc-fp.exp b/gdb/testsuite/gdb.base/pc-fp.exp index ac5b1c0..0ebce9d 100644 --- a/gdb/testsuite/gdb.base/pc-fp.exp +++ b/gdb/testsuite/gdb.base/pc-fp.exp @@ -82,7 +82,7 @@ set valueof_fp [get_valueofx "/x" "\$fp" "0"] # display since that encodes and then decodes the expression parameter # (and hence uses the mechanisms we're trying to test). -gdb_test "display/i \$pc" "1: x/i +\\\$pc +${valueof_pc}.*" +gdb_test "display/i \$pc" "1: x/i +\\\$pc( +|\r\n)${valueof_pc}.*" gdb_test "display/w \$fp" "2: x/xw +\\\$fp +${valueof_fp}.*" # FIXME: cagney/2002-09-04: Should also check that ``info registers diff --git a/gdb/testsuite/gdb.base/sigbpt.exp b/gdb/testsuite/gdb.base/sigbpt.exp index a7f54ad..64c7f0f 100644 --- a/gdb/testsuite/gdb.base/sigbpt.exp +++ b/gdb/testsuite/gdb.base/sigbpt.exp @@ -91,12 +91,12 @@ gdb_test {display/i $pc} gdb_test "advance *bowler" "bowler.*" "advance to the bowler" set test "stepping to SIGSEGV" gdb_test_multiple "stepi" "$test" { - -re "Program received signal SIGSEGV.*pc *(0x\[0-9a-f\]*).*$gdb_prompt $" { - set segv_addr $expect_out(1,string) + -re "Program received signal SIGSEGV.*pc(\r\n| *) *(0x\[0-9a-f\]*).*$gdb_prompt $" { + set segv_addr $expect_out(2,string) pass "$test" } - -re " .*pc *(0x\[0-9a-f\]*).*bowler.*$gdb_prompt $" { - set bowler_addrs [concat $expect_out(1,string) $bowler_addrs] + -re " .*pc(\r\n| *)(0x\[0-9a-f\]*).*bowler.*$gdb_prompt $" { + set bowler_addrs [concat $expect_out(2,string) $bowler_addrs] send_gdb "stepi\n" exp_continue } @@ -183,19 +183,19 @@ proc stepi_out { name args } { -re "Program received signal SIGSEGV.*$gdb_prompt $" { kfail gdb/1702 "$test (executed fault insn)" } - -re "Breakpoint.*pc *[at_segv] .*bowler.*$gdb_prompt $" { + -re "Breakpoint.*pc(\r\n| *)[at_segv] .*bowler.*$gdb_prompt $" { pass "$test (at breakpoint)" } - -re "Breakpoint.*pc *[after_segv] .*bowler.*$gdb_prompt $" { + -re "Breakpoint.*pc(\r\n| *)[after_segv] .*bowler.*$gdb_prompt $" { kfail gdb/1702 "$test (executed breakpoint)" } - -re "pc *[at_segv] .*bowler.*$gdb_prompt $" { + -re "pc(\r\n| *)[at_segv] .*bowler.*$gdb_prompt $" { pass "$test" } - -re "pc *[after_segv] .*bowler.*$gdb_prompt $" { + -re "pc(\r\n| *)[after_segv] .*bowler.*$gdb_prompt $" { kfail gdb/1702 "$test (skipped fault insn)" } - -re "pc *0x\[a-z0-9\]* .*bowler.*$gdb_prompt $" { + -re "pc(\r\n| *)0x\[a-z0-9\]* .*bowler.*$gdb_prompt $" { kfail gdb/1702 "$test (corrupt pc)" } } @@ -239,12 +239,12 @@ proc cont_out { name args } { # inserted at the faulting instruction. Note that the breakpoint # instruction wasn't executed, rather the inferior was SIGTRAPed # with the PC at the breakpoint. - gdb_test "continue" "Breakpoint.*pc *[at_segv] .*" \ + gdb_test "continue" "Breakpoint.*pc(\r\n| *)[at_segv] .*" \ "${name}; continue to breakpoint at fault" # Now single step the faulted instrction at that breakpoint. gdb_test "stepi" \ - "Program received signal SIGSEGV.*pc *[at_segv] .*" \ + "Program received signal SIGSEGV.*pc(\r\n| *)[at_segv] .*" \ "${name}; stepi fault" # Clear any breakpoints