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
6bfb3e36df
2003-04-01 Andrew Cagney <cagney@redhat.com>
...
* frame.h (get_frame_locals_address, get_frame_args_address):
Refer to the base address, instead of the address of the first
local or parameter.
2003-04-01 19:26:52 +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
Andrew Cagney
e8ab51f713
2003-03-31 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (FIX_CALL_DUMMY): Change to function with predicate.
* gdbarch.h, gdbarch.c: Regenerate.
* inferior.h (FIX_CALL_DUMMY): Delete macro.
* valops.c (hand_function_call): Only call FIX_CALL_DUMMY when
available.
* frame.h (generic_fix_call_dummy): Delete declaration.
* dummy-frame.h: Update comment.
* dummy-frame.c (generic_fix_call_dummy): Delete function.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Do not set
fix_call_dummy.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_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-tdep.c (i386_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* frv-tdep.c (frv_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.
2003-03-31 23:52:38 +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
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
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
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
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
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
David Carlton
fe898f56a1
2003-02-19 David Carlton <carlton@math.stanford.edu>
...
* Makefile.in (SFILES): Add block.c.
(block_h): New.
(COMMON_OBS): Add block.o.
(block.o): New.
(x86-64-tdep.o): Add $(block_h).
(values.o, valops.o, tracepoint.o, symtab.o, symmisc.o, symfile.o)
(stack.o, printcmd.o, p-exp.tab.o, parse.o, objfiles.o)
(objc-exp.tab.o, objc-lang.o, nlmread.o, mips-tdep.o, mdebugread.o)
(m2-exp.tab.o, linespec.o, jv-lang.o, jv-exp.tab.o, infcmd.o)
(f-valprint.o, findvar.o, f-exp.tab.o, expprint.o, coffread.o)
(c-exp.tab.o, buildsym.o, breakpoint.o, blockframe.o, ax-gdb.o)
(alpha-tdep.o, ada-lang.o, ada-exp.tab.o, mi-cmd-stack.o): Ditto.
* value.h: Add opaque declaration for struct block.
* parser-defs.h, objc-lang.h, buildsym.h, breakpoint.h: Ditto.
* ada-lang.h: Ditto.
* x86-64-tdep.c: #include "block.h"
* values.c, valops.c, tracepoint.c, symtab.c, symmisc.c: Ditto.
* symfile.c, stack.c, printcmd.c, p-exp.y, parse.c: Ditto.
* objfiles.c, objc-exp.y, objc-lang.c, nlmread.c: Ditto.
* mips-tdep.c, mdebugread.c, m2-exp.y, linespec.c: Ditto.
* jv-lang.c, jv-exp.y, infcmd.c, f-valprint.c: Ditto.
* findvar.c, f-exp.y, expprint.c, coffread.c, c-exp.y: Ditto.
* buildsym.c, breakpoint.c, blockframe.c, ax-gdb.c: Ditto.
* alpha-tdep.c, ada-lang.c, ada-exp.y: Ditto.
* blockframe.c (blockvector_for_pc_sect): Move to "block.c".
(blockvector_for_pc, block_for_pc_sect, block_for_pc): Ditto.
* symtab.c (block_function): Ditto.
(contained_in): Ditto.
* frame.h: Move block_for_pc and block_for_pc_sect declarations to
block.h. Add opaque declaration for struct block.
* symtab.h: Move block_function and contained_in declarations to
block.h. Add opaque declarations for struct block, struct
blockvector.
(struct block): Move to block.h.
(struct blockvector): Ditto.
(BLOCK_START, BLOCK_END, BLOCK_FUNCTION, BLOCK_SUPERBLOCK)
(BLOCK_GCC_COMPILED, BLOCK_HASHTABLE, BLOCK_NSYMS, BLOCK_SYM)
(BLOCK_BUCKETS, BLOCK_BUCKET, BLOCK_HASHTABLE_SIZE)
(ALL_BLOCK_SYMBOLS, BLOCK_SHOULD_SORT, BLOCKVECTOR_NBLOCKS)
(BLOCKVECTOR_BLOCK, GLOBAL_BLOCK, STATIC_BLOCK, FIRST_LOCAL_BLOCK):
Ditto.
* block.c: New file.
* block.h: New file.
2003-02-19 David Carlton <carlton@math.stanford.edu>
* mi-cmd-stack.c: #include "block.h"
2003-02-20 00:01:07 +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
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
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
Elena Zannoni
7789c6f56a
2003-01-13 Elena Zannoni <ezannoni@redhat.com>
...
* stack.c (print_frame_info, print_stack_frame_base_stub,
print_stack_frame_base, show_and_print_stack_frame_stub,
show_and_print_stack_frame, print_only_stack_frame_stub,
print_only_stack_frame): Delete functions.
(print_stack_frame_stub): Call print_frame_info instead of
print_frame_info_base.
(print_frame_info_base): Rename to print_frame_info.
(backtrace_command_1): Call print_frame_info, instead of
print_frame_info_base.
(current_frame_command): Call print_stack_frame, instead of
print_only_stack_frame.
(frame_command): Call print_stack_frame, instead of
show_and_print_stack_frame.
(up_command): Ditto.
(down_command): Ditto.
* frame.h (print_only_stack_frame): Delete prototype.
* infrun.c (normal_stop): Call print_stack_frame, instead of
show_and_print_stack_frame.
* thread.c (info_threads_command): Call print_stack_frame, instead
of print_only_stack_frame.
2003-01-13 Elena Zannoni <ezannoni@redhat.com>
* mi-main.c (mi_cmd_exec_return): Use print_stack_frame instead of
show_and_print_stack_frame.
2003-01-14 00:07:43 +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
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
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
Andrew Cagney
60edd51d05
Move get_saved_register to frame.h.
2001-02-22 16:48:19 +00:00
Nicholas Duffek
7036d6ce0e
* blockframe.c (generic_get_saved_register): Spelling fix.
...
* frame.h (FRAME_FP): Spelling fix.
2001-01-12 20:43:35 +00:00
Kevin Buettner
a14ed312fd
PARAMS removal.
2000-05-28 01:12:42 +00:00
Jason Molenda
d9fcf2fb1c
import gdb-2000-02-01 snapshot
2000-02-02 00:21:19 +00:00
Jason Molenda
c5394b80ae
import gdb-2000-01-17 snapshot
2000-01-18 00:55:13 +00:00
Jason Molenda
c4093a6ab3
import gdb-1999-12-13 snapshot
1999-12-14 01:06:04 +00:00
Jason Molenda
c2c6d25f0d
import gdb-1999-09-21
1999-09-22 03:28:34 +00:00
Jason Molenda
53a5351d90
import gdb-1999-08-23 snapshot
1999-08-23 22:40:00 +00:00
Jason Molenda
c5aa993b1f
import gdb-1999-07-07 post reformat
1999-07-07 20:19:36 +00:00
Jason Molenda
43ff13b418
import gdb-1999-07-05 snapshot
1999-07-05 17:58:44 +00:00
Jason Molenda
085dd6e638
import gdb-1999-06-28 snapshot
1999-06-28 16:06:02 +00:00
Jason Molenda
cce74817d9
import gdb-1999-06-07 snapshot
1999-06-07 19:19:32 +00:00
Stan Shebs
7a292a7adf
import gdb-19990422 snapshot
1999-04-26 18:34:20 +00:00
Stan Shebs
c906108c21
Initial creation of sourceware repository
1999-04-16 01:35:26 +00:00
Stan Shebs
071ea11e85
Initial creation of sourceware repository
1999-04-16 01:34:07 +00:00
David Taylor
4770ff087a
Start of HP merge changes to GDB.
1998-12-10 21:25:43 +00:00
Fred Fish
53a9bb1a32
* frame.h (enum lval_type): Conditionalize on __GNUC__
...
instead of __STDC__.
1997-08-11 23:14:47 +00:00
Jim Kingdon
313dd52048
* frame.h, symtab.h: Revise comments regarding baseregs.
1993-08-21 02:54:33 +00:00
Jim Kingdon
479fdd26ee
* blockframe.c (block_innermost_frame): Uncomment.
...
Return NULL if passed NULL.
* frame.h: Declare it.
* expression.h (union exp_element): Add field block.
* parse.c (write_exp_elt_block): New function.
* expression.h (OP_VAR_VALUE): Now takes additional struct block *.
* *-exp.y: Write block for OP_VAR_VALUE.
* eval.c, expprint.c, parse.c: Deal with block for OP_VAR_VALUE.
* valops.c, value.h (value_of_variable), callers:
Add second argument, for block.
1993-08-18 19:33:39 +00:00
K. Richard Pixley
2f03f9a6c6
fixed typo in comment
1993-08-17 22:11:32 +00:00
Peter Schauer
d541211d61
* blockframe.c, frame.h (sigtramp_saved_pc): New routine to fetch
...
the saved pc from sigcontext on the stack for BSD signal handling.
* config/i386/tm-i386bsd.h (SIGTRAMP_START, SIGTRAMP_END, FRAME_CHAIN,
FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC, SIGCONTEXT_PC_OFFSET):
Define to make backtracing through sigtramp work.
* config/vax/tm-vax.h (SIGTRAMP_START, SIGTRAMP_END, TARGET_UPAGES,
FRAME_SAVED_PC, SIGCONTEXT_PC_OFFSET): Ditto.
1993-08-17 08:47:25 +00:00
K. Richard Pixley
bd5635a1e2
Initial revision
1991-03-28 16:26:26 +00:00