Commit Graph

78 Commits

Author SHA1 Message Date
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
Alexandre Oliva
3de2dc4ff6 * frame.h (frame_id_unwind_ftype): Fix typo in return type. 2002-12-13 20:21:32 +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
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
805e2818d6 2002-11-29 Andrew Cagney <ac131313@redhat.com>
* frame.h (get_selected_block): Add comments.
2002-11-29 15:39:51 +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
8c69fc49d5 2002-11-28 Andrew Cagney <cagney@redhat.com>
* stack.c (get_selected_block): In-line get_current_block.
	* frame.h (get_current_block): Delete declaration.
	* blockframe.c (get_current_block): Delete function.
2002-11-29 00:15:48 +00:00
Andrew Cagney
abc0af478d 2002-11-28 Andrew Cagney <cagney@redhat.com>
* frame.h: Update comments on set_current_frame, create_new_frame,
	flush_cached_frames, reinit_frame_cache, select_frame and
	selected_frame.
2002-11-28 17:11:41 +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
7d8547c960 2002-11-23 Andrew Cagney <ac131313@redhat.com>
* blockframe.c (find_frame_addr_in_frame_chain): Move function
	from here ...
	* varobj.c (find_frame_addr_in_frame_chain): ... to here.
	(varobj_create): Note that frame ID should be used.
	* frame.h (find_frame_addr_in_frame_chain): Delete declaration.
2002-11-24 14:16:38 +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
f407986f1a 2002-11-15 Andrew Cagney <cagney@redhat.com>
* frame.h (sigtramp_saved_pc): Delete declaration.
	* blockframe.c (sigtramp_saved_pc): Delete function.
	* ns32k-tdep.c (ns32k_sigtramp_saved_pc): New function.
	(ns32k_frame_saved_pc): Call ns32k_sigtramp_saved_pc.
	* vax-tdep.c (vax_sigtramp_saved_pc): New function.
	(vax_frame_saved_pc): Call vax_sigtramp_saved_pc.
2002-11-15 23:24:21 +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
c97eb5d982 2002-11-14 Andrew Cagney <ac131313@redhat.com>
* frame.h: Move the most relevant interface functions to the start
	of the file.
2002-11-15 15:50:21 +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
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
bdcdd53569 2002-11-01 Andrew Cagney <cagney@redhat.com>
* frame.h (deprecated_generic_get_saved_register): Rename
	generic_get_saved_register.
	* blockframe.c (deprecated_generic_get_saved_register): Update.
	* xstormy16-tdep.c (xstormy16_get_saved_register): Update.
	(xstormy16_frame_saved_register): Update.
	* sh-tdep.c (sh_gdbarch_init): Update.
	* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
	* ia64-tdep.c (ia64_get_saved_register): Update.
	* cris-tdep.c (cris_gdbarch_init): Update.
	* config/m32r/tm-m32r.h (GET_SAVED_REGISTER): Update.
	* arm-tdep.c (arm_gdbarch_init): Update.
2002-11-01 21:21:49 +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
Elena Zannoni
36dc181bba 2002-10-02 Elena Zannoni <ezannoni@redhat.com>
* inferior.h (registers_info, stepi_command, nexti_command,
        continue_command, interrupt_target_command): Export from infcmd.c.
        * frame.h (args_info, selected_frame_level_changed_hook,
        return_command): Export from stack.c.
        * v850ice.c (stepi_command, nexti_command, continue_command): use
        prototypes from inferior.h.
        * tracepoint.c (registers_info, args_info, locals_info): Use
        prototypes from frame.h and inferior.h.
        * Makefile.in (mi-main.o): Add dependency on frame.h.

2002-10-02  Elena Zannoni  <ezannoni@redhat.com>

        * mi-main.c (mi_cmd_exec_return): Don't use
        return_command_wrapper, use return_command instead.
        (mi_cmd_exec_interrupt): Don't use
        interrupt_target_command_wrapper, use interrupt_target_command
        instead.
        (return_command_wrapper, interrupt_target_command_wrapper):
        Delete.
        Include frame.h.

2002-10-02  Elena Zannoni  <ezannoni@redhat.com>

        * tui-hooks.c (selected_frame_level_changed_hook): Use the one
        exported from frame.h.
2002-10-02 21:33:59 +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
Joel Brobecker
42f99ac23d * frame.h (frame_address_in_block): New function.
* blockframe.c (frame_address_in_block): New function extracted
        from get_frame_block().
        (get_frame_block): Use frame_address_in_block().
        (block_innermost_frame): Use frame_address_in_block() to match
        the frame pc address against the block boundaries rather than
        the frame pc directly. This prevents a failure when a frame pc
        is actually a return-address pointing immediately after the end
        of the given block.
2002-07-02 19:08:55 +00:00
Andrew Cagney
da130f98ef * frame.h (deprecated_generic_find_dummy_frame): Rename
generic_find_dummy_frame.
* blockframe.c (generic_find_dummy_frame): Make static.
(deprecated_generic_find_dummy_frame): New function.
* sh-tdep.c (sh_nofp_frame_init_saved_regs): Replace
generic_find_dummy_frame with deprecated_find_dummy_frame.
(sh64_nofp_frame_init_saved_regs): Ditto.
(sh_fp_frame_init_saved_regs): Ditto.
* s390-tdep.c (s390_frame_saved_pc_nofix): Ditto.
(s390_frame_chain): Ditto.
* cris-tdep.c (cris_frame_init_saved_regs): Ditto.
2002-06-26 15:28:46 +00:00
Michal Ludvig
cc22880b3e 2002-06-18 Michal Ludvig <mludvig@suse.cz>
* frame.h (struct frame_info): Change type of context to
	'struct context'.
2002-06-18 09:04:24 +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
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
bedfa57bf4 * stack.c (select_and_print_frame): Make static. Delete the
parameter `level'.
(func_command): Update call.
(select_frame_command): Delete code computing the frame level.
* frame.h (select_and_print_frame): Delete declaration.
2002-05-05 02:24:38 +00:00
Andrew Cagney
0f7d239c5a * frame.h (select_frame): Delete level parameter.
* stack.c (select_frame): Update.  Use frame_relative_level to
obtain the frame's level.
(select_and_print_frame): Update call.
(select_frame_command): Ditto.
(up_silently_base): Ditto.
(down_silently_base): Ditto.
* ocd.c (ocd_start_remote): Ditto.
* remote-rdp.c (remote_rdp_open): Ditto.
* remote-mips.c (mips_initialize): Ditto.
(common_open): Ditto.
* remote-e7000.c (e7000_start_remote): Ditto.
* m3-nat.c (select_thread): Ditto.
* hppa-tdep.c (child_get_current_exception_event): Ditto.
(child_get_current_exception_event): Ditto.
* varobj.c (varobj_create): Ditto.
(varobj_update): Ditto.
(c_value_of_root): Ditto.
* tracepoint.c (finish_tfind_command): Ditto.
* corelow.c (core_open): Ditto.
* arch-utils.c (generic_prepare_to_proceed): Ditto.
* thread.c (info_threads_command): Ditto.
(switch_to_thread): Ditto.
* infrun.c (normal_stop): Ditto.
(restore_selected_frame): Ditto.
(restore_inferior_status): Ditto.
* breakpoint.c (insert_breakpoints): Ditto.
(watchpoint_check): Ditto.
(bpstat_stop_status): Ditto.
(do_enable_breakpoint): Ditto.
* blockframe.c (flush_cached_frames): Ditto.
(reinit_frame_cache): Ditto.
2002-05-05 01:15:13 +00:00
Andrew Cagney
bfb01f370f * stack.c (selected_frame_level):
(select_frame): Do not set selected_frame_level.
* frame.h (selected_frame_level): Delete declaration.
2002-04-26 04:56:49 +00:00
Andrew Cagney
6096c27ac0 * valops.c (hand_function_call): Call
generic_save_call_dummy_addr.
* frame.h (generic_save_call_dummy_addr): Declare.
* blockframe.c (struct dummy_frame): Add fields call_lo and
call_hi.
(generic_find_dummy_frame): Check for PC in range call_lo to
call_hi instead of entry_point_address.
(generic_pc_in_call_dummy): Search the dummy frames for a PC in
the call_lo to call_hi range.  Allow for DECR_PC_AFTER_BREAK.
(generic_save_call_dummy_addr): New function.
2002-04-26 03:37:42 +00:00
Andrew Cagney
b31da25ee5 * frame.h (selected_frame_level): Document as deprecated.
(frame_relative_level): Declare.
* stack.c (frame_relative_level): New function.
(selected_frame_level): Document as deprecated.
(select_frame): Do not set the selected_frame_level.

* stack.c (frame_info, record_selected_frame): Update.
(frame_command, current_frame_command): Update.
(up_silently_base, up_command, down_silently_base): Update.
(down_command): Update.
* inflow.c (kill_command): Update.
* tracepoint.c (finish_tfind_command): Update.
* corelow.c (core_open): Update.
* thread.c (info_threads_command): Update.
(do_captured_thread_select): Update.
* infcmd.c (finish_command): Update.
* breakpoint.c (insert_breakpoints, do_enable_breakpoint): Update.
2002-04-21 20:23:34 +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
7cc19214aa * stack.c (select_frame): Check that selected_frame and the
specified level are as expected.
* blockframe.c (get_prev_frame): Set the `level' from next_frame.
Update copyright.
* frame.h (struct frame_info): Add field `level'.  Update
copyright.
Work-in-progress PR gdb/464.
2002-04-10 22:14:02 +00:00
Jim Blandy
ae767bfb78 gdb/ChangeLog:
* stack.c (get_selected_block): Add new argument `addr_in_block',
used to return the exact code address we used to select the block,
not just the block.
* blockframe.c (get_frame_block, get_current_block): Same.
* frame.h (get_frame_block, get_current_block,
get_selected_block): Update declarations.
* linespec.c, stack.c, blockframe.c, breakpoint.c, findvar.c,
linespec.c, varobj.c, printcmd.c, symtab.c: Callers changed.

gdb/mi/ChangeLog:
* mi-cmd-stack.c (list_args_or_locals): Pass new arg to
get_frame_block.  (See entry in gdb/ChangeLog.)
2002-04-05 22:04:43 +00:00
Andrew Cagney
7f55af320d * gdbarch.sh (FRAME_CHAIN_VALID): Only require at level 2.
Default to func_frame_chain_valid.
* gdbarch.h, gdbarch.c: Re-generate.
* frame.h (FRAME_CHAIN_VALID): Delete definition.
2002-02-18 15:59:14 +00:00
Jiri Smid
b6af0555b5 * dwarf2cfi.c: New file.
* dwarf2cfi.h: New file.
* dwarf2read.c (dwarf_frame_offset, dwarf_frame_size): New variables.
(dwarf_eh_frame_offset, dwarf_eh_frame_size): New variables.
(dwarf2_read_section): Change to non static.
(dwarf2_locate_sections): Add .debug_frame and .eh_frame section
recognition.
(FRAME_SECTION, EH_FRAME_SECTION): New define.
* elfread.c (elf_symfile_read): Add call of frame informations build.
* frame.h (frame_info): Add pointer to unwind_context.
* symfile.h (dwarf2_build_frame_info): Add declaration.
* gdbarch.sh (DWARF2_BUILD_FRAME_INFO): Add.
* gdbarch.h, gdbarch.c: Regenerate.
* Makefile.in: Add dwarf2cfi_h, dwarf2cfi.o
* x86-64-tdep.c (i386_gdbarch_init): Initialize target vector to
use debug frame info.
2001-12-07 12:10:15 +00:00
Andrew Cagney
e87593493c Fix comments on `struct frame_info'. 2001-08-29 00:51:14 +00:00
Andrew Cagney
64485362e8 * frame.h (SIZEOF_FRAME_SAVED_REGS): Report an error if macro
already defined.

From 2000-08-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>:
* stabsread.c (define_symbol): A parameter ('R'), a local ('r'),
or a reference ('a') can be in a pseudo register.
* infcmd.c (do_registers_info): Must take into account the pseudo
registers to print their value.
(registers_info): Likewise.
* stack.c (frame_info): Likewise.
* frame.h (SIZEOF_FRAME_SAVED_REGS): Save the pseudo registers.
2001-03-21 16:42:39 +00:00
Kevin Buettner
b6ba6518e9 Update/correct copyright notices. 2001-03-06 08:22:02 +00:00