This commit was manufactured by cvs2svn to create branch 'gdb_7_0-branch'.
[external/binutils.git] / gdb / m32r-rom.c
index 053d6bb..78ce499 100644 (file)
@@ -1,8 +1,8 @@
 /* Remote debugging interface to m32r and mon2000 ROM monitors for GDB, 
    the GNU debugger.
 
-   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2007, 2008
-   Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2007, 2008,
+   2009 Free Software Foundation, Inc.
 
    Adapted by Michael Snyder of Cygnus Support.
 
@@ -37,7 +37,7 @@
 #include <time.h>              /* for time_t */
 #include "gdb_string.h"
 #include "objfiles.h"          /* for ALL_OBJFILES etc. */
-#include "inferior.h"          /* for write_pc() */
+#include "inferior.h"
 #include <ctype.h>
 #include "regcache.h"
 
@@ -78,6 +78,7 @@ m32r_load_section (bfd *abfd, asection *s, void *obj)
   unsigned int *data_count = obj;
   if (s->flags & SEC_LOAD)
     {
+      int addr_size = gdbarch_addr_bit (target_gdbarch) / 8;
       bfd_size_type section_size = bfd_section_size (abfd, s);
       bfd_vma section_base = bfd_section_lma (abfd, s);
       unsigned int buffer, i;
@@ -87,10 +88,10 @@ m32r_load_section (bfd *abfd, asection *s, void *obj)
       printf_filtered ("Loading section %s, size 0x%lx lma ",
                       bfd_section_name (abfd, s),
                       (unsigned long) section_size);
-      deprecated_print_address_numeric (section_base, 1, gdb_stdout);
+      fputs_filtered (paddress (target_gdbarch, section_base), gdb_stdout);
       printf_filtered ("\n");
       gdb_flush (gdb_stdout);
-      monitor_printf ("%s mw\r", paddr_nz (section_base));
+      monitor_printf ("%s mw\r", phex_nz (section_base, addr_size));
       for (i = 0; i < section_size; i += 4)
        {
          QUIT;
@@ -146,7 +147,7 @@ m32r_load (char *filename, int from_tty)
 
        printf_filtered ("Loading section %s, size 0x%lx vma ",
                         bfd_section_name (abfd, s), section_size);
-       deprecated_print_address_numeric (section_base, 1, gdb_stdout);
+       fputs_filtered (paddress (target_gdbarch, section_base), gdb_stdout);
        printf_filtered ("\n");
        gdb_flush (gdb_stdout);
        monitor_printf ("%x mw\r", section_base);
@@ -175,7 +176,8 @@ m32r_load (char *filename, int from_tty)
 
   /* Finally, make the PC point at the start address */
   if (exec_bfd)
-    write_pc (bfd_get_start_address (exec_bfd));
+    regcache_write_pc (get_current_regcache (),
+                      bfd_get_start_address (exec_bfd));
 
   inferior_ptid = null_ptid;   /* No process now */
 
@@ -527,12 +529,14 @@ m32r_upload_command (char *args, int from_tty)
            printf_filtered ("Loading section %s, size 0x%lx lma ",
                             bfd_section_name (abfd, s),
                             (unsigned long) section_size);
-           deprecated_print_address_numeric (section_base, 1, gdb_stdout);
+           fputs_filtered (paddress (target_gdbarch, section_base),
+                           gdb_stdout);
            printf_filtered ("\n");
            gdb_flush (gdb_stdout);
          }
       /* Finally, make the PC point at the start address */
-      write_pc (bfd_get_start_address (abfd));
+      regcache_write_pc (get_current_regcache (),
+                        bfd_get_start_address (abfd));
       printf_filtered ("Start address 0x%lx\n", 
                       (unsigned long) bfd_get_start_address (abfd));
       print_transfer_performance (gdb_stdout, data_count, 0, &start_time,
@@ -550,6 +554,9 @@ m32r_upload_command (char *args, int from_tty)
   clear_symtab_users ();
 }
 
+/* Provide a prototype to silence -Wmissing-prototypes.  */
+extern initialize_file_ftype _initialize_m32r_rom;
+
 void
 _initialize_m32r_rom (void)
 {