diff options
author | Mark Alexander <marka@cygnus> | 1997-06-17 02:11:42 +0000 |
---|---|---|
committer | Mark Alexander <marka@cygnus> | 1997-06-17 02:11:42 +0000 |
commit | f781fe93a6bf9062af5770cb94af5c52b29c584b (patch) | |
tree | bd7d46b71369d1e76667ffeb614bdc65f6584d8a /gdb/config/mips/tm-embed.h | |
parent | 77f3ac77b541865ccd33567adb0c3c988cb60625 (diff) | |
download | gdb-f781fe93a6bf9062af5770cb94af5c52b29c584b.zip gdb-f781fe93a6bf9062af5770cb94af5c52b29c584b.tar.gz gdb-f781fe93a6bf9062af5770cb94af5c52b29c584b.tar.bz2 |
* infrun.c (wait_for_inferior): Mark registers as invalid when
stepping over an instruction that triggered a watchpoint.
* remote-mips.c: Numerous changes to support hardware breakpoints
and watchpoints on LSI MiniRISC and TinyRISC boards.
* mips-tdep.c: Move MIPS16-related macros to config/mips/tm-mips.h.
(mips_breakpoint_from_pc): Account for different breakpoint
instructions used by PMON and IDT monitor.
* config/mips/tm-embed.h: Enable hardware breakpoints on embedded
MIPS targets.
* config/mips/tm-mips.h: Define breakpoint instructions for
PMON and IDT monitor. Move MIPS16-related macros here from
mips-tdep.c.
Diffstat (limited to 'gdb/config/mips/tm-embed.h')
-rw-r--r-- | gdb/config/mips/tm-embed.h | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/gdb/config/mips/tm-embed.h b/gdb/config/mips/tm-embed.h index f3d2cc8..4f82d3f 100644 --- a/gdb/config/mips/tm-embed.h +++ b/gdb/config/mips/tm-embed.h @@ -23,30 +23,20 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #undef DEFAULT_MIPS_TYPE #define DEFAULT_MIPS_TYPE "r3051" -/* start-sanitize-gm */ -#ifdef GENERAL_MAGIC - -#include "tm-magic.h" /* Include generic stuff */ - -/* For some reason GM can't hack this... */ - -#undef GET_LONGJMP_TARGET - /* Watchpoint support */ #define TARGET_HAS_HARDWARE_WATCHPOINTS -#define TARGET_CAN_USE_HARDWARE_WATCHPOINT(type, cnt, ot) \ - (1 == 1) /* We allow all types of 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 PARAMS ((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 PARAMS ((CORE_ADDR addr, int len, int type)); /* We need to remove watchpoints when stepping, else we hit them again! */ @@ -54,7 +44,27 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #define STOPPED_BY_WATCHPOINT(w) remote_mips_stopped_by_watchpoint () +/* start-sanitize-gm */ +#ifdef GENERAL_MAGIC + +#include "tm-magic.h" /* Include generic stuff */ + +/* For some reason GM can't hack this... */ + +#undef GET_LONGJMP_TARGET + +#define TARGET_CAN_USE_HARDWARE_WATCHPOINT(type, cnt, ot) \ + (1 == 1) /* We allow all types of hardware watchpoints */ + #define FLUSH_CACHED_MEMORY() flush_cached_memory() +#else +/* end-sanitize-gm */ + +#define TARGET_CAN_USE_HARDWARE_WATCHPOINT(type, cnt, ot) \ + remote_mips_can_use_hardware_watchpoint(cnt) +int remote_mips_can_use_hardware_watchpoint PARAMS ((int cnt)); + +/* start-sanitize-gm */ #endif /* GENERAL_MAGIC */ /* end-sanitize-gm */ |