diff options
Diffstat (limited to 'gdb/frame.h')
-rw-r--r-- | gdb/frame.h | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/gdb/frame.h b/gdb/frame.h index 18c4df4..ee0fc7e 100644 --- a/gdb/frame.h +++ b/gdb/frame.h @@ -27,8 +27,9 @@ struct symtab_and_line; struct frame_unwind; struct block; -/* The traditional frame unwinder. */ -extern const struct frame_unwind *trad_frame_unwind; +/* A legacy unwinder to prop up architectures using the old style + saved regs array. */ +extern const struct frame_unwind *legacy_saved_regs_unwind; /* The frame object. */ @@ -397,9 +398,9 @@ struct frame_info related unwind data. */ struct context *context; - /* Unwind cache shared between the unwind functions - they had - better all agree as to the contents. */ - void *unwind_cache; + /* Prologue cache shared between the unwind functions. See + "frame-unwind.h" for more information. */ + void *prologue_cache; /* The frame's unwinder. */ const struct frame_unwind *unwind; @@ -538,7 +539,7 @@ extern int generic_pc_in_call_dummy (CORE_ADDR pc, /* NOTE: cagney/2002-06-26: Targets should no longer use this function. Instead, the contents of a dummy frames registers can be obtained by applying: frame_register_unwind to the dummy frame; or - get_saved_register to the next outer frame. */ + frame_register_unwind() to the next outer frame. */ extern char *deprecated_generic_find_dummy_frame (CORE_ADDR pc, CORE_ADDR fp); @@ -554,21 +555,17 @@ void generic_unwind_get_saved_register (char *raw_buffer, 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 - set GET_SAVED_REGISTER. Architectures that need to override the - register unwind mechanism should modify frame->unwind(). */ + DEPRECATED_GET_SAVED_REGISTER now defaults to the recursive + equivalent - generic_unwind_get_saved_register() - so there is no + need to even set DEPRECATED_GET_SAVED_REGISTER. Architectures that + need to override the register unwind mechanism should modify + frame->unwind(). */ extern void deprecated_generic_get_saved_register (char *, int *, CORE_ADDR *, struct frame_info *, int, enum lval_type *); extern void generic_save_call_dummy_addr (CORE_ADDR lo, CORE_ADDR hi); -extern void get_saved_register (char *raw_buffer, int *optimized, - CORE_ADDR * addrp, - struct frame_info *frame, - int regnum, enum lval_type *lval); - /* FIXME: cagney/2003-02-02: Should be deprecated or replaced with a function called frame_read_register_p(). This slightly weird (and older) variant of frame_read_register() returns zero (indicating @@ -701,4 +698,8 @@ extern struct context *deprecated_get_frame_context (struct frame_info *fi); extern void deprecated_set_frame_context (struct frame_info *fi, struct context *context); +/* Return non-zero if the architecture is relying on legacy frame + code. */ +extern int legacy_frame_p (struct gdbarch *gdbarch); + #endif /* !defined (FRAME_H) */ |