aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/hppa-tdep.c5
2 files changed, 9 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 17570bd..ada958e 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,9 @@
2004-10-14 Mark Kettenis <kettenis@gnu.org>
+ * hppa-tdep.c (hppa_frame_cache): Add support for OpenBSD and
+ NetBSD system call stubs that store %rp in the ERP slot of the
+ stack frame.
+
* source.c: Always define O_BINARY to 0 if not defined already.
(openp): Unconditionally use O_BINARY.
diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
index 1209584..db15a1b 100644
--- a/gdb/hppa-tdep.c
+++ b/gdb/hppa-tdep.c
@@ -1660,6 +1660,11 @@ hppa_frame_cache (struct frame_info *next_frame, void **this_cache)
looking_for_rp = 0;
cache->saved_regs[HPPA_RP_REGNUM].addr = -20;
}
+ else if (inst == 0x6bc23fd1) /* stw rp,-0x18(sr0,sp) */
+ {
+ looking_for_rp = 0;
+ cache->saved_regs[HPPA_RP_REGNUM].addr = -24;
+ }
else if (inst == 0x0fc212c1) /* std rp,-0x10(sr0,sp) */
{
looking_for_rp = 0;