diff options
Diffstat (limited to 'gdb/frame.h')
-rw-r--r-- | gdb/frame.h | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/gdb/frame.h b/gdb/frame.h index 81691732430..bd20ba7aec1 100644 --- a/gdb/frame.h +++ b/gdb/frame.h @@ -25,6 +25,7 @@ struct symtab_and_line; struct frame_unwind; +struct block; /* The traditional frame unwinder. */ extern const struct frame_unwind *trad_frame_unwind; @@ -242,7 +243,7 @@ extern enum frame_type get_frame_type (struct frame_info *); PC_IN_SIGTRAMP() indicates a SIGTRAMP_FRAME and DEPRECATED_PC_IN_CALL_DUMMY() indicates a DUMMY_FRAME. I suspect the real problem here is that get_prev_frame() only sets - initialized after INIT_EXTRA_FRAME_INFO as been called. + initialized after DEPRECATED_INIT_EXTRA_FRAME_INFO as been called. Consequently, some targets found that the frame's type was wrong and tried to fix it. The correct fix is to modify get_prev_frame() so that it initializes the frame's type before calling any other @@ -380,7 +381,7 @@ struct frame_info special, the address here is the sp for the previous frame, not the address where the sp was saved. */ /* Allocated by frame_saved_regs_zalloc () which is called / - initialized by FRAME_INIT_SAVED_REGS(). */ + initialized by DEPRECATED_FRAME_INIT_SAVED_REGS(). */ CORE_ADDR *saved_regs; /*NUM_REGS + NUM_PSEUDO_REGS*/ #ifdef EXTRA_FRAME_INFO @@ -393,7 +394,7 @@ struct frame_info /* Anything extra for this structure that may have been defined in the machine dependent files. */ /* Allocated by frame_extra_info_zalloc () which is called / - initialized by INIT_EXTRA_FRAME_INFO */ + initialized by DEPRECATED_INIT_EXTRA_FRAME_INFO */ struct frame_extra_info *extra_info; /* If dwarf2 unwind frame informations is used, this structure holds all @@ -464,7 +465,7 @@ extern void generic_save_dummy_frame_tos (CORE_ADDR sp); #ifdef FRAME_FIND_SAVED_REGS /* XXX - deprecated */ -#define FRAME_INIT_SAVED_REGS(FI) deprecated_get_frame_saved_regs (FI, NULL) +#define DEPRECATED_FRAME_INIT_SAVED_REGS(FI) deprecated_get_frame_saved_regs (FI, NULL) extern void deprecated_get_frame_saved_regs (struct frame_info *, struct frame_saved_regs *); #endif @@ -506,10 +507,6 @@ extern CORE_ADDR frame_address_in_block (struct frame_info *); extern CORE_ADDR get_pc_function_start (CORE_ADDR); -extern struct block *block_for_pc (CORE_ADDR); - -extern struct block *block_for_pc_sect (CORE_ADDR, asection *); - extern int frameless_look_for_prologue (struct frame_info *); extern void print_frame_args (struct symbol *, struct frame_info *, @@ -553,6 +550,13 @@ extern void generic_fix_call_dummy (char *dummy, CORE_ADDR pc, CORE_ADDR fun, int nargs, struct value **args, struct type *type, int gcc_p); +void generic_unwind_get_saved_register (char *raw_buffer, + int *optimizedp, + CORE_ADDR *addrp, + struct frame_info *frame, + int regnum, + enum lval_type *lvalp); + /* The function generic_get_saved_register() has been made obsolete. GET_SAVED_REGISTER now defaults to the recursive equivalent - generic_unwind_get_saved_register() - so there is no need to even |