This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[COMMIT] OpenBSD/sparc64 sigtramp StackGhost support


Committed,

Mark


Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>

	* sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Handle
	StackGhost.

Index: sparc64nbsd-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sparc64nbsd-tdep.c,v
retrieving revision 1.14
diff -u -p -r1.14 sparc64nbsd-tdep.c
--- sparc64nbsd-tdep.c 9 Mar 2005 22:08:13 -0000 1.14
+++ sparc64nbsd-tdep.c 28 Mar 2005 15:28:14 -0000
@@ -133,6 +133,20 @@ sparc64nbsd_sigcontext_saved_regs (CORE_
        regnum <= SPARC_I7_REGNUM; regnum++, addr += 8)
     saved_regs[regnum].addr = addr;
 
+  /* Handle StackGhost.  */
+  {
+    ULONGEST wcookie = sparc_fetch_wcookie ();
+
+    if (wcookie != 0)
+      {
+	ULONGEST i7;
+
+	addr = saved_regs[SPARC_I7_REGNUM].addr;
+	i7 = get_frame_memory_unsigned (next_frame, addr, 8);
+	trad_frame_set_value (saved_regs, SPARC_I7_REGNUM, i7 ^ wcookie);
+      }
+  }
+
   /* TODO: Handle the floating-point registers.  */
 
   return saved_regs;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]