aboutsummaryrefslogtreecommitdiff
path: root/gdb/target.h
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/target.h
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/target.h')
-rw-r--r--gdb/target.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/target.h b/gdb/target.h
index 84cd008..8e7d112 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -367,6 +367,8 @@ struct target_ops
int to_have_steppable_watchpoint;
int to_have_continuable_watchpoint;
int (*to_stopped_data_address) (struct target_ops *, CORE_ADDR *);
+ int (*to_watchpoint_addr_within_range) (struct target_ops *,
+ CORE_ADDR, CORE_ADDR, int);
int (*to_region_ok_for_hw_watchpoint) (CORE_ADDR, int);
void (*to_terminal_init) (void);
void (*to_terminal_inferior) (void);
@@ -1093,6 +1095,9 @@ extern int target_stopped_data_address_p (struct target_ops *);
#define target_stopped_data_address_p(CURRENT_TARGET) (1)
#endif
+#define target_watchpoint_addr_within_range(target, addr, start, length) \
+ (*target.to_watchpoint_addr_within_range) (target, addr, start, length)
+
extern const struct target_desc *target_read_description (struct target_ops *);
/* Command logging facility. */