diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2006-06-09 20:53:31 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@codesourcery.com> | 2006-06-09 20:53:31 +0000 |
commit | f96043c358ed1127774719c1fc901101c1afa4db (patch) | |
tree | c6a5cf0d30c5ffab371d9467697c84929b8586e4 | |
parent | 6a5d584dc9a89132f5a61f09d7ba8b2ae507826c (diff) | |
download | gdb-f96043c358ed1127774719c1fc901101c1afa4db.tar.gz |
gdb/testsuite/
* gdb.base/recurse.exp: Add gdb,hardware_watchpoint target
info. Adjust testing to cope with a single watchpoint.
* gdb.base/watchpoint.exp: Adjust expected string.
-rw-r--r-- | ChangeLog.csl | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/recurse.exp | 55 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/watchpoint.exp | 5 |
3 files changed, 39 insertions, 26 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl index dfc9048f318..bf3c87b7f03 100644 --- a/ChangeLog.csl +++ b/ChangeLog.csl @@ -1,6 +1,11 @@ 2006-06-09 Nathan Sidwell <nathan@codesourcery.com> gdb/testsuite/ + * gdb.base/recurse.exp: Add gdb,hardware_watchpoint target + info. Adjust testing to cope with a single watchpoint. + * gdb.base/watchpoint.exp: Adjust expected string. + + gdb/testsuite/ * gdb.base/cursal.exp: Run to main before setting listing size. * gdb.base/dbx.exp: Run to main before testing. diff --git a/gdb/testsuite/gdb.base/recurse.exp b/gdb/testsuite/gdb.base/recurse.exp index bd1ecee60d9..3cd76d551c5 100644 --- a/gdb/testsuite/gdb.base/recurse.exp +++ b/gdb/testsuite/gdb.base/recurse.exp @@ -47,6 +47,10 @@ proc recurse_tests {} { if [target_info exists gdb,no_hardware_watchpoints] { gdb_test "set can-use-hw-watchpoints 0" "" "" } + set nwatch 99 + if [target_info exists gdb,hardware_watchpoints] { + set nwatch [target_info gdb,hardware_watchpoints] + } if [runto recurse] then { # First we need to step over the assignment of b, so it has a known @@ -78,14 +82,17 @@ proc recurse_tests {} { # First we need to step over the assignment of b, so it has a known # value. gdb_test "next" "if \\(a == 1\\)" "next over b = 0 in second instance" - gdb_test "watch b" ".*\[Ww\]atchpoint \[0-9]*: b" \ - "set second instance watchpoint" - # Continue until initial set of b (second instance). - if [gdb_test "continue" \ - "Continuing.*\[Ww\]atchpoint.*: b.*Old value = 0.*New value = 5.*"\ - "continue to second instance watchpoint, first time"] then { - gdb_suppress_tests; + if { $nwatch > 1 } { + gdb_test "watch b" ".*\[Ww\]atchpoint \[0-9]*: b" \ + "set second instance watchpoint" + + # Continue until initial set of b (second instance). + if [gdb_test "continue" \ + "Continuing.*\[Ww\]atchpoint.*: b.*Old value = 0.*New value = 5.*"\ + "continue to second instance watchpoint, first time"] then { + gdb_suppress_tests; + } } # Continue inward for a few iterations @@ -98,31 +105,33 @@ proc recurse_tests {} { gdb_test "continue" "Breakpoint.* recurse \\(a=1\\).*" \ "continue to recurse (a = 1)" - # Continue until second set of b (second instance). - if [gdb_test "continue" \ - "Continuing.*\[Ww\]atchpoint.*: b.*Old value = 5.*New value = 120.*return.*" \ - "continue to second instance watchpoint, second time"] then { - gdb_suppress_tests; - } - - # Continue again. We should have a watchpoint go out of scope now - if [gdb_test "continue" \ - "Continuing.*\[Ww\]atchpoint.*deleted.*recurse \\(a=6\\) .*" \ - "second instance watchpoint deleted when leaving scope"] then { - gdb_suppress_tests; + if { $nwatch > 1 } { + # Continue until second set of b (second instance). + if [gdb_test "continue" \ + "Continuing.*\[Ww\]atchpoint.*: b.*Old value = 5.*New value = 120.*return.*" \ + "continue to second instance watchpoint, second time"] then { + gdb_suppress_tests; + } + + # Continue again. We should have a watchpoint go out of scope now + if [gdb_test "continue" \ + "Continuing.*\[Ww\]atchpoint.*deleted.*recurse \\(a=6\\) .*" \ + "second instance watchpoint deleted when leaving scope"] then { + gdb_suppress_tests; + } } - + # Continue until second set of b (first instance). # 24320 is allowed as the final value for b as that's the value # b would have on systems with 16bit integers. # # We could fix the test program to deal with this too. if [gdb_test "continue" \ - "Continuing.*\[Ww\]atchpoint.*b.*Old value = 10.*New value = \(3628800|24320\).*return.*" \ - "continue to first instance watchpoint, second time"] then { + "Continuing.*\[Ww\]atchpoint.*b.*Old value = 10.*New value = \(3628800|24320\).*return.*" \ + "continue to first instance watchpoint, second time"] then { gdb_suppress_tests } - + # Continue again. We should have a watchpoint go out of scope now. # # The former version expected the test to return to main(). diff --git a/gdb/testsuite/gdb.base/watchpoint.exp b/gdb/testsuite/gdb.base/watchpoint.exp index a69271b0aff..4e97d775fd9 100644 --- a/gdb/testsuite/gdb.base/watchpoint.exp +++ b/gdb/testsuite/gdb.base/watchpoint.exp @@ -120,7 +120,6 @@ proc initialize {} { return 0; } - return 1 } @@ -148,7 +147,7 @@ proc test_simple_watchpoint {} { gdb_run_cmd set timeout 600 gdb_expect { - -re "Breakpoint 1, marker1 .*$gdb_prompt $" { + -re "Breakpoint 1, .*marker1 .*$gdb_prompt $" { pass "run to marker1 in test_simple_watchpoint" } -re ".*$gdb_prompt $" { @@ -314,7 +313,7 @@ proc test_disabling_watchpoints {} { gdb_run_cmd set timeout 600 gdb_expect { - -re "Breakpoint 1, marker1 .*$gdb_prompt $" { + -re "Breakpoint 1, .*marker1 .*$gdb_prompt $" { pass "run to marker1 in test_disabling_watchpoints" } -re ".*$gdb_prompt $" { |