X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fsh3-rom.c;h=c0f26df38a689476c65aad2363a63f2b350afca1;hb=9733f989bbfcefd612a9712683eeebff74329bf4;hp=3fd1e68bb07484e1bead295804c9b5f96ce595dc;hpb=dc9e099fc0eced486ae2b49455c9da113c11f4ff;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/sh3-rom.c b/gdb/sh3-rom.c index 3fd1e68bb0..c0f26df38a 100644 --- a/gdb/sh3-rom.c +++ b/gdb/sh3-rom.c @@ -1,5 +1,6 @@ /* Remote target glue for the Hitachi SH-3 ROM monitor. - Copyright 1995, 1996 Free Software Foundation, Inc. + Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001 + Free Software Foundation, Inc. This file is part of GDB. @@ -24,18 +25,16 @@ #include "monitor.h" #include "serial.h" #include "srec.h" +#include "arch-utils.h" +#include "regcache.h" static serial_t parallel; static int parallel_in_use; -static void sh3_open PARAMS ((char *args, int from_tty)); +static void sh3_open (char *args, int from_tty); static void -sh3_supply_register (regname, regnamelen, val, vallen) - char *regname; - int regnamelen; - char *val; - int vallen; +sh3_supply_register (char *regname, int regnamelen, char *val, int vallen) { int numregs; int regno; @@ -75,9 +74,9 @@ sh3_supply_register (regname, regnamelen, val, vallen) break; case 'S': if (regname[1] == 'S' && regname[2] == 'R') - regno = SSR_REGNUM; + regno = gdbarch_tdep (current_gdbarch)->SSR_REGNUM; else if (regname[1] == 'P' && regname[2] == 'C') - regno = SPC_REGNUM; + regno = gdbarch_tdep (current_gdbarch)->SPC_REGNUM; break; } } @@ -121,10 +120,7 @@ sh3_supply_register (regname, regnamelen, val, vallen) } static void -sh3_load (desc, file, hashmark) - serial_t desc; - char *file; - int hashmark; +sh3_load (serial_t desc, char *file, int hashmark) { if (parallel_in_use) { @@ -152,7 +148,7 @@ sh3_load (desc, file, hashmark) than does GDB, and don't necessarily support all the registers either. So, typing "info reg sp" becomes a "r30". */ -static char *sh3_regnames[NUM_REGS] = +static char *sh3_regnames[] = { "R0", "R1", "R2", "R3", "R4", "R5", "R6", "R7", "R8", "R9", "R10", "R11", "R12", "R13", "R14", "R15", @@ -167,7 +163,7 @@ static char *sh3_regnames[NUM_REGS] = "R4_BANK1", "R5_BANK1", "R6_BANK1", "R7_BANK1" }; -static char *sh3e_regnames[NUM_REGS] = +static char *sh3e_regnames[] = { "R0", "R1", "R2", "R3", "R4", "R5", "R6", "R7", "R8", "R9", "R10", "R11", "R12", "R13", "R14", "R15", @@ -248,16 +244,14 @@ init_sh3_cmds (void) static struct monitor_ops sh3e_cmds; static void -sh3_open (args, from_tty) - char *args; - int from_tty; +sh3_open (char *args, int from_tty) { char *serial_port_name = args; char *parallel_port_name = 0; if (args) { - char *cursor = serial_port_name = strsave (args); + char *cursor = serial_port_name = xstrdup (args); while (*cursor && *cursor != ' ') cursor++; @@ -290,16 +284,14 @@ sh3_open (args, from_tty) static void -sh3e_open (args, from_tty) - char *args; - int from_tty; +sh3e_open (char *args, int from_tty) { char *serial_port_name = args; char *parallel_port_name = 0; if (args) { - char *cursor = serial_port_name = strsave (args); + char *cursor = serial_port_name = xstrdup (args); while (*cursor && *cursor != ' ') cursor++; @@ -338,8 +330,7 @@ sh3e_open (args, from_tty) } static void -sh3_close (quitting) - int quitting; +sh3_close (int quitting) { monitor_close (quitting); if (parallel_in_use) @@ -350,7 +341,7 @@ sh3_close (quitting) } void -_initialize_sh3_rom () +_initialize_sh3_rom (void) { init_sh3_cmds (); init_monitor_ops (&sh3_ops); @@ -359,16 +350,11 @@ _initialize_sh3_rom () sh3_ops.to_longname = "Hitachi SH-3 rom monitor"; sh3_ops.to_doc = -#ifdef _WINDOWS - /* On windows we can talk through the parallel port too. */ - "Debug on a Hitachi eval board running the SH-3 rom monitor.\n" - "Specify the serial device it is connected to (e.g. com2).\n" + /* We can download through the parallel port too. */ + "Debug on a Hitachi eval board running the SH-3E rom monitor.\n" + "Specify the serial device it is connected to.\n" "If you want to use the parallel port to download to it, specify that\n" - "as the second argument. (e.g. lpt1)"; -#else - "Debug on a Hitachi eval board running the SH-3 rom monitor.\n\ -Specify the serial device it is connected to (e.g. /dev/ttya)."; -#endif + "as an additional second argument."; sh3_ops.to_open = sh3_open; sh3_ops.to_close = sh3_close; @@ -383,16 +369,11 @@ Specify the serial device it is connected to (e.g. /dev/ttya)."; sh3e_ops.to_longname = "Hitachi SH-3E rom monitor"; sh3e_ops.to_doc = -#ifdef _WINDOWS - /* On windows we can talk through the parallel port too. */ + /* We can download through the parallel port too. */ "Debug on a Hitachi eval board running the SH-3E rom monitor.\n" - "Specify the serial device it is connected to (e.g. com2).\n" + "Specify the serial device it is connected to.\n" "If you want to use the parallel port to download to it, specify that\n" - "as the second argument. (e.g. lpt1)"; -#else - "Debug on a Hitachi eval board running the SH-3E rom monitor.\n\ -Specify the serial device it is connected to (e.g. /dev/ttya)."; -#endif + "as an additional second argument."; sh3e_ops.to_open = sh3e_open; sh3e_ops.to_close = sh3_close;