From c410a84ca9f4c590dcc494a77d421f5b7019b973 Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Sun, 6 May 2007 14:31:30 +0000 Subject: * monitor.c (monitor_supply_register): Add REGCACHE parameter, use it instead of current_regcache. (parse_register_dump): Add REGCACHE parameter, pass it to supply_register callback. (monitor_dump_reg_block): Add REGCACHE parameter, pass it to parse_register_dump. (monitor_dump_regs): Add REGCACHE parameter, pass it to parse_register_dump and dumpregs callback. (monitor_wait): Pass current_regcache to parse_register_dump and monitor_dump_regs. (monitor_fetch_register): Pass current_regcache to monitor_supply_register. (monitor_fetch_registers): Pass current_regcache to monitor_dump_regs. * monitor.h (struct monitor_ops): Add REGCACHE parameter to supply_register and dumpregs callbacks. (monitor_supply_register, monitor_dump_reg_block): Update prototypes. * dbug-rom.c (dbug_supply_register): Add REGCACHE parameter. Pass it to monitor_supply_register. * dink32-rom.c (dink32_supply_register): Likewise. * ppcbug-rom.c (ppcbug_supply_register): Likewise. * m32r-rom.c (m32r_supply_register): Likewise. Also, use REGCACHE instead of current_regcache. --- gdb/monitor.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'gdb/monitor.h') diff --git a/gdb/monitor.h b/gdb/monitor.h index 2a5bcb7..b3d514f 100644 --- a/gdb/monitor.h +++ b/gdb/monitor.h @@ -100,10 +100,11 @@ struct monitor_ops GDB with the value of a register. */ char *dump_registers; /* Command to dump all regs at once */ char *register_pattern; /* Pattern that picks out register from reg dump */ - void (*supply_register) (char *name, int namelen, char *val, int vallen); + void (*supply_register) (struct regcache *regcache, char *name, + int namelen, char *val, int vallen); void (*load_routine) (struct serial *desc, char *file, int hashmark); /* Download routine */ - int (*dumpregs) (void); /* routine to dump all registers */ + int (*dumpregs) (struct regcache *); /* Dump all registers */ int (*continue_hook) (void); /* Emit the continue command */ int (*wait_filter) (char *buf, /* Maybe contains registers */ int bufmax, @@ -242,7 +243,8 @@ struct monitor_ops extern void monitor_open (char *args, struct monitor_ops *ops, int from_tty); extern void monitor_close (int quitting); -extern char *monitor_supply_register (int regno, char *valstr); +extern char *monitor_supply_register (struct regcache *regcache, + int regno, char *valstr); extern int monitor_expect (char *prompt, char *buf, int buflen); extern int monitor_expect_prompt (char *buf, int buflen); /* Note: The variable argument functions monitor_printf and @@ -255,6 +257,6 @@ extern void monitor_write (char *buf, int buflen); extern int monitor_readchar (void); extern char *monitor_get_dev_name (void); extern void init_monitor_ops (struct target_ops *); -extern int monitor_dump_reg_block (char *dump_cmd); +extern int monitor_dump_reg_block (struct regcache *regcache, char *dump_cmd); #endif -- cgit v1.1