aboutsummaryrefslogtreecommitdiff
path: root/gdb/breakpoint.c
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@linux-m68k.org>2008-05-02 11:07:25 +0000
committerAndreas Schwab <schwab@linux-m68k.org>2008-05-02 11:07:25 +0000
commit5009afc5ba7a0d57f28fbc834757145fe1f45549 (patch)
tree84eb99d8f3cee40602e1f5f48650b3db51714cc4 /gdb/breakpoint.c
parenta99f88dcfcd4f977edc6daf5c469d656808e5576 (diff)
downloadgdb-5009afc5ba7a0d57f28fbc834757145fe1f45549.zip
gdb-5009afc5ba7a0d57f28fbc834757145fe1f45549.tar.gz
gdb-5009afc5ba7a0d57f28fbc834757145fe1f45549.tar.bz2
* target.h (struct target_ops): Add
to_watchpoint_addr_within_range. (target_watchpoint_addr_within_range): New function. * target.c (update_current_target): Inherit to_watchpoint_addr_within_range, defaulting to default_watchpoint_addr_within_range. (default_watchpoint_addr_within_range): New function. (debug_to_watchpoint_addr_within_range): New function. (setup_target_debug): Set to_watchpoint_addr_within_range. * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range): New function. (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range. * breakpoint.c (watchpoints_triggered): Use target_watchpoint_addr_within_range. * gdbint.texinfo (Algorithms): Describe target_watchpoint_addr_within_range.
Diffstat (limited to 'gdb/breakpoint.c')
-rw-r--r--gdb/breakpoint.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 9dc2ca2..11d9187 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -2616,8 +2616,9 @@ watchpoints_triggered (struct target_waitstatus *ws)
for (loc = b->loc; loc; loc = loc->next)
/* Exact match not required. Within range is
sufficient. */
- if (addr >= loc->address
- && addr < loc->address + loc->length)
+ if (target_watchpoint_addr_within_range (&current_target,
+ addr, loc->address,
+ loc->length))
{
b->watchpoint_triggered = watch_triggered_yes;
break;