aboutsummaryrefslogtreecommitdiff
path: root/gdb/frame.c
AgeCommit message (Collapse)AuthorFilesLines
2003-06-082003-06-08 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+3
* 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-032003-06-03 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-0/+31
* 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-05-222003-05-22 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+1
* 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-152003-05-15 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+2
* 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-132003-05-13 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+9
* 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-082003-05-08 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+2
* 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 * frame.c (get_frame_type): Don't attempt to lazily initializeKevin Buettner1-1/+6
frame's unwinder for legacy frames.
2003-05-05Index: testsuite/ChangeLogAndrew Cagney1-1/+1
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-04-292003-04-28 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-3/+5
* 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-212003-04-21 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+2
* frame.c (frame_id_eq): Fail when the code_addr's do not match.
2003-04-162003-04-16 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-15/+46
* 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-132003-04-12 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-0/+91
* frame.h (struct frame_info): Move definition from here ... * frame.c (struct frame_info): ... to here.
2003-04-122003-04-11 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-67/+19
* 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-102003-04-10 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-20/+276
* 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-102003-04-09 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-28/+50
* 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-092003-04-09 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-25/+14
* 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-092003-04-09 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-18/+3
* 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-062003-04-06 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+2
* 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-062003-04-05 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-28/+0
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-052003-04-05 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-0/+17
* 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-052003-04-05 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-6/+12
* frame.c (legacy_get_prev_frame): Link prev to next at the function start. Update comments.
2003-04-052003-04-05 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-6/+2
* 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-052003-04-04 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-14/+45
* 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-042003-04-04 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-26/+35
* 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-042003-04-04 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-0/+4
* frame.c (create_sentinel_frame): Initialize the sentinel frame's ID to NULL.
2003-04-012003-04-01 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-0/+53
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 * frame.c (get_prev_frame): Disable call to inside_entry_file().Corinna Vinschen1-0/+11
2003-03-312003-03-31 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+1
* 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-302003-03-30 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-29/+21
* 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-262003-03-25 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-32/+43
* 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-24Index: ChangeLogAndrew Cagney1-22/+27
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-172003-03-17 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-84/+92
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-162003-03-16 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+8
* frame.c (frame_pop): Don't call target_store_registers. Fix problem reported by Mark Kettenis.
2003-03-142003-03-14 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-63/+152
* 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-142003-03-12 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-24/+3
* 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-142003-03-14 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+6
* 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-132003-03-13 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+2
* 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-132003-03-13 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+10
* frame.c (legacy_frame_p): New function. (get_prev_frame): Use legacy_frame_p. * frame.h (legacy_frame_p): Declare.
2003-03-122003-03-12 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-49/+49
* frame.c (get_prev_frame): Rename the frame parameter to "this_frame". (get_next_frame, legacy_get_prev_frame): Ditto.
2003-03-122003-03-12 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+7
* 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-122003-03-12 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+2
* 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-122003-03-12 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-17/+36
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-112003-03-11 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-6/+12
* frame.c (deprecated_update_frame_pc_hack): Don't assume a next frame. Problem found by Corinna Vinschen.
2003-03-102003-03-10 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-13/+45
* 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-052003-03-05 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-31/+78
* 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-052003-03-05 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+6
* frame.c (deprecated_update_frame_pc_hack): Also update the the cached PC value in the next frame.
2003-03-052003-03-05 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-41/+36
* 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-022003-03-01 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-6/+7
* 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-022003-03-01 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-28/+31
* 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-02-252003-02-25 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+40
* 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.