2004-08-08 Andrew Cagney <cagney@gnu.org>
[deliverable/binutils-gdb.git] / gdb / sh3-rom.c
index f450ac9d5fcb0cd1f25dadfe1477603e5fe195a5..327e76a85a516584d22f2f355c4468b8a30b00b3 100644 (file)
@@ -1,4 +1,4 @@
-/* Remote target glue for the Hitachi SH-3 ROM monitor.
+/* Remote target glue for the Renesas SH-3 ROM monitor.
    Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001
    Free Software Foundation, Inc.
 
@@ -27,6 +27,7 @@
 #include "srec.h"
 #include "arch-utils.h"
 #include "regcache.h"
+#include "gdb_string.h"
 
 #include "sh-tdep.h"
 
@@ -76,9 +77,9 @@ sh3_supply_register (char *regname, int regnamelen, char *val, int vallen)
          break;
        case 'S':
          if (regname[1] == 'S' && regname[2] == 'R')
-           regno = gdbarch_tdep (current_gdbarch)->SSR_REGNUM;
+           regno = SSR_REGNUM;
          else if (regname[1] == 'P' && regname[2] == 'C')
-           regno = gdbarch_tdep (current_gdbarch)->SPC_REGNUM;
+           regno = SPC_REGNUM;
          break;
        }
     }
@@ -227,7 +228,7 @@ init_sh3_cmds (void)
   sh3_cmds.getreg.term_cmd = ".\r";    /* getreg.term_cmd */
   sh3_cmds.dump_registers = "r\r";     /* dump_registers */
   sh3_cmds.register_pattern = "\\(\\w+\\)=\\([0-9a-fA-F]+\\( +[0-9a-fA-F]+\\b\\)*\\)";
-  sh3_cmds.supply_register = sh3_supply_register;      /* supply_register */
+  sh3_cmds.supply_register = sh3_supply_register;
   sh3_cmds.load_routine = sh3_load;    /* load_routine */
   sh3_cmds.load = NULL;                /* download command */
   sh3_cmds.loadresp = NULL;    /* Load response */
@@ -280,8 +281,15 @@ sh3_open (char *args, int from_tty)
       parallel_in_use = 1;
     }
 
+
   /* If we connected successfully, we know the processor is an SH3.  */
-  set_architecture_from_arch_mach (bfd_arch_sh, bfd_mach_sh3);
+  {
+    struct gdbarch_info info;
+    gdbarch_info_init (&info);
+    info.bfd_arch_info = bfd_lookup_arch (bfd_arch_sh, bfd_mach_sh3);
+    if (!gdbarch_update_p (info))
+      error ("Target is not an SH3");
+  }
 }
 
 
@@ -328,7 +336,13 @@ sh3e_open (char *args, int from_tty)
     }
 
   /* If we connected successfully, we know the processor is an SH3E.  */
-  set_architecture_from_arch_mach (bfd_arch_sh, bfd_mach_sh3);
+  {
+    struct gdbarch_info info;
+    gdbarch_info_init (&info);
+    info.bfd_arch_info = bfd_lookup_arch (bfd_arch_sh, bfd_mach_sh3);
+    if (!gdbarch_update_p (info))
+      error ("Target is not an SH3");
+  }
 }
 
 static void
@@ -342,6 +356,8 @@ sh3_close (int quitting)
     }
 }
 
+extern initialize_file_ftype _initialize_sh3_rom; /* -Wmissing-prototypes */
+
 void
 _initialize_sh3_rom (void)
 {
@@ -349,11 +365,11 @@ _initialize_sh3_rom (void)
   init_monitor_ops (&sh3_ops);
 
   sh3_ops.to_shortname = "sh3";
-  sh3_ops.to_longname = "Hitachi SH-3 rom monitor";
+  sh3_ops.to_longname = "Renesas SH-3 rom monitor";
 
   sh3_ops.to_doc =
   /* We can download through the parallel port too. */
-    "Debug on a Hitachi eval board running the SH-3E rom monitor.\n"
+    "Debug on a Renesas 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 an additional second argument.";
@@ -368,11 +384,11 @@ _initialize_sh3_rom (void)
   init_monitor_ops (&sh3e_ops);
 
   sh3e_ops.to_shortname = "sh3e";
-  sh3e_ops.to_longname = "Hitachi SH-3E rom monitor";
+  sh3e_ops.to_longname = "Renesas SH-3E rom monitor";
 
   sh3e_ops.to_doc =
   /* We can download through the parallel port too. */
-    "Debug on a Hitachi eval board running the SH-3E rom monitor.\n"
+    "Debug on a Renesas 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 an additional second argument.";
This page took 0.025802 seconds and 4 git commands to generate.