+2014-05-30 Andrew Burgess <aburgess@broadcom.com>
+
+ * frame.c (frame_stop_reason_string): Rename to ...
+ (unwind_stop_reason_to_string): this.
+ * frame.h (frame_stop_reason_string): Rename to ...
+ (unwind_stop_reason_to_string): this.
+ * stack.c (frame_info): Update call to frame_stop_reason_string.
+ (backtrace_command_1): Likewise.
+ * guile/scm-frame.c (gdbscm_unwind_stop_reason_string): Likewise.
+ * python/py-frame.c (gdbpy_frame_stop_reason_string): Likewise.
+
+2014-05-30 Andrew Burgess <aburgess@broadcom.com>
+
+ * frame.c (remove_prev_frame): New function.
+ (get_prev_frame_if_no_cycle): Create / discard cleanup using
+ remove_prev_frame.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ * infrun.c (resume): Rename local 'hw_step' to 'entry_step'
+ and make it const. When a single-step decays to a continue,
+ clear 'step', not 'hw_step'. Pass whether the caller wanted
+ to step to user_visible_resume_ptid, not what we ask the
+ target to do.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ * infrun.c (process_event_stop_test, handle_step_into_function)
+ (handle_step_into_function_backward): Adjust.
+ Don't set the even thread's stop_step and call stop_waiting before
+ calling end_stepping_range. Instead do that ...
+ (end_stepping_range): ... here. Take an ecs pointer parameter.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ * infrun.c (stop_stepping): Rename to ...
+ (stop_waiting): ... this.
+ (proceed): Update comment.
+ (process_event_stop_test, handle_inferior_event)
+ (handle_signal_stop, handle_step_into_function)
+ (handle_step_into_function_backward): Update.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ * infcall.c (run_inferior_call): Don't check whether the current
+ thread is running after the proceed call.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+ Tom Tromey <tromey@redhat.com>
+
+ * NEWS: Mention "maint set target-async", "set mi-async", and that
+ background execution commands are now always available.
+ * target.h (target_async_permitted): Update comment.
+ * target.c (target_async_permitted, target_async_permitted_1):
+ Default to 1.
+ (set_target_async_command): Rename to ...
+ (maint_set_target_async_command): ... this.
+ (show_target_async_command): Rename to ...
+ (maint_show_target_async_command): ... this.
+ (_initialize_target): Adjust.
+ * infcmd.c (prepare_execution_command): Make extern.
+ * inferior.h (prepare_execution_command): Declare.
+ * infrun.c (set_observer_mode): Leave target async alone.
+ * mi/mi-interp.c (mi_interpreter_init): Install
+ mi_on_sync_execution_done as sync_execution_done observer.
+ (mi_on_sync_execution_done): New function.
+ (mi_execute_command_input_handler): Don't print the prompt if we
+ just started a synchronous command with an async target.
+ (mi_on_resume): Check sync_execution before printing prompt.
+ * mi/mi-main.h (mi_async_p): Declare.
+ * mi/mi-main.c: Include gdbcmd.h.
+ (mi_async_p): New function.
+ (mi_async, mi_async_1): New globals.
+ (set_mi_async_command, show_mi_async_command, mi_async): New
+ functions.
+ (exec_continue): Call prepare_execution_command.
+ (run_one_inferior, mi_cmd_exec_run, mi_cmd_list_target_features)
+ (mi_execute_async_cli_command): Use mi_async_p.
+ (_initialize_mi_main): Install "set mi-async". Make
+ "target-async" a deprecated alias.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ * cli/cli-interp.c (cli_interpreter_display_prompt_p): Delete.
+ (_initialize_cli_interp): Adjust.
+ * event-loop.c: Include "observer.h".
+ (start_event_loop): Notify 'command_error' observers instead of
+ calling display_gdb_prompt. Remove FIXME comment.
+ * event-top.c (display_gdb_prompt): Remove call into the
+ interpreters.
+ * inf-loop.c: Include "observer.h".
+ (inferior_event_handler): Notify 'command_error' observers instead
+ of calling display_gdb_prompt.
+ * infrun.c (fetch_inferior_event): Notify 'sync_execution_done'
+ observers instead of calling display_gdb_prompt.
+ * interps.c (interp_set): Don't call display_gdb_prompt.
+ (current_interp_display_prompt_p): Delete.
+ * interps.h (interp_prompt_p): Delete declaration.
+ (interp_prompt_p_ftype): Delete.
+ (struct interp_procs) <prompt_proc_p>: Delete field.
+ (current_interp_display_prompt_p): Delete declaration.
+ * mi-interp.c (mi_interpreter_prompt_p): Delete.
+ (_initialize_mi_interp): Adjust.
+ * tui-interp.c (tui_init): Install 'sync_execution_done' and
+ 'command_error' observers.
+ (tui_on_sync_execution_done, tui_on_command_error): New
+ functions.
+ (tui_display_prompt_p): Delete.
+ (_initialize_tui_interp): Adjust.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ PR gdb/13860
+ * cli/cli-interp.c: Include infrun.h and observer.h.
+ (cli_uiout, cli_interp): New globals.
+ (cli_on_signal_received, cli_on_end_stepping_range)
+ (cli_on_signal_exited, cli_on_exited, cli_on_no_history): New
+ functions.
+ (cli_interpreter_init): Install them as 'end_stepping_range',
+ 'signal_received' 'signal_exited', 'exited' and 'no_history'
+ observers.
+ (_initialize_cli_interp): Remove cli_interp local.
+ * infrun.c (handle_inferior_event): Call the several stop reason
+ observers instead of printing the stop reason directly.
+ (end_stepping_range): New function.
+ (print_end_stepping_range_reason, print_signal_exited_reason)
+ (print_exited_reason, print_signal_received_reason)
+ (print_no_history_reason): Make static, and add an uiout
+ parameter. Print to that instead of to CURRENT_UIOUT.
+ * infrun.h (print_end_stepping_range_reason)
+ (print_signal_exited_reason, print_exited_reason)
+ (print_signal_received_reason print_no_history_reason): New
+ declarations.
+ * mi/mi-common.h (struct mi_interp): Rename 'uiout' field to
+ 'mi_uiout'.
+ <cli_uiout>: New field.
+ * mi/mi-interp.c (mi_interpreter_init): Adjust. Create the new
+ uiout for CLI output. Install 'signal_received',
+ 'end_stepping_range', 'signal_exited', 'exited' and 'no_history'
+ observers.
+ (find_mi_interpreter, mi_interp_data, mi_on_signal_received)
+ (mi_on_end_stepping_range, mi_on_signal_exited, mi_on_exited)
+ (mi_on_no_history): New functions.
+ (ui_out_free_cleanup): Delete function.
+ (mi_on_normal_stop): Don't allocate a new uiout for CLI output,
+ instead use the one already stored in the MI interpreter data.
+ (mi_ui_out): Adjust.
+ * tui/tui-interp.c: Include infrun.h and observer.h.
+ (tui_interp): New global.
+ (tui_on_signal_received, tui_on_end_stepping_range)
+ (tui_on_signal_exited, tui_on_exited)
+ (tui_on_no_history): New functions.
+ (tui_init): Install them as 'end_stepping_range',
+ 'signal_received' 'signal_exited', 'exited' and 'no_history'
+ observers.
+ (_initialize_tui_interp): Delete tui_interp local.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ PR gdb/15713
+ * linux-nat.c (linux_nat_resume_callback): Rename the second
+ parameter to 'except'. Skip LP if it points to EXCEPT.
+ (linux_nat_resume): Don't mark the event lwp as not stopped
+ before resuming sibling lwps. Instead ask
+ linux_nat_resume_callback to skip the event lwp. Mark it as not
+ stopped after actually resuming it.
+ (linux_handle_syscall_trap): Mark the lwp as not stopped after
+ resuming it.
+ (wait_lwp): Mark the lwp as stopped here.
+ (stop_wait_callback): Mark the lwp as not stopped right after
+ resuming it. Don't mark lwps as stopped here.
+ (linux_nat_filter_event): Mark the lwp as stopped earlier.
+ (linux_nat_wait_1): Don't mark dead lwps as stopped here.
+
+2014-05-29 Pedro Alves <palves@redhat.com>
+
+ PR PR15693
+ * infrun.c (resume): Determine how much to resume depending on
+ whether the caller wanted a step, not whether we can hardware step
+ the target. Mark all threads that we intend to run as running,
+ unless we're calling an inferior function.
+ (normal_stop): If the thread is running an infcall, don't finish
+ thread state.
+ * target.c (target_resume): Don't mark threads as running here.
+
+2014-05-28 Joel Brobecker <brobecker@adacore.com>
+
+ * serial.c (_initialize_serial): Remove support for
+ the "set remotebaud" and "show remotebaud" commands.
+ * NEWS: Add entry documenting the removal of that command.
+
+2014-05-28 Yao Qi <yao@codesourcery.com>
+
+ * charset.c: Fix typo in comments.
+
+2014-05-27 Gary Benson <gbenson@redhat.com>
+
+ * utils.c (internal_vproblem): Prompt for a bug report.
+
+2014-05-26 Andy Wingo <wingo@igalia.com>
+
+ * guile/scm-arch.c (arscm_mark_arch_smob):
+ * guile/scm-block.c (bkscm_mark_block_smob)
+ (bkscm_mark_block_syms_progress_smob):
+ * guile/scm-breakpoint.c (bpscm_mark_breakpoint_smob):
+ * guile/scm-exception.c (exscm_mark_exception_smob):
+ * guile/scm-frame.c (frscm_mark_frame_smob):
+ * guile/scm-iterator.c (itscm_mark_iterator_smob):
+ * guile/scm-lazy-string.c (lsscm_mark_lazy_string_smob):
+ * guile/scm-objfile.c (ofscm_mark_objfile_smob):
+ * guile/scm-pretty-print.c (ppscm_mark_pretty_printer_smob)
+ (ppscm_mark_pretty_printer_worker_smob):
+ * guile/scm-symbol.c (syscm_mark_symbol_smob):
+ * guile/scm-symtab.c (stscm_mark_symtab_smob, stscm_mark_sal_smob):
+ * guile/scm-type.c (tyscm_mark_type_smob, tyscm_mark_field_smob):
+ * guile/scm-value.c (vlscm_mark_value_smob): Remove unnecessary
+ mark functions.
+ * guile/scm-symtab.c (stscm_free_sal_smob): Remove unnecessary free
+ function.
+
+2014-05-26 Andy Wingo <wingo@igalia.com>
+ Doug Evans <xdje42@gmail.com>
+
+ * guile/guile-internal.h (GDB_SMOB_HEAD): Replace properties with
+ empty_base_class. All uses updated.
+ (gdbscm_mark_gsmob, gdbscm_mark_chained_gsmob)
+ (gdbscm_mark_eqable_gsmob): Remove these now-unneeded functions.
+ Adapt all callers.
+ * guile/scm-gsmob.c (gdbscm_mark_gsmob)
+ (gdbscm_mark_chained_gsmob, gdbscm_mark_eqable_gsmob): Remove.
+ (gdbscm_gsmob_property, gdbscm_set_gsmob_property_x)
+ (gdbscm_gsmob_has_property_p, add_property_name)
+ (gdbscm_gsmob_properties): Remove, and remove them from gsmob_functions.
+ * guile/lib/gdb.scm (gdb-object-property, set-gdb-object-property)
+ (gdb-object-has-property?, gdb-object-properties): Remove.
+ (gdb-object-kind): Renamed from gsmob-kind.
+
+2014-05-26 Andy Wingo <wingo@igalia.com>
+
+ * configure.ac (try_guile_versions): Allow building with guile 2.2.
+ * configure: Regenerate.
+
+2014-05-23 Markus Metzger <markus.t.metzger@intel.com>
+
+ * symfile-mem.c (symbol_file_add_from_memory): Add BFD sections.
+
+2014-05-23 Markus Metzger <markus.t.metzger@intel.com>
+
+ * record-btrace.c (record_btrace_allow_memory_access): Remove.
+ (replay_memory_access_read_only, replay_memory_access_read_write)
+ (replay_memory_access_types, replay_memory_access)
+ (set_record_btrace_cmdlist, show_record_btrace_cmdlist)
+ (cmd_set_record_btrace, cmd_show_record_btrace)
+ (cmd_show_replay_memory_access): New.
+ (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
+ (record_btrace_remove_breakpoint): Replace
+ record_btrace_allow_memory_access with replay_memory_access.
+ (_initialize_record_btrace): Add commands.
+ * NEWS: Announce it.
+
+2014-05-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ * aarch64-linux-nat.c (asm/ptrace.h): Include.
+
+2014-05-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ * MAINTAINERS (Write After Approval): Move self back from
+ paper trail.
+
+2014-05-22 Pedro Alves <palves@redhat.com>
+
+ * inferior.h (debug_infrun, debug_displaced, stop_on_solib_events)
+ (sync_execution, sched_multi, step_stop_if_no_debug, non_stop)
+ (disable_randomization, enum exec_direction_kind)
+ (execution_direction, stop_registers, start_remote)
+ (clear_proceed_status, proceed, resume, user_visible_resume_ptid)
+ (wait_for_inferior, normal_stop, get_last_target_status)
+ (prepare_for_detach, fetch_inferior_event, init_wait_for_inferior)
+ (insert_step_resume_breakpoint_at_sal)
+ (follow_inferior_reset_breakpoints, stepping_past_instruction_at)
+ (set_step_info, print_stop_event, signal_stop_state)
+ (signal_print_state, signal_pass_state, signal_stop_update)
+ (signal_print_update, signal_pass_update)
+ (update_signals_program_target, clear_exit_convenience_vars)
+ (displaced_step_dump_bytes, update_observer_mode)
+ (signal_catch_update, gdb_signal_from_command): Move
+ declarations ...
+ * infrun.h: ... to this new file.
+ * amd64-tdep.c: Include infrun.h.
+ * annotate.c: Include infrun.h.
+ * arch-utils.c: Include infrun.h.
+ * arm-linux-tdep.c: Include infrun.h.
+ * arm-tdep.c: Include infrun.h.
+ * break-catch-sig.c: Include infrun.h.
+ * breakpoint.c: Include infrun.h.
+ * common/agent.c: Include infrun.h instead of inferior.h.
+ * corelow.c: Include infrun.h.
+ * event-top.c: Include infrun.h.
+ * go32-nat.c: Include infrun.h.
+ * i386-tdep.c: Include infrun.h.
+ * inf-loop.c: Include infrun.h.
+ * infcall.c: Include infrun.h.
+ * infcmd.c: Include infrun.h.
+ * infrun.c: Include infrun.h.
+ * linux-fork.c: Include infrun.h.
+ * linux-nat.c: Include infrun.h.
+ * linux-thread-db.c: Include infrun.h.
+ * monitor.c: Include infrun.h.
+ * nto-tdep.c: Include infrun.h.
+ * procfs.c: Include infrun.h.
+ * record-btrace.c: Include infrun.h.
+ * record-full.c: Include infrun.h.
+ * remote-m32r-sdi.c: Include infrun.h.
+ * remote-mips.c: Include infrun.h.
+ * remote-notif.c: Include infrun.h.
+ * remote-sim.c: Include infrun.h.
+ * remote.c: Include infrun.h.
+ * reverse.c: Include infrun.h.
+ * rs6000-tdep.c: Include infrun.h.
+ * s390-linux-tdep.c: Include infrun.h.
+ * solib-irix.c: Include infrun.h.
+ * solib-osf.c: Include infrun.h.
+ * solib-svr4.c: Include infrun.h.
+ * target.c: Include infrun.h.
+ * top.c: Include infrun.h.
+ * windows-nat.c: Include infrun.h.
+ * mi/mi-interp.c: Include infrun.h.
+ * mi/mi-main.c: Include infrun.h.
+ * python/py-threadevent.c: Include infrun.h.
+
+2014-05-22 Pedro Alves <palves@redhat.com>
+
+ * infrun.c (handle_inferior_event): Store the exit code for
+ --return-child-result here, instead of ...
+ (print_exited_reason): ... here.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ PR gdb/13860
+ * gdbthread.h (struct thread_control_state): New field
+ `command_interp'.
+ * infrun.c (follow_fork): Copy the new thread control field to the
+ child fork thread.
+ (clear_proceed_status_thread): Clear the new thread control field.
+ (proceed): Set the new thread control field.
+ * interps.h (command_interp): Declare.
+ * interps.c (command_interpreter): New global.
+ (command_interp): New function.
+ (interp_exec): Set `command_interpreter' while here.
+ * cli-out.c (cli_uiout_dtor): New function.
+ (cli_ui_out_impl): Install it.
+ * mi/mi-interp.c: Include cli-out.h.
+ (mi_cmd_interpreter_exec): Add comment.
+ (restore_current_uiout_cleanup): New function.
+ (ui_out_free_cleanup): New function.
+ (mi_on_normal_stop): If finishing an execution command started by
+ a CLI command, or any kind of breakpoint-like event triggered,
+ print the stop event to the output (CLI) stream.
+ * mi/mi-out.c (mi_ui_out_impl): Install NULL `dtor' handler.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * cli/cli-cmds.c (list_command): Handle the first "list" after the
+ current source line having changed.
+ * frame.h (set_current_sal_from_frame): Remove 'center' parameter.
+ * infrun.c (normal_stop): Adjust call to
+ set_current_sal_from_frame.
+ * source.c (clear_lines_listed_range): New function.
+ (set_current_source_symtab_and_line, identify_source_line): Clear
+ the lines listed range.
+ (line_info): Handle the first "info line" after the current source
+ line having changed.
+ * stack.c (print_stack_frame): Remove center handling.
+ (set_current_sal_from_frame): Remove 'center' parameter. Don't
+ center sal.line.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * inf-child.c (inf_child_mourn_inferior): New function.
+ * inf-child.h (inf_child_mourn_inferior): New declaration.
+ * darwin-nat.c (darwin_mourn_inferior): Use
+ inf_child_mourn_inferior.
+ * gnu-nat.c (gnu_mourn_inferior): Likewise.
+ * inf-ptrace.c (inf_ptrace_mourn_inferior): Likewise.
+ * inf-ttrace.c (inf_ttrace_mourn_inferior): Likewise.
+ * nto-procfs.c (procfs_mourn_inferior): Likewise.
+ * windows-nat.c (windows_mourn_inferior): Likewise.
+
+2014-05-21 Doug Evans <xdje42@gmail.com>
+
+ * guile/scm-breakpoint.c (breakpoint_functions): Fix typo.
+
+2014-05-21 Doug Evans <xdje42@gmail.com>
+
+ * guile/scm-exception.c (gdbscm_invalid_object_error): Make result void.
+ (gdbscm_out_of_range_error): Ditto.
+ (gdbscm_memory_error): Ditto.
+ * guile/scm-string.c (gdbscm_scm_to_target_string_unsafe): Delete.
+ * guile/guile-internal.h (gdbscm_invalid_object_error): Update.
+ (gdbscm_out_of_range_error): Update.
+ (gdbscm_memory_error): Update.
+ (gdbscm_scm_to_target_string_unsafe): Delete.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * inf-child.c (inf_child_ops, inf_child_explicitly_opened): New
+ globals.
+ (inf_child_open_target): New function.
+ (inf_child_open): Use inf_child_open_target to push the target
+ instead of erroring out.
+ (inf_child_disconnect, inf_child_close)
+ (inf_child_maybe_unpush_target): New functions.
+ (inf_child_target): Install inf_child_disconnect and
+ inf_child_close. Store a pointer to the returned object.
+ * inf-child.h (inf_child_open_target, inf_child_maybe_unpush): New
+ declarations.
+ * target.c (auto_connect_native_target): New global.
+ (show_default_run_target): New function.
+ (find_default_run_target): Return NULL if automatically connecting
+ to the native target is disabled.
+ (_initialize_target): Install set/show auto-connect-native-target.
+ * NEWS: Mention "set auto-connect-native-target", and "target
+ native".
+ * linux-nat.c (super_close): New global.
+ (linux_nat_close): Call super_close.
+ (linux_nat_add_target): Store a pointer to the base class's
+ to_close method.
+ * inf-ptrace.c (inf_ptrace_mourn_inferior, inf_ptrace_detach): Use
+ inf_child_maybe_unpush.
+ * inf-ttrace.c (inf_ttrace_him): Don't push the target if it is
+ already pushed.
+ (inf_ttrace_mourn_inferior): Only unpush the target after mourning
+ the inferior. Use inf_child_maybe_unpush_target.
+ (inf_ttrace_attach): Don't push the target if it is already
+ pushed.
+ (inf_ttrace_detach): Use inf_child_maybe_unpush_target.
+ * darwin-nat.c (darwin_mourn_inferior): Only unpush the target
+ after mourning the inferior. Use inf_child_maybe_unpush_target.
+ (darwin_attach_pid): Don't push the target if it is already
+ pushed.
+ * gnu-nat.c (gnu_mourn_inferior): Only unpush the target after
+ mourning the inferior. Use inf_child_maybe_unpush_target.
+ (gnu_detach): Use inf_child_maybe_unpush_target.
+ * go32-nat.c (go32_create_inferior): Don't push the target if it
+ is already pushed.
+ (go32_mourn_inferior): Use inf_child_maybe_unpush_target.
+ * nto-procfs.c (procfs_is_nto_target): Adjust comment.
+ (procfs_open): Rename to ...
+ (procfs_open_1): ... this. Add target_ops parameter. Adjust
+ comments. Can target_preopen before changing node. Call
+ inf_child_open_target to push the target explicitly.
+ (procfs_attach): Don't push the target if it is already pushed.
+ (procfs_detach): Use inf_child_maybe_unpush_target.
+ (procfs_create_inferior): Don't push the target if it is already
+ pushed.
+ (nto_native_ops): New global.
+ (procfs_open): Reimplement.
+ (procfs_native_open): New function.
+ (init_procfs_targets): Install procfs_native_open as to_open of
+ "target native". Store a pointer to the "native" target in
+ nto_native_ops.
+ * procfs.c (procfs_attach): Don't push the target if it is already
+ pushed.
+ (procfs_detach): Use inf_child_maybe_unpush_target.
+ (procfs_mourn_inferior): Only unpush the target after mourning the
+ inferior. Use inf_child_maybe_unpush_target.
+ (procfs_init_inferior): Don't push the target if it is already
+ pushed.
+ * windows-nat.c (do_initial_windows_stuff): Don't push the target
+ if it is already pushed.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * NEWS: Mention that the "child", "GNU, "djgpp", "darwin-child"
+ and "procfs" targets are now called "native" instead.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * go32-nat.c (go32_open): Delete.
+ (go32_target): Don't override the to_open method.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * nto-procfs.c (procfs_can_run): New function.
+ (nto_procfs_ops): New global.
+ (init_procfs_targets): New, based on procfs_target. Install
+ "target native" in addition to "target procfs".
+ (_initialize_procfs): Call init_procfs_targets instead of adding
+ the target here.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * windows-nat.c (windows_target): Don't override to_shortname,
+ to_longname or to_doc.
+
+2014-05-21 Pedro Alves <palves@redhat.com>
+
+ * gnu-nat.c (gnu): Don't override to_shortname, to_longname or
+ to_doc.
+
2014-05-21 Pedro Alves <palves@redhat.com>
* darwin-nat.c (_initialize_darwin_inferior): Don't override