diff options
author | Jason Thorpe <thorpej@netbsd.org> | 2002-01-19 06:44:56 +0000 |
---|---|---|
committer | Jason Thorpe <thorpej@netbsd.org> | 2002-01-19 06:44:56 +0000 |
commit | 140f998426704f8ef286f58033ab983850d39552 (patch) | |
tree | 198523679619cf526d12e5e06f67b376367f2234 /gdb/config/alpha | |
parent | d734c450e15fb96ea85368f722b560b395183343 (diff) | |
download | binutils-gdb-140f998426704f8ef286f58033ab983850d39552.tar.gz |
* alpha-tdep.c (frame_extra_info): New.
(alpha_find_saved_regs): Make static. Use
frame->extra_info.
(alpha_frame_init_saved_regs): New function.
(alpha_frame_saved_pc): Use frame->extra_info.
(temp_saved_regs): Don't declare as struct frame_saved_regs.
(heuristic_proc_desc): Adjust for temp_saved_regs changes.
(init_extra_frame_info): Rename to...
(alpha_init_extra_frame_info): ...this. Use frame->extra_info.
(alpha_print_extra_frame_info): New function.
(alpha_frame_locals_address): Ditto.
(alpha_frame_args_address): Ditto.
(alpha_pop_frame): Use frame->extra_info.
* config/alpha/tm-alpha.h (FRAME_ARGS_ADDRESS): Use
alpha_frame_args_address.
(FRAME_LOCALS_ADDRESS): Use alpha_frame_locals_address.
(alpha_find_saved_regs): Remove prototype.
(FRAME_INIT_SAVED_REGS): Use alpha_frame_init_saved_regs.
(EXTRA_FRAME_INFO): Remove.
(INIT_EXTRA_FRAME_INFO): Use alpha_init_extra_frame_info.
(PRINT_EXTRA_FRAME_INFO): Use alpha_print_extra_frame_info.
Diffstat (limited to 'gdb/config/alpha')
-rw-r--r-- | gdb/config/alpha/tm-alpha.h | 34 |
1 files changed, 12 insertions, 22 deletions
diff --git a/gdb/config/alpha/tm-alpha.h b/gdb/config/alpha/tm-alpha.h index 7630e0887b2..5c536222cc3 100644 --- a/gdb/config/alpha/tm-alpha.h +++ b/gdb/config/alpha/tm-alpha.h @@ -276,9 +276,11 @@ extern CORE_ADDR alpha_frame_saved_pc (struct frame_info *); #define ALPHA_NUM_ARG_REGS 6 -#define FRAME_ARGS_ADDRESS(fi) ((fi)->frame - (ALPHA_NUM_ARG_REGS * 8)) +#define FRAME_ARGS_ADDRESS(fi) alpha_frame_args_address ((fi)) +extern CORE_ADDR alpha_frame_args_address (struct frame_info *); -#define FRAME_LOCALS_ADDRESS(fi) ((fi)->frame - (fi)->localoff) +#define FRAME_LOCALS_ADDRESS(fi) alpha_frame_locals_address ((fi)) +extern CORE_ADDR alpha_frame_locals_address (struct frame_info *); /* Return number of args passed to a frame. Can return -1, meaning no way to tell. */ @@ -295,14 +297,9 @@ extern CORE_ADDR alpha_frame_saved_pc (struct frame_info *); ways in the stack frame. sp is even more special: the address we return for it IS the sp for the next frame. */ -extern void alpha_find_saved_regs (struct frame_info *); - #define FRAME_INIT_SAVED_REGS(frame_info) \ - do { \ - if ((frame_info)->saved_regs == NULL) \ - alpha_find_saved_regs (frame_info); \ - (frame_info)->saved_regs[SP_REGNUM] = (frame_info)->frame; \ - } while (0) + alpha_frame_init_saved_regs (frame_info) +extern void alpha_frame_init_saved_regs (struct frame_info *); /* Things needed for making the inferior call functions. */ @@ -391,21 +388,14 @@ typedef struct alpha_extra_func_info #define mips_extra_func_info alpha_extra_func_info #define mips_extra_func_info_t alpha_extra_func_info_t -#define EXTRA_FRAME_INFO \ - int localoff; \ - int pc_reg; \ - alpha_extra_func_info_t proc_desc; -#define INIT_EXTRA_FRAME_INFO(fromleaf, fci) init_extra_frame_info(fci) -extern void init_extra_frame_info (struct frame_info *); +#define INIT_EXTRA_FRAME_INFO(fromleaf, fci) \ + alpha_init_extra_frame_info(fromleaf, fci) +extern void alpha_init_extra_frame_info (int, struct frame_info *); + +#define PRINT_EXTRA_FRAME_INFO(fi) alpha_print_extra_frame_info ((fi)) +extern void alpha_print_extra_frame_info (struct frame_info *); -#define PRINT_EXTRA_FRAME_INFO(fi) \ - { \ - if (fi && fi->proc_desc && fi->proc_desc->pdr.framereg < NUM_REGS) \ - printf_filtered (" frame pointer is at %s+%ld\n", \ - REGISTER_NAME (fi->proc_desc->pdr.framereg), \ - fi->proc_desc->pdr.frameoffset); \ - } /* It takes two values to specify a frame on the ALPHA. Sigh. |