+2008-09-04 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * configure.srv: Merge MIPS and MIPS64.
+
+2008-08-24 Maciej W. Rozycki <macro@linux-mips.org>
+
+ * Makefile.in (uninstall): Apply $(EXEEXT) too.
+
+2008-08-18 Luis Machado <luisgpm@br.ibm.com>
+
+ * Makefile.in: Add required vsx dependencies.
+
+ * linux-ppc-low: Define PPC_FEATURE_HAS_VSX.
+ Declare init_registers_powerpc_vsx32l.
+ Declare init_registers_powerpc_vsx64l.
+ Define PTRACE_GETVSXREGS and PTRACE_SETVSXREGS.
+ (ppc_arch_setup): Check for VSX in hwcap.
+ (ppc_fill_vsxregset): New function.
+ (ppc_store_vsxregset): New function.
+ Add new VSX entry in regset_info target_regsets.
+
+ * configure.srv: Add new VSX dependencies.
+
+2008-08-12 Pedro Alves <pedro@codesourcery.com>
+
+ * remote-utils.c (noack_mode, transport_is_reliable): New globals.
+ (remote_open): Set or clear transport_is_reliable.
+ (putpkt_binary): Don't expect acks in noack mode.
+ (getpkt): Don't send ack/nac in noack mode.
+ * server.c (handle_general_set): Handle QStartNoAckMode.
+ (handle_query): If connected by tcp pass QStartNoAckMode+ in
+ qSupported.
+ (main): Reset noack_mode on every connection.
+ * server.h (noack_mode): Declare.
+
+2008-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.in (GDBREPLAY_OBS): New variable.
+ (gdbreplay$(EXEEXT)): Use it to avoid unportable $^.
+
+2008-08-05 Ulrich Weigand <uweigand@de.ibm.com>
+ Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (linux_resume_one_process): Ignore ESRCH.
+ (usr_store_inferior_registers): Likewise.
+ (regsets_store_inferior_registers): Likewise.
+
+2008-07-31 Rolf Jansen <rj@surtec.com>
+ Pedro Alves <pedro@codesourcery.com>
+
+ * configure.ac: Check for memmem declaration.
+ * server.c [HAVE_MALLOC_H]: Include malloc.h.
+ (disable_packet_vCont, disable_packet_Tthread, disable_packet_qC)
+ (disable_packet_qfThreadInfo): Unconditionally compile.
+ * server.h [!HAVE_DECL_MEMMEM]: Declare memmem.
+ * configure, config.in: Regenerate.
+
+2008-07-28 Doug Kwan <dougkwan@google.com>
+
+ * linux-low.c (sys/dir.h, sys/user.h): Remove includes.
+ (linux_write_memory): Remove declaration of errno.
+
+2008-07-12 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * linux-low.c (handle_extended_wait): Do not use "status"
+ variable uninitialized.
+
+2008-07-07 Pedro Alves <pedro@codesourcery.com>
+
+ * server.c (handle_v_attach): Inhibit reporting dll changes.
+
+2008-06-27 Pedro Alves <pedro@codesourcery.com>
+
+ * remote-utils.c (prepare_resume_reply): If requested, don't
+ output "thread:TID" in the T stop reply.
+
+ * server.c (disable_packet_vCont, disable_packet_Tthread)
+ (disable_packet_qC, disable_packet_qfThreadInfo): New globals.
+ (handle_query): If requested, disable support for qC, qfThreadInfo
+ and qsThreadInfo.
+ (handle_v_requests): If requested, disable support for vCont.
+ (gdbserver_show_disableable): New.
+ (main): Handle --disable-packet and --disable-packet=LIST.
+
+ * server.h (disable_packet_vCont, disable_packet_Tthread)
+ (disable_packet_qC, disable_packet_qfThreadInfo): Declare.
+
+2008-06-20 Carlos O'Donell <carlos@codesourcery.com>
+
+ * server.c (gdbserver_usage): Mention --version.
+
+2008-06-06 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * Makefile.in (gdbreplay.o): New rule.
+
+2008-06-06 Joseph Myers <joseph@codesourcery.com>
+
+ * gdbreplay.c (gdbreplay_version): Say gdbreplay in version
+ message, not gdbserver.
+
+2008-06-05 Vladimir Prus <vladimir@codesourcery.com>
+ Nathan Sidwell <nathan@codesourcery.com>
+ Joseph Myers <joseph@codesourcery.com>
+
+ * acinclude.m4: Include ../../config/acx.m4.
+ * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
+ * configure, config.in: Regenerate.
+ * Makefile.in (gdbreplay$(EXEEXT)): Add version.o.
+ * server.c (gdbserver_version): Print PKGVERSION.
+ (gdbsrever_usage): Add stream parameter. Print REPORT_BUGS_TO.
+ (main): Adjust gdbserver_usage calls.
+ * gdbreplay.c (version, host_name): Add declarations.
+ (gdbreplay_version, gdbreplay_usage): New.
+ (main): Accept --version and --help options.
+
+2008-06-04 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-arm-low.c (thumb_breakpoint, thumb_breakpoint_len): New.
+ (arm_breakpoint_at): Handle Thumb.
+ (the_low_target): Add comment.
+
+2008-05-29 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * linux-ppc-low.c (ppc_collect_ptrace_register): Clear buffer.
+
+2008-05-09 Doug Evans <dje@google.com>
+
+ * server.h (decode_search_memory_packet): Declare.
+ * remote-utils.c (decode_search_memory_packet): New fn.
+ * server.c (handle_search_memory_1): New fn.
+ (handle_search_memory): New fn.
+ (handle_query): Process qSearch:memory packets.
+
+2008-05-08 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * regcache.c (registers_length): Remove.
+ (set_register_cache): Verify that PBUFSIZ is large enough to hold a
+ full register packet.
+ * regcache.h (registers_length): Remove prototype.
+ * server.h (PBUFSIZ): Define to 16384.
+
+2008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.srv (powerpc*-*-linux*): Set srv_regobj to
+ powerpc-32l.o, powerpc-altivec32l.o, powerpc-e500l.o,
+ powerpc-64l.o, and powerpc-altivec64l.o.
+ Remove rs6000/powerpc-32.xml, rs6000/powerpc-64.xml, and
+ rs6000/powerpc-e500.xml; add rs6000/powerpc-32l.xml,
+ rs6000/powerpc-altivec32l.xml, rs6000/powerpc-e500l.xml,
+ rs6000/powerpc-64l.xml, rs6000/powerpc-altivec64l.xml,
+ rs6000/power-linux.xml, and rs6000/power64-linux.xml
+ to srv_xmlfiles.
+
+ * Makefile.in (reg-ppc.o, reg-ppc.c): Remove, replace by ...
+ (powerpc-32l.o, powerpc-32l.c): ... these new rules.
+ (powerpc-32.o, powerpc-32.c): Remove, replace by ...
+ (powerpc-altivec32l.o, powerpc-altivec32l.c): ... these new rules.
+ (powerpc-e500.o, powerpc-e500.c): Remove, replace by ...
+ (powerpc-e500l.o, powerpc-e500l.c): ... these new rules.
+ (reg-ppc64.o, reg-ppc64.c): Remove, replace by ...
+ (powerpc-64l.o, powerpc-64l.c): ... these new rules.
+ (powerpc-64.o, powerpc-64.c): Remove, replace by ...
+ (powerpc-altivec64l.o, powerpc-altivec64l.c): ... these new rules.
+ (clean): Update.
+
+ * linux-ppc-low.c (init_registers_ppc): Remove, replace by ...
+ (init_registers_powerpc_32l): ... this new prototype.
+ (init_registers_powerpc_32): Remove, replace by ...
+ (init_registers_powerpc_altivec32l): ... this new prototype.
+ (init_registers_powerpc_e500): Remove, replace by ...
+ (init_registers_powerpc_e500l): ... this new prototype.
+ (init_registers_ppc64): Remove, replace by ...
+ (init_registers_powerpc_64l): ... this new prototype.
+ (init_registers_powerpc_64): Remove, replace by ...
+ (init_registers_powerpc_altivec64l): ... this new prototype.
+ (ppc_num_regs): Set to 73.
+ (PT_ORIG_R3, PT_TRAP): Define if necessary.
+ (ppc_regmap, ppc_regmap_e500): Add values for orig_r3 and trap.
+ (ppc_cannot_store_register): Handle orig_r3 and trap.
+ (ppc_arch_setup): Update init_registers_... calls.
+ (ppc_fill_gregset): Handle orig_r3 and trap.
+
+ * inferiors.c (clear_inferiors): Reset current_inferior.
+
+2008-04-23 Paolo Bonzini <bonzini@gnu.org>
+
+ * acinclude.m4: Add override.m4.
+ * configure: Regenerate.
+
+2008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * linux-ppc-low.c (ppc_arch_setup): Reset ppc_hwcap after the
+ initial call to init_register_ppc64.
+
+2008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.srv (powerpc64-*-linux*, powerpc-*-linux*): Merge into single
+ powerpc*-*-linux* case.
+ (s390-*-linux*, s390x-*-linux*): Merge into single s390*-*-linux* case.
+
+2008-04-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.srv [powerpc64-*-linux*]: Remove powerpc-e500.o from
+ srv_regobj. Remove rs6000/powerpc-e500.xml and rs6000/power-spe.xml
+ from reg_xmlfiles.
+ * linux-ppc-low.c: Include <elf.h>.
+ (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Define.
+ (ppc_hwcap): New global variable.
+ (ppc_regmap): Remove __SPE__ #ifdef sections.
+ (ppc_regmap_e500): New global variable.
+ (ppc_cannot_store_register): Update __SPE__ special case.
+ (ppc_get_hwcap): New function.
+ (ppc_arch_setup): Use it to determine whether inferior supports
+ AltiVec or SPE registers. Set the_low_target.regmap if appropriate.
+ (ppc_fill_vrregset, ppc_store_vrregset): Define unconditionally.
+ Do not access registers if target does not support AltiVec.
+ (ppc_fill_evrregset, ppc_store_evrregset): Define unconditionally.
+ Do not access registers if target does not support SPE.
+ (target_regsets): Unconditionally include AltiVec and SPE regsets.
+
+2008-04-17 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (disabled_regsets, num_regsets): New.
+ (use_regsets_p): Delete.
+ (linux_wait_for_process): Clear disabled_regsets.
+ (regsets_fetch_inferior_registers): Check and set it.
+ (regsets_store_inferior_registers): Likewise.
+ (linux_fetch_registers, linux_store_registers): Do not use
+ use_regsets_p.
+ (initialize_low): Allocate disabled_regsets.
+
+2008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * Makefile.in (LIBOBJS): New.
+ (OBS): Use LIBOBJS.
+ (memmem.o): New rule.
+ * configure.ac: Use AC_CONFIG_LIBOBJ_DIR and check for memmem.
+ * configure: Regenerated.
+
+2008-04-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * server.c (handle_query): Never return "unsupported" for
+ qXfer:features:read queries.
+
+2008-03-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * server.c (get_features_xml): Fix inverted condition.
+ (handle_query): Always support qXfer:feature:read.
+
+2008-03-10 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * server.c (wrapper_argv): New.
+ (start_inferior): Handle wrapper_argv. If set, expect an extra
+ trap.
+ (gdbserver_usage): Document --wrapper.
+ (main): Parse --wrapper.
+
+2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.srv [powerpc64-*-linux*]: Add all files mentioned for
+ powerpc-*-linux* to srv_regobj and reg_xmlfiles.
+ * linux-ppc-low.c (ppc_get_pc): Support bi-arch operation.
+ (ppc_set_pc): Likewise.
+ (ppc_arch_setup): New function.
+ (ppc_fill_gregset): Call ppc_collect_ptrace_register instead
+ of collect_register.
+ (the_low_target): Use ppc_arch_setup as arch_setup initializer.
+
+2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.srv [powerpc64-*-linux*]: Use linux-ppc-low.o
+ instead of linux-ppc64-low.o.
+ * linux-ppc64-low.c: Remove file.
+ * Makefile.in (SFILES): Remove linux-ppc64-low.c.
+ (linux-ppc64-low.o): Remove rule.
+
+ * linux-ppc-low.c (init_registers_ppc64): Add prototype.
+ (init_registers_powerpc_64): Likewise.
+ (ppc_regmap): Conditionally define depending on __powerpc64__.
+ (ppc_cannot_store_register): Do not special-case "fpscr" when
+ compiled on __powerpc64__.
+ (ppc_collect_ptrace_register): New function.
+ (ppc_supply_ptrace_register): New function.
+ (ppc_breakpoint): Change type to "unsigned int".
+ (ppc_breakpoint_at): Change type of "insn" to "unsigned int".
+ (the_low_target): Conditionally provide initializers for the
+ arch_setup member depending on __powerpc64__. Install
+ collect_ptrace_register and supply_ptrace_register members.
+
+2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * regcache.h (gdbserver_xmltarget): Add extern declaration.
+ * server.c (gdbserver_xmltarget): Define.
+ (get_features_xml): Use it to replace "target.xml" and arch_string.
+
+ * configure.srv: Remove srv_xmltarget. Add XML files that were
+ mentioned there to srv_xmlfiles instead. Remove conditional tests
+ on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set
+ srv_xmlfiles and srv_regobj to include all possible choices.
+ * configure.ac (srv_xmltarget): Remove.
+ (srv_xmlfiles): Do not add "target.xml".
+ (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove
+ checks for supplementary target information.
+ * configure: Regenerate.
+ * Makefile.in (XML_TARGET): Remove.
+ (target.xml): Remove rule.
+ (clean): Do not clean up target.xml.
+ (.PRECIOUS): Do not mention target.xml.
+
+ * target.h (struct target_ops): Remove arch_string member.
+ * linux-low.c (linux_arch_string): Remove.
+ (linux_target_ops): Remove arch_string initializer.
+ * linux-low.h (struct linux_target_ops): Remove arch_string member.
+ * linux-i386-low.c (the_low_target): Remove arch_string initializer.
+ * linux-x86-64-low.c (the_low_target): Remove arch_string initializer.
+ * spu-low.c (spu_arch_string): Remove.
+ (spu_target_ops): Remove arch_string initializer.
+ * win32-low.c (win32_arch_string): Remove.
+ (win32_target_ops): Remove arch_string initializer.
+ * win32-low.h (struct win32_target_ops): Remove arch_string member.
+ * win32-arm-low.c (the_low_target): Remove arch_string initializer.
+ * win32-i368-low.c (the_low_target): Remove arch_string initializer.
+
+2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * linux-low.h (struct linux_target_ops): Replace left_pad_xfer field
+ by collect_ptrace_register and supply_ptrace_register hooks.
+ * linux-low.c (fetch_register): Use supply_ptrace_register callback
+ instead of checking for the_low_target.left_pad_xfer.
+ (usr_store_inferior_registers): Use collect_ptrace_register callback
+ instead of checking for the_low_target.left_pad_xfer.
+
+ * linux-s390-low.c (s390_collect_ptrace_register): New function.
+ (s390_supply_ptrace_register): Likewise.
+ (s390_fill_gregset): Call s390_collect_ptrace_register.
+ (the_low_target): Update.
+
+ * linux-ppc64-low.c (ppc_collect_ptrace_register): New function.
+ (ppc_supply_ptrace_register): Likewise.
+ (the_low_target): Update.
+
+ * linux-i386-low.c (the_low_target): Update.
+ * linux-x86-64-low.c (the_low_target): Update.
+
+2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.srv [s390x-*-linux*]: Set srv_regobj to include both
+ reg-s390.o and reg-s390x.o.
+
+ * linux-low.c (new_inferior): New global variable.
+ (linux_create_inferior, linux_attach): Set it.
+ (linux_wait_for_process): Call the_low_target.arch_setup after the
+ target has stopped for the first time.
+ (initialize_low): Do not call the_low_target.arch_setup.
+
+ * linux-s390-low.c (s390_get_pc): Support bi-arch operation.
+ (s390_set_pc): Likewise.
+ (s390_arch_setup): New function.
+ (the_low_target): Use s390_arch_setup as arch_setup routine.
+
+ * regcache.c (realloc_register_cache): New function.
+ (set_register_cache): Call it for each existing regcache.
+
+2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * server.h (init_registers): Remove prototype.
+
+ * linux-low.h (struct linux_target_ops): Add arch_setup field.
+ * linux-low.c (initialize_low): Call the_low_target.arch_setup ()
+ instead of init_registers ().
+ * linux-arm-low.c (init_registers_arm): Add prototype.
+ (init_registers_arm_with_iwmmxt): Likewise.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-cris-low.c (init_registers_cris): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-crisv32-low.c (init_registers_crisv32): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-i386-low.c (init_registers_i386_linux): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-ia64-low.c (init_registers_ia64): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-m32r-low.c (init_registers_m32r): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-m68k-low.c (init_registers_m68k): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-mips-low.c (init_registers_mips_linux): Add prototype.
+ (init_registers_mips64_linux): Likewise.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-ppc-low.c (init_registers_ppc): Add prototype.
+ (init_registers_powerpc_32, init_registers_powerpc_e500): Likewise.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-ppc64-low.c (init_registers_ppc64): Add prototype.
+ (init_registers_powerpc_64): Likewise.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-s390-low.c (init_registers_s390): Add prototype.
+ (init_registers_s390x): Likewise.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-sh-low.c (init_registers_sh): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-x86-64-low.c (init_registers_x86_64_linux): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * linux-xtensa-low.c (init_registers_xtensa): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+
+ * win32-low.h (struct win32_target_ops): Add arch_setup field.
+ * win32-low.c (initialize_low): Call the_low_target.arch_setup ()
+ instead of init_registers ().
+ * win32-arm-low.c (init_registers_arm): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+ * win32-i386-low.c (init_registers_i386): Add prototype.
+ (the_low_target): Add initializer for arch_setup field.
+
+ * spu-low.c (init_registers_spu): Add prototype.
+ (initialize_low): Call initialie_registers_spu () instead of
+ initialize_registers ().
+
+2008-02-19 Pedro Alves <pedro@codesourcery.com>
+
+ * server.c (handle_v_requests): When handling the vRun and vAttach
+ packets, if already debugging a process, don't kill it. Return an
+ error instead.
+
+2008-02-17 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * server.c (handle_query): Correct length check.
+
+2008-02-14 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (do_initial_child_stuff): Add process handle
+ parameter. Set current_process_handle and current_process_id from the
+ parameters. Clear globals.
+ (win32_create_inferior): Don't set current_process_handle and
+ current_process_id here. Instead pass them on the call to
+ do_initial_child_stuff.
+ (win32_attach): Likewise.
+ (win32_clear_inferiors): New.
+ (win32_kill): Don't close the current process handle or the
+ current thread handle here. Instead call win32_clear_inferiors.
+ (win32_detach): Don't open a new handle to the process. Call
+ win32_clear_inferiors.
+ (win32_join): Don't rely on current_process_handle; open a new
+ handle using the process id.
+ (win32_wait): Call win32_clear_inferiors when the inferior process
+ has exited.
+
+2008-02-14 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * server.c (monitor_show_help): Add "exit".
+
+2008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
+
+ * Makefile.in (SFILES): Add linux-xtensa-low.c.
+ (clean): Add reg-xtensa.c.
+ (linux-xtensa-low.o, reg-xtensa.o, reg-xtensa.c): New dependencies.
+ * configure.srv (xtensa*-*-linux*) New target.
+ * linux-xtensa-low.c: New.
+ * xtensa-xtregs.c: New.
+
+2008-02-01 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * hostio.c: Don't include errno.h.
+ (errno_to_fileio_errno): Move to hostio-errno.
+ * hostio.c: (hostio_error): Remove the error parameter. Defer the
+ error number outputting to the target->hostio_last_error callback.
+ (hostio_packet_error): Use FILEIO_EINVAL directly.
+ (handle_open, handle_pread, hostio_error, handle_unlink): Update
+ calls to hostio_error.
+ * hostio-errno.c: New.
+ * server.h (hostio_last_error_from_errno): Declare.
+ * target.h (target_ops): Add hostio_last_error member.
+ * linux-low.c (linux_target_op): Register hostio_last_error_from_errno
+ as hostio_last_error handler.
+ * spu-low.c (spu_target_ops): Likewise.
+ * win32-low.c [_WIN32_WCE] (win32_error_to_fileio_error)
+ (wince_hostio_last_error): New functions.
+ (win32_target_ops) [_WIN32_WCE]: Register wince_hostio_last_error
+ as hostio_last_error handler.
+ (win32_target_ops) [!_WIN32_WCE]: Register
+ hostio_last_error_from_errno as hostio_last_error handler.
+ * Makefile.in (SFILES): Add hostio.c and hostio-errno.c.
+ (hostio-errno.o): New rule.
+ * configure.ac (GDBSERVER_DEPFILES): Add $srv_hostio_err_objs.
+ * configure.srv (srv_hostio_err_objs): New variable. Default to
+ hostio-errno.o.
+ (arm*-*-mingw32ce*): Set srv_hostio_err_objs to "".
+ * configure: Regenerate.
+
+2008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (linux_attach_lwp): Do not _exit after errors.
+ (linux_kill, linux_detach): Clean up the process list.
+ * remote-utils.c (remote_open): Improve port number parsing.
+ (putpkt_binary, input_interrupt): Only send interrupts if the target
+ is running.
+ * server.c (extended_protocol): Make static.
+ (attached): Define earlier.
+ (exit_requested, response_needed, program_argv): New variables.
+ (target_running): New.
+ (start_inferior): Clear attached here.
+ (attach_inferior): Set attached here.
+ (require_running): Define.
+ (handle_query): Use require_running and target_running. Implement
+ "monitor exit".
+ (handle_v_attach, handle_v_run): New.
+ (handle_v_requests): Use require_running. Handle vAttach and vRun.
+ (gdbserver_usage): Update.
+ (main): Redo argument parsing. Handle --debug and --multi. Handle
+ --attach along with other options or after the port. Save
+ program_argv. Support no initial program. Resynchronize
+ communication with GDB after an error. Handle "monitor exit".
+ Use require_running and target_running. Always allow the extended
+ protocol. Do not error out for Hc0 or Hc-1. Do not automatically
+ restart in extended mode.
+ * README: Refer to the GDB manual. Update --attach usage.
+
+2007-12-20 Andreas Schwab <schwab@suse.de>
+
+ * linux-low.c (STACK_SIZE): Define.
+ (linux_tracefork_child): Use it. Use __clone2 on ia64.
+ (linux_test_for_tracefork): Likewise.
+
+2007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (linux_wait_for_event): Update messages. Do not
+ reinsert auto-delete breakpoints.
+ * mem-break.c (struct breakpoint): Change return type of handler to
+ int.
+ (set_breakpoint_at): Update handler type.
+ (reinsert_breakpoint_handler): Return 1 instead of calling
+ delete_breakpoint.
+ (reinsert_breakpoint_by_bp): Check for the original breakpoint before
+ setting a new one.
+ (check_breakpoints): Delete auto-delete breakpoints and return 2.
+ * mem-break.h (set_breakpoint_at): Update handler type.
+ * thread-db.c (thread_db_create_event, thread_db_create_event): Update.
+ * win32-low.c (auto_delete_breakpoint): New.
+ (get_child_debug_event): Use it.
+
+2007-12-16 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * configure.ac: Check for pread and pwrite.
+ * hostio.c (handle_pread): Fall back to lseek and read.
+ (handle_pwrite): Fall back to lseek and write.
+ * config.in, configure: Regenerated.
+
+2007-12-07 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * server.c (myresume): Add own_buf argument.
+ (main): Update calls.
+
+2007-12-06 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (linux_wait, linux_resume): Do not handle async I/O.
+ * remote-utils.c (remote_open): Do not call disable_async_io.
+ (block_async_io): Delete.
+ (unblock_async_io): Make static.
+ (initialize_async_io): New.
+ * server.c (handle_v_cont): Handle async I/O here.
+ (myresume): Likewise. Move other common resume tasks here...
+ (main): ... from here. Call initialize_async_io. Disable async
+ I/O before the main loop.
+ * server.h (initialize_async_io): Declare.
+ (block_async_io, unblock_async_io): Delete prototypes.
+ * spu-low.c (spu_resume, spu_wait): Do not handle async I/O here.
+
+2007-12-06 Mick Davis <mickd@goanna.iinet.net.au>
+
+ * remote-utils.c (readchar): Allow binary data in received messages.
+
+2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (attaching): New global.
+ (win32_create_inferior): Clear the `attaching' global.
+ (win32_attach): Set the `attaching' global.
+ (get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
+ attaching. Only set a breakpoint at the entry point if not
+ attaching.
+
+2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * server.c (main): Don't report dll events on the initial
+ connection on attaches.
+
+2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * server.c (main): Relax numerical bases supported for the pid of
+ the --attach command line argument.
+
+2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (win32_attach): Call OpenProcess before
+ DebugActiveProcess, not after. Add last error output to error
+ call.
+
+2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (win32_get_thread_context)
+ (win32_set_thread_context): New functions.
+ (thread_rec): Use win32_get_thread_context.
+ (continue_one_thread, win32_resume): Use win32_set_thread_context.
+ * win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
+ field.
+
+2007-12-03 Leo Zayas
+ Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
+ global variables.
+ (child_add_thread): Minor cleanup.
+ (child_continue): Resume artificially suspended threads before
+ calling ContinueDebugEvent.
+ (suspend_one_thread): New.
+ (fake_breakpoint_event): New.
+ (get_child_debug_event): Change return type to int. Check here if
+ gdb sent an interrupt request. If a soft interrupt was requested,
+ fake a breakpoint event. Return 0 if there is no event to handle,
+ and 1 otherwise.
+ (win32_wait): Don't check here if gdb sent an interrupt request.
+ Ensure there is a valid event to handle.
+ (win32_request_interrupt): Add soft interruption method as last
+ resort.
+
+2007-12-03 Leo Zayas
+ Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.h (win32_thread_info): Add descriptions to the
+ structure members. Replace `suspend_count' counter by a
+ `suspended' flag.
+ * win32-low.c (thread_rec): Update condition of when to get the
+ context from the inferior. Rely on ContextFlags being set if it
+ has already been retrieved. Only suspend the inferior thread if
+ we haven't already. Warn if that fails.
+ (continue_one_thread): s/suspend_count/suspended/. Only call
+ ResumeThread once. Warn if that fails.
+
+2007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (win32_wait): Don't read from the inferior when it
+ has already exited.
+
+2007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * Makefile.in (win32_low_h): New variable.
+ (win32-low.o): Add dependency on $(win32_low_h).
+ (win32-arm-low.o, win32-i386-low.o): New rules.
+
+2007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * hostio.c: Correct copyright year.
+
+2007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * Makefile.in (OBS): Add hostio.o.
+ (hostio.o): New rule.
+ * server.h (handle_vFile): Declare.
+ * hostio.c: New file.
+ * server.c (handle_v_requests): Take packet_len and new_packet_len
+ for binary packets. Call handle_vFile.
+ (main): Update call to handle_v_requests.
+
+2007-11-05 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c: Include <sched.h>.
+
+2007-11-01 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (linux_tracefork_grandchild): New.
+ (linux_tracefork_child): Use clone.
+ (linux_test_for_tracefork): Use clone; allocate and free a stack.
+
+2007-10-31 Joel Brobecker <brobecker@adacore.com>
+
+ * Makefile.in: Use $(SHELL) instead of "sh" to call regdat.sh.
+
+2007-10-24 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (handle_extended_wait): Handle unexpected signals.
+
+2007-10-23 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * inferiors.c (change_inferior_id): Delete.
+ (add_pid_to_list, pull_pid_from_list): New.
+ * linux-low.c (PTRACE_SETOPTIONS, PTRACE_GETEVENTMSG)
+ (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK)
+ (PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, PTRACE_O_TRACEVFORKDONE)
+ (PTRACE_O_TRACEEXIT, PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK)
+ (PTRACE_EVENT_CLONE, PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE)
+ (PTRACE_EVENT_EXIT, __WALL): Provide default definitions.
+ (stopped_pids, thread_db_active, must_set_ptrace_flags): New variables.
+ (using_threads): Always set to 1.
+ (handle_extended_wait): New.
+ (add_process): Do not set TID.
+ (linux_create_inferior): Set must_set_ptrace_flags.
+ (linux_attach_lwp): Remove TID argument. Do not check using_threads.
+ Use PTRACE_SETOPTIONS. Call new_thread_notify. Update all callers.
+ (linux_thread_alive): Rename TID argument to LWPID.
+ (linux_wait_for_process): Handle unknown processes. Do not use TID.
+ (linux_wait_for_event): Do not use TID or check using_threads. Update
+ call to dead_thread_notify. Call handle_extended_wait.
+ (linux_create_inferior): Use PTRACE_SETOPTIONS.
+ (send_sigstop): Delete sigstop_sent.
+ (wait_for_sigstop): Avoid TID.
+ (linux_supports_tracefork_flag, linux_tracefork_child, my_waitpid)
+ (linux_test_for_tracefork): New.
+ (linux_lookup_signals): Use thread_db_active and
+ linux_supports_tracefork_flag.
+ (initialize_low): Use thread_db_active and linux_test_for_tracefork.
+ * linux-low.h (get_process_thread): Avoid TID.
+ (struct process_ifo): Move thread_known and tid to the end. Remove
+ sigstop_sent.
+ (linux_attach_lwp, thread_db_init): Update prototypes.
+ * server.h (change_inferior_id): Delete prototype.
+ (add_pid_to_list, pull_pid_from_list): New prototypes.
+ * thread-db.c (thread_db_use_events): New.
+ (find_first_thread): Rename to...
+ (find_one_thread): ...this. Update callers and messages. Do not
+ call fatal. Check thread_db_use_events. Do not call
+ change_inferior_id or new_thread_notify.
+ (maybe_attach_thread): Update. Do not call new_thread_notify.
+ (thread_db_init): Set thread_db_use_events. Check use_events.
+ * utils.c (fatal, warning): Correct message prefix.
+
+2007-10-15 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * Makefile.in (clean): Remove new files.
+ (powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c)
+ (powerpc-64.o, powerpc-64.c): New rules.
+ * configure.srv: Use alternate register sets for powerpc64-*-linux*
+ with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux*
+ with SPE.
+ * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for
+ SPE targets.
+ (ppc_cannot_store_register): Do not check for FPSCR for SPE targets.
+ (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset)
+ (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS)
+ (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New.
+ (target_regsets): Add AltiVec and SPE register sets.
+ * configure.ac: Check for AltiVec and SPE.
+ * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS)
+ (ppc_fill_vrregset, ppc_store_vrregset): New.
+ (target_regsets): Add AltiVec register set.
+ * configure: Regenerated.
+
+2007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (O_LARGEFILE): Define.
+ (linux_read_memory): Use /proc/PID/mem.
+ * configure.ac: Use AC_GNU_SOURCE. Check for pread64.
+ * configure, config.in: Regenerated.
+
+2007-09-04 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * linux-low.c (linux_wait_for_event): Do not pass signals while
+ single-stepping.
+
+2007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (create_process): New.
+ (win32_create_inferior): Use create_process instead of
+ CreateProcess. If create_process failed retry appending an ".exe"
+ suffix. Store the GetLastError result immediatelly after
+ create_process calls and use it on the call to error.
+
+2007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (handle_load_dll): Don't use toolhelp when waiting.
+
+2007-08-23 Joel Brobecker <brobecker@adacore.com>
+
+ * configure.ac: Switch license to GPLv3.
+
+2007-08-01 Michael Snyder <msnyder@access-company.com>
+
+ * remote-utils.c (putpkt_binary): Memory leak, free buf2.
+
+2007-07-31 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * win32-low.c (winapi_CloseToolhelp32Snapshot) [_WIN32_WCE]: New
+ typedef.
+ (win32_CloseToolhelp32Snapshot) [_WIN32_WCE]: New global var.
+ (load_toolhelp) [_WIN32_WCE]: Load TOOLHELP.DLL. Get
+ CloseToolhelp32Snapshot.
+ (toolhelp_get_dll_name) [_WIN32_WCE]: Close the snapshot with
+ CloseToolhelp32Snapshot.
+
+2007-07-27 Michael Snyder <michael.snyder@access-company.com>
+
+ * server.c (main): Check for inferior exit before main loop.
+
2007-07-18 Pedro Alves <pedro_alves@portugalmail.pt>
* remote-utils.c (remote_open): Set SO_KEEPALIVE on remote_desc