X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2FChangeLog;h=cf9cbdd426b69c522f455046e33042ef0d8dbb7c;hb=304396fba9a40662a849f6a116351f3b508bcd68;hp=b00388ac4b45c2dd4609f7eadd6a7fcd83e827ac;hpb=333dabeb90fac0370d8a27d76b7d22cfa9834b72;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b00388ac4b..cf9cbdd426 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,931 @@ +2004-04-02 Andrew Cagney + + * frame.c (safe_frame_unwind_memory): New function. + * frame.h (safe_frame_unwind_memory): Declare. Update description + of /safe_/ methods. + * tramp-frame.c (tramp_frame_start): Re-order parmeters, add + "next_frame". Use safe_frame_unwind_memory. + (tramp_frame_sniffer): Update call to tramp_frame_start. + +2004-04-01 Daniel Jacobowitz + + * dwarf2read.c (dwarf2_objfile_data_key): New. + (struct dwarf2_per_objfile, dwarf2_per_objfile): New. + (dwarf_info_size, dwarf_abbrev_size, dwarf_line_size) + (dwarf_pubnames_size, dwarf_aranges_size, dwarf_loc_size) + (dwarf_macinfo_size, dwarf_str_size, dwarf_ranges_size) + (dwarf_frame_size, dwarf_eh_frame_size, dwarf_info_buffer) + (dwarf_abbrev_buffer, dwarf_line_buffer, dwarf_str_buffer) + (dwarf_macinfo_buffer, dwarf_ranges_buffer, dwarf_loc_buffer): + Remove variables. + (struct dwarf2_pinfo): Remove per-objfile members. Update comments. + (DWARF_ABBREV_SIZE, DWARF_LINE_SIZE) + (DWARF_LOC_SIZE, DWARF_MACINFO_SIZE, DWARF_STR_SIZE) + (DWARF_RANGES_SIZE, DWARF_INFO_BUFFER) + (DWARF_ABBREV_BUFFER, DWARF_LINE_BUFFER, DWARF_STR_BUFFER) + (DWARF_MACINFO_BUFFER, DWARF_RANGES_BUFFER, DWARF_LOC_BUFFER): + Remove macros. + (dwarf2_has_info): Take an objfile argument. Allocate per-objfile + data. + (dwarf2_locate_sections, dwarf2_build_psymtabs) + (dwarf2_build_psymtabs_easy, dwarf2_build_psymtabs_hard) + (skip_one_die, dwarf2_get_pc_bounds, dwarf2_read_abbrevs) + (read_partial_die, read_full_die, read_indirect_string) + (dwarf_decode_line_header, dwarf_decode_macros) + (dwarf2_symbol_mark_computed): Remove use of removed macros. + Update uses of removed variables. + (psymtab_to_symtab_1): Restore per-objfile data pointer. Remove use + of removed macros. + (_initialize_dwarf2_read): New function. + * symfile.h (dwarf2_has_info): Update prototype. + * coffread.c (coff_symfile_read): Update call to dwarf2_has_info. + * elfread.c (elf_symfile_read): Likewise. + +2004-04-01 Jim Blandy + + * rs6000-tdep.c (rs6000_dwarf2_stab_reg_to_regnum): New, unified + function for register numbers on all the rs6000-derived targets. + (rs6000_gdbarch_init): Don't register a separate + gdbarch_dwarf2_reg_to_regnum function for the E500. Use + rs6000_dwarf2_stab_reg_to_regnum for both Dwarf 2 and stabs on all + variants. + + * i386-tdep.c: Add FIXME regarding STABS vs. Dwarf 2 register + numbering. + +2004-04-01 Paul N. Hilfinger + + * valarith.c: Update copyright notice. + (value_add): Handle range types. + (value_sub): Ditto. + (value_equal): Ditto. + (value_less): Ditto. + (value_neg): Ditto. + (value_complement): Ditto. + (value_binop): Simplify slightly by using is_integral_type and + eliminiating unnecessary COERCE_ENUMs. + +2004-03-31 Andrew Cagney + + * frame.h (frame_unwind_id): Declare. + * frame.c (frame_unwind_id): New function. + (get_prev_frame_1): New function. + (frame_debug_got_null_frame): New function. + (get_prev_frame): Use frame_debug_got_null_frame. Move unwind + code proper to prev_frame, update description. + * infrun.c (step_over_function): Use frame_unwind_id. + +2004-04-31 J. Brobecker + + * hppa-tdep.c (hppa32_push_dummy_call): Set the Stack Pointer. + (hppa64_push_dummy_call): Likewise. + +2004-03-30 Jim Blandy + + From Ulrich Weigand: + * utils.c (query): Do not use a va_list variable multiple times. + +2004-03-29 Daniel Jacobowitz + + * Makefile.in (linux_nat_h): Update dependencies. + * configure.in: Check for . + * configure: Regenerate. + * config.in: Regenerate. + * linux-nat.h: Include "target.h". Add waitstatus field to + struct lwp_info. + * lin-lwp.c (add_lwp): Initialize waitstatus.kind. + (lin_lwp_attach_lwp): Don't attach to LWPs we have already attached + to. + (lin_lwp_handle_extended): New function. Handle clone events. + (wait_lwp): Use lin_lwp_handle_extended. Update comment about + thread exit events. + (child_wait): Handle clone events. + (lin_lwp_wait: Use lin_lwp_handle_extended and handle clone events. + * linux-nat.c (linux_enable_event_reporting): Turn on + PTRACE_O_TRACECLONE. + (linux_handle_extended_wait): Handle clone events. + * thread-db.c: Include . + (struct private_thread_info): Add dying flag. + (enable_thread_event_reporting): Enable TD_DEATH for glibc 2.2 and + higher. + (attach_thread): Update comments. Handle dying threads. + (detach_thread): Set the dying flag. + (check_event): Always call attach_thread. + +2004-03-29 Daniel Jacobowitz + + * mips-tdep.c (mips_pdr_data): New. + (non_heuristic_proc_desc): Use objfile_data and set_objfile_data. + (_initialize_mips_tdep): Initialize mips_pdr_data. + +2004-03-29 Corinna Vinschen + + * minsyms.c (install_minimal_symbols): Move dropping leading + char from linkage name from here... + (prim_record_minimal_symbol_and_info): ...to here. Simplify + test for "__gnu_compiled*" symbols. + +2004-03-28 Jim Blandy + + * rs6000-tdep.c (skip_prologue): Recognize moves from argument + registers to temp register r0 and byte stores as prologue + instructions. + +2004-03-28 Andrew Cagney + + * PROBLEMS (Stack backtraces): Rewrite. Remove reference to + arm*-*-*. + +2004-03-28 Stephane Carrez + + * tui/tui-regs.c (tui_show_registers): Make sure the TUI is active + and switch the layout to force a display of register window. + +2004-02-26 J. Brobecker + + * amd64-tdep.c (amd64_classify): make RANGE_TYPE objects be part + of the INTEGER class. + +2004-03-26 Jim Blandy + + * ppc-linux-tdep.c (ppc_linux_init_abi): Long doubles are eight + bytes long on PPC GNU/Linux. + +2004-03-26 David Carlton + + * PROBLEMS: Refer to gdb/1588 instead of gdb/826. + +2004-03-25 Andrew Cagney + + * PROBLEMS: Add general section titles, remove references to + specific releases. + +2004-03-25 Daniel Jacobowitz + + * arm-linux-tdep.c (ARM_LINUX_JB_ELEMENT_SIZE): Define to + INT_REGISTER_SIZE. + (arm_linux_push_arguments): Use TARGET_DOUBLE_BIT instead of + FP_REGISTER_VIRTUAL_SIZE. + * arm-tdep.c (arm_make_sigtramp_cache): Use register_size instead + of DEPRECATED_REGISTER_RAW_SIZE. + (arm_register_type): Add gdbarch argument. + (arm_register_raw_size, arm_register_virtual_size): Delete. + (arm_register_byte, arm_extract_return_value) + (arm_store_return_value, arm_get_longjmp_target): Update references + to INT_REGISTER_RAW_SIZE and FP_REGISTER_RAW_SIZE. + (arm_gdbarch_init): Likewise. Don't set + deprecated_register_raw_size, deprecated_register_virtual_size, + deprecated_max_register_raw_size, + deprecated_max_register_virtual_size, or + deprecated_max_register_virtual_type. Do set register_type. + * arm-tdep.h (ARM_MAX_REGISTER_RAW_SIZE) + (ARM_MAX_REGISTER_VIRTUAL_SIZE, INT_REGISTER_VIRTUAL_SIZE) + (FP_REGISTER_VIRTUAL_SIZE): Delete. + (INT_REGISTER_RAW_SIZE): Rename to INT_REGISTER_SIZE. + (FP_REGISTER_RAW_SIZE): Rename to FP_REGISTER_SIZE. + * arm-linux-tdep.c (ARM_NBSD_JB_ELEMENT_SIZE): Define to + INT_REGISTER_SIZE. + * remote-rdp.c (remote_rdp_fetch_register): Use MAX_REGISTER_SIZE. + (remote_rdp_store_register): Likewise. + +2004-03-24 Daniel Jacobowitz + + * Makefile.in (mips-linux-tdep.o): Update dependencies. + * mips-tdep.c (mips_gdbarch_init): Move frame predicates + to after osabi initialization. + * mips-linux-tdep.c: Include "trad-frame.h" and "tramp-frame.h". + (mips_linux_o32_sigframe_init, mips_linux_n32n64_sigframe_init): New + functions. + (mips_linux_o32_sigframe, mips_linux_o32_rt_sigframe) + (mips_linux_n32_rt_sigframe, mips_linux_n64_rt_sigframe): New + variables. + (mips_linux_init_abi): Append signal trampoline unwinders. + +2004-03-24 Andrew Cagney + + * tramp-frame.h (TRAMP_SENTINEL_INSN): Define, document. + * tramp-frame.c: Include "gdb_assert.h". + (tramp_frame_start): Use TRAMP_SENTINEL_INSN. Use ULONGEST and + correct sizeof. + (tramp_frame_append): Validate the tramp frame's instructions. + * Makefile.in (tramp-frame.o): Update dependencies. + +2004-03-23 Andrew Cagney + + * trad-frame.h (trad_frame_set_reg_addr): Declare. + +2004-03-23 Andrew Cagney + + * MAINTAINERS (Past Maintainers): Add Mark Salter and Fernando + Nasser as past testsuite/lib/ (and other) maintainers. + +2004-03-23 Daniel Jacobowitz + + * infcmd.c (attach_command): Reread symbols if we already have + an exec file. + +2004-03-23 Andrew Cagney + + * rs6000-tdep.c (frame_get_saved_regs): Delete unused function. + +2004-03-23 Andrew Cagney + + * gdbarch.sh (SIGTRAMP_START, SIGTRAMP_END): Deprecate. + * gdbarch.h, gdbarch.c: Re-generate. + * i386obsd-tdep.c (i386obsd_init_abi): Update. + * i386nbsd-tdep.c (i386nbsd_init_abi): Update. + * i386bsd-tdep.c (i386bsd_init_abi): Update. + * config/vax/tm-vaxbsd.h (DEPRECATED_SIGTRAMP_END) + (DEPRECATED_SIGTRAMP_START): Update. + * config/m68k/tm-nbsd.h (DEPRECATED_SIGTRAMP_END) + (DEPRECATED_SIGTRAMP_START): Update. + * blockframe.c (find_pc_sect_partial_function): Update. + * arch-utils.c (legacy_pc_in_sigtramp): Update. + +2004-03-23 Daniel Jacobowitz + + * remote.c (remote_open_1): Reopen the exec file and reread symbols + if necessary. + +2004-03-23 Andrew Cagney + + * gdbarch.sh (PC_IN_SIGTRAMP): Change to a function with + predicate, deprecate. + * gdbarch.h, gdbarch.c: Re-generate. + * alpha-linux-tdep.c (alpha_linux_init_abi): Update. + * alpha-osf1-tdep.c (alpha_osf1_init_abi): Update. + * alpha-tdep.c (alpha_sigtramp_frame_sniffer): Update. + * alphafbsd-tdep.c (alphafbsd_init_abi): Update. + * alphanbsd-tdep.c (alphanbsd_init_abi): Update. + * amd64-linux-tdep.c (amd64_linux_init_abi): Update. + * amd64-tdep.c (amd64_sigtramp_frame_sniffer): Update. + * amd64nbsd-tdep.c (amd64nbsd_init_abi): Update. + * amd64obsd-tdep.c (amd64obsd_init_abi): Update. + * arm-tdep.c (arm_sigtramp_unwind_sniffer): Update. + * blockframe.c (find_pc_partial_function): Update. + * breakpoint.c (bpstat_what): Update. + * frame.c (frame_type_from_pc, legacy_get_prev_frame): Update. + * frv-linux-tdep.c (frv_linux_init_abi): Update. + * frv-tdep.c (frv_sigtramp_frame_sniffer): Update. + * hppa-hpux-tdep.c (hppa_hpux_init_abi): Update. + * i386-interix-tdep.c (i386_interix_init_abi): Update. + * i386-linux-tdep.c (i386_linux_init_abi): Update. + * i386-nto-tdep.c (i386nto_init_abi): Update. + * i386-sol2-tdep.c (i386_sol2_init_abi): Update. + * i386-tdep.c (i386_sigtramp_frame_sniffer) + (i386_svr4_init_abi, i386_go32_init_abi, i386_gdbarch_init): Update. + * i386bsd-tdep.c (i386bsd_init_abi): Update. + * i386nbsd-tdep.c (i386nbsd_init_abi): Update. + * i386obsd-tdep.c (i386obsd_init_abi): Update. + * ia64-tdep.c (ia64_sigtramp_frame_sniffer): Update. + * infrun.c (pc_in_sigtramp): Update. + * m68k-tdep.c (m68k_sigtramp_frame_sniffer): Update. + * m68klinux-tdep.c (m68k_linux_init_abi): Update. + * mips-tdep.c (mips_gdbarch_init): Update. + * mipsnbsd-tdep.c (mipsnbsd_init_abi): Update. + * ppc-linux-tdep.c: Update comment. + * ppcnbsd-tdep.c (ppcnbsd_init_abi): Update. + * shnbsd-tdep.c (shnbsd_init_abi): Update. + * sparc-linux-tdep.c (sparc32_linux_init_abi): Update. + * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Update. + * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Update. + * sparc64fbsd-tdep.c (sparc64fbsd_init_abi): Update. + * sparc64nbsd-tdep.c (sparc64nbsd_init_abi): Update. + * sparc64obsd-tdep.c (sparc64obsd_init_abi): Update. + * sparcnbsd-tdep.c (sparc32nbsd_init_abi): Update. + * sparcobsd-tdep.c (sparc32obsd_init_abi): Update. + +2004-03-23 Andrew Cagney + + * tramp-frame.h, tramp-frame.h: New files. + * Makefile.in (SFILES, tramp_frame_h, COMMON_OBS, tramp-frame.o): + Update rules to include "tramp-frame.h" and "tramp-frame.c". + + * Makefile.in: Update all dependencies. + +2004-03-23 Andrew Cagney + + * Makefile.in (trad_frame_h): Add $(frame_h). + * trad-frame.h: Update copyright. Include "frame.h". + (struct trad_frame_cache, trad_frame_cache_zalloc): Declare. + (trad_frame_set_id, trad_frame_get_id): Declare. + (trad_frame_set_reg_addr, trad_frame_get_register): Declare. + * trad-frame.c: Update copyright. + (struct trad_frame_cache): Define. + (trad_frame_cache_zalloc): New function. + (trad_frame_set_id, trad_frame_get_id): New functions. + (trad_frame_set_reg_addr, trad_frame_get_register): New functions. + +2004-03-22 Andrew Cagney + + * s390-tdep.c (struct s390_stub_unwind_cache): Rename + s390_pltstub_unwind_cache. + (s390_stub_frame_unwind_cache): Rename + s390_pltstub_frame_unwind_cache. + (s390_stub_frame_this_id): Rename s390_pltstub_frame_this_id. + (s390_stub_frame_prev_register): Rename + s390_pltstub_frame_prev_register. + (s390_stub_frame_unwind): Rename s390_pltstub_frame_unwind. + (s390_stub_frame_sniffer): Rename s390_stub_frame_sniffer. + + From Ulrich Weigand: + * s390-tdep.c (s390_pltstub_frame_sniffer): Handle invalid function + pointer calls like PLT calls. + +2004-03-22 Daniel Jacobowitz + + * mips-tdep.c (non_heuristic_proc_desc): Search using the specified + PC rather than the partial function start address. Use the start + address to sanity check the found PDR. + +2004-03-22 Daniel Jacobowitz + + * lin-lwp.c (lin_lwp_wait): Pass the LWP ID to + linux_handle_extended_wait. + +2004-03-22 Andrew Cagney + + * rs6000-tdep.c (frame_initial_stack_address): Delete unused + function. + + * frame.h (generic_pop_current_frame): Delete declaration. + (deprecate_pop_dummy_frame): Deprecate + generic_pop_dummy_frame. + * dummy-frame.c (deprecated_pop_dummy_frame): Update. + (generic_pop_current_frame): Delete function. + * mn10300-tdep.c (mn10300_pop_frame): Eliminate call to + generic_pop_current_frame. + * v850-tdep.c (v850_pop_frame): Update. + * mcore-tdep.c (mcore_pop_frame): Update. + * sh64-tdep.c (sh64_pop_frame): Update. + * h8300-tdep.c (h8300_pop_frame): Update. + +2004-03-22 Andrew Cagney + + * frame.h (deprecated_pc_in_call_dummy): Rename + generic_pc_in_call_dummy. + * dummy-frame.h (pc_in_dummy_frame): Delete declaration. + * dummy-frame.c (deprecated_pc_in_call_dummy): Rename + generic_pc_in_call_dummy. + (pc_in_dummy_frame): Make static. + * gdbarch.sh (DEPRECATED_PC_IN_CALL_DUMMY): Update. + * gdbarch.h, gdbarch.c: Re-generate. + * dummy-frame.c (dummy_frame_sniffer): Simplify. + * frame.c (frame_type_from_pc): Call deprecated_pc_in_call_dummy. + (legacy_get_prev_frame): Ditto. + * inferior.h: Delete reference to generic_pc_in_call_dummy in + comment. + +2004-03-21 Andrew Cagney + + * inferior.h (deprecated_pc_in_call_dummy_at_entry_point): Delete + declaration and out-of-date comment. + * blockframe.c (deprecated_pc_in_call_dummy_at_entry_point): + Delete function. + * mn10300-tdep.c (mn10300_gdbarch_init): Do not set + deprecated_pc_in_call_dummy. + + * infrun.c (handle_inferior_event): For non legacy frames, use the + frame ID and frame type to identify a signal trampoline. Update + comments. + +2004-03-21 Nathan J. Williams + + * mipsnbsd-tdep.c: Update copyright. Include "mips-tdep.h". + * Makefile.in (mipsnbsd-tdep.o): Update dependencies. + +2004-03-21 Andrew Cagney + + * frame-unwind.h: Update copyright. + (struct frame_data): Add opaque declaration. + (frame_sniffer_ftype): Declare. + (struct frame_unwind): Add "unwind_data" and "sniffer". + (frame_unwind_register_unwinder): Declare. + (frame_unwind_find_by_frame): Add parameter "this_cache". + * frame.c (get_frame_id, create_new_frame, legacy_get_prev_frame) + (legacy_get_prev_frame, legacy_get_prev_frame) + (get_frame_type): Pass the prologue_cache to + frame_unwind_find_by_frame. + * frame-unwind.c (struct frame_unwind_table_entry): Add field + "unwinder". + (frame_unwind_register_unwinder): New function. + (frame_unwind_find_by_frame): Handle an unwind sniffer. + +2004-03-20 Paul Hilfinger + + * bcache.c (print_percentage): Use floating point to avoid + incorrect results when portion*100 overflows. + +2004-03-19 Kevin Buettner + + * ppc_tdep.h (ppc_linux_frame_saved_pc) + (ppc_linux_init_extra_frame_info) + (ppc_linux_frameless_function_invocation) + (ppc_linux_frame_init_saved_regs, ppc_linux_frame_chain) + (rs6000_frame_saved_pc, rs6000_init_extra_frame_info) + (rs6000_frameless_function_invocation, rs6000_frame_init_saved_regs) + (rs6000_frame_chain): Delete declarations. + * ppc-linux-tdep.c (ppc_linux_frame_saved_pc) + (ppc_linux_init_extra_frame_info) + (ppc_linux_frameless_function_invocation) + (ppc_linux_frame_init_saved_regs, ppc_linux_frame_chain): Delete. + (ppc_linux_init_abi): Remove registration of above deleted functions. + * rs6000-tdep.c (rs6000_init_extra_frame_info) + (rs6000_frame_init_saved_regs, rs6000_init_frame_pc_first) + (rs6000_frame_args_address, rs6000_saved_pc_after_call) + (rs6000_pop_frame, rs6000_frameless_function_invocation) + (rs6000_frame_saved_pc, rs6000_frame_chain): Delete. + (rs6000_gdbarch_init): Remove registration of above deleted functions. + Use rs6000_unwind_pc(), rs6000_frame_sniffer(), + rs6000_unwind_dummy_id(), and rs6000_frame_base_sniffer() for + frame management for all OSABIs. + +2004-03-19 Andrew Cagney + + Committed by Kevin Buettner . + + * ppc-linux-tdep.c: Include "trad-frame.h", and "frame-unwind.h". + Update copyright. + (struct ppc_linux_sigtramp_cache, ppc_linux_sigtramp_cache) + (ppc_linux_sigtramp_this_id, ppc_linux_sigtramp_prev_register) + (ppc_linux_sigtramp_unwind, ppc_linux_sigtramp_sniffer) + (ppc_linux_init_abi): Add both 32- and 64-bit signal trampoline + unwinders. #ifdef legacy frame code. + * rs6000-tdep.c: Include "trad-frame.h", "frame-unwind.h", and + "frame-base.h". + (rs6000_unwind_pc, rs6000_unwind_dummy_id) + (struct rs6000_frame_cache, rs6000_frame_cache) + (rs6000_frame_this_id, rs6000_frame_prev_register) + (rs6000_frame_sniffer, rs6000_frame_unwind) + (rs6000_frame_base_address, rs6000_frame_base_sniffer) + (rs6000_frame_base): Implement a traditional frame unwinder. + (rs6000_gdbarch_init): When unknown, NetBSD, or GNU/Linux use the + frame unwinder. + +2004-03-19 Kevin Buettner + + * breakpoint.c (adjust_breakpoint_address): Don't adjust + breakpoint address for watchpoints or the catch eventpoints. + Add new paramter ``bptype''. Adjust all callers. + +2004-03-19 Andrew Cagney + + * config/pa/tm-hppa.h (GDB_TARGET_IS_HPPA): Delete unused macro. + + * PROBLEMS: Delete note that ARM does not use frame code, problem + fixed. + +2004-03-18 Andrew Cagney + + * stack.c (return_command): Delete code wrapped in #ifdef + DEPRECATED_CALL_DUMMY_HAS_COMPLETED, macro no longer defined. + + * rs6000-tdep.c (skip_prologue): Record only the first LR save. + +2004-03-18 Andrew Cagney + + * config/mips/tm-nbsd.h: Replace IN_SIGTRAMP with + DEPRECATED_IN_SIGTRAMP. + * config/powerpc/tm-linux.h (DEPRECATED_IN_SIGTRAMP): Ditto. + * config/mips/tm-linux.h (DEPRECATED_IN_SIGTRAMP) Ditto. + * config/mips/tm-irix6.h (DEPRECATED_IN_SIGTRAMP): Ditto. + * config/mips/tm-irix5.h (DEPRECATED_IN_SIGTRAMP): Ditto. + * config/ia64/tm-linux.h (DEPRECATED_IN_SIGTRAMP): Ditto. + * config/ia64/tm-aix.h (DEPRECATED_IN_SIGTRAMP): Ditto. + * config/arm/tm-linux.h (DEPRECATED_IN_SIGTRAMP): Ditto. + * config/arm/tm-embed.h (DEPRECATED_IN_SIGTRAMP): Ditto. + * arch-utils.c (legacy_pc_in_sigtramp): Ditto. + * arch-utils.h: Remove reference to IN_SIGTRAMP in comment. + +2004-03-18 Andrew Cagney + + * frame-base.c: Update copyright. Include "gdb_obstack.h". + (struct frame_base_table_entry): Define. + (struct frame_base_table): Re-implement as a linked list. + (frame_base_init): Re-implement. + (frame_base_table): Delete function. + (append_predicate): Delete function. + (frame_base_append_sniffer): Update. + (frame_base_set_default): Update. + (frame_base_find_by_frame): Update. + (_initialize_frame_base): Use gdbarch_data_register_pre_init. + * Makefile.in (frame-base.o): Update dependencies. + +2004-03-17 Andrew Cagney + + * frame.c (legacy_get_prev_frame): Pass correct frame to + frame_unwind_find_by_frame. + +2004-03-17 David Carlton + + * NEWS: Mention C++ nested types and namespaces + +2004-03-16 Michael Chastain + + * PROBLEMS: Add section headers, "Regressions since gdb 6.0" + and "Regressions since gdb 5.3.". Add known regressions since + gdb 6.0. + +2004-03-16 David Carlton + + * dwarf2read.c (process_structure_scope): Process children even + when we're a declaration. + +2004-03-16 Andrew Cagney + + * symtab.h (find_pc_sect_partial_function): Delete declaration. + * blockframe.c (find_pc_partial_function) + (find_pc_sect_partial_function): Merge into a single + find_pc_partial_function. + +2004-03-16 Mark Kettenis + + * i386bsd-nat.c: s/regno/regnum/g. + (fetch_inferior_registers): Use I386_ST0_REGNUM instead of + FP0_REGNUM. + (store_inferior_registers): Likewise. + +2004-03-16 Mark Kettenis + + * i386bsd-nat.c (fill_fpregset): Call i387_collect_fsave instead + of i387_fill_fsave. + (store_inferior_registers): Call i387_collect_fsave and + i387_collect_fxsave instead of i387_fill_fsave and + i387_fill_fxsave. + +2004-03-15 Andrew Cagney + + * Makefile.in (frame-unwind.o): Update dependencies. + * frame-unwind.c: Include "gdb_obstack.h". + (frame_unwind_init): Replace "gdbarch" parameter with an "obstack" + parameter. + (append_predicate): Delete function. + (struct frame_unwind_table_entry): New structure. + (struct frame_unwind_table): Replace "sniffer" with "head" and + "tail". + (frame_unwind_append_sniffer): Update. + (frame_unwind_find_by_frame): Update. + (_initialize_frame_unwind): Registe frame_unwind_init using + gdbarch_data_register_pre_init. + +2004-03-15 Mark Kettenis + + * i386bsd-nat.c: Update copyright year. + (CANNOT_FETCH_REGISTER, CANNOT_STORE_REGISTER): Undefine and then + define unconditionally. + +2004-03-15 Mark Kettenis + + * i387-tdep.h (i387_collect_fsave): New prototype. + * i387-tdep.c (i387_collect_fsave): New function containing most + of the code from i387_fill_fsave. + (i387_fill_fsave): Call i387_collect_fsave. + +2004-03-15 Mark Kettenis + + * i386-linux-tdep.c: Update copyright year. + (i386_linux_svr4_fetch_link_map_offsets): Remove function. + (i386_linux_init_abi): Set solib_svr4_fetch_link_maop_offsets to + svr4_ilp32_link_map_offsets instead of + i386_linux_svr4_fetch_link_map_offsets. + +2004-03-15 David Carlton + + Fix for PR c++/1553: + * dwarf2read.c (read_structure_type): Determine type name by + calling determine_class_name. + (determine_class_name): New. + (determine_prefix): Look at TYPE_TAG_NAME and call + determine_class_name when appropriate. + (determine_prefix_aux, class_name): Delete. + (read_namespace): Set die->type. + +2004-03-15 Kevin Buettner + + * breakpoint.c (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete + unused macro definition. The definition in target.h (or perhaps + elsewhere) takes precedence. + +2004-03-15 Andrew Cagney + + * ppc-tdep.h: Update copyright. + (ppc_linux_supply_gregset, ppc_linux_supply_fpregset): Change + function signatures to match "regsets.h". + * ppc-linux-tdep.c: Include "regset.h". + (ELF_GREGSET_SIZE): Delete. + (right_supply_register): New function. + (ppc_linux_supply_fpregset, ppc_linux_supply_gregset): Rewrite + using right_supply_register. + (ppc32_linux_supply_gregset, ppc64_linux_supply_gregset): New + functions. + (ppc64_linux_gregset, ppc32_linux_gregset): Define. + (ppc_linux_init_abi): Register ppc_linux_regset_from_core_section. + (_initialize_ppc_linux_tdep): Do not register + ppc_linux_regset_core_fns. + (ppc_linux_regset_from_core_section): Replace + fetch_core_registers. + (ppc_linux_regset_core_fns): Delete. + * ppc-linux-nat.c: (right_fill_reg): New function. + (supply_gregset): Update call to ppc_linux_supply_gregset. + (fill_gregset): Clear the register set, use right_fill_reg. + (supply_fpregset): Update call to ppc_linux_supply_fpregset. + (fill_fpregset): Use right_fill_reg, correctly compute FP offsets. + + * rs6000-tdep.c (rs6000_register_virtual_type): Make registers + unsigned. + +2004-03-15 Andrew Cagney + + * gdbarch.sh (gdbarch_data_pre_init_fytpe) + (gdbarch_data_register_pre_init, gdbarch_data_post_init_fytpe) + (gdbarch_data_register_post_init): Replace gdbarch_data_init_ftype + and register_gdbarch_data. + (deprecated_set_gdbarch_data): Rename set_gdbarch_data. + (struct gdbarch_data): Replace "init" by "pre_init" and + "post_init". + * gdbarch.h, gdbarch.c: Re-generate. + * dwarf2-frame.c (dwarf2_frame_init): Replace "gdbarch" paramter + with"obstack", use OBSTACK_ZALLOC. + (dwarf2_frame_ops): Delete. + (dwarf2_frame_set_init_reg): Use gdbarch_data. + (dwarf2_frame_init_reg): Use gdbarch_data. + (_initialize_dwarf2_frame): Use gdbarch_data_register_pre_init. + * solib-svr4.c (set_solib_svr4_fetch_link_map_offsets) + (_initialize_svr4_solib): Update. + * user-regs.c (_initialize_user_regs): Update. + * reggroups.c (_initialize_reggroup): Update. + * regcache.c (_initialize_regcache): Update. + * mips-linux-tdep.c (_initialize_mips_linux_tdep): Update. + * libunwind-frame.c (_initialize_libunwind_frame): Update. + * gnu-v3-abi.c (init_gnuv3_ops): Update. + * frame-unwind.c (_initialize_frame_unwind): Update. + * frame-base.c (_initialize_frame_base): Update. + * user-regs.c (user_reg_add): Update. + * reggroups.c (reggroup_add): Update. + * mips-linux-tdep.c (set_mips_linux_register_addr): Update. + * libunwind-frame.c (libunwind_frame_set_descr): Update. + * frame-unwind.c (frame_unwind_append_sniffer): Update. + * frame-base.c (frame_base_table): Update. + * remote.c (_initialize_remote): Update. + * gdb_obstack.h (OBSTACK_ZALLOC, OBSTACK_CALLOC): Define. + +2004-03-15 Andrew Cagney + + * cris-tdep.c (bfd_lookup_symbol): Delete unused function. + +2004-03-15 Kevin Buettner + + * Makefile.in (frv-linux-tdep.o): Add dependencies. + * frv-linux-tdep.c: New file. + * frv-tdep.c (struct gdbarch_tdep): Add new field + ``sigcontext_reg_addr''. + (frv_set_sigcontext_reg_addr, frv_sigtramp,frame_cache) + (frv_sigtramp_frame_this_id, frv_sigtramp_frame_prev_register) + (frv_sigramp_frame_sniffer): New functions. + (frv_sigtramp_frame_unwind): New static global. + (frv_gdbarch_init): Hook in ABI-specific overrides. Hook up frame + sniffers. + * frv-tdep.h (frv_set_sigcontext_reg_addr): New function. + * config/frv/frv.mt (TDEPFILES): Add frv-linux-tdep.o. + +2004-03-15 Kevin Buettner + + * frv-tdep.c (frv_analyze_prologue): Terminate prologue scan, + but not via a call to error(), when unable to read memory. + +2004-03-15 Kevin Buettner + + * frv-tdep.c (frv_call_dummy_words): Delete. + (frv_frame_unwind_cache): Delete unused variable, ``prev_sp''. + +2004-03-15 Andrew Cagney + + * infrun.c (handle_step_into_function, step_over_function): Only + update and use STEP_FRAME_ID when the system is using legacy + frames. Update comments. + +2004-03-14 Mark Kettenis + + * amd64-linux-tdep.h: Remove file. + * amd64-linux-tdep.c: Don't include "inferior.h" and + "amd64-linux-tdep.h". Include "frame.h" and "solib-svr4.h". + (USER_R15, USER_R14, USER_R13, USER_R12, USER_RBP, USER_RBX) + (USER_R11, USER_R10, USER_R9, USER_R8, USER_RAX, USER_RCX) + (USER_RDX, USER_RSI, USER_RDI, USER_RIP, USER_CS, USER_EFLAGS) + (USER_RSP, USER_SS, USER_DS, USER_ES, USER_FS, USER_GS): Remove + macros. + (user_to_gdb_regmap): Remove variable. + (amd64_linux_gregset_reg_offset): New variable. + (amd64_core_fns): Remove variable. + (fetch_core_registers): Remove function. + (amd64_linux_supply_gregset, amd64_linux_fill_gregset): Remove + functions. + (_initialize_amd64_linux_tdep): Don't set add_core_fns. + * amd64-linux-nat.c: Don't include "amd64-linux-tdep.h". + * Makefile.in (amd64_linux_tdep_h): Remove. + (amd64-linux-nat.o): Update dependencies. + (amd64-linux-tdep.o): Update dependencies. + + * amd64-linux-nat.c (GETFPREGS_SUPPLIES): Remove macro. + (fetch_regs, fetch_fpregs, store_regs, store_fpregs): Remove + functions. + (fetch_inferior_registers, store_inferior_registers): Rewrite. + + * amd64-tdep.h (amd64_fill_fxsave): Remove prototype. + * amd64-tdep.c (amd64_fill_fxsave): Remove function. + +2004-03-14 Daniel Jacobowitz + + * dwarf2read.c (read_structure_type): Rename from + read_structure_scope. Don't create a symbol or call process_die. + Return immediately if die->type is set. Call read_type_die before + dwarf2_add_member_fn. + (process_structure_scope): New function. + (read_enumeration_type, process_enumeration_scope): New functions, + broken out from read_enumeration. Don't create the enumeration + type if it has already been created. + (read_enumeration): Removed. + (process_die): Call read_structure_type, process_structure_scope, + read_enumeration_type, and process_enumeration_scope. Just call + new_symbol for base and subrange types. Add a comment about other + type dies. + (read_type_die): Call read_enumeration_type. + (add_partial_structure, new_symbol): Update comments. + +2004-03-13 Stephane Carrez + + * m68hc11-tdep.c (m68hc11_register_name): Get soft reg information. + +2004-03-13 Stephane Carrez + + * tui/tui-win.h (tui_get_cmd_list): Declare. + * tui/tui-win.c (tui_command): New function. + (tui_get_cmd_list): New function. + (_initialize_tui_win): Moved initialization of tui command in + tui_get_cmd_list. + + * tui/tui-data.c (init_content_element): Setup new data members. + (init_win_info): Likewise. + (free_content_elements): Free it. + * tui/tui-data.h (struct tui_data_element): Store the register + content to print. + (struct tui_data_info): Keep the current register group. + + * tui/tui-layout.c (tui_set_layout): Update call to tui_show_registers. + + * tui/tui-regs.h (tui_show_registers): Update prototype. + (tui_toggle_float_regs, tui_calculate_regs_column_count): Remove. + (tui_resize_all): No need to calculate anything for register window. + * tui/tui-regs.c (tui_calculate_regs_column_count): Remove. + (tui_set_register_element, tui_set_general_regs_content): Remove. + (tui_set_special_regs_content): Remove. + (tui_set_general_and_special_regs_content): Remove. + (tui_set_float_regs_content): Remove. + (tui_reg_value_has_changed, tui_get_register_raw_value): Remove. + (tui_set_regs_content): Remove. + (tui_toggle_float_regs, _tui_toggle_float_regs_command): Remove. + (tui_v_show_registers_command_support): Remove. + (tui_show_registers): Use a reggroup to specify the registers to show. + (tui_show_register_group): New function. + (tui_display_registers_from): Compute the layout of register window + and refresh with new API; be sure to delete old register windows. + (tui_check_register_values): Update to use tui_get_register and + tui_display_data. + (tui_display_register): Just refresh the register window part. + (tui_register_format): Format registers and save in tui_data_element. + (tui_get_register): New to combine tui_reg_value_has_changed and + tui_get_register_raw_value; fix to use the new gdb API. + (tui_show_float_command): Renamed tui_reg_float_command. + (tui_show_general_command): Renamed tui_reg_general_command. + (tui_show_special_command): Renamed tui_reg_system_command. + (_initialize_tui_regs): Remove unused commands. + +2004-03-13 Mark Kettenis + + * NEWS (New native configurations): Mention OpenBSD/amd64. + + * config/i386/nm-fbsd.h: Include "config/nm-bsd.h". + (PTRACE_ARG3_TYPE, FETCH_INFERIOR_REGISTERS, ATTACH_DETACH): + Remove defines. + * config/i386/nm-fbsd64.h: Likewise. + * config/i386/nm-obsd.h: Likewise. + * config/sparc/nm-fbsd.h: Likewise. Update copyright year. + * config/alpha/nm-fbsd.h: Likewise. Update copyright year. + +2004-03-12 Kevin Buettner + + * frv-tdep.c (set_variant_scratch_registers): New function. + * frv-tdep.h (scr0_regnum, scr1_regnum, scr2_regnum, scr3_regnum): + New constants. + + From Richard Sandiford : + * frv-tdep.c (frv_gdbarch_init): Add FR450 support. + +2004-03-12 Kevin Buettner + + * frv-tdep.c, frv-tdep.h (first_gpr_regnum, sp_regnum, fp_regnum) + (struct_return_regnum, last_gpr_regnum, first_fpr_regnum) + (last_fpr_regnum, pc_regnum, first_spr_regnum, psr_regnum, ccr_regnum) + (cccr_regnum, fdpic_loadmap_exec_regnum, fdpic_loadmap_interp_regnum) + (tbr_regnum, brr_regnum, dbar0_regnum, dbar1_regnum, dbar2_regnum) + (dbar3_regnum, lr_regnum, lcr_regnum, iacc0h_regnum, iacc0l_regnum) + (last_spr_regnum, frv_num_regs, first_pseudo_regnum, iacc0_regnum) + (last_pseudo_regnum, frv_num_pseudo_regs): Move constant (enum) + definitions from frv-tdep.c to frv-tdep.h. + +2004-03-12 Kevin Buettner + + Add shared library support for FR-V FDPIC ABI: + * Makefile.in (solib-frv.o): Add dependencies. + * frv-tdep.c (find_func_descr, frv_convert_from_func_ptr_addr): + New functions. + (frv_push_dummy_call): Add support for FDPIC ABI. + (frv_gdbarch_init): Call set_gdbarch_convert_from_func_ptr_addr() + for FDPIC ABI. + * frv-tdep.h (frv_fdpic_find_global_pointer): Declare. + (frv_fdpic_find_canonical_descriptor): Declare. + * solib-frv.c: New file. + * config/frv/frv.mt (TDEPFILES): Add solib.o and solib-frv.o. + * config/frv/tm-frv.h (solib.h): Include. + +2004-03-12 Kevin Buettner + + * Makefile.in (elf_frv_h, frv_tdep_h): Define. + (frv-tdep.o): Update dependencies. + * frv-tdep.h: New file. + * frv-tdep.c (elf-bfd.h, elf/frv.h, osabi.h, frv-tdep.h): Include. + (fdpic_loadmap_exec_regnum, fdpic_loadmap_interp_regnum): New + constants. + (struct gdbarch_tdep): Add new member ``frv_abi''. + (frv_abi, frv_fdpic_loadmap_addresses, set_variant_abi_fdpic): New + functions. + (new_variant): Set ``frv_abi'' field. + (gdb_arch_init): Detect FDPIC executables. + +2004-03-12 Mark Kettenis + + * solib-svr4.h: Change SOLIB_SVR4 wrapper into SOLIB_SVR4_H + wrapper. + +2004-03-11 Andrew Cagney + + * solib-svr4.h: Add #ifndef SOLIB_SVR4 wrapper. + +2004-03-11 Kevin Buettner + + * solist.h (master_so_list): New function. + * solib.c (master_so_list): Likewise. + * solib-svr4.c (enable_break): Iterate over so_list entries + obtained from master list instead of entries obtained directly + via svr4_current_sos(). + +2004-03-10 Ben Elliston + + * MAINTAINERS: Update my mail address. + +2004-03-10 Kei Sakamoto + + * remote-m32r-sdi.c: Support hardware watchpoint. + +2004-03-09 Daniel Jacobowitz + + * user-regs.c: Update copyright years. + (struct user_regs): Rename to gdb_user_regs. + (append_user_reg, builtin_user_regs, user_regs_init) + (user_reg_add, user_reg_map_name_to_regnum) + (usernum_to_user_reg): Update. + +2004-03-09 Daniel Jacobowitz + + * dwarf2read.c (skip_leb128, peek_die_abbrev, skip_one_die) + (skip_children): New functions. + (locate_pdi_sibling): Call skip_children. + +2004-03-09 Daniel Jacobowitz + + * arm-tdep.c (arm_use_struct_convention): Look through typedefs. + * gdbtypes.c (check_typedef): Update comments. + +2004-03-09 Daniel Jacobowitz + + * dwarf2read.c (struct comp_unit_head): Remove dwarf2_abbrevs array. + (struct dwarf2_cu): Add abbrev_obstack and dwarf2_abbrevs + pointer. Update comment about comp_unit_head. + (struct abbrev_info): Shorten two int flags. + (dwarf_alloc_abbrev): Take a CU argument. + (dwarf2_build_psymtabs_hard): Call dwarf2_free_abbrev_table + each time through the loop. Update cleanup argument. + (psymtab_to_symtab_1): Update cleanup call. + (dwarf2_read_abbrevs, dwarf2_alloc_abbrev): Allocate on the + abbrev_obstack. + (dwarf2_free_abbrev_table): Renamed from dwarf2_empty_abbrev_table. + Just call obstack_free and clear the pointer. + +2004-03-09 Daniel Jacobowitz + + * infrun.c (handle_inferior_event): Remove short-circuit code for + events in a different thread. + 2004-03-09 Daniel Jacobowitz * target.c (debug_to_xfer_memory): If targetdebug is 1, don't