diff options
author | Mark Kettenis <kettenis@gnu.org> | 2002-06-15 19:59:08 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@gnu.org> | 2002-06-15 19:59:08 +0000 |
commit | f7f5f7a3ee8fe8a7794fd18b8bca1459619006d3 (patch) | |
tree | 6e1a1014a58e84122c1903d7735ed90a5ea93699 /gdb/i386-tdep.c | |
parent | e46a38ced4e6eebf90b050481e551509ee8461e2 (diff) | |
download | gdb-f7f5f7a3ee8fe8a7794fd18b8bca1459619006d3.tar.gz |
* config/i386/tm-i386.h (FRAMELESS_FUNCTION_INVOCATION,
FRAME_ARGS_ADDRESS, FRAME_LOCALS_ADDRESS, FRAME_NUM_ARGS,
FRAME_ARGS_SKIP, FRAME_INIT_SAVED_REGS): Remove defines.
(i386_frameless_function_invocation, i386_frame_num_args,
i386_frame_init_saved_regs): Remove prototypes.
* i386-tdep.c (i386_gdbarch_init): Adjust for removal of the
macros mentioned above.
Diffstat (limited to 'gdb/i386-tdep.c')
-rw-r--r-- | gdb/i386-tdep.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index c44862eb555..250d1c26444 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -1401,15 +1401,23 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) set_gdbarch_use_struct_convention (gdbarch, i386_use_struct_convention); + set_gdbarch_frame_init_saved_regs (gdbarch, i386_frame_init_saved_regs); + /* The following redefines make backtracing through sigtramp work. They manufacture a fake sigtramp frame and obtain the saved pc in sigtramp from the sigcontext structure which is pushed by the kernel on the user stack, along with a pointer to it. */ + set_gdbarch_frame_args_skip (gdbarch, 8); + set_gdbarch_frameless_function_invocation (gdbarch, + i386_frameless_function_invocation); set_gdbarch_frame_chain (gdbarch, i386_frame_chain); set_gdbarch_frame_chain_valid (gdbarch, file_frame_chain_valid); set_gdbarch_frame_saved_pc (gdbarch, i386_frame_saved_pc); + set_gdbarch_frame_args_address (gdbarch, default_frame_address); + set_gdbarch_frame_locals_address (gdbarch, default_frame_address); set_gdbarch_saved_pc_after_call (gdbarch, i386_saved_pc_after_call); + set_gdbarch_frame_num_args (gdbarch, i386_frame_num_args); set_gdbarch_pc_in_sigtramp (gdbarch, i386_pc_in_sigtramp); /* Hook in ABI-specific overrides, if they have been registered. */ |