mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-02 12:37:05 +08:00
2012-01-27 Pedro Alves <palves@redhat.com>
* gdb.base/watchpoint.exp (test_no_hw_watchpoints): New, factored out from the top level. (top level): Call it instead.
This commit is contained in:
@ -1,3 +1,9 @@
|
|||||||
|
2012-01-27 Pedro Alves <palves@redhat.com>
|
||||||
|
|
||||||
|
* gdb.base/watchpoint.exp (test_no_hw_watchpoints): New, factored
|
||||||
|
out from the top level.
|
||||||
|
(top level): Call it instead.
|
||||||
|
|
||||||
2012-01-27 Pedro Alves <palves@redhat.com>
|
2012-01-27 Pedro Alves <palves@redhat.com>
|
||||||
|
|
||||||
* gdb.base/watchpoint.exp (top level): Re-enable hardware
|
* gdb.base/watchpoint.exp (top level): Re-enable hardware
|
||||||
|
@ -765,7 +765,45 @@ proc test_inaccessible_watchpoint {} {
|
|||||||
gdb_test_no_output "delete \$global_ptr_ptr_breakpoint_number"
|
gdb_test_no_output "delete \$global_ptr_ptr_breakpoint_number"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
proc test_no_hw_watchpoints {} {
|
||||||
|
maybe_clean_restart
|
||||||
|
|
||||||
|
# Verify that a user can force GDB to use "slow" watchpoints.
|
||||||
|
# (This proves rather little on kernels that don't support
|
||||||
|
# fast watchpoints, but still...)
|
||||||
|
#
|
||||||
|
if ![runto_main] then { fail "watch tests suppressed" }
|
||||||
|
|
||||||
|
gdb_test_no_output "set can-use-hw-watchpoints 0" "disable fast watches"
|
||||||
|
|
||||||
|
gdb_test "show can-use-hw-watchpoints" \
|
||||||
|
"Debugger's willingness to use watchpoint hardware is 0." \
|
||||||
|
"show disable fast watches"
|
||||||
|
|
||||||
|
gdb_test "watch ival3 if count > 1" \
|
||||||
|
"Watchpoint \[0-9\]*: ival3.*" \
|
||||||
|
"set slow conditional watch"
|
||||||
|
|
||||||
|
gdb_test "continue" \
|
||||||
|
"Watchpoint \[0-9\]*: ival3.*Old value = 1.*New value = 2.*" \
|
||||||
|
"trigger slow conditional watch"
|
||||||
|
|
||||||
|
gdb_test_no_output "delete \$bpnum" "delete watch ival3"
|
||||||
|
|
||||||
|
# We've explicitly disabled hardware watches. Verify that GDB
|
||||||
|
# refrains from using them.
|
||||||
|
#
|
||||||
|
gdb_test "rwatch ival3" \
|
||||||
|
"Expression cannot be implemented with read/access watchpoint..*" \
|
||||||
|
"rwatch disallowed when can-set-hw-watchpoints cleared"
|
||||||
|
|
||||||
|
# Re-enable hardware watchpoints if necessary.
|
||||||
|
if ![target_info exists gdb,no_hardware_watchpoints] {
|
||||||
|
gdb_test_no_output "set can-use-hw-watchpoints 1" ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
proc test_watchpoint_in_big_blob {} {
|
proc test_watchpoint_in_big_blob {} {
|
||||||
global gdb_prompt
|
global gdb_prompt
|
||||||
|
|
||||||
@ -844,41 +882,7 @@ if [initialize] then {
|
|||||||
|
|
||||||
test_inaccessible_watchpoint
|
test_inaccessible_watchpoint
|
||||||
|
|
||||||
maybe_clean_restart
|
test_no_hw_watchpoints
|
||||||
|
|
||||||
# Verify that a user can force GDB to use "slow" watchpoints.
|
|
||||||
# (This proves rather little on kernels that don't support
|
|
||||||
# fast watchpoints, but still...)
|
|
||||||
#
|
|
||||||
if ![runto_main] then { fail "watch tests suppressed" }
|
|
||||||
|
|
||||||
gdb_test_no_output "set can-use-hw-watchpoints 0" "disable fast watches"
|
|
||||||
|
|
||||||
gdb_test "show can-use-hw-watchpoints" \
|
|
||||||
"Debugger's willingness to use watchpoint hardware is 0." \
|
|
||||||
"show disable fast watches"
|
|
||||||
|
|
||||||
gdb_test "watch ival3 if count > 1" \
|
|
||||||
"Watchpoint \[0-9\]*: ival3.*" \
|
|
||||||
"set slow conditional watch"
|
|
||||||
|
|
||||||
gdb_test "continue" \
|
|
||||||
"Watchpoint \[0-9\]*: ival3.*Old value = 1.*New value = 2.*" \
|
|
||||||
"trigger slow conditional watch"
|
|
||||||
|
|
||||||
gdb_test_no_output "delete \$bpnum" "delete watch ival3"
|
|
||||||
|
|
||||||
# We've explicitly disabled hardware watches. Verify that GDB
|
|
||||||
# refrains from using them.
|
|
||||||
#
|
|
||||||
gdb_test "rwatch ival3" \
|
|
||||||
"Expression cannot be implemented with read/access watchpoint..*" \
|
|
||||||
"rwatch disallowed when can-set-hw-watchpoints cleared"
|
|
||||||
|
|
||||||
# Re-enable hardware watchpoints if necessary.
|
|
||||||
if ![target_info exists gdb,no_hardware_watchpoints] {
|
|
||||||
gdb_test_no_output "set can-use-hw-watchpoints 1" ""
|
|
||||||
}
|
|
||||||
|
|
||||||
test_watchpoint_and_breakpoint
|
test_watchpoint_and_breakpoint
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user