2008-10-17 Michael Snyder <msnyder@vmware.com>
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index e5cac415ce5b8640b43166c5cb8032de03c005df..29a29ff271942bbd4e3bc0d905877eb09612c563 100644 (file)
@@ -1,3 +1,238 @@
+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
This page took 0.060251 seconds and 4 git commands to generate.