aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/lib
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2011-02-21 14:57:38 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2011-02-21 14:57:38 +0000
commitb800ec70e34b8115b645deea9f661a1769149c0a (patch)
treebd007a2df331da8862204f7cd4d5789b9967e343 /gdb/testsuite/lib
parente25b2cfa2a4fb779f95971926973dd7b77901f81 (diff)
downloadgdb-b800ec70e34b8115b645deea9f661a1769149c0a.zip
gdb-b800ec70e34b8115b645deea9f661a1769149c0a.tar.gz
gdb-b800ec70e34b8115b645deea9f661a1769149c0a.tar.bz2
* lib/gdb.exp (skip_hw_breakpoint_tests): New procedure.
(skip_hw_watchpoint_tests): Likewise. (skip_hw_watchpoint_multi_tests): Likewise. (skip_hw_watchpoint_access_tests): Likewise. * gdb.base/hbreak.exp: Use appropriate skip_hw_..._tests checks. * gdb.base/pr11022.exp: Likewise. * gdb.base/watch-read.exp: Likewise. * gdb.base/watch_thread_num.exp: Likewise. * gdb.base/watchpoint-hw-hit-once.exp: Likewise. * gdb.base/watchpoint-hw.exp: Likewise. * gdb.base/watchpoint.exp: Likewise. * gdb.threads/local-watch-wrong-thread.exp: Likewise. * gdb.threads/watchthreads-reorder.exp: Likewise. * gdb.threads/watchthreads.exp: Likewise. * gdb.threads/watchthreads2.exp: Likewise.
Diffstat (limited to 'gdb/testsuite/lib')
-rw-r--r--gdb/testsuite/lib/gdb.exp70
1 files changed, 70 insertions, 0 deletions
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index d523d8e..3ba5488 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -1783,6 +1783,76 @@ proc skip_inline_var_tests {} {
return 0
}
+# Return a 1 if we should skip tests that require hardware breakpoints
+
+proc skip_hw_breakpoint_tests {} {
+ # Skip tests if requested by the board (note that no_hardware_watchpoints
+ # disables both watchpoints and breakpoints)
+ if { [target_info exists gdb,no_hardware_watchpoints]} {
+ return 1
+ }
+
+ # These targets support hardware breakpoints natively
+ if { [istarget "i?86-*-*"]
+ || [istarget "x86_64-*-*"]
+ || [istarget "ia64-*-*"] } {
+ return 0
+ }
+
+ return 1
+}
+
+# Return a 1 if we should skip tests that require hardware watchpoints
+
+proc skip_hw_watchpoint_tests {} {
+ # Skip tests if requested by the board
+ if { [target_info exists gdb,no_hardware_watchpoints]} {
+ return 1
+ }
+
+ # These targets support hardware watchpoints natively
+ if { [istarget "i?86-*-*"]
+ || [istarget "x86_64-*-*"]
+ || [istarget "ia64-*-*"]
+ || [istarget "powerpc*-*-linux*"]
+ || [istarget "s390*-*-*"] } {
+ return 0
+ }
+
+ return 1
+}
+
+# Return a 1 if we should skip tests that require *multiple* hardware
+# watchpoints to be active at the same time
+
+proc skip_hw_watchpoint_multi_tests {} {
+ if { [skip_hw_watchpoint_tests] } {
+ return 1
+ }
+
+ # These targets support just a single hardware watchpoint
+ if { [istarget "powerpc*-*-linux*"] } {
+ return 1
+ }
+
+ return 0
+}
+
+# Return a 1 if we should skip tests that require read/access watchpoints
+
+proc skip_hw_watchpoint_access_tests {} {
+ if { [skip_hw_watchpoint_tests] } {
+ return 1
+ }
+
+ # These targets support just write watchpoints
+ if { [istarget "s390*-*-*"] } {
+ return 1
+ }
+
+ return 0
+}
+
set compiler_info "unknown"
set gcc_compiled 0
set hp_cc_compiler 0