+2008-10-17 Michael Snyder <msnyder@vmware.com>
+ Target interface for reverse debugging.
+ * target.h (enum target_waitkind):
+ Add new wait event, TARGET_WAITKIND_NO_HISTORY.
+ (struct target_ops): New method to_can_execute_reverse.
+ (target_can_execute_reverse): New macro.
+ * target.c (update_current_target): Inherit to_can_execute_reverse.
+
+ Remote interface for reverse debugging.
+ * remote.c (remote_can_execute_reverse): New target method.
+ (remote_resume): Check for reverse exec direction, and send
+ appropriate command to target.
+ (remote_wait_as): Check target response for NO_HISTORY status.
+ Also check for empty reply (target doesn't understand "bs" or "bc).
+ (remote_vcont_resume): Jump out if attempting reverse execution.
+
+ Event handling interface for reverse debugging.
+ * infrun.c (execution_direction): New state variable.
+ (enum inferior_stop_reason): Add NO_HISTORY reason.
+ (handle_inferior_event): Handle TARGET_WAITKIND_NO_HISTORY.
+ Handle stepping over a function call in reverse.
+ Handle stepping thru a line range in reverse.
+ Handle setting a step-resume breakpoint in reverse.
+ Handle stepping into a function in reverse.
+ Handle stepping between line ranges in reverse.
+ (print_stop_reason): Print reason for NO_HISTORY.
+ (step_into_function): Rename to handle_step_into_function.
+ (handle_step_into_function_backward): New function.
+ (set_exec_direction_func, show_exec_direction_func): New funcs.
+ (proceed): No need to singlestep over a breakpoint
+ when resuming in reverse.
+
+ * inferior.h (enum exec_direction_kind): New enum.
+ (execution_direction): Export new execution state variable.
+
+ * breakpoint.c (make_breakpoint_silent): New function.
+ * breakpoint.h (make_breakpoint_silent): Export.
+ * infcmd.c (finish_command): Check for reverse exec direction.
+ (finish_backward): New function, handle finish cmd in reverse.
+
+ User interface for reverse execution.
+ * Makefile.in (reverse.c): New file.
+ * reverse.c: New file. User interface for reverse execution.
+
+2008-10-17 Pedro Alves <pedro@codesourcery.com>
+
+ * remote.c (record_currthread): Add inferior before child threads.
+ (remote_threads_info): Check for exited threads. Mention
+ notification order.
+
+2008-10-16 Joel Brobecker <brobecker@adacore.com>
+
+ * breakpoint.h (enum bptype): New enum bp_catchpoint.
+ Delete bp_catch_fork and bp_catch_vfork.
+ (struct breakpoint_ops): Add new methods "insert", "remove"
+ and "breakpoint_hit".
+ * breakpoint.c (create_fork_vfork_event_catchpoint)
+ (create_fork_event_catchpoint, create_vfork_event_catchpoint): Remove.
+ (insert_catchpoint): Remove handling of bp_catch_fork and
+ bp_catch_vfork catchpoints, and handle them as bp_catchpoint
+ catchpoints instead.
+ (insert_bp_location, update_breakpoints_after_exec)
+ (remove_breakpoint, bpstat_check_location, bpstat_what)
+ (allocate_bp_location): Likewise.
+ (print_it_typical, print_one_breakpoint_location, mention): Remove
+ handling of bp_catch_fork and bp_catch_vfork breakpoints.
+ (ep_is_catchpoint, user_settable_breakpoint)
+ (breakpoint_address_is_meaningful, adjust_breakpoint_address)
+ (breakpoint_re_set_one, disable_command, enable_command):
+ Remove use of bp_catch_fork and bp_catch_vfork. Add handling of
+ bp_catchpoint breakpoints.
+ (insert_catch_fork, remove_catch_fork, breakpoint_hit_catch_fork)
+ (print_it_catch_fork, print_one_catch_fork, print_mention_catch_fork):
+ New functions.
+ (catch_fork_breakpoint_ops): New static constant.
+ (insert_catch_vfork, remove_catch_vfork, breakpoint_hit_catch_vfork)
+ (print_it_catch_vfork, print_one_catch_vfork)
+ (print_mention_catch_vfork): New functions.
+ (catch_vfork_breakpoint_ops): New static constant.
+ (create_catchpoint, create_fork_vfork_event_catchpoint): New functions.
+ (catch_fork_command_1): Use create_fork_vfork_event_catchpoint
+ to create the fork and vfork catchpoints.
+ (gnu_v3_exception_catchpoint_ops): Set new breakpoint_ops fields.
+ * ada-lang.c (catch_exception_breakpoint_ops): Set new breakpoint_ops
+ fields.
+ (catch_exception_unhandled_breakpoint_ops): Likewise.
+ (catch_assert_breakpoint_ops): Likewise.
+
+2008-10-16 Pedro Alves <pedro@codesourcery.com>
+
+ * remote.c (set_general_process): New.
+ (remote_check_symbols): Use it.
+
+2008-10-16 Pedro Alves <pedro@codesourcery.com>
+
+ * remote.c (push_remote_target): Delete.
+ * target.h (push_remote_target): Delete declaration.
+
+2008-10-15 Pedro Alves <pedro@codesourcery.com>
+
+ * remote.c (remote_close): Unregister remote_desc from the event
+ loop. Always restore the SIGINT handler. Discard all inferiors
+ here.
+ (remote_detach_1, remote_disconnect): Don't unregister the file
+ descriptor from the event loop here.
+ (interrupt_query, readchar, getpkt_sane): Pop the target instead
+ of morning the current inferior.
+ (remote_kill): Don't unregister the file descriptor from the event
+ loop here.
+ (remote_mourn_1): Don't discard inferiors here.
+
+2008-10-15 Pedro Alves <pedro@codesourcery.com>
+
+ * breakpoint.c (breakpoint_init_inferior): Clean up the moribund
+ locations list.
+ (moribund_breakpoint_here_p): Record the moribund
+ location in the moribund_locations vector.
+ * breakpoint.h (moribund_breakpoint_here_p): Declare.
+ (displaced_step_fixup): Check if the breakpoint the thread was
+ trying to step over has been removed since having been placed in
+ the displaced stepping queue.
+ (adjust_pc_after_break): In non-stop mode, check for a moribund
+ breakpoint at the stop pc.
+ (handle_inferior_event): Don't retire moribund breakpoints on
+ TARGET_WAITKIND_IGNORE.
+
+2008-10-15 Pedro Alves <pedro@codesourcery.com>
+
+ * infrun.c (displaced_step_prepare): Switch thread temporarily
+ while we're here.
+ (displaced_step_fixup): Make sure target_resume sees ptid as
+ inferior_ptid. Add debug output.
+
+2008-10-14 Pedro Alves <pedro@codesourcery.com>
+
+ Remove dead code.
+
+ * breakpoint.c (show_breakpoint_hit_counts): Delete.
+ (print_one_breakpoint_location): Adjust.
+ (breakpoint_clear_ignore_counts): Delete.
+ * breakpoint.h (breakpoint_clear_ignore_counts): Remove
+ declaration.
+ * target.c (generic_mourn_inferior): Don't clear ignore
+ counts (never reached).
+
+2008-10-10 Doug Evans <dje@google.com>
+
+ * dwarf2read.c (comp_unit_head): Use unsigned int consistently
+ for dwarf section offsets and sizes.
+ (dwarf2_cu): Ditto.
+ (dwarf2_per_cu_data): Ditto.
+ (create_all_comp_units): Change offset to unsigned int.
+ (load_full_comp_unit,find_partial_die_in_comp_unit,find_partial_die,
+ dwarf2_find_containing_comp_unit,dwarf2_find_comp_unit): Ditto.
+
+ * dwarf2read.c (read_initial_length): Delete cu_header arg.
+ All callers updated.
+ (read_checked_initial_length_and_offset): New function.
+ (read_offset_1): New function.
+ (read_offset): Call it.
+ (dwarf_decode_line_header): Call read_checked_initial_length_and_offset
+ instead of read_initial_length. Call read_offset_1 instead of
+ read_offset.
+
+ * dwarf2read.c (dwarf2_get_ref_die_offset): Remove unused arg `cu'.
+ All callers updated.
+
+ * dwarf2read.c (dwarf_attr_name): Unconditionally support all
+ DW_AT_MIPS_* except DW_AT_MIPS_fde which collides with
+ DW_AT_HP_block_index.
+
+2008-10-10 Pedro Alves <pedro@codesourcery.com>
+
+ * remote.c (remote_start_remote): Always tell the stub if we're in
+ extended-remote.
+
+2008-10-09 Pedro Alves <pedro@codesourcery.com>
+
+ * remote.c (remote_wait): Rename to...
+ (remote_wait_as): ... this. Don't loop here. If the remote
+ didn't stop, return TARGET_WAITKIND_IGNORE.
+ (remote_wait): New, reimplemented on top of remote_wait_as.
+
+2008-10-09 Thomas Schwinge <tschwinge@gnu.org>
+
+ * Makefile.in (gnu-nat.o): Revert the 2008-09-10 change, as the problem
+ is fixed upstream.
+
+ * reply_mig_hack.awk: Use the `BAD_TYPECHECK' macro.
+
+ * MAINTAINERS (Write After Approval): Add myself.
+
+2008-10-09 Pedro Alves <pedro@codesourcery.com>
+
+ Make it compile without warnings.
+
+ * procfs.c (create_procinfo): Initialize `parent'.
+ (dead_procinfo): Pass a constant string as format to error.
+ (procfs_address_to_host_pointer): Add cast to gdb_type *.
+ (procfs_find_LDT_entry): Adjust format string to long int
+ ptid.tid.
+ (procfs_xfer_partial): Adjust prototype. Add gdb_byte* cast.
+ (procfs_xfer_memory): Adjust prototype.
+ (info_mappings_callback, info_proc_mappings): Adjust to not pass a
+ variable as printf_filtered format.
+ (procfs_make_note_section): Change type of auxv local to gdb_byte.
+ * Makefile.in: Remove special rule.
+
+2008-10-09 Pedro Alves <pedro@codesourcery.com>
+ Daniel Jacobowitz <dan@codesourcery.com>
+
+ * remote.c (remote_open_1): Move acknowledging any pending ack,
+ querying supported features, activating noack mode, finding the
+ target description, enabling extended remote, and checking remote
+ symbols from here ...
+ (remote_start_remote): ... to here.
+ (remote_open_1): Don't pop the target if it is already gone.
+ * target.c (unpush_target): Check for the dummy target.
+
+2008-10-09 Pedro Alves <pedro@codesourcery.com>
+
+ * ser-mingw.c: Include "command.h".
+ (pipe_windows_open): Declare locals at the beginning of the scope.
+
+2008-10-08 Pedro Alves <pedro@codesourcery.com>
+
+ * remote.c (struct remote_state) <waiting_for_stop_reply>: New
+ field.
+ (remote_open_1): Clear waiting_for_stop_reply.
+ (remote_resume): Set waiting_for_stop_reply.
+ (remote_wait): Clear or set waiting_for_stop_reply accordingly.
+ (putpkt_binary): If we're in async mode and waiting for a stop
+ reply, bail out with an error.
+ (extended_remote_mourn_1): Clear waiting_for_stop_reply.
+
2008-10-08 Pedro Alves <pedro@codesourcery.com>
* remote.c (remote_get_thread_info): If the remote doesn't support