aboutsummaryrefslogtreecommitdiff
path: root/gdb/hppa-tdep.c
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@gnu.org>2004-10-14 21:08:06 +0000
committerMark Kettenis <kettenis@gnu.org>2004-10-14 21:08:06 +0000
commitdfaf8edb15328188dd17e23ace958e6d043da41b (patch)
treeb1703a278c050bafade9c47d24a053299dc106d5 /gdb/hppa-tdep.c
parentd40539a4fade075e39b0e15ece390ce401ff603f (diff)
downloadgdb-dfaf8edb15328188dd17e23ace958e6d043da41b.zip
gdb-dfaf8edb15328188dd17e23ace958e6d043da41b.tar.gz
gdb-dfaf8edb15328188dd17e23ace958e6d043da41b.tar.bz2
* 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.
Diffstat (limited to 'gdb/hppa-tdep.c')
-rw-r--r--gdb/hppa-tdep.c5
1 files changed, 5 insertions, 0 deletions
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;