From dfaf8edb15328188dd17e23ace958e6d043da41b Mon Sep 17 00:00:00 2001 From: Mark Kettenis Date: Thu, 14 Oct 2004 21:08:06 +0000 Subject: * 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. --- gdb/ChangeLog | 4 ++++ gdb/hppa-tdep.c | 5 +++++ 2 files changed, 9 insertions(+) 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 + * 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; -- cgit v1.1