2006-06-02  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/remote.c (remote_hostio_write): Correct buffer length
	calculation.

2006-06-01  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/exec.c (exec_set_section_address): Always update the
	section's address.
	* gdb/objfiles.c (objfile_relocate): Also relocate the
	target sections table.
	* gdb/Makefile.in (objfiles.o): Update.

	* gdb/remote.c (remote_xfer_partial): Fail if the target is not
	running.

2006-06-01  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/remote.c (remote_download_command): Use FILEIO_O_TRUNC.

2006-06-01  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/remote.c (remote_hostio_parse_result): Check for strtol
	errors.

2006-06-01  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/doc/gdb.texinfo (Host I/O Packets): Mention explicit negative
	signs.

2006-05-31  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/remote.c (remote_download_command): Correct short write
	handling.

2006-05-23  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/remote.c (remote_fileio_errno_to_host)
	(remote_hostio_error): Rename argument to errnum.
	(_initialize_remote): Update calls to add_packet_config_cmd.

2006-05-23  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/remote.c: Include "gdb/fileio.h".
	(PACKET_Fopen, PACKET_Fread, PACKET_Fwrite, PACKET_Fclose): New
	enums.
	(remote_escape_output, remote_unescape_input): New functions.
	(remote_write_bytes): Use remote_escape_output.
	(readchar): Do not mask off the high bit.
	(read_frame): Print binary packets correctly.
	(getpkt_sane): Likewise.  Return the number of bytes read
	or -1.
	(remote_buffer_add_string, remote_buffer_add_bytes)
	(remote_buffer_add_int, remote_hostio_parse_result)
	(remote_hostio_send_command, remote_hostio_open)
	(remote_hostio_write, remote_hostio_read)
	(remote_hostio_close, remote_fileio_errno_to_host)
	(remote_hostio_error, fclose_cleanup, remote_download_command)
	(remote_upload_command): New functions.
	(_initialize_remote): Register new packets and remote-upload
	and remote-download commands.

	* gdb/doc/gdb.texinfo (File Transfer): New section.
	(Remote Configuration): Document Host I/O packet commands.
	(Host I/O Packets): New section.
	(Packets): Mention overloading of F prefix.

	* gdb/gdbserver/Makefile.in (OBS): Add hostio.o.
	(hostio.o): New rule.
	* gdb/gdbserver/hostio.c: New file.
	* gdb/gdbserver/remote-utils.c (putpkt_binary): New function,
	broken out from putpkt.
	(putpkt): Use it.
	(readchar): Do not mask the high bits.  Correct the buffer
	type.
	* gdb/gdbserver/server.c (main): Leave space for a trailing
	zero in the packet buffer.  Save the length of the
	received packet.  Handle Host I/O requests.  Optionally call
	putpkt_binary.
	* gdb/gdbserver/server.h (handle_f_hostio, putpkt_binary): New
	prototypes.

2006-05-10  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/frame.c (get_prev_frame): Move check for pc == 0 ...
	(get_prev_frame_1): ... to here.

2006-05-09  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/bsd-uthread.c (bsd_uthread_solib_loaded): Always pass 0 for
	from_tty.
	* gdb/remote.c (remote_get_shared_libraries): Don't call solib_add.
	* gdb/solib.c: Include "exceptions.h".
	(solib_map_sections): Throw NOT_FOUND_ERROR if appropriate.
	(symbol_add_stub): Delete.
	(solib_read_symbols): Use TRY_CATCH.  Inline symbol_add_stub.
	Use current from_tty, not a copy from the so_list.  Don't warn
	a second time for a missing library.
	(update_solib_list): Don't save from_tty.  Use TRY_CATCH.  Print
	out a single warning for all missing libraries.
	* gdb/solist.h (struct so_list): Remove from_tty.
	* gdb/Makefile.in (solib.o): Update.

2006-05-08  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/remote.c (remote_get_shared_libraries): Check for NULL ops.
	(remote_wait): Handle ",nop" on DLL packets and "dll:dll" response.

2006-05-08  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/solib-target.c (solib_target_remove_one_solib): Correct loop
	logic.

2006-04-24  Daniel Jacobowitz  <dan@codesourcery.com>

	* arm-tdep.c (thumb_heuristic_function_start): New function.
	(thumb_scan_prologue): Use it.
	(arm_prologue_this_id): Adjust LOWEST_PC check.

2006-04-19  Daniel Jacobowitz  <dan@codesourcery.com>

	Merge from gdb-csl-20060226-branch:

	2006-04-19  Daniel Jacobowitz  <dan@codesourcery.com>
	* gdb/doc/gdb.texinfo (Remote configuration): Mention "set remote
	load-offsets".
	(General Query Packets): Document qPartInfo.

	2006-04-18  Mark Mitchell  <mark@codesourcery.com>
	Issue #655
	* gdb/mt-tdep.c (mt_gdb_regnums): Add ZI2, ZQ2, Ichannel2,
	Iscramb2, Qscramb2, Qchannel2.
	(mt_register_name): Likewise.
	(mt_copro_register_type): Describe ZI2 and ZQ2.
	
	2006-04-11  Mark Mitchell  <mark@codesourcery.com>
	Issue #658
	* gdb/mt-tdep.c (mt_gdb_regnums): Define
	MT_COPRO_PSEUDOREG_MAC_REGNUM.
	(mt_register_name): Use it.
	(mt_copro_register_type): Likewise.
	(mt_register_type): Likewise.
	(mt_pseudo_register_read): Likewise.  Read the MAC register, not
	the coprocessor register.
	(mt_pseudo_register_write): Likewise.

2006-04-17  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/buildsym.c (start_subfile): Handle producer.
	(record_producer): New function.
	* gdb/buildsym.h (struct subfile): Include producer.
	(record_producer): New prototype.
	* gdb/dwarf2-frame.c (struct dwarf2_cie): Add version.
	(struct dwarf2_frame_state): Add armcc_cfa_offsets_sf and
	armcc_cfa_offsets_reversed.
	(execute_cfa_program): Handle armcc_cfa_offsets_sf.
	(dwarf2_frame_find_quirks): New function.
	(dwarf2_frame_cache): Call it.  Handle armcc_cfa_offsets_reversed.
	(decode_frame_entry_1): Record the CIE version.
	* gdb/dwarf2read.c (read_file_scope): Save the producer.
	* gdb/symtab.h (struct symtab): Rename unused version member to
	producer.

2006-04-12  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/Makefile.in (ALLDEPFILES): Add solib-target.c.
	(remote.o): Update dependencies.
	(solib-target.o, symbian-tdep.o): New rules.
	* gdb/arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
	(arm_force_mode_string): New.
	(arm_pc_is_thumb): Use them.
	(thumb_scan_prologue): Abort scan when symbols are missing.
	(arm_show_fallback_mode, arm_show_force_mode): New.
	(_initialize_arm_tdep): Register fallback-mode and force-mode.
	* gdb/configure.tgt: Add arm*-*-symbian*.
	* gdb/infcmd.c (_initialize_infcmd): Make "set args" a string
	variable.
	* gdb/inflow.c (kill_command): Assume that a target with stack
	can have a frame.
	* gdb/infrun.c (init_wait_for_inferior): Clear
	target_last_wait_ptid.
	(insert_step_resume_breakpoint_at_frame): Add use_previous argument.
	Use get_prev_frame if requested.
	(handle_inferior_event): Update TARGET_WAITKIND_LOADED support.
	Update calls to insert_step_resume_breakpoint_at_frame.
	* gdb/remote.c: Include "solist.h".
	(remote_exec_file): New variable.
	(PACKET_vAttach, PACKET_vRun, PACKET_qfDllInfo): New enums.
	(remote_mark_running, remote_mark_killed): New functions.
	(extended_remote_restart): Don't send a query.
	(get_offsets): Handle TextSeg and DataSeg response.
	(parse_load_response, remote_get_shared_libraries): New functions.
	(remote_start_remote): Take a target as the second argument for
	extended mode.  Check whether the target is running.  Reset
	inferior_ptid here.
	(remote_open_1): Assume the target is running.  Don't reset
	inferior_ptid here.  Pass the target to remote_start_remote
	in extended mode.  Only do some setup if the target is running.
	(remote_detach_1): New function, renamed from remote_detach.
	Don't say we are disconnecting if we aren't.
	(remote_detach): Call remote_detach_1.
	(extended_remote_detach): New function.
	(remote_disconnect): Take a target_ops argument.  Correct the
	error message.  Call remote_mourn_1 directly.
	(extended_remote_attach_1, extended_remote_attach)
	(extended_async_remote_attach): New functions.
	(remote_wait): Handle load and unload events.
	(extended_remote_mourn_1): New function.
	(extended_remote_mourn): Replace with a call to
	extended_remote_mourn_1.
	(extended_async_remote_mourn): New function.
	(extended_remote_run): New function.
	(extended_remote_create_inferior_1): New function, from
	extended_remote_create_inferior.  Call get_offsets.
	(extended_remote_create_inferior)
	(extended_remote_async_create_inferior): Use it.
	(remote_stopped_by_watchpoint, crc32_table)
	(compare_sections_command): Whitespace tweaks.
	(init_remote_ops, init_extended_remote_ops): Update.
	(init_remote_async_ops): Whitespace tweaks and update.
	(init_extended_async_remote_ops): Update.
	(_initialize_remote): Add new configurable packets.  Add
	"set remote exec-file".
	* gdb/solib-som.c (som_current_sos): Set addr_low and addr_high.
	* gdb/solib-target.c: New file.
	* gdb/solib.c (solib_symbols_extension): New variable.
	(solib_open): Use it.
	(solib_map_sections): Set addr_low and addr_high instead of
	textsection.
	(info_sharedlibrary_command): Use addr_low and addr_high.
	* gdb/solib.h (solib_symbols_extension): New declaration.
	* gdb/solist.h (struct so_list): Replace textsection
	with addr_low and addr_high.
	(struct target_so_ops): Add add_one_solib and remove_one_solib.
	* gdb/symbian-tdep.c: New file.
	* gdb/symfile.c (init_objfile_sect_indices): Use
	symfile_find_segment_sections to find the text section.
	(symfile_find_segments, symfile_find_segment_sections)
	(symfile_map_offsets_to_segments, symfile_find_segment_lengths)
	(symfile_section_offset_from_segment): New functions.
	* gdb/symfile.h (symfile_map_offsets_to_segments)
	(symfile_section_offset_from_segment)
	(symfile_find_segment_lengths): New prototypes.
	* gdb/target.c (debug_to_disconnect): Delete.
	(update_current_target): Make global.  Do not inherit to_disconnect.
	Mention to_get_shared_libraries.
	(target_disconnect): Search for to_disconnect.
	(target_get_shared_libraries): New.
	(setup_target_debug): Update.
	* gdb/target.h (struct target_ops): Update to_disconnect prototype.
	Add to_get_shared_libraries.
	(target_has_execution): Update comment.
	(target_get_shared_libraries, update_current_target): New
	prototypes.
	* gdb/cli/cli-setshow.c (do_setshow_command): Revise string variable
	handling.
	* gdb/config/arm/symbian.mt: New file.
	* gdb/doc/gdb.texinfo (ARM): Document set/show arm fallback-mode
	and set/show arm force-mode.

	* gdb/testsuite/gdb.base/define.exp: Don't use backslashes in the
	prompt.

	* readline/emacs_keymap.c: Add a MINGW32 hack.
	* readline/readline.c: Use _rl_bind_if_unbound to avoid macro bugs.

	* gdb/gdbserver/linux-low.c (linux_kill): Reset inferior thread and
	process lists.
	(linux_detach): Likewise.
	(linux_wait_for_process): Discard unexpected exits.
	* gdb/gdbserver/remote-utils.c (unblock_async_io): Ignore if we are
	restarting.
	* gdb/gdbserver/server.c (exit_requested, restarting_program)
	(program_argv): New variables.
	(attached): Move higher.
	(start_inferior): Clear attached.  Use restarting_program to avoid
	troubles with the 'R' packet.
	(attach_inferior): Set attached.
	(handle_query): Implement "monitor exit".
	(handle_query_non_running): New function.
	(handle_v_cont): Report errors.
	(handle_v_attach, handle_v_run): New.
	(handle_v_requests): Handle vAttach and vRun.
	(handle_v_requests_non_running, non_running): New.
	(debug_threads): Add declaration.
	(main): Handle --debug.  Don't adjust attached here.
	Save the argv.  Keep track of requested exits.  Use
	non_running when the target is dead.  Do not always exit
	after detach.  Fix up Hc support.  Do not automatically
	restart the inferior in extended mode.

2006-04-12  Daniel Jacobowitz  <dan@codesourcery.com>

	Backport:
	2006-04-12  Daniel Jacobowitz  <dan@codesourcery.com>
	* remote.c (extended_remote_restart): Pass the correct length
	to getpkt.

	2006-03-30  Daniel Jacobowitz  <dan@codesourcery.com>
	* remote.c (struct remote_state): Add BUF and BUF_SIZE.
	(init_remote_state): Initialize the new fields.
	(get_memory_packet_size): Update BUF and BUF_SIZE if necessary.
	(set_thread, remote_thread_alive, remote_unpack_thread_info_response)
	(remote_get_threadinfo, parse_threadlist_response)
	(remote_get_threadlist, remote_current_thread, remote_threads_info)
	(remote_threads_extra_info, extended_remote_restart, get_offsets)
	(remote_check_symbols, remote_open_1, remote_detach)
	(remove_vcont_probe, remote_vcont_resume, remote_resume)
	(remote_wait, remote_async_wait, fetch_register_using_p)
	(remote_fetch_registers, store_register_using_P)
	(remote_store_registers, check_binary_download, remote_write_bytes)
	(remote_read_bytes, remote_insert_breakpoint)
	(remote_remove_breakpoint, remote_insert_watchpoint)
	(remote_remove_watchpoint, remote_insert_hw_breakpoint)
	(remote_remove_hw_breakpoint, compare_sections_command)
	(remote_xfer_partial, remote_rcmd, packet_command)
	(remote_get_thread_local_address): Use the global incoming buffer
	instead of alloca or xmalloc.  Limit outgoing packets to
	rs->remote_packet_size and incoming packets to rs->buf_size.
	Update calls to getpkt and remote_send.
	(remote_send): Take arguments by reference.
	(putpkt_binary): Eliminate junkbuf.  Use skip_frame.
	(skip_frame): New function.
	(read_frame): Take arguments by reference.  Expand the packet
	buffer instead of issuing an error.
	(getpkt, getpkt_sane): Take arguments by reference.
	* remote.h (getpkt): Update prototype and doc.
	* tracepoint.c (remote_get_noisy_reply): Take arguments by
	reference.
	(target_buf): Change from array to pointer.
	(target_buf_size): New variable.
	(remote_set_transparent_ranges): Update call to getpkt.
	(trace_start_command, trace_stop_command, trace_status_command):
	Update calls to remote_get_noisy_reply.
	(finish_tfind_command): Take arguments by reference.
	(trace_find_command, trace_find_pc_command)
	(trace_find_tracepoint_command, trace_find_line_command):
	(trace_find_range_command, trace_find_outside_command): Update
	calls to finish_tfind_command.
	(_initialize_tracepoint): Initialize target_buf_size and target_buf.

2006-04-11  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/breakpoint.c (insert_bp_location, reattach_breakpoints)
	(remove_breakpoint, delete_breakpoint): Update calls to changed
	methods.
	(deprecated_insert_raw_breakpoint, deprecated_remove_raw_breakpoint)
	(single_step_breakpoints, insert_single_step_breakpoint)
	(remove_single_step_breakpoints): New.
	* gdb/breakpoint.h (struct bp_location): Add placed_address and
	placed_size.  Move shadow_contents below the new comment.
	(deprecated_insert_raw_breakpoint, deprecated_remove_raw_breakpoint)
	(insert_single_step_breakpoint, remove_single_step_breakpoints): New
	prototypes.
	* gdb/gdbarch.sh: Forward struct bp_location in gdbarch.h.
	(memory_insert_breakpoint, memory_remove_breakpoint): Update second
	argument.
	* gdb/mem-break.c (default_memory_insert_breakpoint): Update.  Set
	placed_address and placed_size.
	(default_memory_remove_breakpoint): Update.  Don't use
	BREAKPOINT_FROM_PC.
	(memory_insert_breakpoint, memory_remove_breakpoint): Update.
	* gdb/target.c (update_current_target): Update prototypes for changed
	functions.
	(debug_to_insert_breakpoint, debug_to_remove_breakpoint)
	(debug_to_insert_hw_breakpoint, debug_to_remove_hw_breakpoint):
	Update.
	* gdb/target.h: Forward declare struct bp_location.
	(struct target_ops): Use a bp_location argument for
	to_insert_breakpoint, to_remove_breakpoint,
	to_insert_hw_breakpoint, and to_remove_hw_breakpoint.
	(target_insert_breakpoint, target_remove_breakpoint)
	(target_insert_hw_breakpoint, target_remove_hw_breakpoint)
	(memory_insert_breakpoint, memory_remove_breakpoint)
	(default_memory_insert_breakpoint, default_memory_remove_breakpoint):
	Update.
	* gdb/config/i386/nm-i386.h: Forward declare struct bp_location.
	(i386_insert_hw_breakpoint, i386_remove_hw_breakpoint): Update.
	(target_insert_hw_breakpoint, target_remove_hw_breakpoint): Likewise.

	* gdb/gdbarch.c, gdbarch.h: Regenerated.

	* gdb/alpha-tdep.c (alpha_software_single_step): Use
	insert_single_step_breakpoint and remove_single_step_breakpoints.
	Remove unused statics.
	* gdb/arm-tdep.c (arm_software_single_step): Likewise.  Add a note.
	* gdb/cris-tdep.c (cris_software_single_step): Likewise.
	* gdb/mips-tdep.c (mips_software_single_step): Likewise.
	* gdb/rs6000-tdep.c (rs6000_software_single_step): Likewise.
	* gdb/sparc-tdep.c (sparc_software_single_step): Likewise.
	* gdb/wince.c (struct thread_info_struct): Remove step_prev.
	(undoSStep): Use remove_single_step_breakpoints.
	(wince_software_single_step): Use insert_single_step_breakpoint.

	* gdb/corelow.c (ignore): Remove unneeded prototype.  Update second
	argument.
	* gdb/exec.c (ignore): Likewise.
	* gdb/sol-thread.c (ignore): Likewise.

	* gdb/procfs.c (dbx_link_bpt_addr, dbx_link_shadow_contents): Delete.
	(dbx_link_bpt): New.
	(procfs_wait): Check it.
	(procfs_mourn_inferior): Remove it if necessary.
	(remove_dbx_link_breakpoint): Use it.
	(insert_dbx_link_bpt_in_file): Set it.
	(procfs_init_inferior): Don't update dbx_link_bpt_addr.
	* gdb/rs6000-nat.c (exec_one_dummy_insn): Use
	deprecated_insert_raw_breakpoint and
	deprecated_remove_raw_breakpoint.
	* gdb/solib-irix.c (shadow_contents, breakpoint_addr): Delete.
	(base_breakpoint): New.
	(disable_break): Use it.
	(enable_break): Set it.

	* gdb/i386-nat.c (i386_insert_hw_breakpoint, i386_remove_hw_breakpoint):
	Update.
	* gdb/ia64-tdep.c (ia64_memory_insert_breakpoint)
	(ia64_memory_remove_breakpoint): Likewise.
	* gdb/m32r-tdep.c (m32r_memory_insert_breakpoint)
	(m32r_memory_remove_breakpoint): Likewise.
	* gdb/monitor.c (monitor_insert_breakpoint, monitor_remove_breakpoint):
	Likewise.  Remove unnecessary prototypes.  Use placed_address
	and placed_size.  Removed useless read from memory.
	* gdb/nto-procfs.c (procfs_insert_breakpoint)
	(procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
	(procfs_remove_hw_breakpoint): Update.
	* gdb/ocd.c (ocd_insert_breakpoint, ocd_remove_breakpoint): Likewise.
	* gdb/ocd.h (ocd_insert_breakpoint, ocd_remove_breakpoint): Likewise.
	* gdb/ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Likewise.
	* gdb/ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Likewise.
	* gdb/remote-e7000.c (e7000_insert_breakpoint)
	(e7000_remove_breakpoint): Likewise.
	* gdb/remote-m32r-sdi.c (m32r_insert_breakpoint)
	(m32r_remove_breakpoint): Likewise.
	* gdb/remote-mips.c (mips_insert_breakpoint)
	(mips_remove_breakpoint): Likewise.
	* gdb/remote-rdp.c (remote_rdp_insert_breakpoint)
	(remote_rdp_remove_breakpoint): Likewise.
	(rdp_step): Use deprecated_insert_raw_breakpoint and
	deprecated_remove_raw_breakpoint.
	* gdb/remote-sds.c (sds_insert_breakpoint, sds_remove_breakpoint):
	Update.
	* gdb/remote-sim.c (gdbsim_insert_breakpoint, gdbsim_remove_breakpoint):
	Delete.
	(init_gdbsim_ops): Use memory_insert_breakpoint and
	memory_remove_breakpoint.
	* gdb/remote-st.c (st2000_insert_breakpoint)
	(st2000_remove_breakpoint): Update.  Remove unused
	BREAKPOINT_FROM_PC.
	* gdb/remote.c (remote_insert_breakpoint, remote_remove_breakpoint):
	Update.  Use placed_address and placed_size.
	(remote_insert_hw_breakpoint, remote_remove_hw_breakpoint): Likewise.

	* gdb/doc/gdbint.texinfo (Watchpoints, Target Conditionals): Update insert
	and remove breakpoint prototypes.

2006-04-11  Daniel Jacobowitz  <dan@codesourcery.com>

	Backport:
	2006-04-07  Daniel Jacobowitz  <dan@codesourcery.com>
	* remote.c (remote_wait): Convert warning to error before
	parsing corrupt packets.

2006-04-11  Daniel Jacobowitz  <dan@codesourcery.com>

	* bfd/cpu-arm.c (bfd_is_arm_mapping_symbol_name): Accept more
	mapping symbols.

2006-04-11  Daniel Jacobowitz  <dan@codesourcery.com>

	Backport:
	2006-03-09  Paul Brook  <paul@codesourcery.com>
	* bfd/cpu-arm.c (bfd_is_arm_mapping_symbol_name): Recognise additional
	mapping symbols.

2006-04-02  Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.def (host_modules, dependencies): Add expat.
	* configure.in (host_libs): Add expat.
	* Makefile.in, configure: Regenerate.
	* expat: New directory.

	* gdb/Makefile.in: Add expat, new files, and xml-builtin.c.  Update
	dependencies.
	* gdb/acinclude.m4: Include stdint.m4.
	* gdb/configure.ac: Use AC_C_BIGENDIAN and GCC_HEADER_STDINT.
	* gdb/aclocal.m4, gdb/config.in, gdb/configure: Regenerate.

	* gdb/auxv.h: Remove target_auxv_read prototype.
	* gdb/auxv.c, gdb/avr-tdep.c, gdb/ia64-tdep.c, gdb/linux-nat.c,
	gdb/procfs.c: Use target_read_whole.
	* gdb/sparc-tdep.c: Use target_read.

	* gdb/frame.c: Work around null frame_id handling.

	* gdb/breakpoint.c, gdb/f-valprint.c, gdb/infcmd.c, gdb/inflow.c,
	gdb/infrun.c, gdb/stack.c, gdb/valops.c, gdb/varobj.c,
	gdb/cli-cmds.c, gdb/testsuite/gdb.base/default.exp,
	gdb/tui/tui-disasm.c, gdb/tui/tui-source.c,
	gdb/tui/tui-winsource.c: Selected frame fixups.

	* gdb/README.AVAIL, gdb/available.c, gdb/available.h,
	gdb/parse-avail.c, gdb/sha1.c, gdb/features/feature_to_c.sh,
	gdb/features/gdb-target.dtd: New files.
	* gdb/arm-tdep.c: Handle missing FPA, present VFP, and
	self-described registers.  Decode VFP register numbers from DWARF.
	* gdb/arm-tdep.h: Add flags for VFP and FPA.
	* gdb/gdbarch.sh: Add available_features_support and feature_set.
	Export the arch's obstack.  Check feature sets.  Improve error
	handling.
	* gdb/gdbarch.c, gdb/gdbarch.h: Regenerated.
	* gdb/infcmd.c: Trigger architecture selection.
	* gdb/remote.c: Available feature support.  qPacketInfo support.
	Improved g/G packet support.  Improved qPart support.
	qPart:features support.
	* gdb/symfile.c: Adjust download_write_size.
	* gdb/target.c: Revise partial transfer support.  Handle available
	features method.  Add target_read_whole.
	* gdb/target.h: Add the available features object and methods.
	* gdb/doc/gdb.texinfo: Document new features.

	* gdb/symfile.h: Include symtab.h.

2006-03-31  Nathan Sidwell  <nathan@codesourcery.com>

	* gdb/config/m68k/monitor.mt (TDEPFILES): Remove unneeded
	monitors.
	(DEPRECATED_TM_FILE): Remove.

	* gdb/m68k-tdep.c (M68K_FPREG_SIZE): Define.
	(REGISTER_BYTES_FP): Use it.

	* gdb/configure.tgt (m68k-*-uclinux*): target is linux.

	* gdb/remote.c (remote_fetch_registers): Revert bogus change.

	* gdb/remote.c (remote_fetch_registers): Don't warn about short
	register packet if we've not set the expected value.

	* gdb/gdbserver/linux-low.c (linux_read_offsets): Remove debugging
	printf.

	* gdb/gdbserver/Makefile.in (reg-cf.o, reg-cf.c): New targets.
	* gdb/gdbserver/configure.srv (m68k*-*-uclinux*): New target.
	* gdb/gdbserver/linux-low.c (linux_create_inferior): Use vfork on
	mmuless systems.
	(linux_resume_one_process): Remove extraneous cast.
	(linux_read_offsets): New.
	(linux_target_op): Add linux_read_offsets on mmuless systems.
	* gdb/gdbserver/server.c (handle_query): Add qOffsets logic.
	* gdb/gdbserver/target.h (struct target_ops): Add read_offsets.

2006-03-30  Mark Mitchell <mark@codesourcery.com>

	* libiberty/configure.ac: Add cygpath for mingw hosts.
	* libiberty/configure: Rebuilt.
	* libiberty/Makefile.in: Add cygpath.
	* libiberty/cygpath.c: New.

2006-03-30  Paul Brook  <paul@codesourcery.com>

	Backport form mainline.
	* gdb/testsuite/gdb.mi/mi-until.exp: kfail broken until command.
	* gdb/testsuite/gdb.mi/mi2-until.exp: Ditto.

2006-03-29  Nathan Sidwell  <nathan@codesourcery.com>

	* gdb/m68k-tdep.c (M68K_FPREG_TYPE, M68K_LONG_DOUBLE_FORMAT,
	M68K_RETURN_FP0): New.  Set for Coldfire.
	(m68k_register_type, m68k_register_to_value,
	m68k_svr4_extract_return_value, m68k_svr4_store_return_value,
	m68k_gdbarch_init): Use them.

2006-03-21  Mark Mitchell  <mark@codesourcery.com>

	* gdb/ser-mingw.c (net_windows_state): Add mutex.
	(net_windows_select_thread): Grab lock around access to
	read_event.
	(net_windows_wait_handle): Do not reset the read_event.
	(net_windows_open): Create a mutex.
	(net_windows_read_prim): New function.
	(_initialize_ser_windows): Use it.

2006-03-20  Mark Mitchell  <mark@codesourcery.com>

	* libiberty/pex-common.c (pex_run): Close the write end of the
	pipe after starting the child.

	* gdb/config/arm/armv7m.mt (TDEPFILES): Add prologue-value.o.

2006-03-21  Paul Brook  <paul@codesourcery.com>
	Daniel Jacobowitz <dan@codesourcery.com>
	Jim Blandy <jimb@codesourcery.com>

	* gdb/Makefile.in: Add prologue_value.{c,h}
	* gdb/arm-tdep.c: Include prologue-value.h.
	(thumb_skip_prologue): Remove.
	(thumb_analyze_prologue): New function.
	(arm_skip_prologue): Use thumb_analyze_prologue.
	(thumb_scan_prologue): Ditto.
	* gdb/prologue-value.c: New file.
	* gdb/prologue-value.h: New file.
	* gdb/config/arm/embed.mt (TDEPFILES): Add prologue-value.o.
	* gdb/config/arm/linux.mt (TDEPFILES): Add prologue-value.o.
	* gdb/config/arm/nbsd.mt (TDEPFILES): Add prologue-value.o.
	* gdb/config/arm/wince.mt (TDEPFILES): Add prologue-value.o.
	* gdb/testsuite/gdb.arch/thumb-prologue.c: New file.
	* gdb/testsuite/gdb.arch/thumb-prologue.exp: New file.

2006-03-20  Mark Mitchell  <mark@codesourcery.com>

	* configure.tgt (arm*-stellaris-*): Use armv7m configuration.
	* config/arm/armv7m.mt: New file.
	* config/arm/tm-armv7m.h: Likewise.
	* arm-tdep.c (arm_register_name_strings): Use xPSR on ARM V7M.
	(arm_pc_is_thumb): ARM V7M is always Thumb.
	(set_disassembly_style): Use xPSR on ARM V7M.
	(arm_write_pc): Do not set T bit in CSPR on V7M.

2006-03-20  Mark Mitchell  <mark@codesourcery.com>

	* libiberty/pex-win32.c (<errno.h>): Include.
	(fix_argv): Remove.
	(argv_to_cmdline): New function.
	(std_suffixes): New variable.
	(no_suffixes): Likewise.
	(find_executable): New function.
	(win32_spawn): Likewise.
	(spawn_script): Use win32_spawn instead of _spawnv[p].
	(pex_win32_exec_child): Replace MSVCRT calls with Win32 API calls.
	(pex_win32_wait): Likewise.

2006-03-19  Mark Mitchell  <mark@codesourcery.com>

	* gdb/ser-mingw.c (free_pipe_state): Close pipe before calling
	pex_free. 

2006-03-17  Mark Mitchell  <mark@codesourcery.com>

	* gdb/config/arm/embed.mt (TDEPFILES): Remove remote-rdp.o.

2006-03-17  Jim Blandy  <jimb@codesourcery.com>

	Add support for 'target remote |' on MinGW.
	* gdb/ser-mingw.c (struct pipe_state): New structure.
	(make_pipe_state, free_pipe_state, cleanup_pipe_state)
	(pipe_windows_open, pipe_windows_close, pipe_windows_read)
	(pipe_windows_write, pipe_wait_handle): New functions.
	(_initialize_ser_windows): Register a "pipe" interface based on
	them.

 	* libiberty/pex-common.c (pex_write_input): New function.
 	* libiberty/pexecute.txh (pex_write_input): Document it.
 	* libiberty/pex-common.h (struct pex_funcs): New function ptr fdopenw.
 	* libiberty/pex-unix.c (pex_unix_fdopenw): New function.
 	(funcs): List it as our fdopenw function.
 	* libiberty/pex-win32.c (pex_win32_fdopenw): New function.
 	(funcs): List it as our fdopenw function.
 	* libiberty/pex-djgpp.c (funcs): Leave fdopenw null.
 	* libiberty/pex-msdos (funcs): Same.
 	* libiberty/functions.texi: Regenerated.

 	* include/libiberty.h (pex_write_input): New declaration.

	* libiberty/pex-common.h (struct pex_obj): Doc fixes.

	* libibery/functions.texi: Regenerate.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/gdb_proc_service.h (paddr_t): Use psaddr_t if available.
	* gdb/proc-service.c (ps_xfer_memory): Cast paddr_t to unsigned
	long.
	(ps_pglobal_lookup): Cast CORE_ADDR to paddr_t.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/gdbserver/linux-mips-low.c: Include <sys/ptrace.h> and
	"gdb_proc_service.h".
	(PTRACE_GET_THREAD_AREA): Define.
	(ps_get_thread_area): New function.
	* gdb/gdbserver/Makefile.in (linux-i386-low.o, linux-mips-low.o)
	(linux-x86-64-low.o): Update.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/gdbserver/configure.ac: Remove checks for prfpregset_t.
	* gdb/gdbserver/gdb_proc_service.h: New file.
	* gdb/gdbserver/linux-i386-low.c, gdb/gdbserver/linux-x86-64-low.c,
	gdb/gdbserver/thread-db.c: Use the new "gdb_proc_service.h".
	* gdb/gdbserver/proc-service.c: Likewise.
	(ps_pglobal_lookup, ps_pdread, ps_pdwrite): Use psaddr_t.
	(ps_lgetfpregs, ps_lsetfpregs): Use a void* argument.
	* gdb/gdbserver/Makefile.in (gdb_proc_service_h): Updated.
	* gdb/gdbserver/configure, config.in: Regenerated.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/Makefile.in (mips_linux_tdep_h): New.
	(mpis-linux-nat.o, mips-linux-tdep.o): Update.
	* gdb/mips-linux-nat.c: Include "inferior.h", "mips-linux-tdep.h", and
	<sys/ptrace.h>.
	(have_ptrace_regsets, super_fetch_registers, super_store_registers)
	(mips64_linux_regsets_fetch_registers)
	(mips64_linux_regsets_store_registers, mips64_linux_fetch_registers)
	(mips64_linux_store_registers): New.
	(_initialize_mips_linux_nat): Override to_fetch_registers and
	to_store_registers.
	* gdb/mips-linux-tdep.h: New file.
	* gdb/mips-linux-tdep.c: Include "mips-linux-tdep.c".
	(ELF_NGREG, ELF_NFPREG, elf_greg_t, elf_gregset_t, elf_fpreg_t)
	(elf_fpregset_t, FPR_BASE, PC, CAUSE, BADVADDR, MMHI, MMLO)
	(FPC_CSR, FPC_EIR, EF_REG0, EF_REG31, EF_LO, EF_HI, EF_CP0_EPC)
	(EF_CP0_BADVADDR, EF_CP0_STATUS, EF_CP0_CAUSE, EF_SIZE)
	(MIPS64_ELF_NGREG, MIPS64_ELF_NFPREG, mips64_elf_greg_t)
	(mips64_elf_gregset_t, mips64_elf_fpreg_t, mips64_elf_fpregset_t)
	(MIPS64_FPR_BASE, MIPS64_PC, MIPS64_CAUSE, MIPS64_BADVADDR)
	(MIPS64_MMHI, MIPS64_MMLO, MIPS64_FPC_CSR, MIPS64_FPC_EIR)
	(MIPS64_EF_REG0, MIPS64_EF_REG31, MIPS64_EF_LO, MIPS64_EF_HI)
	(MIPS64_EF_CP0_EPC, MIPS64_EF_CP0_BADVADDR, MIPS64_EF_CP0_STATUS)
	(MIPS64_EF_CP0_CAUSE, MIPS64_EF_SIZE): Delete.
	(supply_32bit_reg): Use gdb_byte.
	(supply_64bit_reg): New.
	(mips_supply_gregset, mips_fill_gregset, mips_supply_fpregset)
	(mips_fill_fpregset, fetch_core_registers, supply_gregset)
	(fill_gregset, supply_fpregset): Update for renamed types.
	(mips64_supply_gregset): Use gdb_byte and supply_64bit_reg.
	(mips64_fill_gregset): Make global.  Handle 32-bit register
	sizes.
	(mips64_fill_fpregset): Make global.  Use gdb_byte.  Handle
	FP regsets properly.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/mips-linux-tdep.c (mips_supply_gregset): Renamed from supply_gregset.
	(mips_fill_gregset): Renamed from fill_gregset.
	(mips_supply_fpregset): Renamed from supply_fpregset.
	(mips_fill_fpregset): Renamed from fill_fpregset.
	(fetch_core_registers): Update calls.
	(supply_gregset, fill_gregset, supply_fpregset, fill_fpregset): New
	functions.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/mips-tdep.c (mips_gdbarch_init): Default 64-bit ELF files to N64.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/mips-tdep.c (is_mips16_addr, mips32_next_pc, add_offset_16):
	Correct arithmetic for 64-bit CORE_ADDR.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/mips-linux-tdep.c: Include "floatformat.h".
	(mips_linux_init_abi): Use 128-bit long double for N32 and N64.
	(mips_n32n64_return_value): Support 128-bit long double.
	(print_gp_register_row): Don't print spaces before ignored
	or floating point registers.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/mips-mdebug-tdep.c (compare_pdr_entries): Use bfd_get_signed_32
	for code addresses.
	(non_heuristic_proc_desc): Likewise.

2006-03-15  Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb/mips-linux-nat.c: Include "gdb_proc_service.h".
	(PTRACE_GET_THREAD_AREA): Define.
	(ps_get_thread_area): New.
	* gdb/Makefile.in (mips-linux-nat.o): Update.

2006-03-08  Paul Brook  <paul@codesourcery.com>

	Backport from mainline.
	* gdb/arm-tdep.c (arm_push_dummy_call): Remove stack alignment.
	(arm_frame_align): New function.
	(arm_gdbarch_init): Use it.

2006-03-07  Paul Brook  <paul@codesourcery.com>

	Backport from mainline.
	* gdb/testsuite/gdb.base/assign.exp: Correct fail message.

2006-03-07  Paul Brook  <paul@codesourcery.com>

	Backport from mainline.
	* sim/arm/elfos.c (ARMul_OSHandleSWI): Call correct function for IsTTY.

2006-03-07  Paul Brook  <paul@codesourcery.com>

	Backport from mainline.
	* gdb/testsuite/lib/compiler.c: Extract armcc version number.
	* gdb/testsuite/lib/compiler.cc: Ditto.

2006-03-07  Paul Brook  <paul@codesourcery.com>

	Backport from mainline.
	2006-03-03  Khem Raj <khem@mvista.com>
	* remote-rdp.c (remote_rdp_xfer_inferior_memory): Use gdb_byte.

2006-03-07  Paul Brook  <paul@codesourcery.com>

	Backport from mainline.
	* gdb.arch/altivec-abi.exp: Use nowarnings instead of
	additional_flags=-w.
	* gdb.arch/altivec-regs.exp: Ditto.
	* gdb.arch/e500-abi.exp: Ditto.
	* gdb.arch/e500-regs.exp: Ditto.
	* gdb.base/all-bin.exp: Ditto.
	* gdb.base/annota1.exp: Ditto.
	* gdb.base/annota3.exp: Ditto.
	* gdb.base/args.exp: Ditto.
	* gdb.base/arithmet.exp: Ditto.
	* gdb.base/assign.exp: Ditto.
	* gdb.base/async.exp: Ditto.
	* gdb.base/bang.exp: Ditto.
	* gdb.base/break.exp: Ditto.
	* gdb.base/call-rt-st.exp: Ditto.
	* gdb.base/completion.exp: Ditto.
	* gdb.base/cond-expr.exp: Ditto.
	* gdb.base/condbreak.exp: Ditto.
	* gdb.base/consecutive.exp: Ditto.
	* gdb.base/define.exp: Ditto.
	* gdb.base/display.exp: Ditto.
	* gdb.base/ena-dis-br.exp: Ditto.
	* gdb.base/environ.exp: Ditto.
	* gdb.base/eval-skip.exp: Ditto.
	* gdb.base/info-proc.exp: Ditto.
	* gdb.base/jump.exp: Ditto.
	* gdb.base/logical.exp: Ditto.
	* gdb.base/long_long.exp: Ditto.
	* gdb.base/maint.exp: Ditto.
	* gdb.base/miscexprs.exp: Ditto.
	* gdb.base/pc-fp.exp: Ditto.
	* gdb.base/pointers.exp: Ditto.
	* gdb.base/relational.exp: Ditto.
	* gdb.base/reread.exp: Ditto.
	* gdb.base/sect-cmd.exp: Ditto.
	* gdb.base/sep.exp: Ditto.
	* gdb.base/sepdebug.exp: Ditto.
	* gdb.base/until.exp: Ditto.
	* gdb.base/whatis-exp.exp: Ditto.
	* gdb.cp/annota2.exp: Ditto.
	* gdb.cp/annota3.exp: Ditto.
	* gdb.trace/actions.exp: Ditto.
	* gdb.trace/backtrace.exp: Ditto.
	* gdb.trace/circ.exp: Ditto.
	* gdb.trace/collection.exp: Ditto.
	* gdb.trace/deltrace.exp: Ditto.
	* gdb.trace/infotrace.exp: Ditto.
	* gdb.trace/limits.exp: Ditto.
	* gdb.trace/packetlen.exp: Ditto.
	* gdb.trace/passc-dyn.exp: Ditto.
	* gdb.trace/passcount.exp: Ditto.
	* gdb.trace/report.exp: Ditto.
	* gdb.trace/save-trace.exp: Ditto.
	* gdb.trace/tfind.exp: Ditto.
	* gdb.trace/tracecmd.exp: Ditto.
	* gdb.trace/while-dyn.exp: Ditto.
	* gdb.trace/while-stepping.exp: Ditto.
	* lib/gdb.exp: Ditto.
	(gdb_compile): Handle nowarning option.

