Add support for skeletonless type units.
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 2418b45e78690e29cbcb1a35a2ef7370a1598b09..5e428f51e99d0091d3411e3fcb5359f4a370da9d 100644 (file)
@@ -1,3 +1,336 @@
+2014-06-02  Doug Evans  <dje@google.com>
+
+       Add support for skeletonless type units.
+       * dwarf2read.c (struct dwarf2_per_objfile): New member
+       n_allocated_type_units.
+       (struct dwarf2_per_objfile) <tu_stats>: New member
+       nr_all_type_units_reallocs.
+       (create_signatured_type_table_from_index): Initialize
+       n_allocated_type_units
+       (create_all_type_units): Ditto.
+       (add_type_unit): Move up in file.  New arg slot.
+       All callers updated.  Increase space for all_type_units more
+       efficiently.
+       (fill_in_sig_entry_from_dwo_entry): Handle psymtabs.
+       (lookup_dwo_signatured_type): Handle skeletonless TUs.
+       (lookup_dwp_signatured_type): Ditto.
+       (init_tu_and_read_dwo_dies): New arg use_existing_cu.
+       All callers updated.
+       (build_type_psymtabs_1): Leave type_unit_groups as
+       NULL if no TUs present.
+       (print_tu_stats): New function.
+       (process_skeletonless_type_unit): New function.
+       (process_dwo_file_for_skeletonless_type_units): New
+       function.
+       (process_skeletonless_type_units): New function.
+       (dwarf2_build_psymtabs_hard): Handle skeletonless TUs.
+       Call print tu_stats if debugging enabled.
+
+2014-06-02  Pedro Alves  <palves@redhat.com>
+
+       * breakpoint.c (build_target_command_list): Don't build a command
+       list if we have any duplicate location that isn't a dprintf.
+
+2014-06-02  Pedro Alves  <palves@redhat.com>
+
+       * breakpoint.c (dprintf_breakpoint_hit): New function.
+       (initialize_breakpoint_ops): Install it as dprintf's
+       breakpoint_hit method.
+
+2014-06-02  Joel Brobecker  <brobecker@adacore.com>
+
+       * source.c (substitute_path_rule_matches): Simplify using
+       filename_ncmp instead of FILENAME_CMP.
+
+2014-06-02  Joel Brobecker  <brobecker@adacore.com>
+
+       * source.c (substitute_path_rule_matches): Remove trailing spaces.
+
+2014-06-01  Ludovic Courtès  <ludo@gnu.org>
+
+       * configure.ac: When Guile is available, check for the
+       availability of 'scm_new_smob'.
+       * configure, config.h.in: Regenerate.
+       * guile/guile-internal.h (scm_new_smob) [!HAVE_SCM_NEW_SMOB]: New
+       function.
+
+2014-05-30  Andrew Burgess  <aburgess@broadcom.com>
+
+       * frame.c (struct frame_info): Add stop_string field.
+       (get_prev_frame_always_1): Renamed from get_prev_frame_always.
+       (get_prev_frame_always): Old content moved into
+       get_prev_frame_always_1.  Call get_prev_frame_always_1 inside
+       TRY_CATCH, handle MEMORY_ERROR exceptions.
+       (frame_stop_reason_string): New function definition.
+       * frame.h (unwind_stop_reason_to_string): Extend comment to
+       mention frame_stop_reason_string.
+       (frame_stop_reason_string): New function declaration.
+       * stack.c (frame_info): Switch to frame_stop_reason_string.
+       (backtrace_command_1): Switch to frame_stop_reason_string.
+       * unwind_stop_reason.def: Add UNWIND_MEMORY_ERROR.
+       (LAST_ENTRY): Changed to UNWIND_MEMORY_ERROR.
+       * guile/lib/gdb.scm: Add FRAME_UNWIND_MEMORY_ERROR to export list.
+
+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-21  Doug Evans  <xdje42@gmail.com>
 
-       * guile/scm-exception.c (gdbscm_invalid_object_error): Make result is void.
+       * 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.
This page took 0.029558 seconds and 4 git commands to generate.