Introduce common/gdb_setjmp.h
[deliverable/binutils-gdb.git] / gdb / mn10300-linux-tdep.c
index 0b7229fa3ba7fdfdb9a7318d3fecab231627df2a..023c61d0b3a8e9f1bdaa67101f66fd26429a6524 100644 (file)
@@ -1,7 +1,6 @@
 /* Target-dependent code for the Matsushita MN10300 for GDB, the GNU debugger.
 
-   Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
-   Free Software Foundation, Inc.
+   Copyright (C) 2003-2014 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
 
 #include "defs.h"
 #include "gdbcore.h"
-#include "gdb_string.h"
 #include "regcache.h"
 #include "mn10300-tdep.h"
-#include "gdb_assert.h"
 #include "bfd.h"
 #include "elf-bfd.h"
 #include "osabi.h"
@@ -34,8 +31,6 @@
 #include "tramp-frame.h"
 #include "linux-tdep.h"
 
-#include <stdlib.h>
-
 /* Transliterated from <asm-mn10300/elf.h>...  */
 #define MN10300_ELF_NGREG 28
 #define MN10300_ELF_NFPREG 32
@@ -83,7 +78,7 @@ typedef struct
    Given a section name and size, create a struct reg object
    with a supply_register and a collect_register method.  */
 
-/* Copy register value of REGNUM from regset to regcache.  
+/* Copy register value of REGNUM from regset to regcache.
    If REGNUM is -1, do this for all gp registers in regset.  */
 
 static void
@@ -240,8 +235,8 @@ am33_supply_gregset_method (const struct regset *regset,
   return;
 }
 
-/* Copy fp register value of REGNUM from regset to regcache.  
-   If REGNUM is -1, do this for all fp registers in regset. */
+/* Copy fp register value of REGNUM from regset to regcache.
+   If REGNUM is -1, do this for all fp registers in regset.  */
 
 static void
 am33_supply_fpregset_method (const struct regset *regset, 
@@ -265,7 +260,8 @@ am33_supply_fpregset_method (const struct regset *regset,
   else if (regnum == E_FPCR_REGNUM)
     regcache_raw_supply (regcache, E_FPCR_REGNUM, 
                         &fpregset->fpcr);
-  else if (E_FS0_REGNUM <= regnum && regnum < E_FS0_REGNUM + MN10300_ELF_NFPREG)
+  else if (E_FS0_REGNUM <= regnum
+          && regnum < E_FS0_REGNUM + MN10300_ELF_NFPREG)
     regcache_raw_supply (regcache, regnum, 
                         &fpregset->fpregs[regnum - E_FS0_REGNUM]);
 
@@ -451,6 +447,16 @@ am33_collect_fpregset_method (const struct regset *regset,
   return;
 }
 
+static const struct regset am33_gregset =
+  {
+    NULL, am33_supply_gregset_method, am33_collect_gregset_method
+  };
+
+static const struct regset am33_fpregset =
+  {
+    NULL, am33_supply_fpregset_method, am33_collect_fpregset_method
+  };
+
 /* Create a struct regset from a corefile register section.  */
 
 static const struct regset *
@@ -458,17 +464,10 @@ am33_regset_from_core_section (struct gdbarch *gdbarch,
                               const char *sect_name, 
                               size_t sect_size)
 {
-  /* We will call regset_alloc, and pass the names of the supply and
-     collect methods.  */
-
   if (sect_size == sizeof (mn10300_elf_fpregset_t))
-    return regset_alloc (gdbarch, 
-                        am33_supply_fpregset_method,
-                        am33_collect_fpregset_method);
+    return &am33_fpregset;
   else
-    return regset_alloc (gdbarch, 
-                        am33_supply_gregset_method,
-                        am33_collect_gregset_method);
+    return &am33_gregset;
 }
 \f
 static void
@@ -692,7 +691,8 @@ am33_linux_sigframe_cache_init (const struct tramp_frame *self,
                            sc_base + AM33_SIGCONTEXT_PC);
 
   fpubase = get_frame_memory_unsigned (this_frame,
-                                       sc_base + AM33_SIGCONTEXT_FPUCONTEXT, 4);
+                                       sc_base + AM33_SIGCONTEXT_FPUCONTEXT,
+                                      4);
   if (fpubase)
     {
       for (i = 0; i < 32; i++)
This page took 0.024851 seconds and 4 git commands to generate.