Andrew Cagney
7f5f525dc2
2003-09-28 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_read_unsigned_register): Delete function.
* frame.h (frame_read_unsigned_register): Delete declaration.
* sparc-tdep.c (sparc_init_extra_frame_info): Use
get_frame_register_unsigned.
(sparc_frame_saved_pc, sparc_pop_frame): Ditto.
* m68hc11-tdep.c (m68hc11_print_register): Ditto.
* d10v-tdep.c (d10v_print_registers_info): Ditto.
* frame.h (frame_read_register): Delete declaration.
* frame.c (frame_read_register): Delete function.
* arch-utils.c (legacy_register_to_value): Use get_frame_register.
* sparc-tdep.c (sparc_fetch_pointer_argument): Ditto.
* rs6000-tdep.c (rs6000_fetch_pointer_argument): Ditto.
* mips-tdep.c (mips_register_to_value): Ditto.
* hppa-tdep.c (hppa_fetch_pointer_argument): Ditto.
* d10v-tdep.c (d10v_print_registers_info): Ditto.
* frame.c (frame_read_signed_register): Delete function.
(frame_read_unsigned_register): Update comments.
* frame.h (frame_read_signed_register): Delete declaration.
* h8300-tdep.c (h8300_print_register): Use
get_frame_register_signed.
* m68hc11-tdep.c (m68hc11_print_register): Ditto.
2003-09-28 22:32:20 +00:00
Andrew Cagney
1b1d37945b
2003-09-25 Andrew Cagney <cagney@redhat.com>
...
* frame.h (deprecated_frame_saved_regs): Rename
get_frame_saved_regs.
* cris-tdep.c, frame.c, h8300-tdep.c, hppa-tdep.c: Update.
* mcore-tdep.c, mips-tdep.c, mn10300-tdep.c: Update.
* ns32k-tdep.c, ppc-linux-tdep.c, rs6000-tdep.c: Update.
* s390-tdep.c, sh64-tdep.c, stack.c: Update.
* v850-tdep.c, vax-tdep.c, xstormy16-tdep.c: Update.
2003-09-25 20:44:02 +00:00
Andrew Cagney
627003499d
2003-09-17 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_REGISTER_BYTE): Rename REGISTER_BYTE.
* gdbarch.h, gdbarch.c: Regenerate.
* arm-linux-tdep.c, core-sol2.c, cris-tdep.c: Update.
* d10v-tdep.c, frame.c: Update.
* hppa-tdep.c, hppab-nat.c, hppah-nat.c, hppam3-nat.c: Update.
* hpux-thread.c, i386gnu-nat.c, ia64-aix-nat.c: Update.
* ia64-linux-nat.c, irix5-nat.c, lynx-nat.c, m68knbsd-nat.c: Update.
* mcore-tdep.c, mips-linux-tdep.c, mips-tdep.c: Update.
* mipsv4-nat.c, mn10300-tdep.c, ns32k-tdep.c: Update.
* ns32knbsd-nat.c, ppc-bdm.c, regcache.c, remote-sds.c: Update.
* remote-vx68.c, remote-vxmips.c, remote-vxsparc.c: Update.
* remote.c, rs6000-tdep.c, s390-tdep.c, sh64-tdep.c: Update.
* sparc-nat.c, sparc-tdep.c, sun3-nat.c, v850-tdep.c: Update.
* v850ice.c, vax-tdep.c, xstormy16-tdep.c: Update.
* config/m68k/tm-cisco.h, config/m68k/tm-delta68.h: Update.
* config/pa/nm-hppah.h: Update.
2003-09-17 Andrew Cagney <cagney@redhat.com>
* mi/mi-main.c: Rename REGISTER_BYTE to DEPRECATED_REGISTER_BYTE.
2003-09-17 14:24:31 +00:00
Andrew Cagney
52f0bd74b2
2003-09-14 Andrew Cagney <cagney@redhat.com>
...
* alpha-nat.c: Remove some occurances of "register".
* alpha-tdep.c, arm-tdep.c, blockframe.c, breakpoint.c: Ditto.
* buildsym.c, c-typeprint.c, c-valprint.c, coffread.c: Ditto.
* corefile.c, cp-support.c, cp-valprint.c, cris-tdep.c: Ditto.
* dbxread.c, dcache.c, dwarf2read.c, elfread.c: Ditto.
* environ.c, eval.c, event-top.c, f-typeprint.c: Ditto.
* f-valprint.c, findvar.c, frame.c, gdbtypes.c: Ditto.
* h8300-tdep.c, hppa-tdep.c, hppab-nat.c, hppah-nat.c: Ditto.
* hppam3-nat.c, hpread.c, ia64-aix-nat.c, ia64-linux-nat.c: Ditto.
* infcall.c, infcmd.c, inflow.c, infptrace.c, infrun.c: Ditto.
* infttrace.c, irix5-nat.c, jv-typeprint.c: Ditto.
* jv-valprint.c, m68k-tdep.c, m68klinux-nat.c, main.c: Ditto.
* mdebugread.c, minsyms.c, mips-linux-tdep.c: Ditto.
* mips-nat.c, mips-tdep.c, mipsread.c, mipsv4-nat.c: Ditto.
* ns32k-tdep.c, objfiles.c, p-typeprint.c: Ditto.
* p-valprint.c, ppc-linux-nat.c, printcmd.c: Ditto.
* remote-mips.c, remote-vx.c, rs6000-nat.c: Ditto.
* rs6000-tdep.c, scm-exp.c, sh-tdep.c, sh64-tdep.c: Ditto.
* solib.c, somread.c, source.c, sparc-tdep.c: Ditto.
* stabsread.c, stack.c, standalone.c, symfile.c: Ditto.
* symmisc.c, symtab.c, top.c, tracepoint.c: Ditto.
* typeprint.c, utils.c, valarith.c, valops.c: Ditto.
* values.c, vax-tdep.c, xcoffread.c: Ditto.
2003-09-14 16:32:14 +00:00
Andrew Cagney
627b3ba2d3
2003-09-12 Andrew Cagney <cagney@redhat.com>
...
* objfiles.h (struct entry_info): Deprecate "entry_file_lowpc" and
"entry_file_highpc". Update comments.
* defs.h (deprecated_inside_entry_file): Rename
"inside_entry_file".
* blockframe.c (deprecated_inside_entry_file): Rename
"inside_entry_file".
* frame.c (get_prev_frame): Update. Use if 0 instead of #if 0.
* vax-tdep.c (vax_frame_chain): Update.
* sh64-tdep.c (sh64_frame_chain): Update.
* sh-tdep.c (sh_frame_chain): Update.
* rs6000-tdep.c (rs6000_frame_chain): Update.
* ns32k-tdep.c (ns32k_frame_chain): Update.
* mips-tdep.c (mips_frame_chain): Update.
* m68hc11-tdep.c (m68hc11_frame_this_id): Update.
* m32r-tdep.c (m32r_frame_this_id): Update.
* i386-interix-tdep.c (i386_interix_frame_chain_valid): Update.
* frv-tdep.c (frv_frame_this_id): Update.
* d10v-tdep.c (d10v_frame_this_id): Update.
* cris-tdep.c (cris_frame_chain): Update.
* blockframe.c (legacy_frame_chain_valid): Update.
* avr-tdep.c (avr_frame_this_id): Update.
* arm-tdep.c (arm_prologue_this_id): Update.
* alpha-tdep.c (alpha_heuristic_frame_this_id): Update.
* objfiles.c (objfile_relocate): Update.
* mipsread.c (mipscoff_symfile_read): Update.
(mipscoff_symfile_read): Update.
* mdebugread.c (parse_partial_symbols): Update.
* dwarfread.c (read_file_scope): Update.
* dwarf2read.c (read_file_scope): Update.
* dbxread.c (read_dbx_symtab): Update.
(read_dbx_symtab): Update.
* coffread.c (complete_symtab): Update.
2003-09-12 18:40:18 +00:00
Daniel Jacobowitz
7dd8898670
* frame.c (deprecated_safe_get_selected_frame): New function.
...
* frame.h (deprecated_safe_get_selected_frame): Add prototype.
* findvar.c (read_var_value): Call it.
2003-09-08 18:56:03 +00:00
Andrew Cagney
bcf7d3caa2
2003-08-12 Andrew Cagney <cagney@redhat.com>
...
* frame.c (deprecated_frame_xmalloc): Use XMALLOC, instead of
FRAME_OBSTACK_ZALLOC.
2003-08-12 17:45:13 +00:00
Mark Kettenis
fec74868a2
* frame.c (_initialize_frame): Add missing backslash.
2003-08-10 14:56:23 +00:00
Andrew Cagney
25d29d7093
2003-08-09 Andrew Cagney <cagney@redhat.com>
...
Fix GDB PR cli/926.
* cli/cli-decode.c (add_setshow_uinteger_cmd): New function.
* command.h (add_setshow_uinteger_cmd): Declare.
* frame.c (set_backtrace_cmd): New function.
(show_backtrace_cmd): New function.
* frame.c (_initialize_frame): Replace "set/show
backtrace-below-main" with "set/show backtrace past-main". Add
command "set/show backtrace limit".
(backtrace_past_main): Rename "backtrace_below_main".
(backtrace_limit): New variable.
(get_prev_frame): Update. Check the backtrace_limit.
2003-08-09 Andrew Cagney <cagney@redhat.com>
* gdb.texinfo (Backtrace): Replace "set/show backtrace-below-main"
with "set/show backtrace past-main" and "set/show backtrace
limit".
Index: doc/gdb.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v
retrieving revision 1.174
diff -u -r1.174 gdb.texinfo
--- doc/gdb.texinfo 8 Aug 2003 01:58:00 -0000 1.174
+++ doc/gdb.texinfo 9 Aug 2003 14:57:10 -0000
@@ -3922,27 +3922,40 @@
value, indicating that your program has stopped at the beginning of the
code for line @code{993} of @code{builtin.c}.
-@kindex set backtrace-below-main
-@kindex show backtrace-below-main
+@kindex set backtrace past-main
+@kindex show backtrace past-main
+@kindex set backtrace limit
+@kindex show backtrace limit
-Most programs have a standard entry point---a place where system libraries
-and startup code transition into user code. For C this is @code{main}.
-When @value{GDBN} finds the entry function in a backtrace it will terminate
-the backtrace, to avoid tracing into highly system-specific (and generally
-uninteresting) code. If you need to examine the startup code, then you can
-change this behavior.
+Most programs have a standard user entry point---a place where system
+libraries and startup code transition into user code. For C this is
+@code{main}. When @value{GDBN} finds the entry function in a backtrace
+it will terminate the backtrace, to avoid tracing into highly
+system-specific (and generally uninteresting) code.
+
+If you need to examine the startup code, or limit the number of levels
+in a backtrace, you can change this behavior:
@table @code
-@item set backtrace-below-main off
+@item set backtrace past-main
+@itemx set backtrace past-main on
+Backtraces will continue past the user entry point.
+
+@item set backtrace past-main off
Backtraces will stop when they encounter the user entry point. This is the
default.
-@item set backtrace-below-main
-@itemx set backtrace-below-main on
-Backtraces will continue past the user entry point to the top of the stack.
+@item show backtrace past-main
+Display the current user entry point backtrace policy.
+
+@item set backtrace limit @var{n}
+@itemx set backtrace limit 0
+@cindex backtrace limit
+Limit the backtrace to @var{n} levels. A value of zero means
+unlimited.
-@item show backtrace-below-main
-Display the current backtrace policy.
+@item show backtrace limit
+Display the current limit on backtrace levels.
@end table
@node Selection
2003-08-09 15:10:09 +00:00
Andrew Cagney
57bfe1774e
2003-08-04 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_func_unwind): Use frame_unwind_address_in_block.
2003-08-04 15:42:43 +00:00
Andrew Cagney
e8a89fe278
2003-07-15 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_frame_id): Use frame_unwind_find_by_frame.
(frame_register_unwind, create_new_frame): Ditto.
(legacy_get_prev_frame, get_frame_type): Ditto.
(get_frame_base_address): Use frame_base_find_by_frame.
(get_frame_locals_address): Use frame_base_find_by_frame.
(get_frame_args_address): Use frame_base_find_by_frame.
* frame-base.h (frame_base_sniffer_ftype): Declare.
(frame_base_append_sniffer): Declare.
(frame_base_find_by_frame): Replace frame_base_find_by_pc.
* frame-base.c (append_predicate): Add a "sniffer" parameter.
(frame_base_append_sniffer): New function.
(frame_base_append_predicate): Add a NULL sniffer.
(frame_base_find_by_frame): Replace "frame_base_find_by_pc".
(struct frame_base_table): Add "sniffer".
(frame_base_free): Free the "sniffer" table.
* frame-unwind.h (frame_unwind_sniffer_ftype): Define.
(frame_unwind_append_sniffer): Declare.
(frame_unwind_find_by_frame): Replace frame_unwind_find_by_pc.
* frame-unwind.c (frame_unwind_free): Free the "sniffer" table.
(struct frame_unwind_table): Add "sniffer", delete "middle".
(append_predicate): Add "sniffer" parameter, append the sniffer.
(frame_unwind_init): Update append_predicate call.
(frame_unwind_append_sniffer): New function.
(frame_unwind_append_predicate): Update append_predicate call.
(frame_unwind_find_by_frame): Replace frame_unwind_find_by_pc.
2003-07-15 17:35:00 +00:00
Andrew Cagney
0714963c79
2003-07-15 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Move disabled inside_entry_func to
before code inhibiting repeated unwind attempts. Add to
commentary on that test's problems.
* blockframe.c (inside_main_func): Look for "main" in the minimal
symbol table.
* d10v-tdep.c (d10v_frame_this_id): Delete check that frames are
identical.
Index: testsuite/ChangeLog
2003-07-15 Andrew Cagney <cagney@redhat.com>
* gdb.asm/asm-source.exp: Do not allow "start" in the backtrace.
2003-07-15 17:23:32 +00:00
Andrew Cagney
8edd5d0153
2003-07-11 Andrew Cagney <cagney@redhat.com>
...
* frame.h (get_frame_address_in_block): Declare.
(frame_unwind_address_in_block): Declare.
* frame.c (frame_unwind_address_in_block): New function.
(get_frame_address_in_block): New function.
2003-07-11 14:52:17 +00:00
Andrew Cagney
612dde91c1
2003-07-07 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Enable check for identical frames.
Update comments. Update error messages.
2003-07-07 20:07:12 +00:00
Andrew Cagney
eb8bc28217
2003-07-07 Andrew Cagney <cagney@redhat.com>
...
* expprint.c: Include "user-regs.h" instead of "frame.h".
(print_subexp): Use user_reg_map_regnum_to_name, instead of
frame_map_regnum_to_name.
* frame.c: Include "user-regs.h" instead of "builtin-regs.h".
(frame_map_name_to_regnum): Simplify, call
user_reg_map_name_to_regnum.
(frame_map_regnum_to_name): Simplify, call
user_reg_map_regnum_to_name.
(frame_register_unwind): Update.
* std-regs.c: Include "user-regs.h" instead of "builtin-regs.h".
(_initialize_frame_reg): Call user_reg_add_builtin.
* findvar.c: Include "user-regs.h" instead of "builtin-regs.h".
(value_of_register): Use value_of_user_reg.
* eval.c (evaluate_subexp_standard): Update.
* parse.c (write_dollar_variable): Update.
* d10v-tdep.c (d10v_print_registers_info): Update.
* infcmd.c (registers_info): Update.
* Makefile.in (SFILES): Delete "builtin-regs.c", add "user-regs.c".
(builtin_regs_h): Delete macro.
(user_regs_h): Define.
(COMMON_OBS): Delete "builtin-regs.o", add "user-regs.o".
(builtin-regs.o): Delete target.
(user-regs.o): Specify dependencies.
(expprint.o): Update dependencies.
(findvar.o): Update dependencies.
(frame.o): Update dependencies.
(std-regs.o): Update dependencies.
2003-07-07 14:36:58 +00:00
Andrew Cagney
d2cf594a90
2003-06-29 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_register_unwind): Use unsigned char when dumping
the buffer contents.
2003-06-29 13:27:26 +00:00
Andrew Cagney
6e51443a2a
2003-06-21 Andrew Cagney <cagney@redhat.com>
...
* frame.h (deprecated_unwind_get_saved_register): Delete.
* frame.c (deprecated_unwind_get_saved_register): Delete function.
* mips-tdep.c (mips_get_saved_register): Use frame_register_unwind
and deprecated_get_next_frame_hack instead of
deprecated_unwind_get_saved_register.
2003-06-21 16:51:47 +00:00
Andrew Cagney
f0e7d0e8f2
2003-06-21 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_frame_register): New function.
(frame_unwind_register_signed): New function.
(get_frame_register_signed): New function.
(frame_unwind_register_unsigned): New function.
(get_frame_register_unsigned): New function.
* frame.h: Add comments on naming schema.
(get_frame_register, frame_unwind_register_signed): Declare.
(get_frame_register_signed, get_frame_register_signed): Declare.
(frame_unwind_register_unsigned): Declare.
(get_frame_register_unsigned): Declare.
2003-06-21 16:26:02 +00:00
Andrew Cagney
870b3035a4
2003-06-16 Andrew Cagney <cagney@redhat.com>
...
* frame.h (deprecated_get_next_frame_hack): Declare.
* frame.c (legacy_saved_regs_prev_register): Only require
DEPRECATED_FRAME_INIT_SAVED_REGS when it is needed. Assert that
there are always saved regs.
(deprecated_generic_get_saved_register): Do not require
DEPRECATED_FRAME_INIT_SAVED_REGS.
(legacy_get_prev_frame): Do not require DEPRECATED_FRAME_CHAIN,
use frame ID unwind instead.
(deprecated_get_next_frame_hack): New function.
2003-06-16 20:05:56 +00:00
Andrew Cagney
a59fe496df
2003-06-16 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (SAVE_DUMMY_FRAME_TOS): Deprecate.
* gdbarch.h, gdbarch.c: Re-generate.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* infcall.c (call_function_by_hand): Update.
* ia64-tdep.c (ia64_push_arguments): Update comment.
* frame.c (legacy_get_prev_frame): Do not assume
SAVE_DUMMY_FRAME_TOS_P.
* dummy-frame.c (find_dummy_frame): Update comment.
2003-06-16 16:47:44 +00:00
Andrew Cagney
ff2e87acc7
2003-06-14 Andrew Cagney <cagney@redhat.com>
...
Mark Kettenis <kettenis@gnu.org>
* gdbarch.sh (CONVERT_REGISTER_P): Add "type" parameter.
(REGISTER_TO_VALUE, VALUE_TO_REGISTER): Replace raw buffer
parameter with "frame".
* gdbarch.h, gdbarch.c: Re-generate.
* frame.h (put_frame_register): Declare.
* frame.c (put_frame_register): New function.
* arch-utils.c (legacy_convert_register_p): Add "type" parameter.
(legacy_register_to_value): Rewrite, use "frame" to get the
register value.
(legacy_value_to_register): Rewrite, use "frame" to find the
register's location before storing.
* arch-utils.h (legacy_convert_register_p): Update.
(legacy_register_to_value, legacy_value_to_register): Update.
* findvar.c (value_from_register): Rewrite, eliminate use of
REGISTER_CONVERT_TO_TYPE, pass "type" to CONVERT_REGISTER_P, pass
"frame" to REGISTER_TO_VALUE.
* valops.c (value_assign): Move the CONVERT_REGISTER code to the
lval_reg_frame_relative + lval_register branch of the switch. Do
not use REGISTER_CONVERT_FROM_TYPE. Use put_frame_register.
* i386-tdep.c (I386_EBX_REGNUM, I386_ECX_REGNUM, I386_ESI_REGNUM,
I386_EDI_REGNUM): New defines.
(i386_next_regnum, i386_convert_register_p,
i386_register_to_value, i386_value_to_register): New functions.
(i386_register_convertible, i386_register_convert_to_virtual,
i386_convert_to_raw): Remove functions.
(i386_gdbarch_init): Set convert_register_p, register_to_value and
value_to_register instead of register_convertible,
register_convert_to_virtual and register_convert_to_raw.
* mips-tdep.c (mips_convert_register_p): New function.
(mips_value_to_register): Replace mips_register_convert_from_type.
(mips_register_to_value): Replace mips_register_convert_to_type.
(mips_gdbarch_init): Set conver_register_p, value_to_register and
register_to_value.
* alpha-tdep.c (alpha_convert_register_p): Update.
(alpha_value_to_register): Update, store the register.
(alpha_register_to_value): Update, fetch the register.
2003-06-14 22:35:25 +00:00
Andrew Cagney
3e210248bd
2003-06-13 Andrew Cagney <cagney@redhat.com>
...
* infcall.c (call_function_by_hand): When UNWIND_DUMMY_ID is
available, do not use the FP register, and always save the TOS.
* dummy-frame.c (dummy_frame_this_id): Do not assert
SAVE_DUMMY_FRAME_TOS.
* i386-tdep.c (i386_save_dummy_frame_tos): Delete function.
(i386_gdbarch_init): Do not set save_dummy_frame_tos.
(i386_push_dummy_call): Add 8 to the returned SP.
* frame.c (legacy_frame_p): Do not require SAVE_DUMMY_FRAME_TOS.
* d10v-tdep.c (d10v_unwind_dummy_id): Use d10v_unwind_sp.
(d10v_gdbarch_init): Do not set save_dummy_frame_tos.
* x86-64-tdep.c (x86_64_save_dummy_frame_tos): Delete function.
(x86_64_push_dummy_call): Return "sp + 16".
(x86_64_init_abi): Do not set save_dummy_frame_tos.
* alpha-tdep.c (alpha_gdbarch_init): Do not set
save_dummy_frame_tos.
2003-06-13 20:37:28 +00:00
Andrew Cagney
248de703d4
2003-06-09 Andrew Cagney <cagney@redhat.com>
...
* frame.h (deprecated_unwind_get_saved_register): Rename
generic_unwind_get_saved_register, update comments.
* mips-tdep.c (mips_get_saved_register): Update.
* frame.c (deprecated_unwind_get_saved_register): Update.
2003-06-09 22:20:43 +00:00
Andrew Cagney
25e3a86bb1
2003-06-08 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Remove reference to
frame_args_address_correct in comments.
* frame-base.c (default_frame_args_address): Delete code
conditional on FRAME_ARGS_ADDRESS_CORRECT.
* vax-tdep.c (vax_frame_args_address_correct): Delete.
(vax_frame_args_address): Merge in vax_frame_args_address_correct.
* config/vax/tm-vax.h (FRAME_ARGS_ADDRESS_CORRECT): Delete
(vax_frame_args_address_correct): Delete declaration.
Index: doc/ChangeLog
2003-06-08 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Delete
documentation on FRAME_ARGS_ADDRESS_CORRECT.
2003-06-09 02:10:35 +00:00
Andrew Cagney
a9e5fdc219
2003-06-08 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (UNWIND_SP): Add.
* gdbarch.h, gdbarch.c: Re-generate.
* frame.c (frame_sp_unwind): New function.
(get_frame_sp): New function.
* frame.h (get_frame_sp, frame_sp_unwind): Declare.
* regcache.c (read_sp): Rewrite, try each of TARGET_READ_SP,
gdbarch_unwind_sp and SP_REGNUM when looking for the SP register
value.
* d10v-tdep.c (d10v_unwind_sp): Replace d10v_read_sp.
(d10v_gdbarch_init): Set unwind_sp instead of read_sp.
2003-06-08 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Document
"unwind_sp". Cross reference "unwind_sp" and TARGET_READ_SP.
2003-06-09 01:02:07 +00:00
Andrew Cagney
b9362cc7a8
2003-06-08 Andrew Cagney <cagney@redhat.com>
...
* acinclude.m4 (gcc_AC_CHECK_DECL, (gcc_AC_CHECK_DECL): Stolen
from GCC's acinclude.m4.
* configure.in: Check for getopt's delcaration.
* aclocal.m4, config.in, configure: Re-generate.
* main.c (error_init): Delete declaration.
* defs.h (error_init): Declare.
* rs6000-tdep.c (rs6000_fetch_pointer_argument): Make static.
(rs6000_convert_from_func_ptr_addr): Make static.
(_initialize_rs6000_tdep): Add declaration.
* cli/cli-cmds.c (dont_repeat): Delete declaration.
(show_commands, set_verbose, show_history): Delete declaration.
* top.h (set_verbose): Add declaration.
(show_history, set_history, show_commands): Add declaration.
(do_restore_instream_cleanup): Add declaration.
* objc-lang.c (specialcmp): Make static.
(print_object_command): Make static.
(find_objc_msgsend): Make static.
(find_objc_msgcall_submethod_helper): Make static.
(find_objc_msgcall_submethod): Make static.
(_initialize_objc_language): Add declaration.
(find_implementation_from_class): Make static.
(find_implementation): Make static.
* objc-exp.y (yylex): Delete lookup_struct_typedef declaration.
* objc-lang.h (lookup_struct_typedef): Add declaration.
* cli/cli-interp.c (_initialize_cli_interp): Add declaration.
* cli/cli-script.c (clear_hook_in_cleanup): Make static.
(do_restore_user_call_depth): Make static.
(do_restore_instream_cleanup): Delete declaration.
(dont_repeat): Delete declaration.
* cli/cli-decode.c (add_abbrev_cmd): Delete function.
* cli/cli-dump.c (_initialize_cli_dump): Add declaration.
* reggroups.c (_initialize_reggroup): Add declaration.
* cp-support.c (_initialize_cp_support): Add declaration.
* cp-abi.c (_initialize_cp_abi): Add declaration.
* hpacc-abi.c (_initialize_hpacc_abi): Add declaration.
* gnu-v3-abi.c (gnuv3_baseclass_offset): Make static.
(_initialize_gnu_v3_abi): Add declaration.
* gnu-v2-abi.c (gnuv2_value_rtti_type): Make static.
(_initialize_gnu_v2_abi): Add declaration.
* frame-base.c (_initialize_frame_base): Add declaration.
* doublest.c (floatformat_from_length): Make static.
* frame-unwind.c (_initialize_frame_unwind): Add declaration.
* frame.c (create_sentinel_frame): Make static.
(_initialize_frame): Add declaration.
* top.c (do_catch_errors): Make static.
(gdb_rl_operate_and_get_next_completion): Make static.
* typeprint.c: Include "typeprint.h".
* sentinel-frame.c (sentinel_frame_prev_register): Make static.
(sentinel_frame_this_id): Make static.
* p-valprint.c (_initialize_pascal_valprint): Add declaration.
* ui-out.c (make_cleanup_ui_out_begin_end): Delete function.
* dwarf2-frame.c (dwarf2_frame_cache): Make static.
* p-exp.y (push_current_type, pop_current_type): ISO C declaration.
* dwarf2expr.h (dwarf_expr_context): ISO C declaration.
* maint.c (maintenance_print_architecture): Make static.
* signals/signals.c (_initialize_signals): Add declaration.
* std-regs.c (_initialize_frame_reg): Add declaration.
* jv-exp.y (push_variable): ISO C definition.
(push_qualified_expression_name): Ditto.
* memattr.c (_initialize_mem): Add declaration.
* remote.c (remote_check_watch_resources): Make static.
(remote_stopped_by_watchpoint): Make static.
(remote_stopped_data_address): Make static.
* d10v-tdep.c (nr_dmap_regs): Make static.
(a0_regnum): Make static.
(d10v_frame_unwind_cache): Make static.
(d10v_frame_p): Make static.
* osabi.c (show_osabi): Make static.
(_initialize_gdb_osabi): Add extern declaration.
* gdbtypes.c (make_qualified_type): Make static.
(safe_parse_type): Make static.
* macrocmd.c (_initialize_macrocmd): Add extern declaration.
* macrotab.c (macro_bcache_free): Make static.
* interps.c (interp_set_quiet): Make static.
(interpreter_exec_cmd): Make static.
* stack.h (select_frame_command): New file.
* stack.c: Include "stack.h".
(select_frame_command_wrapper): Delete function.
(select_frame_command): Make global.
* infcall.c: Include "infcall.h".
* linespec.c: Include "linespec.h".
* symfile.c (sections_overlap): Make static.
* cp-support.h (cp_initialize_namespace): ISO C declaration.
* charset.c (_initialize_charset): Add missing prototype.
* regcache.c (init_legacy_regcache_descr): Make static.
(do_regcache_xfree): Make static.
(regcache_xfer_part): Make static.
(_initialize_regcache): Add missing prototype.
* breakpoint.c (parse_breakpoint_sals): Make static.
(breakpoint_sals_to_pc): Make static.
* interps.h (clear_interpreter_hooks): ISO C declaration.
* Makefile.in (stack_h): Define.
(stack.o, typeprint.o, mi-main.o): Update dependencies.
(mi-cmd-stack.o, infcall.o, linespec.o): Update dependencies.
Index: mi/ChangeLog
2003-06-08 Andrew Cagney <cagney@redhat.com>
* mi-parse.c (_initialize_mi_parse): Delete function.
* mi-main.c: Include "mi-main.h".
* mi-interp.c (_initialize_mi_interp): Add declaration.
* mi-cmd-stack.c: Include "stack.h".
(select_frame_command_wrapper): Delete extern declaration.
(mi_cmd_stack_select_frame): Replace select_frame_command_wrapper
with select_frame_command.
2003-06-08 18:27:14 +00:00
Andrew Cagney
ae1e741769
2003-06-03 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_frame_memory_signed): New function.
(get_frame_memory, get_frame_memory_unsigned): New function.
(get_frame_arch): New function.
* frame.h (get_frame_signed_memory, get_frame_arch): Declare.
(get_frame_memory, get_frame_unsigned_memory): Declare.
* d10v-tdep.c (d10v_frame_unwind_cache): Use
get_frame_memory_unsigned and get_frame_arch.
(d10v_frame_unwind_cache, saved_regs_unwinder): Ditto.
2003-06-03 18:53:37 +00:00
Andrew Cagney
af1342ab7f
2003-05-22 Andrew Cagney <cagney@redhat.com>
...
* stack.c (frame_info): Inline extract_address, replacing it with
extract_unsigned_integer.
* findvar.c (unsigned_pointer_to_address): Ditto.
* dwarf2loc.c (dwarf_expr_read_reg): Ditto.
* dwarf2expr.c (dwarf2_read_address): Ditto.
* frame.c (frame_pc_unwind): Update comment.
* dummy-frame.c (deprecated_read_register_dummy): Update comment.
2003-05-22 18:37:05 +00:00
Andrew Cagney
cc8c88f3a7
2003-05-15 Andrew Cagney <cagney@redhat.com>
...
* dummy-frame.h (deprecated_find_dummy_frame_regcache): Rename
generic_find_dummy_frame.
* dummy-frame.c (deprecated_find_dummy_frame_regcache): Update.
(deprecated_generic_find_dummy_frame): Update.
(deprecated_read_register_dummy): Update.
* frame.c (deprecated_generic_get_saved_register): Update.
2003-05-15 19:04:29 +00:00
Andrew Cagney
fbd9dcd3c2
2003-05-13 Andrew Cagney <cagney@redhat.com>
...
* defs.h (store_address): Delete declaration.
findvar.c (store_address): Delete function.
* arm-tdep.c (arm_push_dummy_call): Replace store_address with
store_unsigned_integer.
* xstormy16-tdep.c (xstormy16_address_to_pointer): Ditto.
* v850-tdep.c (v850_push_arguments): Ditto.
* sparc-tdep.c (sparc_get_saved_register): Ditto.
* sh-tdep.c (sh64_get_saved_register): Ditto.
* rs6000-tdep.c (rs6000_push_arguments): Ditto.
* ppc-sysv-tdep.c (ppc_sysv_abi_push_arguments): Ditto.
* mips-tdep.c (mips_eabi_push_arguments): Ditto.
(mips_get_saved_register): Ditto.
* ia64-tdep.c (ia64_get_saved_register): Ditto.
(find_func_descr, ia64_push_arguments): Ditto.
* i386-tdep.c (i386_push_arguments): Ditto.
* hpux-thread.c (hpux_thread_fetch_registers): Ditto.
* frv-tdep.c (frv_push_arguments): Ditto.
* frame.c (legacy_saved_regs_prev_register): Ditto.
(deprecated_generic_get_saved_register): Ditto.
* findvar.c (unsigned_address_to_pointer): Ditto.
* dwarf2read.c (dwarf2_const_value): Ditto.
* arm-linux-tdep.c (arm_linux_push_arguments): Ditto.
* alpha-tdep.c (alpha_push_arguments): Ditto.
2003-05-13 19:27:28 +00:00
Andrew Cagney
d9d9c31f31
2003-05-08 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh: Delete references to MAX_REGISTER_RAW_SIZE.
* gdbarch.h: Re-generate.
* defs.h (MAX_REGISTER_RAW_SIZE): Delete macro.
(legacy_max_register_raw_size): Delete declaration.
* regcache.c (legacy_max_register_raw_size): Delete function.
* valops.c: Replace MAX_REGISTER_RAW_SIZE with MAX_REGISTER_SIZE.
* target.c, stack.c, sparc-tdep.c, sh-tdep.c: Update.
* rs6000-tdep.c, rs6000-nat.c, remote.c, remote-sim.c: Update.
* remote-rdp.c, remote-array.c, regcache.c: Update.
* ppc-linux-nat.c, monitor.c, mn10300-tdep.c: Update.
* mips-tdep.c, mips-linux-tdep.c, m68klinux-nat.c: Update.
* infptrace.c, ia64-tdep.c, i386-tdep.c, frame.c: Update.
* findvar.c, dwarf2cfi.c: Update.
Index: tui/ChangeLog
2003-05-08 Andrew Cagney <cagney@redhat.com>
* tuiRegs.c: Use MAX_REGISTER_SIZE instead of
MAX_REGISTER_RAW_SIZE.
Index: mi/ChangeLog
2003-05-08 Andrew Cagney <cagney@redhat.com>
* mi-main.c (register_changed_p): Use MAX_REGISTER_SIZE instead of
MAX_REGISTER_RAW_SIZE.
2003-05-08 20:52:49 +00:00
Kevin Buettner
710ee10a27
* frame.c (get_frame_type): Don't attempt to lazily initialize
...
frame's unwinder for legacy frames.
2003-05-08 15:34:12 +00:00
Andrew Cagney
00905d52fe
Index: testsuite/ChangeLog
...
2003-05-05 Andrew Cagney <cagney@redhat.com>
* gdb.base/maint.exp: Add tests for "maint print dummy-frames".
Index: doc/ChangeLog
2003-05-05 Andrew Cagney <cagney@redhat.com>
* gdb.texinfo (Maintenance Commands): Document "maint print
dummy-frames".
2003-05-05 Andrew Cagney <cagney@redhat.com>
* dummy-frame.c: Include "command.h" and "gdbcmd.h".
(fprint_dummy_frames): New function.
(maintenance_print_dummy_frames): New function.
(_initialize_dummy_frame): Add command "maint print dummy-frames".
* frame.c (fprint_frame_id): Make global.
* frame.h (fprint_frame_id): Declare.
* Makefile.in (dummy-frame.o): Update dependencies.
2003-05-05 18:33:11 +00:00
Andrew Cagney
0ba6dca974
2003-04-28 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_TARGET_READ_FP): Replace TARGET_READ_FP.
(DEPRECATED_FP_REGNUM): Replace FP_REGNUM.
* gdbarch.h, gdbarch.c: Re-generate.
* infcall.c (call_function_by_hand): Use DEPRECATED_FP_REGNUM,
DEPRECATED_TARGET_READ_FP, or "sp" to create the dummy frame ID.
* inferior.h (deprecated_read_fp): Rename read_fp.
(generic_target_read_fp): Delete declaration.
* regcache.c (generic_target_read_fp): Delete function.
(deprecated_read_fp): Replace read_fp, use
DEPRECATED_TARGET_READ_FP or DEPRECATED_FP_REGNUM.
* d10v-tdep.c (d10v_read_fp): Delete function.
(d10v_gdbarch_init): Do not set deprecated_read_fp.
* sparc-tdep.c (sparc_gdbarch_init): Do not set
deprecated_target_read_fp to generic_target_read_fp.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Set
deprecated_fp_regnum.
* x86-64-tdep.c (x86_64_init_abi): Ditto.
* vax-tdep.c (vax_gdbarch_init): Ditto.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* sparc-tdep.c (sparc_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* m68k-tdep.c (m68k_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* i386-tdep.c (i386_gdbarch_init): Ditto.
* hppa-tdep.c (hppa_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* arm-tdep.c (arm_gdbarch_init): Ditto.
* alpha-tdep.c (alpha_gdbarch_init): Ditto.
* x86-64-tdep.c (x86_64_init_abi): Set deprecated_target_read_fp.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* sparc-tdep.c (sparc_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* mips-tdep.c (mips_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* hppa-tdep.c (hppa_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* arm-tdep.c (arm_gdbarch_init): Ditto.
* vax-tdep.c (vax_frame_init_saved_regs): Replace FP_REGNUM with
DEPRECATED_FP_REGNUM.
(vax_push_dummy_frame, vax_pop_frame): Ditto.
* std-regs.c (value_of_builtin_frame_fp_reg): Ditto.
* sparc-tdep.c (sparc_init_extra_frame_info): Ditto.
(sparc_push_dummy_frame, sparc64_read_fp): Ditto.
(sparc32_register_virtual_type): Ditto.
* sh-tdep.c (sh64_frame_chain): Ditto.
(sh64_get_saved_register, sh64_pop_frame): Ditto.
(sh_nofp_frame_init_saved_regs): Ditto.
(sh64_nofp_frame_init_saved_regs): Ditto.
(sh_fp_frame_init_saved_regs): Ditto.
* remote-mips.c (mips_wait, mips_fetch_registers): Ditto.
* remote-e7000.c (fetch_regs_from_dump): Ditto.
* procfs.c (procfs_fetch_registers): Ditto.
(procfs_store_registers): Ditto.
* ns32knbsd-nat.c (fetch_inferior_registers): Ditto.
(store_inferior_registers, fetch_core_registers): Ditto.
(fetch_kcore_registers, clear_regs): Ditto.
* ns32k-tdep.c (ns32k_frame_init_saved_regs): Ditto.
(ns32k_push_dummy_frame, ns32k_pop_frame): Ditto.
* nlm/i386.h (DEPRECATED_FP_REGNUM): Ditto.
* nlm/i386.c (do_status): Ditto.
* mipsv4-nat.c (supply_gregset): Ditto.
* mips-tdep.c: Ditto for comments.
* mips-nat.c (fetch_inferior_registers): Ditto.
(store_inferior_registers, fetch_core_registers): Ditto.
* m68k-tdep.c (m68k_push_dummy_frame): Ditto.
(m68k_pop_frame, m68k_frame_init_saved_regs): Ditto.
* i386-tdep.c (i386_frame_init_saved_regs): Ditto.
(i386_do_pop_frame, i386_register_type): Ditto.
* hppa-tdep.c (hppa_frame_chain): Ditto.
(hppa_push_dummy_frame, find_dummy_frame_regs): Ditto.
(hppa_pop_frame, hppa_read_fp): Ditto.
(skip_prologue_hard_way, hppa_frame_find_saved_regs): Ditto.
* cris-tdep.c (cris_examine, cris_pop_frame): Ditto.
* config/vax/nm-vax.h (REGISTER_U_ADDR): Ditto.
* config/sparc/tm-sparc.h (DEPRECATED_FP_REGNUM): Ditto.
* config/sparc/tm-sp64.h (DEPRECATED_FP_REGNUM): Ditto.
* config/s390/tm-s390.h (DEPRECATED_FP_REGNUM): Ditto.
* config/pa/tm-hppa64.h (DEPRECATED_FP_REGNUM): Ditto.
* config/ia64/tm-ia64.h (DEPRECATED_FP_REGNUM): Ditto.
* blockframe.c: Ditto for comments.
* arch-utils.h: Ditto for comments.
* arch-utils.c (legacy_virtual_frame_pointer): Ditto.
* alphanbsd-tdep.c (fetch_core_registers): Ditto.
* alphabsd-nat.c (fetch_inferior_registers): Ditto.
* alpha-tdep.h: Ditto for comments.
* alpha-tdep.c (alpha_cannot_fetch_register): Ditto.
(alpha_cannot_store_register): Ditto.
(alpha_push_dummy_frame): Ditto.
* alpha-nat.c (supply_gregset): Ditto.
* config/sparc/tm-sp64.h (DEPRECATED_TARGET_READ_FP): Update.
* config/pa/tm-hppa64.h (DEPRECATED_TARGET_READ_FP): Update.
* config/sparc/tm-sparc.h: Update comment.
* hppa-tdep.c (hppa_init_extra_frame_info): Use
deprecated_read_fp instead of TARGET_READ_FP.
(hppa_init_extra_frame_info, hppa_frame_chain): Ditto.
(hppa_push_dummy_frame, hppa_read_fp): Ditto.
* sparc-tdep.c (sparc_init_extra_frame_info): Use
deprecated_read_fp instead of read_fp.
* s390-tdep.c (s390_push_arguments): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* frame.h: Ditto in comments.
* frame.c (legacy_get_prev_frame): Ditto.
* dummy-frame.c (dummy_frame_this_id): Ditto.
* arm-tdep.c (arm_init_extra_frame_info): Ditto.
2003-04-28 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Replace
read_fp, TARGET_READ_FP and FP_REGNUM, with deprecated_read_fp,
DEPRECATED_TARGET_READ_FP and DEPRECATED_REGNUM.
2003-04-29 01:49:49 +00:00
Andrew Cagney
4aa79dcc21
2003-04-21 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_id_eq): Fail when the code_addr's do not match.
2003-04-21 19:34:02 +00:00
Andrew Cagney
c50901fda0
2003-04-16 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Do not initialize "unwind" or "type",
update comments.
(get_frame_type): Initialize unwind and type when needed.
(get_frame_id, frame_register_unwind): Ditto.
2003-04-16 14:39:47 +00:00
Andrew Cagney
bd013d5471
2003-04-12 Andrew Cagney <cagney@redhat.com>
...
* frame.h (struct frame_info): Move definition from here ...
* frame.c (struct frame_info): ... to here.
2003-04-13 00:10:22 +00:00
Andrew Cagney
18adea3ff6
2003-04-11 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_frame_id): Return this frame's "id".
(legacy_get_prev_frame): Set prev's frame ID code_addr to the
function start.
(legacy_saved_regs_this_id): Replace function body with
internal-error.
(deprecated_frame_xmalloc): Mark the frame ID as valid, use
FRAME_OBSTACK_ZALLOC.
(create_new_frame): Mark the frame ID as valid.
2003-04-12 04:27:29 +00:00
Andrew Cagney
7f78e23771
2003-04-10 Andrew Cagney <cagney@redhat.com>
...
* frame.c (fprint_frame_id): New function.
(fprint_frame_type, fprint_frame): New function.
(frame_pc_unwind, frame_func_unwind): Add/update trace code.
(create_sentinel_frame, get_frame_id): Ditto.
(frame_id_p, frame_id_eq): Ditto.
(frame_id_inner, create_new_frame): Ditto.
(legacy_get_prev_frame, get_prev_frame): Ditto.
(deprecated_update_frame_pc_hack): Ditto.
(frame_register_unwind): Ditto.
(deprecated_update_frame_base_hack): Ditto.
2003-04-10 15:32:27 +00:00
Andrew Cagney
d0a557723a
2003-04-09 Andrew Cagney <cagney@redhat.com>
...
* frame.h (struct frame_id): Replace "pc" and "base" with
"stack_addr" and "code_addr". Update comments.
(frame_id_build): Update parameter names and comment.
(struct frame_info): Replace "id_p" and "id" with "this_id".
* dummy-frame.c (dummy_frame_this_id): Update.
* breakpoint.c (print_one_breakpoint): Update.
* frame.c (get_frame_id): Update.
(get_frame_base, frame_id_build): Update.
(create_sentinel_frame, legacy_get_prev_frame): Update.
(deprecated_update_frame_base_hack): Update.
(frame_id_p, frame_id_eq): Rework, return 0 when an invalid ID.
(frame_id_inner): Ditto.
2003-04-10 03:30:36 +00:00
Andrew Cagney
d134026405
2003-04-09 Andrew Cagney <cagney@redhat.com>
...
* frame.h (struct frame_info): Delete field "pc". Replace
"pc_unwind_cache" and "pc_unwind_cache_p" with "prev_pc"
structure.
* frame.c (frame_pc_unwind): Update.
(create_sentinel_frame): Do not set "pc".
(get_prev_frame): Do not set "pc". Use frame_pc_unwind.
(get_frame_pc): Call frame_pc_unwind.
(deprecated_update_frame_pc_hack): Update.
(create_new_frame): Use "pc" not "->pc".
2003-04-09 20:49:22 +00:00
Andrew Cagney
90a6fffbda
2003-04-09 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_frame_id): Eliminate code updating "frame".
(legacy_get_prev_frame): Ditto.
(get_frame_base): Return id.base directly.
(deprecated_update_frame_base_hack): Update "id.base".
* frame.h (struct frame_info): Delete field "frame".
2003-04-09 18:24:01 +00:00
Andrew Cagney
e6ba3bc976
2003-04-06 Andrew Cagney <cagney@redhat.com>
...
* frame.h (legacy_frame_chain_valid): Rename frame_chain_valid.
Update comment.
* frame.c (legacy_saved_regs_this_id): Update.
(legacy_get_prev_frame): Update.
* xstormy16-tdep.c: Update comment.
* sparc-tdep.c (sparc_frame_chain): Update comment.
* blockframe.c (legacy_frame_chain_valid): Update.
2003-04-06 18:36:23 +00:00
Andrew Cagney
43bd9a9e02
2003-04-05 Andrew Cagney <cagney@redhat.com>
...
Eliminate FRAME_FIND_SAVED_REGS.
* config/pa/tm-hppah.h (hppa_hpux_frame_find_saved_regs_in_sigtramp):
Change FSR parameter to a pointer.
* config/pa/tm-hppa64.h (FRAME_FIND_SAVED_REGS_IN_SIGTRAMP):
Assume FSR parameter is a pointer.
* hppa-hpux-tdep.c (hppa_hpux_frame_find_saved_regs_in_sigtramp):
Make fsr a pointer.
* hppa-tdep.c (hppa_frame_find_saved_regs): New function.
(hppa_frame_saved_pc): Call hppa_frame_init_saved_regs. Make
saved_regs a pointer.
(hppa_frame_saved_pc): Ditto.
(find_dummy_frame_regs): Make frame_saved_regs a pointer
(hppa_pop_frame): Call hppa_frame_init_saved_regs. Make fsr a
pointer.
(restore_pc_queue): Make fsr a pointer.
(hppa_frame_find_saved_regs): Make frame_saved_regs a pointer.
(hppa_frame_chain): Make saved_regs a pointer, call
hppa_frame_init_saved_regs.
* sparc-tdep.c: Include "gdb_assert.h".
(sparc_frame_find_saved_regs): Replace internal_error with
gdb_assert.
* remote-vxsparc.c (vx_read_register): Delete reference to
FRAME_FIND_SAVED_REGS.
* gdbarch.sh: Delete check for FRAME_FIND_SAVED_REGS.
* gdbarch.h: Regenerate.
* frame.h (DEPRECATED_FRAME_INIT_SAVED_REGS): Delete macro.
(deprecated_get_frame_saved_regs): Delete declaration.
(struct frame_saved_regs): Delete definition.
* frame.c (deprecated_get_frame_saved_regs): Delete function.
* config/pa/tm-hppa.h (hppa_frame_init_saved_regs): Declare.
(hppa_frame_find_saved_regs): Delete declaration.
(FRAME_FIND_SAVED_REGS): Delete macro.
(DEPRECATED_FRAME_INIT_SAVED_REGS): Define.
* config/i386/tm-ptx.h (FRAME_FIND_SAVED_REGS): Delete
FRAME_FIND_SAVED_REGS in comment.
2003-04-06 01:13:59 +00:00
Andrew Cagney
be41e9f456
2003-04-05 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_func_unwind, get_frame_func): New functions.
* frame.h (get_frame_func, frame_func_unwind): Declare.
(struct frame_info): Add field "prev_func" for caching the
previous frame's function address.
* arm-tdep.c (arm_frameless_function_invocation): Combine
get_pc_function_start and get_frame_pc into get_frame_func.
* sh-tdep.c (sh_nofp_frame_init_saved_regs): Ditto.
(sh64_nofp_frame_init_saved_regs): Ditto.
* s390-tdep.c (s390_function_start): Ditto.
* rs6000-tdep.c (rs6000_pop_frame): Ditto.
(rs6000_frameless_function_invocation): Ditto.
(rs6000_frame_saved_pc): Ditto.
* m68k-tdep.c (m68k_frame_init_saved_regs): Ditto.
* ia64-tdep.c (ia64_frame_init_saved_regs): Ditto.
* i386-tdep.c (i386_frameless_signal_p): Ditto.
(i386_frame_init_saved_regs): Ditto.
* hppa-tdep.c (hppa_frame_find_saved_regs): Ditto.
* d10v-tdep.c (d10v_frame_unwind_cache): Combine
get_pc_function_start and frame_pc_unwind into frame_func_unwind.
* cris-tdep.c (cris_frame_init_saved_regs): Ditto.
* blockframe.c (frameless_look_for_prologue): Ditto.
2003-04-05 18:54:38 +00:00
Andrew Cagney
a01dd7cc8d
2003-04-05 Andrew Cagney <cagney@redhat.com>
...
* frame.c (legacy_get_prev_frame): Link prev to next at the
function start. Update comments.
2003-04-05 15:49:54 +00:00
Andrew Cagney
5e5592e692
2003-04-05 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_frame_id): Update comment.
(legacy_get_prev_frame): Update comment.
* gdbarch.sh: Delete check for EXTRA_FRAME_INFO.
* gdbarch.h: Regenerate.
* config/sparc/tm-sparc.h (EXTRA_FRAME_INFO): Delete.
* frame.h: Delete #ifdef EXTRA_FRAME_INFO code.
2003-04-05 15:39:34 +00:00
Andrew Cagney
7df05f2b91
2003-04-04 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Do not call frame_type_from_pc. Set
the frame's type from the unwinder.
(get_frame_type): Map UNKNOWN_FRAME onto NORMAL_FRAME.
(create_new_frame, legacy_get_prev_frame): When the unwinder's
type isn't UNKNOWN_FRAME, initalize "type" from the unwinder.
(get_frame_base_address): Use get_frame_type.
(get_frame_locals_address, get_frame_args_address): Ditto.
(legacy_saved_regs_unwinder): Set the type to UNKNOWN_TYPE.
* frame.h (enum frame_type): Add UNKNOWN_FRAME.
(struct frame_info): Add comment explaining why the frame contains
a "type" field.
* dummy-frame.c (dummy_frame_unwind): Set the type to DUMMY_FRAME.
* d10v-tdep.c (d10v_frame_unwind): Set the type to NORMAL_FRAME.
* sentinel-frame.c (sentinel_frame_unwinder): Set the type to
NORMAL_FRAME.
* frame-unwind.h: Include "frame.h".
(struct frame_unwind): Add "type" field.
* Makefile.in (frame_unwind_h): Add $(frame_h).
2003-04-05 03:56:00 +00:00
Andrew Cagney
11889732f8
2003-04-04 Andrew Cagney <cagney@redhat.com>
...
* x86-64-tdep.c (x86_64_unwind_dummy_id): Use frame_id_build.
* dummy-frame.c (dummy_frame_this_id): Use frame_id_build.
* d10v-tdep.c (d10v_frame_this_id): Use get_frame_pc and
get_frame_base.
(d10v_unwind_dummy_id): Use frame_id_build.
* frame.c (find_frame_sal): Use get_frame_pc.
(create_new_frame): Use deprecated_update_frame_pc_hack and
deprecated_update_frame_base_hack.
(create_sentinel_frame): Add comment about ->pc going away.
(get_prev_frame): Add comment about ->pc going away.
(legacy_get_prev_frame): Use get_frame_base, get_frame_pc,
frame_id_build, deprecated_update_frame_pc_hack and
deprecated_update_frame_base_hack.
(select_frame): Use get_frame_pc.
(legacy_saved_regs_this_id): Use frame_id_build.
2003-04-04 21:04:33 +00:00
Andrew Cagney
50bbdbd931
2003-04-04 Andrew Cagney <cagney@redhat.com>
...
* frame.c (create_sentinel_frame): Initialize the sentinel frame's
ID to NULL.
2003-04-04 14:46:00 +00:00
Andrew Cagney
da62e63311
2003-04-01 Andrew Cagney <cagney@redhat.com>
...
Add frame debug info addresses:
* frame-base.c: New file.
* frame-base.h: New file.
* frame.h (struct frame_base): Add opaque declaration.
(get_frame_base): Update comment.
(get_frame_base_address): Declare.
(get_frame_locals_address): Declare.
(get_frame_args_address): Declare.
(struct frame_info): Add "base" and "base_cache". Update
comments on the unwinder.
* frame.c: Include "frame-base.h".
(get_frame_locals_address): New function.
(get_frame_base_address): New function.
(get_frame_args_address): New function.
* findvar.c (read_var_value): Use get_frame_locals_address and
get_frame_args_address.
* stack.c (frame_info): Use get_frame_locals_address and
get_frame_args_address.
(FRAME_ARGS_ADDRESS_CORRECT): Delete conditionally defined macro,
moved to "frame-base.c".
* printcmd.c (print_frame_nameless_args): Ditto.
* symtab.h (address_class): Update comments.
* dwarf2loc.c (dwarf_expr_frame_base): Add note about
get_frame_base_address.
* dwarf2expr.c (execute_stack_op): Ditto.
* Makefile.in (frame_base_h): Define.
(frame.o): Update dependencies.
(frame-base.o): Add dependencies.
(SFILES): Add frame-base.c.
(COMMON_OBS): Add frame-base.o.
2003-04-01 19:11:01 +00:00
Corinna Vinschen
ce0c72625a
* frame.c (get_prev_frame): Disable call to inside_entry_file().
2003-04-01 15:26:08 +00:00
Andrew Cagney
e8a8712ae2
2003-03-31 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (CALL_DUMMY_P): Delete.
* gdbarch.h, gdbarch.c: Re-generate.
* inferior.h (CALL_DUMMY_P): Delete macro.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* vax-tdep.c (vax_gdbarch_init): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* ns32k-tdep.c (ns32k_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68k-tdep.c (m68k_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_gdbarch_init): Update.
* h8300-tdep.c (h8300_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* d10v-tdep.c (d10v_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* breakpoint.c (deprecated_frame_in_dummy): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* dummy-frame.c (dummy_frame_this_id): Update comments.
* rs6000-tdep.c (rs6000_extract_struct_value_address): Ditto.
* frame.c (legacy_get_prev_frame): Ditto.
* valops.c (call_function_by_hand): Delete function.
(hand_function_call): Rename to call_function_by_hand
2003-03-31 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Delete
references to CALL_DUMMY_P.
2003-03-31 19:01:21 +00:00
Andrew Cagney
06c77151a5
2003-03-30 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_frame_base): Force ID initialization.
(get_prev_frame): Move computation of the frame ID from here ...
(get_frame_id): ... to here.
(legacy_get_prev_frame): Mark the frame ID as valid.
* frame.h (struct frame_info): Add field "id_p".
2003-03-30 16:16:25 +00:00
Andrew Cagney
270c3b1dfa
2003-03-25 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Delay validating a frame's ID -
non-NULL, didn't go backwards - until an attempt to unwind it to
the previous frame.
2003-03-26 00:00:07 +00:00
Andrew Cagney
618ce49fa2
Index: ChangeLog
...
2003-03-23 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (DEPRECATED_FRAME_CHAIN): Replace FRAME_CHAIN.
(DEPRECATED_FRAME_CHAIN_VALID): Replace FRAME_CHAIN_VALID.
* gdbarch.h, gdbarch.c: Regenerate.
* valops.c (hand_function_call): Update.
* objfiles.h (DEPRECATED_FRAME_CHAIN_VALID): Update.
* frame.c (legacy_saved_regs_this_id): Update.
(legacy_get_prev_frame, get_prev_frame, legacy_frame_p): Update.
* dummy-frame.h: Update.
* config/sparc/tm-sparc.h (DEPRECATED_FRAME_CHAIN): Update.
* config/pa/tm-hppa.h (DEPRECATED_FRAME_CHAIN_VALID): Update.
* config/m68k/tm-vx68.h (DEPRECATED_FRAME_CHAIN): Update.
* config/m68k/tm-os68k.h (DEPRECATED_FRAME_CHAIN): Update.
* config/m68k/tm-sun3.h: Update.
* blockframe.c (inside_main_func, frame_chain_valid): Update.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* x86-64-tdep.c (x86_64_init_abi): Update.
* vax-tdep.c (vax_gdbarch_init): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_frame_chain, sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_frame_saved_pc): Update.
(rs6000_gdbarch_init, rs6000_frame_saved_pc): Update.
(frame_get_saved_regs): Update.
* ppc-linux-tdep.c (ppc_linux_init_abi): Update.
* ns32k-tdep.c (ns32k_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68k-tdep.c (m68k_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_frame_num_args, i386_gdbarch_init): Update.
* i386-interix-tdep.c (i386_interix_init_abi): Update.
(i386_interix_back_one_frame): Update.
* hppa-tdep.c (hppa_gdbarch_init): Update.
(hppa_init_extra_frame_info): Update.
* h8300-tdep.c (h8300_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
Index: doc/ChangeLog
2003-03-23 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Algorithms, Target Architecture Definition):
Deprecate FRAME_CHAIN and FRAME_CHAIN_VALID.
2003-03-24 03:54:51 +00:00
Andrew Cagney
6dc42492b6
2003-03-17 Andrew Cagney <cagney@redhat.com>
...
Fix frame off-by-one bug.
* frame-unwind.h (frame_this_id_ftype): Replace
frame_unwind_id_ftype.
(frame_prev_register_ftype): Replace frame_unwind_reg_ftype.
(struct frame_unwind): Replace "id" with "this_id". Replace "reg"
with "prev_register".
* frame-unwind.c (frame_unwind_find_by_pc): Return
legacy_saved_regs_unwind instead of trad_frame_unwind. Update
comment.
* dummy-frame.c (cached_find_dummy_frame): Delete function.
(dummy_frame_this_id): Replace dummy_frame_id_unwind.
(dummy_frame_prev_register): Replace dummy_frame_register_unwind.
(dummy_frame_unwind): Update.
* sentinel-frame.c (sentinel_frame_prev_register): Replace
sentinel_frame_register_unwind.
(sentinel_frame_this_id): Replace sentinel_frame_id_unwind.
(sentinel_frame_unwinder): Update.
* frame.h (legacy_saved_regs_unwind): Replace trad_frame_unwind.
(struct frame_info): Rename "unwind_cache" to "prologue_cache".
* frame.c (create_sentinel_frame): Update. Initialize
"prologue_cache" instead of "unwind_cache".
(frame_register_unwind): Call this frame's prev_register with the
next frame and this frame's prologue cache.
(get_prev_frame): Simplify. Always call prev frame's this_id with
this frame and prev frame's prologue cache. Document that this
call is shifted one to the left when compared to the
frame_register_unwind call.
(legacy_saved_regs_prev_register): Replace
frame_saved_regs_register_unwind.
(legacy_saved_regs_this_id): Replace frame_saved_regs_id_unwind.
(legacy_saved_regs_unwinder): Replace trad_frame_unwinder.
(legacy_saved_regs_unwind): Replace trad_frame_unwind.
* d10v-tdep.c (d10v_frame_this_id): Replace d10v_frame_id_unwind.
(d10v_frame_unwind): Update.
(d10v_frame_prev_register): Replace d10v_frame_register_unwind.
(d10v_frame_unwind_cache): Replace this "fi" with "next_frame".
(saved_regs_unwinder): Replace this "frame" with "next_frame", and
"saved_regs" with "this_saved_regs".
2003-03-17 14:23:50 +00:00
Andrew Cagney
efd710d656
2003-03-16 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_pop): Don't call target_store_registers. Fix
problem reported by Mark Kettenis.
2003-03-16 20:47:40 +00:00
Andrew Cagney
055bb976b5
2003-03-14 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): When a legacy frame, always call
legacy_get_prev_frame. Simplify unwind code using assumption that
the unwinder is new.
(legacy_get_prev_frame): Handle legacy sentinel frame unwind here.
(legacy_frame_p): When no gdbarch_unwind_dummy_id, or
SAVED_DUMMY_FRAME_TOS, assume a legacy frame.
2003-03-14 20:34:14 +00:00
Andrew Cagney
ac2adee56d
2003-03-12 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_saved_register): Delete function.
* xstormy16-tdep.c: Update comment.
* regcache.h: Update comments.
* sparc-tdep.c (sparc_init_extra_frame_info): Instead of
get_saved_register and extract_address, use
frame_read_unsigned_register.
(sparc_frame_saved_pc): Ditto.
(sparc_get_saved_register): Instead of get_saved_register, use
frame_register.
(sparc_pop_frame): Ditto.
* frame.h (get_saved_register): Delete declaration.
* findvar.c: Update comments.
(value_of_register): Call frame_register instead of
get_saved_register.
(value_from_register): Ditto.
* config/sparc/tm-sparc.h: Update comment.
* breakpoint.c: Update comment.
Index: doc/ChangeLog
2003-03-12 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Delete
references to get_saved_register.
2003-03-14 17:07:01 +00:00
Andrew Cagney
129c1cd6c2
2003-03-14 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_GET_SAVED_REGISTER): Replace
GET_SAVED_REGISTER.
* gdbarch.h, gdbarch.c: Re-generate.
* frame.h: Update comments.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* x86-64-tdep.c (x86_64_init_abi): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* frame.c (frame_register): Update.
(get_saved_register): Update.
* config/sparc/tm-sparc.h (DEPRECATED_GET_SAVED_REGISTER): Update.
2003-03-14 16:05:36 +00:00
Andrew Cagney
749b82f626
2003-03-13 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_POP_FRAME): Replace POP_FRAME.
* gdbarch.h, gdbarch.c: Regenerate.
* valops.c (hand_function_call): Update comment.
* stack.c (return_command): Update comment.
* config/sparc/tm-sparc.h (DEPRECATED_POP_FRAME): Update.
* config/pa/tm-hppa.h (DEPRECATED_POP_FRAME): Update.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* x86-64-tdep.c (x86_64_init_abi): Update.
* vax-tdep.c (vax_gdbarch_init): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* ns32k-tdep.c (ns32k_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68k-tdep.c (m68k_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_gdbarch_init): Update.
* hppa-tdep.c (hppa_gdbarch_init): Update.
* h8300-tdep.c (h8300_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
2003-03-13 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Replace
POP_FRAME with DEPRECATED_POP_FRAME. Update description.
2003-03-13 21:45:43 +00:00
Andrew Cagney
1594fa5616
2003-03-13 Andrew Cagney <cagney@redhat.com>
...
* frame.c (legacy_frame_p): New function.
(get_prev_frame): Use legacy_frame_p.
* frame.h (legacy_frame_p): Declare.
2003-03-13 18:09:30 +00:00
Andrew Cagney
03febf9992
2003-03-12 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Rename the frame parameter to
"this_frame".
(get_next_frame, legacy_get_prev_frame): Ditto.
2003-03-12 23:55:36 +00:00
Andrew Cagney
0a1e1ca1f6
2003-03-12 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_current_frame): Check target_has_registers before
checking target_has_stack.
* eval.c (evaluate_subexp_standard): Use get_selected_frame,
instead of deprecated_selected_frame.
* findvar.c (value_of_register): Pass "frame", not
deprecated_selected_frame, to value_of_builtin_reg.
2003-03-12 22:39:16 +00:00
Andrew Cagney
8bedc05091
2003-03-12 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_FRAME_SAVED_PC): Replace FRAME_SAVED_PC.
* gdbarch.h, gdbarch.c: Re-generate.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* x86-64-tdep.h: Update.
* x86-64-tdep.c (x86_64_init_abi): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* ppc-linux-tdep.c (ppc_linux_init_abi): Update.
* ns32k-tdep.c (ns32k_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68k-tdep.c (m68k_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_gdbarch_init): Update.
* i386-interix-tdep.c (i386_interix_init_abi): Update.
* hppa-tdep.c (hppa_gdbarch_init): Update.
* h8300-tdep.c (h8300_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
* sh-tdep.c (sh_init_extra_frame_info): Update.
(sh64_init_extra_frame_info): Update.
* ns32knbsd-nat.c (frame_num_args): Update.
* m68hc11-tdep.c (m68hc11_init_extra_frame_info): Update.
* xstormy16-tdep.c (xstormy16_pop_frame): Update.
(xstormy16_frame_chain_valid): Update.
* vax-tdep.c (vax_saved_pc_after_call): Update.
* v850-tdep.c (v850_frame_chain): Update.
(v850_pop_frame): Update.
(v850_init_extra_frame_info): Update.
* sparc-tdep.c (setup_arbitrary_frame): Update.
* ns32k-tdep.c (umax_frame_num_args): Update.
* s390-tdep.c (s390_pop_frame_regular): Update.
* mn10300-tdep.c (mn10300_frame_chain): Update.
(mn10300_pop_frame_regular): Update.
(mn10300_init_extra_frame_info): Update.
* mips-tdep.c (mips_init_frame_pc_first): Update.
(mips_frame_chain): Update.
(mips_pop_frame): Update.
* mcore-tdep.c (mcore_frame_chain): Update.
(mcore_pop_frame): Update.
(mcore_init_extra_frame_info): Update.
* arch-utils.c (init_frame_pc_default): Update.
* m68k-tdep.c (isi_frame_num_args): Update.
(delta68_frame_num_args): Update.
(news_frame_num_args): Update.
* ia64-tdep.c (ia64_pop_frame_regular): Update.
* alpha-tdep.c (alpha_init_frame_pc_first): Update.
(alpha_frame_chain): Update.
(alpha_pop_frame): Update.
* hppa-tdep.c (hppa_saved_pc_after_call): Update.
(hppa_init_extra_frame_info): Update.
(hppa_frame_chain): Update.
(hppa_frame_chain_valid): Update.
* cris-tdep.c (cris_init_extra_frame_info): Update.
* avr-tdep.c (avr_init_extra_frame_info): Update.
* arm-tdep.c (arm_frame_chain_valid): Update.
(arm_init_extra_frame_info): Update.
(arm_pop_frame): Update.
* frame.c (frame_pc_unwind): Update.
* config/sparc/tm-sparc.h (DEPRECATED_FRAME_SAVED_PC): Update.
(DEPRECATED_INIT_FRAME_PC_FIRST): Update.
* config/rs6000/tm-rs6000.h (DEPRECATED_INIT_FRAME_PC_FIRST): Update.
* config/pa/tm-hppa.h (DEPRECATED_FRAME_SAVED_PC): Update.
* config/m68k/tm-delta68.h (DEPRECATED_FRAME_SAVED_PC): Update.
* config/m68k/tm-linux.h (DEPRECATED_FRAME_SAVED_PC): Update.
2003-03-12 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Rename
FRAME_SAVED_PC to DEPRECATED_FRAME_SAVED_PC.
2003-03-12 16:50:47 +00:00
Andrew Cagney
7a25a7c1cc
2003-03-12 Andrew Cagney <cagney@redhat.com>
...
Eliminate the need for POP_FRAME.
* frame.c (do_frame_unwind_register): New function.
(frame_pop): When no POP_FRAME, pop the frame using register
unwind and a scratch regcache.
(frame_saved_regs_pop): Delete function.
(trad_frame_unwinder): Update.
* d10v-tdep.c (d10v_frame_pop): Delete function.
(d10v_frame_unwind): Update.
* sentinel-frame.c (sentinel_frame_pop): Delete function.
(sentinel_frame_unwinder): Update.
* dummy-frame.c (dummy_frame_pop): Delete function.
(dummy_frame_unwind): Update.
* frame-unwind.h (frame_unwind_pop_ftype): Delete definition.
(struct frame_unwind): Update.
2003-03-12 15:39:30 +00:00
Andrew Cagney
e0d2ae1625
2003-03-11 Andrew Cagney <cagney@redhat.com>
...
* frame.c (deprecated_update_frame_pc_hack): Don't assume a next
frame. Problem found by Corinna Vinschen.
2003-03-11 17:47:13 +00:00
Andrew Cagney
12cc2063be
2003-03-10 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (gdbarch_unwind_pc): New method.
* gdbarch.h, gdbarch.c: Regenerate.
* frame.c (frame_pc_unwind): Rewrite. Prefer gdbarch_unwind_pc,
but use read_pc and FRAME_SAVED_PC as fall backs.
(frame_saved_regs_pc_unwind): Delete function.
(trad_frame_unwinder): Update.
* frame-unwind.h (frame_unwind_pc_ftype): Delete declaration.
(struct frame_unwind): Update.
* dummy-frame.c (dummy_frame_pc_unwind): Delete function.
(dummy_frame_unwind): Update.
* sentinel-frame.c (sentinel_frame_pc_unwind): Delete function.
(sentinel_frame_unwinder): Update.
* d10v-tdep.c (d10v_frame_pc_unwind): Delete function.
(d10v_frame_unwind): Update.
(d10v_unwind_pc): New function.
(d10v_gdbarch_init): Set unwind_pc.
Index: doc/ChangeLog
2003-03-10 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Cross reference
FRAME_SAVED_PC to unwind_pc. Document unwind_pc.
2003-03-10 15:28:41 +00:00
Andrew Cagney
6314f10474
2003-03-05 Andrew Cagney <cagney@redhat.com>
...
* d10v-tdep.c (d10v_unwind_dummy_id): New function.
(d10v_gdbarch_init): Set unwind_dummy_id and save_dummy_frame_tos.
* frame.c (get_prev_frame): Restructure the frame ID unwind code
to use unwind_dummy_id when a dummy frame.
* gdbarch.sh (unwind_dummy_id): New multi-arch method with
predicate.
* gdbarch.h, gdbarch.c: Regneerate.
Index: doc/ChangeLog
2003-03-05 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Document
unwind_dummy_id. Cross reference unwind_dummy_id and
SAVE_DUMMY_FRAME_TOS.
2003-03-05 23:14:18 +00:00
Andrew Cagney
b257978619
2003-03-05 Andrew Cagney <cagney@redhat.com>
...
* frame.c (deprecated_update_frame_pc_hack): Also update the the
cached PC value in the next frame.
2003-03-05 20:26:46 +00:00
Andrew Cagney
218e59567e
2003-03-05 Andrew Cagney <cagney@redhat.com>
...
* frame.h (struct frame_info): Replace "id_unwind_cache_p" and
"id_unwind_cache" with "id".
(frame_id_unwind): Delete declaration.
* frame.c (frame_id_unwind): Delete function.
(get_prev_frame): Call the frame id unwind method directly. Store
the returned next frame's ID value in NEXT_FRAME. Note that there
is a problem with the wrong unwind ID being called with the wrong
unwind cache.
2003-03-05 18:51:17 +00:00
Andrew Cagney
f30ee0bc4f
2003-03-01 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_FRAME_INIT_SAVED_REGS): Rename
FRAME_INIT_SAVED_REGS.
* gdbarch.h, gdbarch.c: Regenerate.
* stack.c (frame_info): Update.
* sh-tdep.c (sh_find_callers_reg, sh64_get_saved_pr): Update.
(sh_init_extra_frame_info, sh64_init_extra_frame_info): Update.
(sh64_get_saved_register, sh_pop_frame, sh64_pop_frame): Update.
* ns32k-tdep.c (ns32k_pop_frame): Update.
* mips-tdep.c (mips_pop_frame): Update.
* m68hc11-tdep.c (m68hc11_pop_frame): Update.
* ia64-tdep.c (ia64_frame_chain): Update.
(ia64_frame_saved_pc, ia64_get_saved_register): Update.
(ia64_frameless_function_invocation): Update.
(ia64_init_extra_frame_info): Update.
(ia64_pop_frame_regular): Update.
* frame.h (struct frame_info): Update comment.
(DEPRECATED_FRAME_INIT_SAVED_REGS): Rename macro.
* frame.c (frame_saved_regs_register_unwind): Update.
(frame_saved_regs_register_unwind): Update.
(deprecated_generic_get_saved_register): Update.
* cris-tdep.c: Update comment.
* config/sparc/tm-sparc.h (DEPRECATED_FRAME_INIT_SAVED_REGS):
Rename macro.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* x86-64-tdep.c (x86_64_init_abi): Update.
* vax-tdep.c (vax_gdbarch_init): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* ppc-linux-tdep.c (ppc_linux_init_abi): Update.
* ns32k-tdep.c (ns32k_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68k-tdep.c (m68k_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
2003-03-01 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Rename
FRAME_INIT_SAVED_REGS to DEPRECATED_FRAME_INIT_SAVED_REGS.
2003-03-02 04:02:25 +00:00
Andrew Cagney
e9582e713d
2003-03-01 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename
INIT_EXTRA_FRAME_INFO.
* gdbarch.h, gdbarch.c: Regenerate.
* arm-tdep.c: Update comments.
* sh-tdep.c, mcore-tdep.c, m68hc11-tdep.c: Ditto.
* i386-interix-tdep.c, hppa-tdep.c, h8300-tdep.c: Ditto.
* frame.h, avr-tdep.c: Ditto.
* frame.c (get_prev_frame): DEPRECATED_INIT_EXTRA_FRAME_INFO.
(create_new_frame, legacy_get_prev_frame): Ditto.
* config/sparc/tm-sparc.h (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename.
* config/pa/tm-hppa.h (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Initialize
deprecated_init_extra_frame_info instead of init_extra_frame_info.
* x86-64-tdep.c (x86_64_init_abi): Ditto.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* sparc-tdep.c (sparc_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* ppc-linux-tdep.c (ppc_linux_init_abi): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* mips-tdep.c (mips_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* i386-interix-tdep.c (i386_interix_init_abi): Ditto.
* hppa-tdep.c (hppa_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* arm-tdep.c (arm_gdbarch_init): Ditto.
* alpha-tdep.c (alpha_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
Index: doc/ChangeLog
2003-02-26 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo: Rename INIT_EXTRA_FRAME_INFO to
DEPRECATED_INIT_EXTRA_FRAME_INFO.
2003-03-02 00:11:43 +00:00
Andrew Cagney
b14185ce10
2003-02-25 Andrew Cagney <cagney@redhat.com>
...
* frame.c (get_prev_frame): Add comment on check for
inside_entry_func. Only check for inside_entry_file when not a
dummy and not a sentinel. Check that the new frame is not inner
to the old frame.
2003-02-25 23:52:16 +00:00
Andrew Cagney
ac2bd0a91c
2003-02-25 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_debug): New variable.
(_initialize_frame): Add "set/show debug frame" command.
(get_prev_frame): When frame_debug, print reason why unwind
failed.
2003-02-25 23:12:22 +00:00
Kevin Buettner
f796e4be80
* frame.c (generic_unwind_get_saved_register): Make non-static.
...
* frame.h (generic_unwind_get_saved_register): Declare.
* mips-tdep.c (read_next_frame_reg): Fetch register from
current regcache when frame is NULL.
(mips_init_extra_frame_info): Pass NULL explicitly for parameter
that must be NULL.
(mips_get_saved_register): Call generic_unwind_get_saved_register()
instead of frame_register_unwind().
2003-02-20 16:35:51 +00:00
Andrew Cagney
5b181d6277
2003-02-02 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (frame_unwind_register): New function.
(frame_unwind_unsigned_register): Use.
(frame_unwind_signed_register): Use.
(frame_read_register): New function.
* frame.h (frame_unwind_register): Declare.
(frame_read_register): Declare.
* d10v-tdep.c (d10v_frame_pop): Rewrite. Use regcache_cooked_write
and frame_unwind_register instead of read_memory, write_register and
deprecated_write_register_bytes.
2003-02-02 20:31:43 +00:00
Andrew Cagney
5f601589e1
2003-02-02 Andrew Cagney <ac131313@redhat.com>
...
* frame.h: Note that namelen can be negative.
* frame.c (frame_map_name_to_regnum): When LEN is negative, use
NAME's length.
* NEWS: Mention that the d10v's `regs' command is deprecated.
* d10v-tdep.c (d10v_gdbarch_init): Set print_registers_info.
(d10v_print_registers_info): New function.
(show_regs): Call d10v_print_registers_info.
(_initialize_d10v_tdep): Mark "show regs" command as deprecated.
2003-02-02 18:53:22 +00:00
Andrew Cagney
d62d1979c4
2003-01-29 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (frame_saved_regs_id_unwind): Assert FRAME_CHAIN_P.
(legacy_get_prev_frame): Assert FRAME_CHAIN_P.
(get_prev_frame): When FRAME_CHAIN_P, call legacy_get_prev_frame.
(frame_saved_regs_pc_unwind): Assert FRAME_SAVED_PC_P.
* gdbarch.sh (FRAME_CHAIN): Change to a function with predicate.
(FRAME_SAVED_PC): Change to a function with predicate.
* gdbarch.h, gdbarch.c: Re-generate.
2003-01-29 18:07:07 +00:00
Andrew Cagney
a94dd1fda2
2003-01-27 Andrew Cagney <ac131313@redhat.com>
...
* sentinel-frame.h, sentinel-frame.c: New files.
* Makefile.in (frame.o): Update dependencies.
(SFILES): Add sentinel-frame.c.
(sentinel_frame_h): Define.
(COMMON_OBS): Add sentinel-frame.o.
(sentinel-frame.o): Specify dependencies.
* frame.c: Include "sentinel-frame.h".
(frame_register_unwind): Rewrite assuming that there is always a a
->next frame.
(frame_register, generic_unwind_get_saved_register): Ditto.
(frame_read_unsigned_register, frame_read_signed_register): Ditto.
(create_sentinel_frame, unwind_to_current_frame): New functions.
(get_current_frame): Rewrite using create_sentinel_frame and
unwind_to_current_frame. When possible, always create a frame.
(create_new_frame): Set next to the sentinel frame.
(get_next_frame): Rewrite. Don't go below the level 0 frame.
(deprecated_update_frame_pc_hack): Update the next frame's PC and
ID cache when necessary.
(frame_saved_regs_id_unwind): Use frame_relative_level.
(deprecated_generic_get_saved_register): Use frame_relative_level,
get_frame_saved_regs, get_frame_pc, get_frame_base and
get_next_frame.
(frame_saved_regs_register_unwind): Use get_frame_saved_regs and
frame_register.
2003-01-27 21:41:41 +00:00
Andrew Cagney
eb4f72c5f9
2003-01-21 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (FRAME_OBSTACK_ZALLOC): Define.
* blockframe.c (backtrace_below_main): Move to "frame.c".
(frame_chain_valid): Delete check for backtrace_below_main.
(_initialize_blockframe): Delete initialization, move ``set
backtrace-below-main'' command to "frame.c".
(do_flush_frames_sfunc): Delete function.
* frame.c: Include "command.h" and "gdbcmd.h".
(frame_type_from_pc): New function.
(create_new_frame): Use frame_type_from_pc.
(legacy_get_prev_frame): New function.
(get_prev_frame): Rewrite. When an old style frame, call
legacy_get_prev_frame. Otherwize, unwind the PC first.
(_initialize_frame): Add ``set backtrace-below-main'' command.
* Makefile.in (frame.o): Update dependencies.
2003-01-21 19:32:42 +00:00
Andrew Cagney
dedc2a2b65
2003-01-19 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (frame_saved_regs_pop): Assert POP_FRAME_P.
* gdbarch.sh (POP_FRAME): Change to function with predicate.
Suppress actual parameters when `-'.
* gdbarch.h, gdbarch.c: Regenerate.
2003-01-19 23:27:28 +00:00
Andrew Cagney
dbe9fe588f
2003-01-19 Andrew Cagney <ac131313@redhat.com>
...
* frame-unwind.h (frame_unwind_pop_ftype): Declare.
(struct frame_unwind): Add field pop.
* frame.h (frame_pop): Declare.
* frame.c (frame_saved_regs_pop): New function.
(trad_frame_unwinder): Add frame_saved_regs_pop.
(frame_pop): New function.
* dummy-frame.c (dummy_frame_pop): New function.
(discard_innermost_dummy): New function.
(generic_pop_dummy_frame): Use discard_innermost_dummy.
(dummy_frame_unwind): Add dummy_frame_pop.
* infrun.c (normal_stop): Call frame_pop instead of POP_FRAME.
* valops.c (hand_function_call): Ditto.
* stack.c (return_command): Ditto.
2003-01-19 17:39:16 +00:00
Andrew Cagney
494cca16bd
2003-01-18 Andrew Cagney <ac131313@redhat.com>
...
* dummy-frame.h (dummy_frame_id_unwind): Delete declaration.
(dummy_frame_pc_unwind, dummy_frame_register_unwind): Ditto.
(struct frame_unwind): Declare opaque.
(dummy_frame_p): Declare function.
* dummy-frame.c (dummy_frame_id_unwind): Make static.
(dummy_frame_pc_unwind, dummy_frame_register_unwind): Ditto.
* dummy-frame.c: Include "frame-unwind.h".
(dummy_frame_p): New function.
(dummy_frame_unwind): New variable.
* frame.c: Include "frame-unwind.h".
(frame_pc_unwind, frame_id_unwind, frame_register_unwind): Update
to use the new unwind field.
(set_unwind_by_pc): Delete function.
(create_new_frame, get_prev_frame): Set unwind field using
frame_unwind_find_by_pc.
(trad_frame_unwind, trad_frame_unwinder): New variables.
* frame.h (trad_frame_unwind): Declare variable.
(frame_id_unwind_ftype): Delete declaration.
(frame_pc_unwind_ftype, frame_register_unwind_ftype): Ditto.
(struct frame_unwind): Declare opaque.
(struct frame_info): Replace the fields id_unwind, pc_unwind and
register_unwind with a single unwind pointer.
* frame-unwind.h, frame-unwind.c: New files.
* Makefile.in (SFILES): Add frame-unwind.c.
(frame_unwind_h): Define.
(COMMON_OBS): Add frame-unwind.o.
(frame-unwind.o): Specify dependencies.
(frame.o, dummy-frame.o): Update dependencies.
2003-01-18 17:25:23 +00:00
Andrew Cagney
c170fb600a
2003-01-16 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (frame_id_unwind_ftype): Change type so that the frame's
ID back using a parameter.
* frame.c (frame_id_unwind): Update call.
(frame_saved_regs_id_unwind): Update.
* dummy-frame.c (dummy_frame_id_unwind): Update function.
* dummy-frame.h (struct frame_id): Add opaque declaration.
(dummy_frame_id_unwind): Update declaration.
2003-01-16 16:54:57 +00:00
Andrew Cagney
8f87102502
2003-01-13 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (FRAME_INIT_SAVED_REGS): Change to function with
predicate.
* gdbarch.h, gdbarch.c: Regenerate.
* stack.c (frame_info): Only initialize the saved registers when
FRAME_INIT_SAVED_REGS_P.
* frame.c (frame_saved_regs_register_unwind): Assert
FRAME_INIT_SAVED_REGS_P.
(deprecated_generic_get_saved_register): Ditto.
2003-01-13 21:10:30 +00:00
Andrew Cagney
479ab5a00d
2003-01-09 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (frame_obstack_zalloc): Replace frame_obstack_alloc.
Update comments.
* frame.c (frame_obstack_zalloc): Replace frame_obstack_alloc.
(frame_saved_regs_zalloc): Update.
(frame_saved_regs_register_unwind): Update.
(create_new_frame): Update.
(get_prev_frame): Update.
(frame_extra_info_zalloc): Update.
(deprecated_get_frame_saved_regs): Update.
* dwarf2cfi.c (cfi_init_extra_frame_info): Update.
* cris-tdep.c: Update comment.
2003-01-09 18:53:21 +00:00
Andrew Cagney
2d75187b9e
2003-01-07 Andrew Cagney <cagney@redhat.com>
...
* frame.c (deprecated_get_frame_context): New function.
(deprecated_set_frame_context): New function.
* frame.h (deprecated_get_frame_context): Declare.
(deprecated_set_frame_context): Declare.
* dwarf2cfi.c (UNWIND_CONTEXT): Use deprecated_get_frame_context.
(cfi_init_extra_frame_info): Use deprecated_set_frame_context.
2003-01-07 22:53:09 +00:00
Andrew Cagney
483d36b217
2003-01-07 Andrew Cagney <cagney@redhat.com>
...
* frame.c (deprecated_set_frame_next_hack): New function.
(deprecated_set_frame_prev_hack): New function.
* frame.h (deprecated_set_frame_next_hack): Declare.
(deprecated_set_frame_prev_hack): Declare.
* mcore-tdep.c (analyze_dummy_frame): Use
deprecated_set_frame_next_hack and deprecated_set_frame_prev_hack.
* mn10300-tdep.c (analyze_dummy_frame): Ditto.
2003-01-07 19:19:00 +00:00
Andrew Cagney
9d3c96e6ec
zap #define FRAME_C.
2003-01-07 16:29:22 +00:00
Andrew Cagney
b0c6b05c0f
2003-01-07 Andrew Cagney <cagney@redhat.com>
...
* arm-tdep.c (arm_init_extra_frame_info): Use
deprecated_update_frame_base_hack.
* xstormy16-tdep.c (xstormy16_scan_prologue): Ditto.
* mn10300-tdep.c (analyze_dummy_frame): Ditto.
(fix_frame_pointer): Ditto.
(mn10300_analyze_prologue): Ditto.
2003-01-07 16:22:29 +00:00
Andrew Cagney
f6c609c4c2
2003-01-06 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (deprecated_frame_xmalloc_with_cleanup): Declare.
* frame.c (deprecated_frame_xmalloc_with_cleanup): New function.
* arm-tdep.c (arm_frame_chain): Allocate caller_fi using
deprecated_frame_xmalloc_with_cleanup.
* m32r-tdep.c (m32r_virtual_frame_pointer): Allocate `fi' using
deprecated_frame_xmalloc.
* mcore-tdep.c (analyze_dummy_frame): Ditto for dummy.
* mn10200-tdep.c (mn10200_frame_chain): Ditto for dummy_frame.
2003-01-06 21:50:25 +00:00
Daniel Jacobowitz
516034834f
* arm-tdep.c (arm_frame_chain_valid): Remove unnecessary test.
...
* d10v-tdep.c (d10v_frame_chain_valid): Remove unnecessary tests.
* hppa-tdep.c (hppa_frame_chain_valid): Remove unnecessary test.
* blockframe.c: Include "gdbcmd.h" and "command.h".
(backtrace_below_main): New variable.
(file_frame_chain_valid, func_frame_chain_valid)
(nonnull_frame_chain_valid, generic_file_frame_chain_valid)
(generic_func_frame_chain_valid): Remove functions.
(frame_chain_valid, do_flush_frames_sfunc): New functions.
(_initialize_blockframe): New function.
* Makefile.in (blockframe.o): Update dependencies.
* frame.c (frame_saved_regs_id_unwind, get_prev_frame): Remove FIXME
comment. Call frame_chain_valid ().
* frame.h: Remove old prototypes. Add prototype for
frame_chain_valid and update comments to match.
* gdbarch.sh: Change FRAME_CHAIN_VALID into a predicated function.
Remove old comment.
* gdbarch.h: Regenerated.
* gdbarch.c: Regenerated.
Plus updates to all other targets not to provide a FRAME_CHAIN_VALID.
2003-01-05 01:39:56 +00:00
Andrew Cagney
c8b8a89831
2003-01-04 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (deprecated_frame_xmalloc): New function.
(deprecated_set_frame_saved_regs_hack): New function.
(deprecated_set_frame_extra_info_hack): New function.
* frame.h (deprecated_frame_xmalloc): Declare.
(deprecated_set_frame_saved_regs_hack): Declare.
(deprecated_set_frame_extra_info_hack): Declare.
2003-01-04 13:55:30 +00:00
Andrew Cagney
2f1071075b
2002-12-18 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (deprecated_update_current_frame_pc_hack): Replace
deprecated_update_current_frame_pc_hack.
(deprecated_update_frame_base_hack): New function.
* frame.h (deprecated_update_frame_pc_hack): Replace
(deprecated_update_frame_base_hack): Declare.
* infrun.c (normal_stop): Update.
2002-12-18 18:03:42 +00:00
Andrew Cagney
6baff1d2e5
2002-12-13 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (get_frame_saved_regs): Declare.
(frame_saved_regs_zalloc): Change return type to CORE_ADDR
pointer.
* frame.c (get_frame_saved_regs): New function.
(frame_saved_regs_zalloc): Return the allocated saved_regs.
2002-12-13 23:18:56 +00:00
Andrew Cagney
b87efeee0c
2002-12-13 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (deprecated_update_current_frame_pc_hack): New
function.
* frame.h (deprecated_update_current_frame_pc_hack): Declare.
* infrun.c (normal_stop): Use said function instead of directly
modifying the frame's PC.
2002-12-13 21:57:40 +00:00
Andrew Cagney
c689142bec
2002-12-13 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (frame_id_unwind): Declare.
(struct frame_info): Add fields id_unwind, id_unwind_cache_p and
id_unwind_cache.
(frame_id_unwind_ftype): Declare.
* frame.c (frame_id_unwind): New function.
(set_unwind_by_pc): Add unwind_id parameter. Initialized.
(create_new_frame, get_prev_frame): Pass id_unwind to
set_unwind_by_pc.
(frame_saved_regs_id_unwind): New function.
(frame_saved_regs_id_unwind): New function.
* dummy-frame.c (dummy_frame_id_unwind): New function.
(struct dummy_frame): Add field id.
(generic_push_dummy_frame): Initialize `id'.
* dummy-frame.h (dummy_frame_id_unwind): Declare.
2002-12-13 16:40:25 +00:00
Andrew Cagney
18ea5ba4f0
2002-12-13 Andrew Cagney <ac131313@redhat.com>
...
* infcmd.c (run_stack_dummy): Create a frame ID directly and then
pass that to set_momentary_breakpoint. Move comments to where they
belong.
* frame.h (set_current_frame): Delete declaration.
* frame.c (set_current_frame): Delete function.
2002-12-13 16:26:02 +00:00
Andrew Cagney
2c517d0eb4
2002-12-13 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (frame_extra_info_zalloc): New function.
* frame.h (frame_extra_info_zalloc): Declare.
2002-12-13 16:11:32 +00:00
Andrew Cagney
0394eb2acb
2002-12-11 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (get_frame_extra_info): New function.
* frame.h (get_frame_extra_info): Declare.
2002-12-12 00:56:44 +00:00
Andrew Cagney
95486978f3
2002-12-11 Andrew Cagney <cagney@redhat.com>
...
* frame.c (deprecated_get_frame_saved_regs): Rename
get_frame_saved_regs.
* frame.h (deprecated_get_frame_saved_regs): Update declaration.
* sparc-tdep.c: Update.
* hppa-tdep.c: Update.
* h8500-tdep.c: Update.
2002-12-11 20:35:43 +00:00
Andrew Cagney
a5afb99fc1
2002-12-10 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_INIT_FRAME_PC): Rename INIT_FRAME_PC.
Change to a function with predicate.
* gdbarch.h, gdbarch.c: Re-generate.
* frame.c (get_prev_frame): Update. Test
DEPRECATED_INIT_FRAME_PC_P.
* config/sparc/tm-sparc.h (DEPRECATED_INIT_FRAME_PC): Update.
* config/rs6000/tm-rs6000.h (DEPRECATED_INIT_FRAME_PC): Update.
* config/mn10200/tm-mn10200.h (DEPRECATED_INIT_FRAME_PC): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* i386-interix-tdep.c (i386_interix_init_abi): Update.
* arm-tdep.c: Update comments.
* h8300-tdep.c (h8300_gdbarch_init): Explicitly set init_frame_pc.
* config/m32r/tm-m32r.h (DEPRECATED_INIT_FRAME_PC): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* x86-64-tdep.c (x86_64_init_abi): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* vax-tdep.c (vax_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* ns32k-tdep.c (ns32k_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Ditto.
* i386-tdep.c (i386_gdbarch_init): Ditto.
* d10v-tdep.c (d10v_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* arm-tdep.c (arm_gdbarch_init): Ditto.
* config/z8k/tm-z8k.h (INIT_FRAME_PC_FIRST): Delete macro.
(DEPRECATED_INIT_FRAME_PC): Rename INIT_FRAME_PC.
2002-12-11 02:26:38 +00:00
Andrew Cagney
97f4695394
2002-12-08 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (INIT_FRAME_PC_FIRST, INIT_FRAME_PC_DEFAULT): Convert
to pure functions.
* gdbarch.h, gdbarch.c: Re-generate.
* frame.c (get_prev_frame): Explictly assign prev's pc with value
returned by INIT_FRAME_PC_FIRST and INIT_EXTRA_FRAME_INFO.
* arch-utils.h (init_frame_pc_default, init_frame_pc_noop): Change
declaration to a function returning a CORE_ADDR.
* x86-64-tdep.h (x86_64_init_frame_pc): Ditto.
* arch-utils.c (init_frame_pc_noop): Return the PC value.
(init_frame_pc_default): Ditto.
* x86-64-linux-tdep.c (x86_64_init_frame_pc): Ditto.
* s390-tdep.c (s390_init_frame_pc_first): Ditto.
* mips-tdep.c (mips_init_frame_pc_first): Ditto.
* dwarf2cfi.h (cfi_init_frame_pc): Ditto.
* dwarf2cfi.c (cfi_init_frame_pc): Ditto.
* alpha-tdep.c (alpha_init_frame_pc_first): Ditto.
* i386-interix-tdep.c (i386_interix_init_abi): Set init_frame_pc
to init_frame_pc_noop.
(i386_interix_init_frame_pc): Delete function.
* z8k-tdep.c (init_frame_pc): Delete function.
* config/z8k/tm-z8k.h (INIT_FRAME_PC): Define as init_frame_pc_noop.
(INIT_FRAME_PC_FIRST): Ditto.
* config/mn10200/tm-mn10200.h (INIT_FRAME_PC): Ditto.
(INIT_FRAME_PC_FIRST): Ditto.
* config/sparc/tm-sparc.h (INIT_FRAME_PC): Ditto.
* config/rs6000/tm-rs6000.h (INIT_FRAME_PC): Redefine as
init_frame_pc_noop.
(INIT_FRAME_PC_FIRST): Convert to an expression.
* config/sparc/tm-sparc.h (INIT_FRAME_PC_FIRST): Ditto.
2002-12-09 02:04:17 +00:00
Andrew Cagney
2ca6c56187
2002-12-06 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (DEPRECATED_INIT_FRAME_PC_FIRST): Rename
INIT_FRAME_PC_FIRST. Change to a function with predicate. Do not
provide a default value.
* gdbarch.h, gdbarch.c: Regenerate.
* frame.c (get_prev_frame): Update. Check
DEPRECATED_INIT_FRAME_PC_FIRST_P.
* s390-tdep.c (s390_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* config/sparc/tm-sparc.h (DEPRECATED_INIT_FRAME_PC_FIRST): Update.
* config/rs6000/tm-rs6000.h (DEPRECATED_INIT_FRAME_PC_FIRST): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
2002-12-06 19:26:06 +00:00
Andrew Cagney
7a424e9969
2002-12-03 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (get_frame_id): Convert to a function.
(null_frame_id, frame_id_p): Declare.
(frame_id_eq, frame_id_inner): Declare.
(frame_id_build): New function.
* frame.c (get_frame_id): Update. Use null_frame_id.
(frame_find_by_id): Rewrite using frame_id_p, frame_id_eq and
frame_id_inner.
(null_frame_id, frame_id_p): Define.
(frame_id_eq, frame_id_inner): Define.
(frame_id_build): New function.
* varobj.c (varobj_create): Update.
(varobj_update): Update.
* valops.c (value_assign): Update.
(new_root_variable): Update.
* infrun.c (save_inferior_status): Update.
* breakpoint.c (watch_command_1): Update.
2002-12-04 00:05:54 +00:00
Andrew Cagney
ae45cd1682
2002-12-01 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (DEPRECATED_PC_IN_CALL_DUMMY): Rename
PC_IN_CALL_DUMMY. Change to predicate. Always allow call.
* gdbarch.h, gdbarch.c: Re-generate.
* config/sparc/tm-sparc.h, config/sparc/tm-sp64.h: Update.
* config/mn10200/tm-mn10200.h, config/h8500/tm-h8500.h: Update.
* config/pa/tm-hppa.h, frame.h: Update.
* x86-64-tdep.c, vax-tdep.c, sparc-tdep.c: Update.
* s390-tdep.c, ns32k-tdep.c, mn10300-tdep.c: Update.
* m68k-tdep.c, i386-tdep.c, frv-tdep.c: Update.
* cris-tdep.c, alpha-tdep.c: Update.
* frame.c (set_unwind_by_pc, create_new_frame): Use either
DEPRECATED_PC_IN_CALL_DUMMY or pc_in_dummy_frame.
(get_prev_frame): Ditto.
Index: doc/ChangeLog
2002-12-01 Andrew Cagney <ac131313@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Delete
PC_IN_CALL_DUMMY.
2002-12-01 19:07:16 +00:00
Andrew Cagney
6e7f8b9cba
2002-11-29 Andrew Cagney <ac131313@redhat.com>
...
* stack.c (selected_frame, select_frame): Move from here ...
* frame.c (selected_frame, select_frame): ... to here. Include
"language.h".
* Makefile.in (frame.o): Update dependencies.
* frame.c (get_selected_frame): New function.
* frame.h (get_selected_frame): Declare.
(deprecated_selected_frame): Rename selected_frame.
* ada-lang.c, ada-tasks.c, breakpoint.c, corelow.c: Update.
* eval.c, f-valprint.c, findvar.c, frame.c, frame.h: Update.
* h8300-tdep.c, h8500-tdep.c, hppa-tdep.c, infcmd.c: Update.
* inflow.c, infrun.c, macroscope.c, mips-tdep.c: Update.
* mn10300-tdep.c, ocd.c, regcache.h, remote-e7000.c: Update.
* remote-mips.c, remote-rdp.c, sh-tdep.c, sparc-tdep.c: Update.
* stack.c, thread.c, tracepoint.c, valops.c, varobj.c: Update.
* z8k-tdep.c, cli/cli-cmds.c: Update.
Index: mi/ChangeLog
2002-11-29 Andrew Cagney <ac131313@redhat.com>
* mi/mi-cmd-stack.c, mi/mi-main.c: Update to use
deprecated_selected_frame.
Index: tui/ChangeLog
2002-11-29 Andrew Cagney <ac131313@redhat.com>
* tui/tui-hooks.c: Update to use deprecated_selected_frame.
* tui/tui.c, tui/tuiDisassem.c, tui/tuiRegs.c: Ditto.
* tui/tuiSource.c, tui/tuiSourceWin.c, tui/tuiWin.c: Ditto.
2002-11-29 19:15:16 +00:00
Andrew Cagney
1058bca748
2002-11-28 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (pc_notcurrent): New function.
(find_frame_sal): New function.
* frame.h (find_frame_sal): Declare.
(struct symtab_and_line): Add opaque declaration.
* stack.c (print_frame_info_base): Use find_pc_line instead of
find_frame_sal.
(frame_info): Ditto.
* ada-lang.c (find_printable_frame): Ditto.
Index: tui/ChangeLog
2002-11-28 Andrew Cagney <ac131313@redhat.com>
* tuiStack.c (tuiShowFrameInfo): Use find_frame_sal instead of
find_pc_line.
2002-11-29 01:52:02 +00:00
Andrew Cagney
07555a7286
2002-11-28 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (DEPRECATED_USE_GENERIC_DUMMY_FRAMES): Rename
USE_GENERIC_DUMMY_FRAMES.
* gdbarch.h, gdbarch.c: Regenerate.
* valops.c, frame.c: Update.
* config/z8k/tm-z8k.h, config/mn10200/tm-mn10200.h: Update.
* config/m32r/tm-m32r.h, config/h8500/tm-h8500.h: Update.
* config/pa/tm-hppa.h, blockframe.c: Update.
* vax-tdep.c, sparc-tdep.c, ns32k-tdep.c: Ditto.
* m68k-tdep.c, alpha-tdep.c: Ditto.
* arm-tdep.c: Eliminate USE_GENERIC_DUMMY_FRAMES as always 1.
* mips-tdep.c: Ditto.
Index: doc/ChangeLog
2002-11-28 Andrew Cagney <ac131313@redhat.com>
* gdbint.texinfo (Host Definition): Delete documentation on
USE_GENERIC_DUMMY_FRAMES.
2002-11-28 21:38:44 +00:00
Andrew Cagney
c193f6ac9c
2002-11-19 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (FRAME_FP): Delete macro.
(get_frame_base): New function declaration.
* frame.c (get_frame_base): New function.
(get_frame_id): Use ->frame.
(frame_find_by_id): Rewrite to use get_frame_id.
* blockframe.c: Use get_frame_base instead of FRAME_FP.
* cris-tdep.c, d10v-tdep.c, findvar.c, h8500-tdep.c: Ditto.
* hppa-tdep.c, i386-tdep.c, infcmd.c, infrun.c: Ditto.
* m68hc11-tdep.c, m68k-tdep.c, mcore-tdep.c, mips-tdep.c: Ditto.
* mn10200-tdep.c, mn10300-tdep.c, rs6000-tdep.c: Ditto.
* sh-tdep.c, sparc-tdep.c, stack.c, tracepoint.c: Ditto.
* v850-tdep.c, valops.c, z8k-tdep.c: Ditto.
2002-11-24 19:48:13 +00:00
Andrew Cagney
931d12c681
2002-11-24 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (set_unwind_by_pc): Revert change below, use
PC_IN_CALL_DUMMY.
(get_prev_frame): Ditto.
2002-11-24 15:41:59 +00:00
Andrew Cagney
5e0f933e90
2002-11-24 Andrew Cagney <ac131313@redhat.com>
...
* dummy-frame.c (pc_in_dummy_frame): New function.
(generic_pc_in_call_dummy): Call pc_in_dummy_frame.
(find_dummy_frame): Update comment.
(generic_pop_current_frame): Use get_frame_type.
* dummy-frame.h (pc_in_dummy_frame): Declare.
* frame.c (set_unwind_by_pc): Use pc_in_dummy_frame.
(create_new_frame): Use pc_in_dummy_frame.
(get_prev_frame): Use pc_in_dummy_frame.
(frame_saved_regs_register_unwind): Use get_prev_frame.
(deprecated_generic_get_saved_register): Use get_prev_frame.
2002-11-24 15:06:08 +00:00
Andrew Cagney
85cf597a18
2002-11-18 Andrew Cagney <ac131313@redhat.com>
...
* stack.c (frame_relative_level): Copy function from here ...
* frame.c (frame_relative_level): ...to here.
2002-11-19 00:46:00 +00:00
Andrew Cagney
5a203e4405
2002-11-18 Andrew Cagney <ac131313@redhat.com>
...
* frame.h (enum frame_type): Define.
(get_frame_type): Declare.
(struct frame_info): Add field `type'. Delete field
signal_handler_caller.
(deprecated_set_frame_signal_handler_caller): Declare.
* frame.c (get_frame_type): New function.
(deprecated_set_frame_type): New function.
(create_new_frame): Set the frame's type.
(get_prev_frame): Similar.
* sparc-tdep.c: Use get_frame_type instead of signal_handler_caller.
* s390-tdep.c: Ditto.
* m68klinux-nat.c: Ditto.
* ns32k-tdep.c: Ditto.
* x86-64-linux-tdep.c: Ditto.
* vax-tdep.c: Ditto.
* rs6000-tdep.c: Ditto.
* ppc-linux-tdep.c: Ditto.
* i386-interix-tdep.c: Ditto.
* mips-tdep.c: Ditto.
* m68k-tdep.c: Ditto.
* hppa-tdep.c: Ditto.
* ia64-tdep.c: Ditto.
* cris-tdep.c: Ditto.
* arm-tdep.c: Ditto.
* alpha-tdep.c: Ditto.
* i386-tdep.c: Ditto.
* stack.c: Ditto.
* ada-lang.c: Ditto.
* blockframe.c: Update.
* i386-interix-tdep.c (i386_interix_back_one_frame): Use
deprecated_set_frame_type instead of signal_handler_caller.
* ppc-linux-tdep.c (ppc_linux_init_extra_frame_info): Ditto.
* rs6000-tdep.c (rs6000_init_extra_frame_info): Ditto.
* breakpoint.h: Delete FIXME suggesting get_frame_type.
Index: tui/ChangeLog
2002-11-18 Andrew Cagney <ac131313@redhat.com>
* tuiStack.c (tuiShowFrameInfo): Use get_frame_type instead of
signal_handler_caller.
2002-11-18 22:19:33 +00:00
Andrew Cagney
18cde8d5ad
2002-11-15 Andrew Cagney <cagney@redhat.com>
...
* frame.c (generic_unwind_get_saved_register): Make static.
* frame.h (generic_unwind_get_saved_register): Delete declaration.
* avr-tdep.c (avr_gdbarch_init): Do not set get_saved_register,
defaults to generic_unwind_get_saved_register.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* i386-tdep.c (i386_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* d10v-tdep.c (d10v_gdbarch_init): Ditto.
* config/mn10200/tm-mn10200.h (GET_SAVED_REGISTER): Delete macro.
2002-11-16 01:00:07 +00:00
Andrew Cagney
f18c5a7303
2002-11-15 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (frame_pc_unwind): New function.
(frame_saved_regs_pc_unwind): New function.
(frame_register_unwind): Pass unwind_cache instead of
register_unwind_cache.
(set_unwind_by_pc): Add unwind_pc parameter, set.
(create_new_frame): Pass frame->pc_unwind to set_unwind_by_pc.
(get_prev_frame): Ditto.
* frame.h (frame_pc_unwind_ftype): Declare.
(struct frame_info): Add pc_unwind, pc_unwind_cache_p and
pc_unwind_cache. Rename register_unwind_cache to unwind_cache.
(frame_pc_unwind): Declare.
* dummy-frame.c (dummy_frame_pc_unwind): New function.
(struct dummy_frame): Add comment mentioning that values are for
previous frame.
* dummy-frame.h (dummy_frame_pc_unwind): Declare.
* blockframe.c (file_frame_chain_valid): Use frame_pc_unwind.
(generic_file_frame_chain_valid): Ditto.
* stack.c (frame_info): Ditto.
2002-11-15 22:16:25 +00:00
Andrew Cagney
15220c65c0
2002-11-09 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (get_prev_frame): Test prev_p to identify a previously
unwound frame. Initialize prev_p.
* frame.h (struct frame_info): Add field prev_p. Expand prev/next
comment.
2002-11-09 18:14:10 +00:00
Andrew Cagney
95adb866d7
2002-11-09 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (get_prev_frame): Cleanups. Eliminate redundant tests
for a NULL NEXT_FRAME. Simplify fromleaf initialization. Add
more comments. Zap dead code.
2002-11-09 17:45:17 +00:00
Andrew Cagney
8779790c2e
2002-11-08 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (set_unwind_by_pc): Use dummy_frame_register_unwind.
* dummy-frame.c (find_dummy_frame): Rename
generic_find_dummy_frame, make static. Return the dummy frame
instead of the regcache.
(generic_find_dummy_frame): Re-implement using find_dummy_frame,
(cached_find_dummy_frame): New function. Use find_dummy_frame.
(dummy_frame_register_unwind): Rename
generic_call_dummy_register_unwind. Use cached_find_dummy_frame.
* dummy-frame.h (dummy_frame_register_unwind): Rename
generic_call_dummy_register_unwind.
2002-11-08 23:12:52 +00:00
Andrew Cagney
4c1e7e9d5e
2002-11-08 Andrew Cagney <ac131313@redhat.com>
...
* Makefile.in (frame.o): Update dependencies.
* blockframe.c (current_frame, frame_obstack_alloc)
(frame_saved_regs_zalloc, get_current_frame)
(set_current_frame, create_new_frame)
(set_unwind_by_pc, get_next_frame)
(flush_cached_frames, reinit_frame_cache)
(frame_saved_regs_register_unwind)
(deprecated_generic_get_saved_register)
(get_prev_frame, get_frame_pc, get_frame_saved_regs)
(_initialize_blockframe): Move frame code from
here...
* frame.c: ...to here. Include "gdb_obstack.h", "gdbcore.h",
"annotate.h" and "dummy-frame.h".
(_initialize_frame): New function.
2002-11-08 20:48:55 +00:00
Andrew Cagney
a216a32234
2002-11-05 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (GET_SAVED_REGISTER): Change to a predicate function.
* gdbarch.h, gdbarch.c: Regnerate.
* frame.h (frame_register): Declare.
* frame.c (frame_register): New function.
(get_saved_register): Test GET_SAVED_REGISTER_P before calling
GET_SAVED_REGISTER, otherwize call
generic_unwind_get_saved_register.
(frame_register_read): Use frame_register instead of
get_saved_register.
2002-11-05 21:44:05 +00:00
Andrew Cagney
4caf0990c1
2002-11-02 Andrew Cagney <cagney@redhat.com>
...
* regcache.h (deprecated_read_register_gen): Rename
read_register_gen.
(deprecated_write_register_gen): Rename write_register_gen.
* i387-tdep.c: Update.
* x86-64-linux-nat.c: Update
* wince.c: Update.
* thread-db.c: Update.
* win32-nat.c: Update.
* mips-tdep.c: Update.
* d10v-tdep.c: Update.
* cris-tdep.c: Update.
* remote-sim.c: Update.
* remote-rdi.c: Update.
* remote-rdp.c: Update.
* frame.c: Update.
* target.c: Update.
* blockframe.c: Update.
* x86-64-tdep.c: Update.
* xstormy16-tdep.c: Update.
* sh-tdep.c: Update.
* s390-tdep.c: Update.
* rs6000-tdep.c: Update.
* sparc-tdep.c: Update.
* i386-tdep.c: Update.
* dwarf2cfi.c: Update.
* regcache.c: Update.
2002-11-02 14:59:10 +00:00
Andrew Cagney
f908a0eb77
2002-10-31 Andrew Cagney <cagney@redhat.com>
...
* frame.c (frame_read_unsigned_register): New function.
(frame_read_signed_register): New function.
* frame.h (frame_read_unsigned_register): Declare.
(frame_read_signed_register): Declare.
2002-10-31 20:14:33 +00:00
Andrew Cagney
e36180d795
2002-09-25 Andrew Cagney <cagney@redhat.com>
...
* frame.c: Include "gdb_string.h" and "builtin-regs.h".
(frame_map_regnum_to_name): New function.
(frame_map_name_to_regnum): New function.
* frame.h (frame_map_name_to_regnum): Declare.
(frame_map_regnum_to_name): Declare.
* builtin-regs.c (builtin_reg_map_regnum_to_name): New function.
* builtin-regs.h (builtin_reg_map_regnum_to_name): Declare.
* parse.c: Do not include "builtin-regs.h".
(target_map_name_to_register): Delete function.
(write_dollar_variable): Use frame_map_name_to_regnum.
* parser-defs.h (target_map_name_to_register): Delete declaration.
* expprint.c: Include "frame.h".
(print_subexp): Use frame_map_regnum_to_name.
* eval.c (evaluate_subexp_standard): Use frame_map_regnum_to_name.
* infcmd.c (registers_info): Use frame_map_name_to_regnum.
2002-09-25 Andrew Cagney <cagney@redhat.com>
* gdb.base/pc-fp.exp, gdb.base/pc-fp.c: New test.
2002-09-25 20:30:38 +00:00
Andrew Cagney
135c175f57
2002-09-17 Andrew Cagney <cagney@redhat.com>
...
* h8300-tdep.c (h8300_frame_chain):
(h8300_frame_saved_pc):
* blockframe.c (deprecated_read_register_dummy): Rename
generic_read_register_dummy.
* frame.c (frame_unwind_signed_register): New function.
(frame_unwind_unsigned_register): New function.
* frame.h (frame_unwind_signed_register): Declare.
(frame_unwind_unsigned_register): Declare.
(deprecated_read_register_dummy): Rename
generic_read_register_dummy.
* xstormy16-tdep.c (xstormy16_frame_saved_pc): Update.
* rs6000-tdep.c (rs6000_frame_saved_pc): Update.
* s390-tdep.c (s390_frame_saved_pc_nofix): Update.
(s390_frame_chain): Update.
* v850-tdep.c (v850_find_callers_reg): Update.
(v850_frame_saved_pc): Update.
* m32r-tdep.c (m32r_init_extra_frame_info): Update.
(m32r_find_callers_reg): Update.
(m32r_frame_saved_pc): Update.
* sh-tdep.c (sh_find_callers_reg): Update.
(sh64_get_saved_pr): Update.
(sh_init_extra_frame_info): Update.
(sh_init_extra_frame_info): Update.
(sh64_init_extra_frame_info): Update.
(sh64_init_extra_frame_info): Update.
* mcore-tdep.c (mcore_find_callers_reg): Update.
(mcore_frame_saved_pc): Update.
(mcore_init_extra_frame_info): Update.
* i386-tdep.c (i386_frame_saved_pc): Update.
* ia64-tdep.c (ia64_frame_saved_pc): Update.
(ia64_init_extra_frame_info): Update.
(ia64_init_extra_frame_info): Update.
* d10v-tdep.c (d10v_frame_saved_pc): Update.
* cris-tdep.c (cris_init_extra_frame_info): Update.
* avr-tdep.c (avr_frame_chain): Update.
(avr_init_extra_frame_info): Update.
(avr_frame_saved_pc): Update.
* arm-tdep.c (arm_find_callers_reg): Update.
(arm_init_extra_frame_info): Update.
(arm_frame_saved_pc): Update.
2002-09-17 20:42:01 +00:00
Andrew Cagney
905abb3f14
2002-09-13 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (find_saved_register): Delete function.
* frame.h (find_saved_register): Delete declaration.
Fix PR gdb/631.
2002-09-13 22:53:36 +00:00
Andrew Cagney
fa5f27c703
2002-08-19 Andrew Cagney <ac131313@redhat.com>
...
* frame.c (frame_register_unwind): When a register, set addrp to
the register's byte.
2002-08-21 03:34:22 +00:00
Kevin Buettner
b2f01c350b
* frame.c (find_saved_register): Break out of loop once saved
...
register address is found. Don't mention sparc in loop comment
anymore.
2002-08-06 22:42:56 +00:00
Andrew Cagney
101dcfbe4a
* infrun.c (struct inferior_status): Replace fields
...
selected_frame_address and selected_level with field
selected_frame_id.
(save_inferior_status): Update. Use get_frame_id.
(struct restore_selected_frame_args): Delete.
(restore_selected_frame): Update. Use frame_find_by_id.
(restore_inferior_status): Update.
* breakpoint.h (struct breakpoint): Change type of
watchpoint_frame to frame_id.
* breakpoint.c (insert_breakpoints): Use frame_find_by_id. Remove
call to get_current_frame.
(do_enable_breakpoint): Use frame_find_by_id. Remove call to
get_current_frame.
(watchpoint_check): Use frame_find_by_id.
* frame.h (record_selected_frame): Delete declaration.
* stack.c (record_selected_frame): Delete function.
* frame.h (struct frame_id): Define.
(get_frame_id): Declare.
(frame_find_by_id): Declare.
* frame.c (frame_find_by_id): New function.
(get_frame_id): New function.
2002-06-10 23:25:50 +00:00
Andrew Cagney
e4b415d96b
* frame.c (GET_SAVED_REGISTER): Delete macro definition.
...
(default_get_saved_register): Delete function.
* gdbarch.sh (GET_SAVED_REGISTER): Set default to
generic_unwind_get_saved_register.
* gdbarch.h, gdbarch.c: Re-generate.
2002-06-08 18:57:38 +00:00
Andrew Cagney
4f4608125d
* stack.c (frame_info): Use frame_register_unwind instead of
...
saved_regs. Mention when the SP is on the stack or in a register.
* frame.h (frame_register_unwind_ftype): Define. Document.
(struct frame_info): Add field register_unwind and
register_unwind_cache.
(frame_register_unwind): Declare.
(generic_unwind_get_saved_register): Declare.
* frame.c (frame_register_unwind): New function.
(generic_unwind_get_saved_register): New function.
* blockframe.c (generic_call_dummy_register_unwind): New function.
(frame_saved_regs_register_unwind): New function.
(set_unwind_by_pc): New function.
(create_new_frame): New function.
(get_prev_frame): New function.
2002-06-01 20:44:21 +00:00
Andrew Cagney
c97dcfc7b8
* regcache.c (register_valid): Revise comments refering to "Not
...
available" and "unavailable".
* frame.c (frame_register_read): Ditto.
* findvar.c (value_of_register): Ditto.
2002-05-15 01:01:56 +00:00
Andrew Cagney
d49d1e0a2f
* frame.c (find_saved_register): Delete #ifdef
...
HAVE_REGISTER_WINDOWS code.
* config/sparc/tm-sparc.h: Update comments.
* config/i960/tm-i960.h (HAVE_REGISTER_WINDOWS): Delete macro.
* gdbint.texinfo (Target Architecture Definition): Delete
definition of HAVE_REGISTER_WINDOWS.
2002-04-21 15:52:35 +00:00
Jason Thorpe
aa40ec9031
* frame.c (find_saved_register): Avoid a NULL pointer
...
dereference and actually walk the frame list.
2002-04-20 23:54:28 +00:00
Andrew Cagney
8b0d4340d7
* frame.c (find_saved_register): Find saved registers in the next
...
not prev frame.
Fix PR gdb/365.
2002-04-17 21:55:12 +00:00
Andrew Cagney
cda5a58a3e
* defs.h (read_relative_register_raw_bytes): Delete declaration.
...
* frame.c (frame_register_read): New function. Return non-zero on
success.
(read_relative_register_raw_bytes_for_frame): Delete.
(read_relative_register_raw_bytes): Delete.
* frame.h (frame_register_read): Declare.
* d30v-tdep.c: Update Copyright. Use frame_register_read.
* sh-tdep.c: Ditto.
* infcmd.c (do_registers_info): Ditto.
* hppa-tdep.c: Ditto.
* rs6000-tdep.c: Ditto.
* h8500-tdep.c: Ditto.
* mips-tdep.c: Ditto.
* h8300-tdep.c: Ditto.
* z8k-tdep.c: Ditto.
2002-04-12 18:18:59 +00:00
Andrew Cagney
96cb11df6d
* frame.c (read_relative_register_raw_bytes_for_frame): Do not
...
override FP_REGNUM with frame->fp. Update copyright.
* parse.c (num_std_regs, std_regs): Delete.
(target_map_name_to_register): Do not search std_regs. Update
function description.
* parser-defs.h (num_std_regs, std_regs, struct std_regs): Delete
declarations. Update copyright.
Fix PR gdb/251.
2002-04-09 22:14:39 +00:00
Kevin Buettner
39f770628a
Phase 1 of the ptid_t changes.
2001-05-04 04:15:33 +00:00
Kevin Buettner
b6ba6518e9
Update/correct copyright notices.
2001-03-06 08:22:02 +00:00
Andrew Cagney
4e052eda91
Create new file regcache.h. Update all uses.
2001-03-01 01:39:22 +00:00
Andrew Cagney
d65fe83949
Move frame specific register code to the new file frame.c.
2001-02-20 22:39:03 +00:00