+
+ * Makefile.in (gdbtypes.o, varobj.o): Depend on wrapper.h.
+
+ * wrapper.h (gdb_value_subscript, wrap_value_subscript): Add
+ prototypes.
+
+
+ * valops.c (hand_function_call): Replace #ifdef
+ SAVE_DUMMY_FRAME_TOS with if SAVE_DUMMY_FRAME_TOS_P.
+
+ * gdbarch.sh (SAVE_DUMMY_FRAME_TOS): Add.
+ * gdbarch.h, gdbarch.c: Regenerate.
+
+
+ * ax.h (make_cleanup_free_agent_expr): Add declaration.
+ * ax-general.c (do_free_agent_expr_cleanup):
+ (make_cleanup_free_agent_expr): New functions.
+
+ * tracepoint.c (validate_actionline, encode_actions), ax-gdb.c
+ (expr_to_agent, gen_trace_for_expr, agent_command): Replace calls
+ to make_cleanup.
+
+
+ * breakpoint.h (make_cleanup_delete_breakpoint,
+ make_exec_cleanup_delete_breakpoint): Declare.
+ * breakpoint.c (make_cleanup_delete_breakpoint,
+ make_exec_cleanup_delete_breakpoint,
+ do_delete_breakpoint_cleanup): New fuctions.
+
+ * infcmd.c (finish_command), hppa-tdep.c (hppa_pop_frame),
+ breakpoint.c (until_break_command, until_break_command): Replace
+ call to make_cleanup / make_exec_cleanup.
+
+
+ * defs.h (core_addr_greaterthan, core_addr_lessthan), utils.c
+ (core_addr_greaterthan, core_addr_lessthan): Move from here.
+ * arch-utils.h (core_addr_greaterthan, core_addr_lessthan),
+ arch-utils.c (core_addr_greaterthan, core_addr_lessthan): To here.
+
+
+ * printcmd.c (print_frame_args), stack.c (print_frame), command.c
+ (do_setshow_command), breakpoint.c (print_it_typical, mention):
+ Use make_cleanup_ui_out_stream_delete.
+
+
+ * proc-events.c (init_syscall_table): Delete stray ``;''.
+ * ui-out.c (ui_out_set_flags, ui_out_clear_flags): Return old
+ value.
+ * mdebugread.c (START_PSYMTAB): Add paren to avoid x=x=x.
+
+
+ * dwarf2read.c (dwarf2_const_value_data): Fix typo in sign
+ extension code.
+
+
+ * TODO: Mention weak symbol problem. Mention UnixWare thread
+ problem.
+
+
+ * README: Update section on kernel debugging.
+
+
+ * mips-tdep.c (mips_get_saved_register): New function. Handle
+ case of 32 ABI saving 32 bit registers on stack when target has 64
+ bit ISA.
+ (mips_gdbarch_init): Update.
+
+
+ * mips-tdep.c (MIPS_EABI): Fix typo. Test for MIPS_ABI_EABI64.
+
+
+ * configure.in (WERROR_CFLAGS): Check that GCC accepts a -W
+ options before using them. Report result.
+ * configure: Regenerate.
+
+
+ * coffread.c (coff_symtab_read): In the case of C_THUMBEXT |
+ C_THUMBEXTFUNC | C_EXT, sec will never ever be the index for
+ .rodata, because cs_to_section doesn't deal with .rodata. Fix test
+ accordingly.
+
+
+ * gdbarch.sh (gdbarch_dump): Print the value of GDB_MULTI_ARCH.
+ Always check that a macro is defined before printing it.
+ * gdbarch.c: Re-generate.
+
+
+ * README: Update for GDB 5.0.
+
+
+ * mips-tdep.c (MIPS_DEFAULT_STACK_ARGSIZE): Fix typo.
+
+ * config/mips/tm-irix5.h (GDB_MULTI_ARCH): Add
+ definition. Disable. Document known problems.
+ (MIPS_DEFAULT_ABI): Define.
+
+ * mips-tdep.c (enum mips_abi): Define.
+ (struct gdbarch_tdep): Replace mips_eabi with mips_abi.
+ (MIPS_EABI): Update.
+ (mips_gdbarch_init): Add preliminary support for IRIX N32 ABI.
+ Determine ABI from either ELF_FLAGS or MIPS_DEFAULT_ABI. When
+ looking for a matching architecture require a matching MIPS_ABI.
+ (mips_gdbarch_init): Cleanup arch_debug information.
+
+
+ * solib.c (symbol_add_stub): Remember the index and the name of
+ the section with the lowest address. Use this data (instead of
+ data from .text) to pass info into symbol_file_add.
+
+ * elfread.c (record_minimal_symbol_and_info): Use the section
+ where the symbol lives to get the index, instead of guessing.
+
+
+ Make Sparc a Multi-Arch target. Discard PARAMS macro (require ANSI).
+ * sparc-tdep.c: include arch-utils.h.
+ (SPARC_HAS_FPU, FP_REGISTER_BYTES, FP_MAX_REG NUM, SPARC_INTREG_SIZE,
+ DUMMY_REG_SAVE_OFFSET): provide multi-arch-compatible definitions.
+ (GDB_TARGET_IS_SPARC64): make into a runtime test.
+ (struct frame_extra_info): Define, use instead of the macro.
+ (Many places): Use alloca instead of statically allocated buffers
+ that depend on a multi-arch variable such as MAX_REGISTER_RAW_SIZE.
+ (sparc_extract_struct_value_address): Accept a pointer arg instead
+ of an array sized by REGISTER_BYTES.
+ (examine_prologue): Accept a pointer to an array of CORE_ADDR,
+ instead of the defunct struct frame_saved_regs. Recognize new
+ Sparc64 store instructions as part of the prologue. Ignore the
+ destination of a frame store when parsing the prologue (so long
+ as it's on the stack).
+ (sparc_push_dummy_frame): Fix incorrect buffer offset for PSTATE.
+ (sparc_frame_find_saved_regs): Accept a ptr to an array of CORE_ADDR
+ instead of the defunct struct frame_saved_regs.
+ (supply_gregset): Discard unnecessary 'zerobuf': just send NULL to
+ supply_register. Provide 4-byte offset to compensate for diff
+ between size of the prgreg_t elements on a 64-bit host and size
+ of the registers for a 32-bit target. Fill all inaccessible regs
+ with zero so they won't keep being requested again and again.
+ (fill_gregset): Handle 32/64 size difference between registers
+ and prgreg_t. Handle as many new 64-bit regs as possible.
+ (supply_fpregset, fill_fpregset): Attempt to handle 64-bit world.
+ (sparc_push_arguments): Rename to sparc32_push_arguments.
+ Copy arguments into registers as well as onto stack, so that the
+ CALL_DUMMY (code pushed onto the target stack) is not required.
+ (sparc_extract_return_value): Rename to sparc32_extract_return_value.
+ (sparc_store_return_value): Use memset instead of bzero.
+ Use write_register_gen instead of write_register_bytes.
+ (sparclet_store_return_value): New function.
+ (_initialize_sparc_tdep): Call register_gdbarch_init to activate
+ the gdbarch multi-architecture system.
+ (sp64_push_arguments): Rename to sparc64_push_arguments.
+ Extend to store arguments in general registers as well as on stack.
+ (sparc64_extract_return_value): Rename to sp64_extract_return_value.
+ Use as a private function, to be called by the new external function
+ sparc64_extract_return_value.
+ (sparclet_extract_return_value): New function.
+ (sparc32_stack_align, sparc64_stack_align, sparc32_register_name,
+ sparc64_register_name, sparc_print_extra_frame_info,
+ sparclite_register_name, sparclet_register_name,
+ sparc_push_return_address, sparc64_use_struct_convention,
+ sparc32_store_struct_return, sparc64_store_struct_return,
+ sparc32_register_virtual_type, sparc64_register_virtual_type,
+ sparc32_register_size, sparc64_register_size,
+ sparc32_register_byte, sparc64_register_byte,
+ sparc_gdbarch_skip_prologue, sparc_convert_to_virtual,
+ sparc_convert_to_raw, sparc_frame_init_saved_regs,
+ sparc_frame_address, sparc_gdbarch_fix_call_dummy,
+ sparc_coerce_float_to_double, sparc_call_dummy_address,
+ sparc_y_regnum, sparc_reg_struct_has_addr, sparc_intreg_size,
+ sparc_return_value_on_stack): New functions supporting multi-arch.
+ (sparc_gdbarch_init): New function; initialize multi-arch.
+ (struct gdbarch_tdep): Define, use for private multi-arch data.
+ * config/sparc/tm-sparc.h: Move definitions around, enclose with
+ #ifdef GDB_MULTI_ARCH tests, provide some multi-arch alternate
+ definitions. Add enums for register names, to help debugging gdb.
+ This header file must work for non-multi-arch and for multi-arch.
+ * config/sparc/tm-sp64.h: Add GDB_MULTI_ARCH configuration. Also add
+ AT_ENTRY_POINT definitions for CALL_DUMMY, for non-multi-arch case.
+ Define GDB_MULTI_ARCH.
+ * config/sparc/tm-sparclet.h: Add GDB_MULTI_ARCH configuration.
+ Do not define GDB_MULTI_ARCH (bfd does not correctly identify target).
+ * config/sparc/tm-sparclite.h: Ditto.
+ * config/sparc/tm-sun4sol2.h: Define GDB_MULTI_ARCH.
+ * sparclet-rom.c (sparclet_regnames): Initialize explicitly, to
+ avoid using deprecated REGISTER_NAMES macro.
+ * Makefile.in: Let sparc-tdep.c depend on arch-utils.h.
+
+
+ * gdbarch.sh: Add FP0_REGNUM to list of multi-arched register numbers.
+ * gdbarch.c, gdbarch.h: Regenerate.
+ * core-regset.c: Change FP0_REGNUM to a runtime test.
+ * procfs.c: Ditto.
+ * sun3-nat.c: Ditto.
+ * sparc-tdep.c: Ditto.
+
+ * i386mach-nat.c: Remove unnecessary ifdef for FP0_REGNUM.
+ * ptx4-nat.c: Ditto.
+
+ * sol-thread.c (sol_thread_create_inferior): only add the thread
+ to the thread list if it is not already in there.
+ (prototypes for thread_db func ptrs): pretty up formatting.
+
+
+ * config/djgpp/djconfig.sh: Use more warning switches.
+
+ * config/djgpp/fnchange.lst: Replace the leading gdb-0222 with the
+ @V@ placebo. djunpack.bat changed accordingly.
+
+
+ * mips-tdep.c (size_auto, size_32, size_64, size_enums): Rename
+ saved_gpreg_size_auto, saved_gpreg_size_32, saved_gpreg_size_64
+ and saved_gpreg_size_enums.
+ (mips_stack_argsize): Update. Cleanup.
+
+ * mips-tdep.c (STACK_ARGSIZE): Delete macro. Replaced by
+ MIPS_STACK_ARGSIZE.
+ (MIPS_NABI32): Delete macro. Replaced by
+ MIPS_REGS_HAVE_STACK_HOME_P.
+ (mips_push_arguments): Update.
+ (mips_push_arguments): Replace check for MIPS_EABI or MIPS_NABI32
+ with test for MIPS_REGS_HAVE_STACK_HOME_P.
+ (MIPS_REGS_HAVE_STACK_HOME_P): Define. Provide non- multi-arch
+ default.
+ (struct gdbarch_tdep): Add mips_regs_have_stack_home_p and
+ mips_default_stack_argsize.
+ (MIPS_STACK_ARGSIZE): Define as mips_stack_argsize.
+ (mips_stack_argsize_string): New static variable.
+ (mips_stack_argsize): New function, handle default case.
+ (__initialize_mips_tdep): Add command ``set mips stack-arg-size''
+ implemented as an enum using size_auto et.al.
+ (mips_gdbarch_init): Initialize mips_default_stack_argsize and
+ mips_regs_have_stack_home_p.
+
+ * config/mips/tm-irix5.h (MIPS_DEFAULT_SAVED_REGSIZE): Define as 8
+ for n32.
+ (MIPS_REGS_HAVE_STACK_HOME_P): Define as 0 for n32.
+
+
+ * procfs.c (PROCFS_TRACE): Delete definition.
+ * proc-utils.h (PROCFS_NOTE, PROC_PRETTYFPRINT_STATUS): Always
+ define.
+
+
+ * procfs.c: Cleanup of procfs tracing. Move defines and
+ prototypes to proc-utils.h
+ * proc-utils.h: Define tracing macros. Declare trace functions.
+ * proc-api.c: Make procfs tracing a runtime option.
+ (prepare_to_trace): New function, abstracted out of several
+ places. Open a trace file if one is required.
+ (ioctl_with_trace, write_with_trace, open_with_trace,
+ close_with_trace, wait_with_trace, lseek_with_trace):
+ Report errno if an error occurs in a system call.
+ (write_with_trace): Make 2nd arg void *, to agree with write.
+
+
+ * elfread.c (elf_symtab_read): The calculation of 'offset'
+ must be done for each symbol, not just once. The index
+ used must be the index of the section where 'sym' resides,
+ not .text.
+
+
+ * procfs.c (many functions): change int cmd; to long cmd;
+ Solaris /proc API calls this parameter a long, and requires it
+ for 64-bit hosts (where sizeof(long) != sizeof(int)). UnixWare
+ calls it an int, but on existing UnixWare hosts, int and long
+ are the same size. So long it must be. If a future UnixWare
+ version has problems with this, we'll have to use autoconf.
+ * proc-api.c (write_with_trace): use long instead of int.
+
+
+ * i386-linux-nat.c: Define PT_READ_U and PT_WRITE_U if they're not
+ already defined.
+
+
+ * infrun.c (handle_inferior_event): Add missing call to keep_going
+ and missing return when handling an ordinary signal from the
+ inferior.
+
+
+ * objfiles.h (SECT_OFF_DATA, SECT_OFF_TEXT, SECT_OFF_BSS,
+ SECT_OFF_RODATA): Define as functions of OBJFILE. Add
+ sect_index_text, sect_index_data, sect_index_rodata,
+ sect_index_bss to objfile structure.
+ * gdb-stabs.h (SECT_OFF_DATA, SECT_OFF_TEXT, SECT_OFF_BSS,
+ SECT_OFF_RODATA): Remove.
+ * objfiles.c (allocate_objfile): Initialize
+ sect_index_{text,data,bss,rodata} to -1, for error detection.
+
+ * symfile.c (default_symfile_offsets): Initialize
+ sect_index_{text,data,bss,rodata} from bfd information.
+ * xcoffread.c (xcoff_symfile_offsets): Ditto.
+ * somread.c (som_symfile_offsets): Initialize
+ sect_index_{text,data,bss,rodata}.
+
+ * coffread.c, dbxread.c, elfread.c, hp-psymtab-read.c,
+ hp-symtab-read.c, hpread.c, mdebugread.c, minsyms.c,
+ mipsread.c, objfiles.c, os9kread.c, pa64solib.c, partial-stab.h,
+ remote-os9k.c, remote-vx.c, remote.c, rs6000-nat.c, somsolib.c,
+ stabsread.c, symfile.c, xcoffread.c:
+ Update use of SECT_OFF_{TEXT,DATA,BSS,RODATA} to depend on the
+ current objfile.
+
+ * xcoffread.c: Add new field objfile to find_targ_sec_arg.
+
+
+ * config/mips/tm-mipsv4.h (Dest_Reg), config/mips/tm-irix5.h
+ (MIPS_NUM_ARG_REGS, Dest_Reg), config/mips/tm-mips.h
+ (MIPS_NUM_ARG_REGS), config/mips/tm-mips.h (MIPS_NUM_FP_ARG_REGS):
+ Delete unused macros.
+
+
+ * solib.c (elf_locate_base, info_sharedlibrary_command):
+ Look at the bfd to determine if it is elf32 or elf64, rather
+ than using an ifdef. This makes it runtime teststable and
+ multi-arch.
+
+
+ * infrun.c (handle_inferior_event): When doing a "next", and
+ stepping out of a signal handler into its calling trampoline
+ ignore the value of step_frame_address.
+ (step_over_function): Only modify step_resume_breakpoint->frame if
+ the value of step_frame_address is non-zero.
+
+
+ * monitor.c (monitor_fetch_register): MAX_REGISTER_RAW_SIZE
+ is not static in the MULTI_ARCH world, so don't use it in a
+ static array declaration.
+
+
+ * symtab.c (in_prologue): From Jim Blandy. Rewrite, more
+ intelligently, making sure we use the information from the
+ symbol tables fully.
+
+
+ * ia64-tdep.c (ia64_gdbarch_init): Reference to ELFOSABI_NONE
+ instead of ELFOSABI_SYSV.
+
+
+ * gdbarch.sh (NPC_REGNUM, NNPC_REGNUM): Add.
+ * gdbarch.h, gdbarch.c: Re-generate.
+
+ * gdbserver/remote-utils.c (prepare_resume_reply): Change #ifdef
+ NPC_REGNUM to run-time test.
+ * findvar.c (generic_target_write_pc): Change #ifdef NPC_REGNUM
+ and NNPC_REGNUM to run-time test.
+ * procfs.c (procfs_fetch_registers): Change #ifdef NPC_REGNUM to
+ run-time test.
+ (procfs_store_registers): Ditto.
+
+
+ * gdbarch.sh: Provide non- multi-arch defaults by direct
+ definition in "gdbarch.h" instead of going through "gdbarch.c".
+ * gdbarch.h, gdbarch.c: Re-generate.
+ * defs.h: When non- multi-arch, include "arch-utils.h" so that
+ legacy definitions are globally visible.
+
+
+ * MAINTAINERS: Add Syd Polk to gdbtk maintainers.
+ (symtabs): Add Elena to symtabs maintainers list.
+ (Blanket Write Privs): Add Jim Blandy.
+
+
+ Remove obsolete Gould configuration:
+ * configure.host, configure.tgt: Remove Gould configs.
+ * Makefile.in: Remove Gould-related actions.
+ * gould-xdep.c, gould-tdep.c, config/gould/*: Remove files.
+ * NEWS: Mention removal.
+
+
+ * defs.h: Properly check for GCC version number.
+
+
+ Fix single-stepping out of signal trampolines.
+ * config/i386/nm-linux.h (CHILD_RESUME): Define.
+ * i386-linux-nat.c (child_resume): New function.
+
+
+ * blockframe.c (frameless_look_for_prologue): Use
+ PROLOG_FRAMELESS_P instead of SKIP_PROLOGUE_FRAMELESS_P.
+ * gdbarch.sh (PROLOG_FRAMELESS_P): Define.
+ * gdbarch.h, gdbarch.c: Re-generate.
+ * arch-utils.h, arch-utils.c (generic_prologue_frameless_p): New
+ function.
+
+
+ * m68k-tdep.c (delta68_in_sigtramp): Return 0 when the function
+ name is unknow.
+
+
+ * gdbarch.sh (d10v_daddr_p, d10v_iaddr_p, d10v_convert_daddr_to_raw,
+ d10v_convert_iaddr_to_raw): make these multi-arch functions optional.
+ * gdbarch.c, gdbarch.h: regenerate
+
+
+ * target.c (do_monitor_command): Cast tcomplain to correct
+ function type in comparison.
+
+
+ * config/alpha/alpha-osf3.mh (XDEPFILES): Add ser-tcp.o and
+ ser-pipe.o
+
+
+ * jv-valprint.c (java_val_print): Add arg declaration,
+ fix compiler warning.
+ * corelow.c (core_open): Call set_gdbarch_from_file so that
+ gdbarch becomes aware of the architecture encoded in the
+ corefile.
+ * findvar.c (write_register_gen): Export this useful interface.
+ * value.h (write_register_gen): Declare.
+
+
+ * cxux-nat.c (add_shared_symbol_files): Don't treat .text section
+ as special in the section_addr_info structure.
+ * pa64solib.c (pa64_solib_add_solib_objfile): Ditto.
+ * osfsolib.c (symbol_add_stub): Ditto.
+ * irix5-nat.c (symbol_add_stub): Ditto.
+
+
+ * mips-tdep.c, d10v-tdep.c: Include "arch-utils.h".
+
+
+ * TODO: Document IRIX X ARM cross compile problems.
+
+
+ * utils.c (internal_verror): Call target_terminal_ours.
+ * wrapper.h: Fix minor comment typo.
+ * proc-api.c (write_with_trace): Change 'arg' from long to int.
+ Treat 'off_t' and 'size_t' as unsigned long in printfs.
+ (lseek_with_trace): Treat 'off_t' as unsigned long in printf.
+ * procfs.c (comments): Eliminate "???" in comments, which GCC
+ wants to interpret as a trigraph. (fill_gregset, supply_gregset,
+ fill_fpregset, supply_fpregset): Declare.
+ (procfs_wait): Sysargs is a long, change printf format to match.
+ (test-mapping, mapping_test, test_mapping_cmd) Remove (test only).
+
+
+ * config/djgpp/fnchange.lst (ia64-linux-nat.c): Map to
+ ia64linux-nat.c.
+
+
+ * ax-gdb.c (agent_command): Remove now useless cast of
+ `free_current_contents' when passed to `make_cleanup'.
+ * coffread.c (coff_symfile_read): Ditto.
+ * dwarf2read.c (dwarf2_add_member_fn, read_array_type): Ditto.
+ (dwarf_decode_lines): Ditto.
+ * eval.c (parse_and_eval_address, parse_and_eval_address_1): Ditto.
+ (parse_and_eval, parse_to_comma_and_eval): Ditto.
+ * parse.c (parse_exp_1): Ditto.
+ * printcmd.c (print_command_1, output_command, set_command): Ditto.
+ (x_command, print_frame_args, printf_command): Ditto.
+ * top.c (execute_control_command): Ditto.
+ * tracepoint.c (validate_actionline): Ditto.
+ * typeprint.c (whatis_exp, ptype_command): Ditto.
+ (maintenance_print_type): Ditto.
+
+
+ * Makefile.in (ALLDEPFILES): Add ia64-linux-tdep.c.
+ (ia64-linux-tdep.o): Add dependencies.
+ (ia64-tdep.o): Add dependency for arch-utils.h.
+ * ia64-linux-tdep.c, ia64-tdep.c (arch-utils.h): Include.
+
+
+ * blockframe.c: Fix a minor typo in a comment.
+
+
+ * ia64-tdep.c (examine_prologue): Recognize store instructions;
+ those whose source operands are input registers which haven't
+ been seen before are considered to be part of the prologue.
+
+
+ * rs6000-nat.c (xcoff_relocate_symtam): Recover from the wrong
+ patch being applied `Fri Apr 7 13:44:38 2000'.
+
+
+ * ia64-linux-tdep.c: New file.
+ * ia64-tdep.c (elf-bfd.h): Include.
+ (ia64_linux_sigcontext_register_address): New extern declaration.
+ (struct gdbarch_tdep): New struct.
+ (SIGCONTEXT_REGISTER_ADDRESS): New define.
+ (read_sigcontext_register): New static function.
+ (extract_bit_field, replace_bit_field, slotN_contents,
+ replace_slotN_contents): Made static.
+ (ia64_frame_chain, ia64_frame_saved_pc, ia64_init_extra_frame_info):
+ Added new code for signal handler frames and call dummy frames.
+ (ia64_frame_init_saved_regs): Handle signal handler frames.
+ (ia64_find_saved_register): Removed.
+ (ia64_get_saved_register): Handle call dummy frames; reorganized
+ to call generic_get_saved_register() to find registers saved
+ in previous frames.
+ (process_note_abi_tag_sections): New static function.
+ (ia64_gdbarch_init): Attempt to determine the ABI/OS of the
+ executable. Based upon this information, set target dependent
+ field sigcontext_register_address appropriately. Also set
+ FRAME_CHAIN_VALID to be generic_func_frame_chain_valid.
+ * config/ia64/linux.mt (TDEPFILES): Add ia64-linux-tdep.o.
+ * config/ia64/tm-linux.h (IN_SIGTRAMP): Define.
+ (ia64_linux_in_sigtramp): New declaration.
+
* TODO, NEWS: Update due to inclusion of gdbmi.texinfo in the GDB
(rank_one_type): Change #if 0 to #ifdef DEBUG_OLOAD.
* gdbtypes.h: Add REFERENCE_CONVERSION_BADNESS for "badness"
associated with converting a non-reference to a reference.
+ * eval.c (evaluate_subexp_standard): for OP_VAR_VALUE, always
+ return full value object; for STRUCTOP_PTR, use pointer to
+ rtti type to get member / method if objectprint is set and
+ target type of pointer is class.
* gdbtypes.c (rank_one_type): Add comment on how to eliminate the
#ifdef DEBUG_OLOAD.