summaryrefslogtreecommitdiff
path: root/gdb/hppa-tdep.h
diff options
context:
space:
mode:
authorRandolph Chung <tausq@debian.org>2004-12-08 01:48:03 +0000
committerRandolph Chung <tausq@debian.org>2004-12-08 01:48:03 +0000
commite2e153369755e622003659e548d6fd0ce47c9250 (patch)
tree1145903374024f052de8d76a08168f1bf3cde9d0 /gdb/hppa-tdep.h
parent1c76144205064fc9c4ac99ef90ed0d899fb8be9a (diff)
downloadgdb-e2e153369755e622003659e548d6fd0ce47c9250.tar.gz
2004-12-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.h (gdbarch_tdep): Add unwind_adjust_stub method. * hppa-hpux-tdep.c (hppa_hpux_unwind_adjust_stub): New function. (hppa_hpux_init_abi) Set unwind_adjust_stub method. * hppa-tdep.c (hppa_frame_cache): Call unwind_adjust_stub method if defined.
Diffstat (limited to 'gdb/hppa-tdep.h')
-rw-r--r--gdb/hppa-tdep.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/gdb/hppa-tdep.h b/gdb/hppa-tdep.h
index a0632de21f6..0b4185a47cc 100644
--- a/gdb/hppa-tdep.h
+++ b/gdb/hppa-tdep.h
@@ -88,6 +88,15 @@ struct gdbarch_tdep
IN_SOLIB_CALL_TRAMPOLINE evaluates to nonzero if we are currently
stopped in one of these. */
int (*in_solib_call_trampoline) (CORE_ADDR pc, char *name);
+
+ /* For targets that support multiple spaces, we may have additional stubs
+ in the return path. These stubs are internal to the ABI, and users are
+ not interested in them. If we detect that we are returning to a stub,
+ adjust the pc to the real caller. This improves the behavior of commands
+ that traverse frames such as "up" and "finish". */
+ void (*unwind_adjust_stub) (struct frame_info *next_frame, CORE_ADDR base,
+ struct trad_frame_saved_reg *saved_regs);
+
};
/*