2004-11-08 Andrew Cagney <cagney@gnu.org>
[deliverable/binutils-gdb.git] / gdb / frame-unwind.h
index 12d6dd240ed85d3fdfed3ea5c550306069e89987..74c0a4aa9b4e05f79df179e8e27e3553fa1ed0f4 100644 (file)
@@ -118,6 +118,14 @@ typedef void (frame_prev_register_ftype) (struct frame_info *next_frame,
                                          CORE_ADDR *addrp,
                                          int *realnump, void *valuep);
 
+/* Assuming the frame chain: (outer) prev <-> this <-> next (inner);
+   use the NEXT frame, and its register unwind method, to return the PREV
+   frame's program-counter.  */
+
+typedef CORE_ADDR (frame_prev_pc_ftype) (struct frame_info *next_frame,
+                                        void **this_prologue_cache);
+
+
 struct frame_unwind
 {
   /* The frame's type.  Should this instead be a collection of
@@ -129,6 +137,7 @@ struct frame_unwind
   frame_prev_register_ftype *prev_register;
   const struct frame_data *unwind_data;
   frame_sniffer_ftype *sniffer;
+  frame_prev_pc_ftype *prev_pc;
 };
 
 /* Register a frame unwinder, _prepending_ it to the front of the
This page took 0.023822 seconds and 4 git commands to generate.