From 546143b61a02462d8536c067c2137ed28cc7728a Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Fri, 29 Aug 2003 16:18:06 +0000 Subject: [PATCH] 2003-08-29 Andrew Cagney * config/mips/tm-embed.h (STOPPED_BY_WATCHPOINT): Delete macro. (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Delete macro. (target_remove_watchpoint): Delete macro. (target_insert_watchpoint): Delete macro. (remote_mips_can_use_hardware_watchpoint): Delete declaration. (remote_mips_stopped_by_watchpoint): Delete declaration. (remote_mips_remove_watchpoint): Delete declaration. (remote_mips_set_watchpoint): Delete declaration. (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete macro. * remote-mips.c (_initialize_remote_mips): Set "to_insert_watchpoint", "to_stopped_by_watchpoint", "to_can_use_hardware_watchpoint", and "to_remove_watchpoint". (mips_insert_watchpoint): Rename remote_mips_set_watchpoint. (mips_remove_watchpoint): Rename remote_mips_remove_watchpoint. (mips_stopped_by_watchpoint): Rename remote_mips_stopped_by_watchpoint. (mips_can_hardware_watchpoint): Rename remote_mips_can_use_hardware_watchpoint, update function signature. --- gdb/ChangeLog | 22 ++++++++++++++++++++++ gdb/config/mips/tm-embed.h | 29 +++++++---------------------- gdb/remote-mips.c | 12 ++++++++---- 3 files changed, 37 insertions(+), 26 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index c94523b..939d8cd 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,25 @@ +2003-08-29 Andrew Cagney + + * config/mips/tm-embed.h (STOPPED_BY_WATCHPOINT): Delete macro. + (TARGET_CAN_USE_HARDWARE_WATCHPOINT): Delete macro. + (target_remove_watchpoint): Delete macro. + (target_insert_watchpoint): Delete macro. + (remote_mips_can_use_hardware_watchpoint): Delete declaration. + (remote_mips_stopped_by_watchpoint): Delete declaration. + (remote_mips_remove_watchpoint): Delete declaration. + (remote_mips_set_watchpoint): Delete declaration. + (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete macro. + * remote-mips.c (_initialize_remote_mips): Set + "to_insert_watchpoint", "to_stopped_by_watchpoint", + "to_can_use_hardware_watchpoint", and "to_remove_watchpoint". + (mips_insert_watchpoint): Rename remote_mips_set_watchpoint. + (mips_remove_watchpoint): Rename remote_mips_remove_watchpoint. + (mips_stopped_by_watchpoint): Rename + remote_mips_stopped_by_watchpoint. + (mips_can_hardware_watchpoint): Rename + remote_mips_can_use_hardware_watchpoint, update function + signature. + 2003-08-29 Mark Kettenis * x86-64-linux-tdep.c (user_to_gdb_regmap): Remove USER_CS and diff --git a/gdb/config/mips/tm-embed.h b/gdb/config/mips/tm-embed.h index a7a7948..31f703f 100644 --- a/gdb/config/mips/tm-embed.h +++ b/gdb/config/mips/tm-embed.h @@ -19,28 +19,13 @@ #include "mips/tm-mips.h" -/* Watchpoint support */ - -#define TARGET_HAS_HARDWARE_WATCHPOINTS - -/* Use these macros for watchpoint insertion/deletion. */ -/* type can be 0: write watch, 1: read watch, 2: access watch (read/write) */ - -#define target_insert_watchpoint(addr, len, type) \ - remote_mips_set_watchpoint (addr, len, type) -int remote_mips_set_watchpoint (CORE_ADDR addr, int len, int type); - -#define target_remove_watchpoint(addr, len, type) \ - remote_mips_remove_watchpoint (addr, len, type) -int remote_mips_remove_watchpoint (CORE_ADDR addr, int len, int type); - /* We need to remove watchpoints when stepping, else we hit them again! */ -#define HAVE_NONSTEPPABLE_WATCHPOINT 1 - -int remote_mips_stopped_by_watchpoint (void); -#define STOPPED_BY_WATCHPOINT(w) remote_mips_stopped_by_watchpoint () +/* FIXME: cagney/2003-08-29: The macros HAVE_STEPPABLE_WATCHPOINT, + HAVE_NONSTEPPABLE_WATCHPOINT, and HAVE_CONTINUABLE_WATCHPOINT need + to all be folded into the target vector. Since they are being used + as guards for STOPPED_BY_WATCHPOINT, why not have + STOPPED_BY_WATCHPOINT return the type of watchpoint that the code + is sitting on? */ -#define TARGET_CAN_USE_HARDWARE_WATCHPOINT(type, cnt, ot) \ - remote_mips_can_use_hardware_watchpoint(cnt) -int remote_mips_can_use_hardware_watchpoint (int cnt); +#define HAVE_NONSTEPPABLE_WATCHPOINT 1 diff --git a/gdb/remote-mips.c b/gdb/remote-mips.c index c50c504..372ecf7 100644 --- a/gdb/remote-mips.c +++ b/gdb/remote-mips.c @@ -2405,7 +2405,7 @@ pmon_remove_breakpoint (CORE_ADDR addr, char *contents_cache) implements the TARGET_CAN_USE_HARDWARE_WATCHPOINT macro. */ int -remote_mips_can_use_hardware_watchpoint (int cnt) +mips_can_use_watchpoint (int type, int cnt, int othertype) { return cnt < MAX_LSI_BREAKPOINTS && strcmp (target_shortname, "lsi") == 0; } @@ -2464,7 +2464,7 @@ remote_mips_remove_hw_breakpoint (CORE_ADDR addr, char *contents_cache) watchpoint. */ int -remote_mips_set_watchpoint (CORE_ADDR addr, int len, int type) +mips_insert_watchpoint (CORE_ADDR addr, int len, int type) { if (set_breakpoint (addr, len, type)) return -1; @@ -2473,7 +2473,7 @@ remote_mips_set_watchpoint (CORE_ADDR addr, int len, int type) } int -remote_mips_remove_watchpoint (CORE_ADDR addr, int len, int type) +mips_remove_watchpoint (CORE_ADDR addr, int len, int type) { if (clear_breakpoint (addr, len, type)) return -1; @@ -2482,7 +2482,7 @@ remote_mips_remove_watchpoint (CORE_ADDR addr, int len, int type) } int -remote_mips_stopped_by_watchpoint (void) +mips_stopped_by_watchpoint (void) { return hit_watchpoint; } @@ -3494,6 +3494,10 @@ _initialize_remote_mips (void) mips_ops.to_files_info = mips_files_info; mips_ops.to_insert_breakpoint = mips_insert_breakpoint; mips_ops.to_remove_breakpoint = mips_remove_breakpoint; + mips_ops.to_insert_watchpoint = mips_insert_watchpoint; + mips_ops.to_remove_watchpoint = mips_remove_watchpoint; + mips_ops.to_stopped_by_watchpoint = mips_stopped_by_watchpoint; + mips_ops.to_can_use_hw_breakpoint = mips_can_use_watchpoint; mips_ops.to_kill = mips_kill; mips_ops.to_load = mips_load; mips_ops.to_create_inferior = mips_create_inferior; -- 2.7.4