diff options
author | Wu Zhou <woodzltc@cn.ibm.com> | 2006-02-08 05:41:06 +0000 |
---|---|---|
committer | Wu Zhou <woodzltc@cn.ibm.com> | 2006-02-08 05:41:06 +0000 |
commit | e0d24f8d6e485843de9fac1ba21412491e07be7b (patch) | |
tree | d7c85f32289f7427f9d05d1bc0edd424c028d3cf /gdb/target.h | |
parent | 0d2a63896314177cbf183995e4a4907a4723688b (diff) | |
download | gdb-e0d24f8d6e485843de9fac1ba21412491e07be7b.zip gdb-e0d24f8d6e485843de9fac1ba21412491e07be7b.tar.gz gdb-e0d24f8d6e485843de9fac1ba21412491e07be7b.tar.bz2 |
* ppc-linux-nat.c (PTRACE_GET_DEBUGREG, PTRACE_SET_DEBUGREG,
PTRACE_GETSIGINFO): Define.
(last_stopped_data_address): New.
(ppc_linux_check_watch_resources): New function.
(ppc_linux_region_ok_for_hw_watchpoint): New function.
(ppc_linux_insert_watchpoint): New function.
(ppc_linux_remove_watchpoint): New function.
(ppc_linux_stopped_data_address): New function.
(ppc_linux_stopped_by_watchpoint): New function.
(_initialize_ppc_linux_nat): Set the above hardware watchpoint
related target vectors.
* rs6000-tdep.c (rs6000_gdbarch_init): Set PPC architectures
to have nonsteppable watchpoint.
* target.c (default_region_ok_for_hw_watchpoint,
debug_to_region_ok_for_hw_watchpoint): New prototypes.
(update_current_target): Inherit to_region_ok_for_hw_watchpoint
and set default to_region_ok_for_hw_watchpoint.
(default_region_ok_for_hw_watchpoint): New function.
(debug_to_region_ok_for_hw_watchpoint): New function.
(setup_target_debug): Set to_region_ok_for_hw_watchpoint of
debug_target.
* target.h (struct target_ops): Add a new target vector
to_region_ok_for_hw_watchpoint.
(TARGET_REGION_OK_FOR_HW_WATCHPOINT): Define this if it is not
defined anyplace else.
Diffstat (limited to 'gdb/target.h')
-rw-r--r-- | gdb/target.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gdb/target.h b/gdb/target.h index 9bb31f9..7a72c36 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -346,6 +346,7 @@ struct target_ops int (*to_stopped_by_watchpoint) (void); int to_have_continuable_watchpoint; int (*to_stopped_data_address) (struct target_ops *, CORE_ADDR *); + int (*to_region_ok_for_hw_watchpoint) (CORE_ADDR, int); int (*to_region_size_ok_for_hw_watchpoint) (int); void (*to_terminal_init) (void); void (*to_terminal_inferior) (void); @@ -1031,6 +1032,11 @@ extern void (*deprecated_target_new_objfile_hook) (struct objfile *); (*current_target.to_can_use_hw_breakpoint) (TYPE, CNT, OTHERTYPE); #endif +#ifndef TARGET_REGION_OK_FOR_HW_WATCHPOINT +#define TARGET_REGION_OK_FOR_HW_WATCHPOINT(addr, len) \ + (*current_target.to_region_ok_for_hw_watchpoint) (addr, len) +#endif + #if !defined(TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT) #define TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT(byte_count) \ (*current_target.to_region_size_ok_for_hw_watchpoint) (byte_count) |