diff options
author | Pedro Alves <palves@redhat.com> | 2011-03-18 18:45:30 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2011-03-18 18:45:30 +0000 |
commit | 008f8f2ee9bf610485993a17c1c460afb3cadc6c (patch) | |
tree | 6c6358cfe7ed6c0f1e24ce34825dbdb50a6483fe /gdb/frame.h | |
parent | e3eebbd742b7c1820bead11710b71bfee694d7fa (diff) | |
download | gdb-008f8f2ee9bf610485993a17c1c460afb3cadc6c.zip gdb-008f8f2ee9bf610485993a17c1c460afb3cadc6c.tar.gz gdb-008f8f2ee9bf610485993a17c1c460afb3cadc6c.tar.bz2 |
gdb/
* frame.h (frame_unwind_caller_pc_if_available): Declare.
* frame.c (frame_unwind_caller_pc_if_available): New.
* stack.c (frame_info): Handle unavailable PC.
Diffstat (limited to 'gdb/frame.h')
-rw-r--r-- | gdb/frame.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/frame.h b/gdb/frame.h index 25f20a9..7bc1148 100644 --- a/gdb/frame.h +++ b/gdb/frame.h @@ -562,6 +562,14 @@ extern void put_frame_register_bytes (struct frame_info *frame, int regnum, extern CORE_ADDR frame_unwind_caller_pc (struct frame_info *frame); +/* Same as frame_unwind_caller_pc, but returns a boolean indication of + whether the caller PC is determinable (when the PC is unavailable, + it will not be), instead of possibly throwing an error trying to + read unavailable memory or registers. */ + +extern int frame_unwind_caller_pc_if_available (struct frame_info *this_frame, + CORE_ADDR *pc); + /* Discard the specified frame. Restoring the registers to the state of the caller. */ extern void frame_pop (struct frame_info *frame); |