gdb/gdbserver:
[deliverable/binutils-gdb.git] / gdb / sparcnbsd-tdep.c
index 0ea6358c3b03517de22f707facf034433f0b6277..9afbbcf14e292ee865ede1c19ea28acb7e8adce5 100644 (file)
@@ -1,7 +1,6 @@
 /* Target-dependent code for NetBSD/sparc.
 
-   Copyright (C) 2002, 2003, 2004, 2006, 2007, 2008
-   Free Software Foundation, Inc.
+   Copyright (C) 2002-2004, 2006-2012 Free Software Foundation, Inc.
    Contributed by Wasabi Systems, Inc.
 
    This file is part of GDB.
@@ -88,7 +87,7 @@ static const CORE_ADDR sparc32nbsd_sigtramp_start = 0xeffffef0;
 static const CORE_ADDR sparc32nbsd_sigtramp_end = 0xeffffff0;
 
 static int
-sparc32nbsd_pc_in_sigtramp (CORE_ADDR pc, char *name)
+sparc32nbsd_pc_in_sigtramp (CORE_ADDR pc, const char *name)
 {
   if (pc >= sparc32nbsd_sigtramp_start && pc < sparc32nbsd_sigtramp_end)
     return 1;
@@ -99,6 +98,7 @@ sparc32nbsd_pc_in_sigtramp (CORE_ADDR pc, char *name)
 struct trad_frame_saved_reg *
 sparc32nbsd_sigcontext_saved_regs (struct frame_info *this_frame)
 {
+  struct gdbarch *gdbarch = get_frame_arch (this_frame);
   struct trad_frame_saved_reg *saved_regs;
   CORE_ADDR addr, sigcontext_addr;
   int regnum, delta;
@@ -147,7 +147,7 @@ sparc32nbsd_sigcontext_saved_regs (struct frame_info *this_frame)
 
   /* Handle StackGhost.  */
   {
-    ULONGEST wcookie = sparc_fetch_wcookie ();
+    ULONGEST wcookie = sparc_fetch_wcookie (gdbarch);
 
     if (wcookie != 0)
       {
@@ -201,7 +201,7 @@ sparc32nbsd_sigcontext_frame_cache (struct frame_info *this_frame,
 
       /* Since we couldn't find the frame's function, the cache was
          initialized under the assumption that we're frameless.  */
-      cache->frameless_p = 0;
+      sparc_record_save_insn (cache);
       addr = get_frame_register_unsigned (this_frame, SPARC_FP_REGNUM);
       cache->base = addr;
     }
@@ -238,7 +238,7 @@ sparc32nbsd_sigcontext_frame_sniffer (const struct frame_unwind *self,
                                      void **this_cache)
 {
   CORE_ADDR pc = get_frame_pc (this_frame);
-  char *name;
+  const char *name;
 
   find_pc_partial_function (pc, &name, NULL, NULL);
   if (sparc32nbsd_pc_in_sigtramp (pc, name))
@@ -253,6 +253,7 @@ sparc32nbsd_sigcontext_frame_sniffer (const struct frame_unwind *self,
 static const struct frame_unwind sparc32nbsd_sigcontext_frame_unwind =
 {
   SIGTRAMP_FRAME,
+  default_frame_unwind_stop_reason,
   sparc32nbsd_sigcontext_frame_this_id,
   sparc32nbsd_sigcontext_frame_prev_register,
   NULL,
@@ -353,7 +354,7 @@ sparcnbsd_core_osabi_sniffer (bfd *abfd)
 void _initialize_sparcnbsd_tdep (void);
 
 void
-_initialize_sparnbsd_tdep (void)
+_initialize_sparcnbsd_tdep (void)
 {
   gdbarch_register_osabi_sniffer (bfd_arch_sparc, bfd_target_aout_flavour,
                                  sparcnbsd_aout_osabi_sniffer);
This page took 0.024487 seconds and 4 git commands to generate.