Fix hardware watchpoint check in test gdb.base/watchpoint-reuse-slot.exp

This test generates 48 failures on Power 9 when testing with HW watchpoints
enabled.  Note HW watchpoint support is disabled on Power 9 due to a HW bug.
The skip_hw_watchpoint_tests proc must be used to correctly determine
if the processor supports HW watchpoints.

This patch replaces the [target_info exists gdb,no_hardware_watchpoints]
with the skip_hw_watchpoint_tests check.

This patch was tested on Power 9, Power 10 and X86-64 with no regressions.
This commit is contained in:
Carl Love 2022-09-08 15:13:03 +00:00
parent 0ee31dffb8
commit a47a2d45bd

View file

@ -22,6 +22,16 @@
# operation. (Note that we don't have any of these watchpoints
# trigger.)
# The skip_hw_watchpoint_tests checks if watchpoints are supported by the
# processor. On PowerPC, the check runs a small test program under gdb
# to determine if the Power processor supports HW watchpoints. The check
# must be done before starting the test so as to not disrupt the execution
# of the actual test.
set skip_hw_watchpoint_tests_p [skip_hw_watchpoint_tests]
# starting the test.
standard_testfile
if {[prepare_for_testing "failed to prepare" $testfile $srcfile debug]} {
@ -285,7 +295,7 @@ proc setup_and_run_watchpoints_tests { hw_wp_p } {
# Run tests with hardware watchpoints disabled, then again with them
# enabled (if this target supports hardware watchpoints).
if { ![target_info exists gdb,no_hardware_watchpoints]} {
if { !$skip_hw_watchpoint_tests_p } {
# Run test with H/W enabled.
setup_and_run_watchpoints_tests 1
}