OSDN Git Service

* MAINTAINERS: Remove hint that sh64 doesn't build.
authorCorinna Vinschen <corinna@vinschen.de>
Mon, 2 May 2005 15:23:37 +0000 (15:23 +0000)
committerCorinna Vinschen <corinna@vinschen.de>
Mon, 2 May 2005 15:23:37 +0000 (15:23 +0000)
* sh64-tdep.c (sh64_push_dummy_call): Cast buf in call to write_memory.
(sh64_do_fp_register): make raw_buffer unsigned.
(sh64_do_register): Ditto.

gdb/ChangeLog
gdb/MAINTAINERS
gdb/sh64-tdep.c

index 9db7009..dd9f6e4 100644 (file)
@@ -1,3 +1,10 @@
+2005-05-02  Corinna Vinschen  <vinschen@redhat.com>
+
+       * MAINTAINERS: Remove hint that sh64 doesn't build.
+       * sh64-tdep.c (sh64_push_dummy_call): Cast buf in call to write_memory.
+       (sh64_do_fp_register): make raw_buffer unsigned.
+       (sh64_do_register): Ditto.
+
 2005-05-02  Mark Kettenis  <kettenis@gnu.org>
 
        * bsd-uthread.c: Include "solib.h".
index cbb3bb9..be9f11a 100644 (file)
@@ -111,8 +111,7 @@ the native maintainer when resolving ABI issues.
        s390            --target=s390-linux-gnu ,-Werror
 
        sh              --target=sh-elf ,-Werror
-                       --target=sh64-elf broken
-                       (sim/ dies)
+                       --target=sh64-elf ,-Werror
 
        sparc           --target=sparc-elf broken
                        (bfd/elfxx-sparc:512 bfd_elf64_swap_reloca_out undef)
index 394b1df..7f5aa90 100644 (file)
@@ -1120,7 +1120,8 @@ sh64_push_dummy_call (struct gdbarch *gdbarch,
              if (int_argreg > ARGLAST_REGNUM)
                {                       
                  /* must go on the stack */
-                 write_memory (sp + stack_offset, val, argreg_size);
+                 write_memory (sp + stack_offset, (const bfd_byte *) val,
+                               argreg_size);
                  stack_offset += 8;/*argreg_size;*/
                }
              /* NOTE WELL!!!!!  This is not an "else if" clause!!!
@@ -1962,13 +1963,13 @@ static void
 sh64_do_fp_register (struct gdbarch *gdbarch, struct ui_file *file,
                     struct frame_info *frame, int regnum)
 {                              /* do values for FP (float) regs */
-  char *raw_buffer;
+  unsigned char *raw_buffer;
   double flt;  /* double extracted from raw hex data */
   int inv;
   int j;
 
   /* Allocate space for the float.  */
-  raw_buffer = (char *) alloca (register_size (gdbarch, FP0_REGNUM));
+  raw_buffer = (unsigned char *) alloca (register_size (gdbarch, FP0_REGNUM));
 
   /* Get the data in raw format.  */
   if (!frame_register_read (frame, regnum, raw_buffer))
@@ -1993,7 +1994,7 @@ sh64_do_fp_register (struct gdbarch *gdbarch, struct ui_file *file,
     {
       int idx = TARGET_BYTE_ORDER == BFD_ENDIAN_BIG ? j
        : register_size (gdbarch, regnum) - 1 - j;
-      fprintf_filtered (file, "%02x", (unsigned char) raw_buffer[idx]);
+      fprintf_filtered (file, "%02x", raw_buffer[idx]);
     }
   fprintf_filtered (file, ")");
   fprintf_filtered (file, "\n");
@@ -2074,7 +2075,7 @@ static void
 sh64_do_register (struct gdbarch *gdbarch, struct ui_file *file,
                  struct frame_info *frame, int regnum)
 {
-  char raw_buffer[MAX_REGISTER_SIZE];
+  unsigned char raw_buffer[MAX_REGISTER_SIZE];
 
   fputs_filtered (REGISTER_NAME (regnum), file);
   print_spaces_filtered (15 - strlen (REGISTER_NAME (regnum)), file);