gdb: Add support for tracking the DWARF line table is-stmt field
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 144fd4f256af52ee8fc0dbb60f6ace3601738023..1013e91866b0d7f8c53aac3f8362634c1cc71a2d 100644 (file)
@@ -1,3 +1,816 @@
+2020-03-10  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * buildsym-legacy.c (record_line): Pass extra parameter to
+       record_line.
+       * buildsym.c (buildsym_compunit::record_line): Take an extra
+       parameter, reduce duplication in the line table, and record the
+       is_stmt flag in the line table.
+       * buildsym.h (buildsym_compunit::record_line): Add extra
+       parameter.
+       * disasm.c (do_mixed_source_and_assembly_deprecated): Ignore
+       non-statement lines.
+       * dwarf2/read.c (dwarf_record_line_1): Add extra parameter, pass
+       this to the symtab builder.
+       (dwarf_finish_line): Pass extra parameter to dwarf_record_line_1.
+       (lnp_state_machine::record_line): Pass a suitable is_stmt flag
+       through to dwarf_record_line_1.
+       * infrun.c (process_event_stop_test): When stepping, don't stop at
+       a non-statement instruction, and only refresh the step info when
+       we land in the middle of a line's range.  Also add an extra
+       comment.
+       * jit.c (jit_symtab_line_mapping_add_impl): Initialise is_stmt
+       field.
+       * record-btrace.c (btrace_find_line_range): Only record lines
+       marked as is-statement.
+       * stack.c (frame_show_address): Show the frame address if we are
+       in a non-statement sal.
+       * symmisc.c (dump_symtab_1): Print the is_stmt flag.
+       (maintenance_print_one_line_table): Print a header for the is_stmt
+       column, and include is_stmt information in the output.
+       * symtab.c (find_pc_sect_line): Find lines marked as statements in
+       preference to non-statements.
+       (find_pcs_for_symtab_line): Prefer is-statement entries.
+       (find_line_common): Likewise.
+       * symtab.h (struct linetable_entry): Add is_stmt field.
+       (struct symtab_and_line): Likewise.
+       * xcoffread.c (arrange_linetable): Initialise is_stmt field when
+       arranging the line table.
+
+2020-03-07  Tom de Vries  <tdevries@suse.de>
+
+       * dwarf2/read.c (read_typedef): Treat anonymous typedef as forwarder
+       DIE.
+
+2020-03-07  Tom Tromey  <tom@tromey.com>
+
+       * valops.c (value_literal_complex): Remove obsolete comment.
+       * gdbtypes.h (enum type_code) <TYPE_CODE_FLT>: Remove obsolete
+       comment.
+
+2020-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * infrun.h: Forward-declare thread_info.
+       (set_step_info): Add thread_info parameter, add doc.
+       * infrun.c (set_step_info): Add thread_info parameter, move doc
+       to header.
+       * infrun.c (process_event_stop_test): Pass thread to
+       set_step_info call.
+       * infcmd.c (set_step_frame): Add thread_info pointer, pass it to
+       set_step_info.
+       (prepare_one_step): Add thread_info parameter, pass it to
+       set_step_frame and prepare_one_step (recursive) call.
+       (step_1): Pass thread to prepare_one_step call.
+       (step_command_fsm::should_stop): Pass thread to
+       prepare_one_step.
+       (until_next_fsm): Pass thread to set_step_frame call.
+       (finish_command): Pass thread to set_step_info call.
+
+2020-03-06  Hannes Domani  <ssbssa@yahoo.de>
+
+       * windows-tdep.c (windows_solib_create_inferior_hook):
+       Check if inferior is running.
+
+2020-03-06  Tom de Vries  <tdevries@suse.de>
+
+       * NEWS: Fix "the the".
+       * ctfread.c: Same.
+
+2020-03-06  Tom de Vries  <tdevries@suse.de>
+
+       * psymtab.c (psymtab_to_symtab): Don't print "done.".
+
+2020-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * .dir-locals.el: Add a comment referencing the other copies of
+       this file.
+
+2020-03-05  John Baldwin  <jhb@FreeBSD.org>
+
+       * fbsd-tdep.c (fbsd_make_corefile_notes): Use std::string for
+       psargs.
+
+2020-03-05  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       * .gitattributes: New file.
+
+2020-03-04  Tom Tromey  <tom@tromey.com>
+
+       * symmisc.c (print_symbol_bcache_statistics)
+       (print_objfile_statistics): Update.
+       * symfile.c (allocate_symtab): Use intern.
+       * psymtab.c (partial_symtab::partial_symtab): Use intern.
+       * objfiles.h (struct objfile_per_bfd_storage) <filename_cache,
+       macro_cache>: Remove.
+       <string_cache>: New member.
+       (struct objfile) <intern>: New methods.
+       * elfread.c (elf_symtab_read): Use intern.
+       * dwarf2/read.c (fixup_go_packaging): Intern package name.
+       (dwarf2_compute_name, dwarf2_physname)
+       (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2): Intern
+       names.
+       (guess_partial_die_structure_name): Update.
+       (partial_die_info::fixup): Intern name.
+       (dwarf2_canonicalize_name): Change parameter to objfile.  Intern
+       name.
+       (dwarf2_name): Intern name.  Update.
+       * buildsym.c (buildsym_compunit::get_macro_table): Use
+       string_cache.
+
+2020-03-04  Tom Tromey  <tom@tromey.com>
+
+       * jit.c (bfd_open_from_target_memory): Make "target" const.
+       * corefile.c (gnutarget): Now const.
+       * gdbcore.h (gnutarget): Now const.
+
+2020-03-04  Hannes Domani  <ssbssa@yahoo.de>
+
+       * NEWS: Mention support for WOW64 processes.
+       * amd64-windows-nat.c (amd64_mappings): Rename and remove static.
+       (amd64_windows_segment_register_p): Remove static.
+       (_initialize_amd64_windows_nat): Update.
+       * configure.nat <windows> (NATDEPFILES): Add i386-windows-nat.o.
+       * i386-windows-nat.c (context_offset): Update.
+       (i386_mappings): Rename and remove static.
+       (i386_windows_segment_register_p): Remove static.
+       (_initialize_i386_windows_nat): Update.
+       * windows-nat.c (STATUS_WX86_BREAKPOINT): New macro.
+       (STATUS_WX86_SINGLE_STEP): New macro.
+       (EnumProcessModulesEx): New macro.
+       (Wow64SuspendThread): New macro.
+       (Wow64GetThreadContext): New macro.
+       (Wow64SetThreadContext): New macro.
+       (Wow64GetThreadSelectorEntry): New macro.
+       (windows_set_context_register_offsets): Add static.
+       (windows_set_segment_register_p): Likewise.
+       (windows_add_thread): Adapt for WOW64 processes.
+       (windows_fetch_one_register): Likewise.
+       (windows_nat_target::fetch_registers): Likewise.
+       (windows_store_one_register): Likewise.
+       (display_selector): Likewise.
+       (display_selectors): Likewise.
+       (handle_exception): Likewise.
+       (windows_continue): Likewise.
+       (windows_nat_target::resume): Likewise.
+       (windows_add_all_dlls): Likewise.
+       (do_initial_windows_stuff): Likewise.
+       (windows_nat_target::attach): Likewise.
+       (windows_get_exec_module_filename): Likewise.
+       (windows_nat_target::create_inferior): Likewise.
+       (windows_xfer_siginfo): Likewise.
+       (_initialize_loadable): Initialize Wow64SuspendThread,
+       Wow64GetThreadContext, Wow64SetThreadContext,
+       Wow64GetThreadSelectorEntry and EnumProcessModulesEx.
+       * windows-nat.h (windows_set_context_register_offsets):
+       Remove declaration.
+       (windows_set_segment_register_p): Likewise.
+       (i386_windows_segment_register_p): Add declaration.
+       (amd64_windows_segment_register_p): Likewise.
+
+2020-03-04  Luis Machado  <luis.machado@linaro.org>
+
+       Revert aa66aac47b4dd38f9524ddb5546c08cc09930d37 due to regressions
+       in "info registers" for AArch64/ARM.
+
+       The change caused "info registers" to not print GPR's.
+
+       gdb/ChangeLog:
+
+       2020-02-01  Shahab Vahedi  <shahab@synopsys.com>
+
+       * target-descriptions.c (tdesc_register_in_reggroup_p): Return 0
+       when reg->group is empty and reggroup is not.
+
+2020-03-03  Tom Tromey  <tromey@adacore.com>
+
+       * dwarf2/frame.c (struct dwarf2_frame_cache)
+       <checked_tailcall_bottom, entry_cfa_sp_offset,
+       entry_cfa_sp_offset_p>: Remove members.
+       (dwarf2_frame_cache): Call dwarf2_tailcall_sniffer_first.
+       (dwarf2_frame_prev_register): Don't call
+       dwarf2_tailcall_sniffer_first.
+       (dwarf2_append_unwinders): Don't append tailcall unwinder.
+       * frame-unwind.c (add_unwinder): New fuction.
+       (frame_unwind_init): Use it.  Add tailcall unwinder.
+
+2020-03-03  Andrew Burgess  <andrew.burgess@embecosm.com>
+           Alok Kumar Sharma  <AlokKumar.Sharma@amd.com>
+
+       * f-valprint.c (f_val_print): Handle TYPE_CODE_BOOL, any non-zero
+       value should be printed as true.
+
+2020-03-03  Hannes Domani  <ssbssa@yahoo.de>
+
+       * windows-tdep.c (windows_solib_create_inferior_hook): New function.
+       (windows_init_abi): Set and use windows_so_ops.
+
+2020-03-03  Sergio Durigan Junior  <sergiodj@redhat.com>
+
+       * printcmd.c (print_c_string): Check also for TYPE_CODE_PTR
+       when verifying if dealing with a convenience variable.
+
+2020-03-03  Luis Machado  <luis.machado@linaro.org>
+
+       * auxv.c (default_print_auxv_entry): Add new AUXV entries.
+
+2020-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * infrun.c (gdbarch_supports_displaced_stepping): New.
+       (use_displaced_stepping): Break up conditions in smaller pieces.
+       Use gdbarch_supports_displaced_stepping.
+       (displaced_step_prepare_throw): Use
+       gdbarch_supports_displaced_stepping.
+
+2020-03-02  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * NEWS: Mention new behaviour of the history filename.
+       * top.c (write_history_p): Add comment.
+       (show_write_history_p): Add header comment, give a different
+       message when history writing is on, but the history filename is
+       empty.
+       (history_filename): Add comment.
+       (history_filename_empty): New function.
+       (show_history_filename): Add header comment, give a different
+       message when the filename is empty.
+       (init_history): Compare history_filename against nullptr, and only
+       read history if the filename is not empty.
+       (set_history_filename): Add header comment, and only make
+       non-empty filenames absolute.
+       (init_main): Make the filename argument to 'set history filename'
+       optional.
+
+2020-03-02  Christian Biesinger  <cbiesinger@google.com>
+
+       * arm-nbsd-nat.c (arm_supply_fparegset): Rename to...
+       (arm_supply_vfpregset): ...this, and update to use VFP registers.
+       (fetch_fp_register): Update.
+       (fetch_fp_regs): Update.
+       (store_fp_register): Update.
+       (store_fp_regs): Update.
+       (arm_netbsd_nat_target::read_description): New function.
+       (fetch_elfcore_registers): Update.
+
+2020-03-02  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * remote.c (remote_target::remote_parse_stop_reply): Don't use the
+       general_thread if the stop reply is missing a thread-id.
+       (remote_target::process_stop_reply): Use the first non-exited
+       thread if the target didn't pass a thread-id.
+       * infrun.c (do_target_wait): Move call to
+       switch_to_inferior_no_thread to ....
+       (do_target_wait_1): ... here.
+
+2020-02-29  Jon Turney  <jon.turney@dronecode.org.uk>
+
+       * debuginfod-support.c: Include defs.h first.
+
+2020-02-28  Tom de Vries  <tdevries@suse.de>
+
+       * symfile.c (set_initial_language): Use default language for lookup.
+
+2020-02-28  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (cutu_reader::init_tu_and_read_dwo_dies): Remove
+       reader variable, pass `this` to read_cutu_die_from_dwo.
+
+2020-02-27  Aaron Merey  <amerey@redhat.com>
+
+       * source.c (open_source_file): Check for nullptr when computing
+       srcpath.
+
+2020-02-27  Tom Tromey  <tromey@adacore.com>
+
+       * dwarf2/read.c (struct field_info) <nfields>: Now a method, not a
+       member.
+       (dwarf2_add_field): Don't update nfields.
+       (dwarf2_attach_fields_to_type, process_structure_scope): Update.
+
+2020-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * gdbtypes.c (create_array_type_with_stride): Use std::abs not
+       abs.
+
+2020-02-26  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/read.c (struct dwarf2_include_psymtab): New.
+       (dwarf2_create_include_psymtab): Use dwarf2_include_psymtab.
+       (dwarf2_psymtab::expand_psymtab, dwarf2_psymtab::readin_p)
+       (dwarf2_psymtab::get_compunit_symtab): Remove null checks for
+       per_cu_data.
+
+2020-02-26  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/index-write.c (psym_index_map): Change type.
+       (add_address_entry_worker, write_one_signatured_type)
+       (recursively_count_psymbols, recursively_write_psymbols)
+       (class debug_names, psyms_seen_size, write_gdbindex)
+       (write_debug_names): Use partial_symtab, not dwarf2_psymtab.
+
+2020-02-26  Aaron Merey  <amerey@redhat.com>
+
+       * Makefile.in: Handle optional debuginfod support.
+       * NEWS: Update.
+       * README: Add --with-debuginfod summary.
+       * config.in: Regenerate.
+       * configure: Regenerate.
+       * configure.ac: Handle optional debuginfod support.
+       * debuginfod-support.c: debuginfod helper functions.
+       * debuginfod-support.h: Ditto.
+       * doc/gdb.texinfo: Add --with-debuginfod to configure options
+       summary.
+       * dwarf2/read.c (dwarf2_get_dwz_file): Query debuginfod servers
+       when a dwz file cannot be found.
+       * elfread.c (elf_symfile_read): Query debuginfod servers when a
+       debuginfo file cannot be found.
+       * source.c (open_source_file): Query debuginfod servers when a
+       source file cannot be found.
+       * top.c (print_gdb_configuration): Include
+       --{with,without}-debuginfod in the output.
+
+2020-02-26  Jérémie Galarneau  <jeremie.galarneau@efficios.com>
+
+       * thread.c (thr_try_catch_cmd): Print thread name.
+
+2020-02-26  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/loc.h (dwarf2_fetch_die_loc_sect_off,
+       dwarf2_fetch_die_loc_cu_off, dwarf2_fetch_constant_bytes,
+       dwarf2_fetch_die_type_sect_off): Move to...
+       * dwarf2/read.h (dwarf2_fetch_die_loc_sect_off,
+       dwarf2_fetch_die_loc_cu_off, dwarf2_fetch_constant_bytes,
+       dwarf2_fetch_die_type_sect_off): ... here.
+       * dwarf2/read.c (dwarf2_fetch_die_loc_sect_off,
+       dwarf2_fetch_die_loc_cu_off, dwarf2_fetch_constant_bytes,
+       dwarf2_fetch_die_type_sect_off): Move doc to header file.
+
+2020-02-26  Tom de Vries  <tdevries@suse.de>
+
+       PR gdb/25603
+       * symfile.c (set_initial_language): Exit-early if
+       language_mode == language_mode_manual.
+
+2020-02-25  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * dwarf2/loc.h (dwarf2_read_addr_index): Move...
+       * dwarf2/read.h (dwarf2_read_addr_index): ... here.
+       * dwarf2/read.c (dwarf2_read_addr_index): Move doc to header.
+
+2020-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * gdbtypes.c (create_array_type_with_stride): Handle negative
+       array strides.
+       * valarith.c (value_subscripted_rvalue): Likewise.
+
+2020-02-25  Luis Machado  <luis.machado@linaro.org>
+
+       * aarch64-tdep.c (aarch64_vnv_type): Fix comment typo.
+
+2020-02-25  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * loc.h (dwarf2_get_die_type): Move to...
+       * read.h (dwarf2_get_die_type): ... here.
+       * read.c (dwarf2_get_die_type): Move doc to header.
+
+2020-02-25  Joel Brobecker  <brobecker@adacore.com>
+
+       * copypright.py (EXCLUDE_LIST): Add 'gnulib/config.in' and
+       'gnulib/Makefile.in' to the list.
+
+2020-02-24  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/read.h (struct type_unit_unshareable) <num_symtabs>:
+       Remove.
+       * dwarf2/read.c (dwarf2_cu::setup_type_unit_groups): Use
+       XOBNEWVEC.
+
+2020-02-24  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/read.h (struct dwarf2_per_cu_data) <type_unit_group_p>:
+       New method.
+       * dwarf2/read.c (IS_TYPE_UNIT_GROUP): Remove.
+       (dw2_do_instantiate_symtab, dw2_get_file_names)
+       (build_type_psymtab_dependencies, load_full_type_unit): Update.
+
+2020-02-24  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2read.c (dwarf2_build_psymtabs_hard): Use
+       make_scoped_restore.
+       (dwarf2_psymtab::read_symtab): Don't clear
+       reading_partial_symbols.
+
+2020-02-24  Tom de Vries  <tdevries@suse.de>
+
+       PR gdb/25592
+       * stack.c (iterate_over_block_locals): Handle LOC_CONST.
+
+2020-02-24  Tom de Vries  <tdevries@suse.de>
+
+       * tui/tui-layout.c (_initialize_tui_layout): Fix help messages for
+       commands layout next/prev/regs.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/loc.h (dwarf2_compile_expr_to_ax): Don't declare.
+       * dwarf2/loc.c (dwarf2_compile_expr_to_ax): Now static.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-data.h (TUI_DISASM_WIN): Cast to tui_disasm_window.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-win.c (_initialize_tui_win): Add usage text.
+       * tui/tui-stack.c (_initialize_tui_stack): Add usage text.
+       * tui/tui-regs.c (_initialize_tui_regs): Add usage text.
+       * tui/tui.c (_initialize_tui): Add usage text.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-win.c (tui_set_focus_command)
+       (tui_set_win_height_command): Use error_no_arg.
+       (_initialize_tui_win): Update help text.
+       (FOCUS_USAGE, WIN_HEIGHT_USAGE): Don't define.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-layout.c (extract_display_start_addr): Rewrite.
+       * tui/tui-disasm.h (struct tui_disasm_window)
+       <display_start_addr>: Declare.
+       * tui/tui-source.h (struct tui_source_window)
+       <display_start_addr>: Declare.
+       * tui/tui-winsource.h (struct tui_source_window_base)
+       <show_source_line, display_start_addr>: New methods.
+       <m_horizontal_offset, m_start_line_or_addr, m_gdbarch, m_content>:
+       Rename and move to protected section.
+       * tui/tui-winsource.c (tui_source_window_base::update_source_window)
+       (tui_source_window_base::do_erase_source_content): Update.
+       (tui_source_window_base::show_source_line): Now a method.
+       (tui_source_window_base::show_source_content)
+       (tui_source_window_base::tui_source_window_base)
+       (tui_source_window_base::rerender)
+       (tui_source_window_base::refill)
+       (tui_source_window_base::do_scroll_horizontal)
+       (tui_source_window_base::set_is_exec_point_at)
+       (tui_source_window_base::update_breakpoint_info)
+       (tui_source_window_base::update_exec_info): Update.
+       * tui/tui-source.c (tui_source_window::set_contents)
+       (tui_source_window::showing_source_p)
+       (tui_source_window::do_scroll_vertical)
+       (tui_source_window::location_matches_p)
+       (tui_source_window::line_is_displayed): Update.
+       (tui_source_window::display_start_addr): New method.
+       * tui/tui-disasm.c (tui_disasm_window::set_contents)
+       (tui_disasm_window::do_scroll_vertical)
+       (tui_disasm_window::location_matches_p): Update.
+       (tui_disasm_window::display_start_addr): New method.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * NEWS: Add entry for gdb.register_window_type.
+       * tui/tui-layout.h (window_factory): New typedef.
+       (tui_register_window): Declare.
+       * tui/tui-layout.c (saved_tui_windows): New global.
+       (tui_apply_current_layout): Use it.
+       (tui_register_window): New function.
+       * python/python.c (do_start_initialization): Call
+       gdbpy_initialize_tui.
+       (python_GdbMethods): Add "register_window_type" function.
+       * python/python-internal.h (gdbpy_register_tui_window)
+       (gdbpy_initialize_tui): Declare.
+       * python/py-tui.c: New file.
+       * Makefile.in (SUBDIR_PYTHON_SRCS): Add py-tui.c.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-io.c (do_tui_putc): Don't omit annotations.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-win.c (tui_set_win_focus_to): Move to tui-data.c.
+       * tui/tui-data.h (tui_set_win_with_focus): Don't declare.
+       * tui/tui-data.c (tui_set_win_with_focus): Remove.
+       (tui_set_win_focus_to): Move from tui-win.c.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-layout.c (make_standard_window, get_locator_window): New
+       functions.
+       (known_window_types): New global.
+       (tui_get_window_by_name): Reimplement.
+       (initialize_known_windows): New function.
+       (validate_window_name): Rewrite.
+       (_initialize_tui_layout): Call initialize_known_windows.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui.h (enum tui_win_type) <LOCATOR_WIN, DATA_ITEM_WIN>:
+       Remove constants.
+       * tui/tui-winsource.h (struct tui_source_window_base)
+       <tui_source_window_base>: Remove parameter.
+       * tui/tui-winsource.c
+       (tui_source_window_base::tui_source_window_base): Remove
+       parameter.
+       (tui_source_window_base::refill): Update.
+       * tui/tui-stack.h (struct tui_locator_window)
+       <tui_locator_window>: Update.
+       * tui/tui-source.h (struct tui_source_window) <tui_source_window>:
+       Default the constructor.
+       * tui/tui-regs.h (struct tui_data_item_window)
+       <tui_data_item_window>: Default the constructor.
+       (struct tui_data_window) <tui_data_window>: Likewise.
+       * tui/tui-disasm.h (struct tui_disasm_window) <tui_disasm_window>:
+       Default the constructor.
+       * tui/tui-data.h (struct tui_gen_win_info) <tui_gen_win_info>:
+       Default the constructor.
+       <type>: Remove.
+       (struct tui_win_info) <tui_win_info>: Default the constructor.
+       * tui/tui-data.c (tui_win_info::tui_win_info): Remove.
+       * tui/tui-command.h (struct tui_cmd_window) <tui_cmd_window>:
+       Default the constructor.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-wingeneral.h (tui_make_all_invisible): Don't declare.
+       * tui/tui-wingeneral.c (tui_make_all_invisible): Remove.
+       * tui/tui-win.c (tui_resize_all): Don't call
+       tui_delete_invisible_windows.
+       * tui/tui-layout.c (tui_apply_current_layout): Delete windows when
+       done.
+       (tui_set_layout): Update.
+       (tui_add_win_to_layout): Don't call tui_delete_invisible_windows.
+       * tui/tui-data.h (tui_delete_invisible_windows): Don't declare.
+       * tui/tui-data.c (tui_delete_invisible_windows): Remove.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-win.c (tui_partial_win_by_name): Handle ambiguity
+       correctly.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-data.c (tui_next_win, tui_prev_win): Reimplement.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-winsource.h (struct tui_source_window_iterator)
+       <inner_iterator>: New etytypedef.
+       <tui_source_window_iterator>: Take "end" parameter.
+       <tui_source_window_iterator>: Take iterator.
+       <operator*, advance>: Update.
+       <m_iter>: Change type.
+       <m_end>: New field.
+       (struct tui_source_windows) <begin, end>: Update.
+       * tui/tui-layout.c (tui_windows): New global.
+       (tui_apply_current_layout): Clear tui_windows.
+       (tui_layout_window::apply): Update tui_windows.
+       * tui/tui-data.h (tui_windows): Declare.
+       (all_tui_windows): Now inline function.
+       (class tui_window_iterator, struct all_tui_windows): Remove.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       PR tui/17850:
+       * tui/tui-win.c (tui_gen_win_info::max_width): New method.
+       * tui/tui-layout.h (class tui_layout_base) <get_sizes>: Add
+       "height" argument.
+       (class tui_layout_window) <get_sizes>: Likewise.
+       (class tui_layout_split) <tui_layout_split>: Add "vertical"
+       argument.
+       <get_sizes>: Add "height" argument.
+       <m_vertical>: New field.
+       * tui/tui-layout.c (tui_layout_split::clone): Update.
+       (tui_layout_split::get_sizes): Add "height" argument.
+       (tui_layout_split::adjust_size, tui_layout_split::apply): Update.
+       (tui_new_layout_command): Parse "-horizontal".
+       (_initialize_tui_layout): Update help string.
+       (tui_layout_split::specification): Add "-horizontal" when needed.
+       * tui/tui-layout.c (tui_layout_window::get_sizes): Add "height"
+       argument.
+       * tui/tui-data.h (struct tui_gen_win_info) <max_width, min_width>:
+       New methods.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-layout.h (enum tui_adjust_result): New.
+       (class tui_layout_base) <adjust_size>: Return tui_adjust_result.
+       (class tui_layout_window) <adjust_size>: Return
+       tui_adjust_result.  Rewrite.
+       (class tui_layout_split) <adjust_size>: Return tui_adjust_result.
+       * tui/tui-layout.c (tui_layout_split::adjust_size): Update.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-layout.h (class tui_layout_split) <add_split>: Change
+       parameter and return types.
+       (class tui_layout_base) <specification>: Add "depth".
+       (class tui_layout_window) <specification>: Add "depth".
+       (class tui_layout_split) <specification>: Add "depth".
+       * tui/tui-layout.c (tui_layout_split::add_split): Change parameter
+       and return types.
+       (tui_new_layout_command): Parse sub-layouts.
+       (_initialize_tui_layout): Update help string.
+       (tui_layout_window::specification): Add "depth".
+       (add_layout_command): Update.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * NEWS: Add "tui new-layout" item.
+       * tui/tui-layout.c (add_layout_command): Return cmd_list_element.
+       Add new-layout command to help text.
+       (validate_window_name): New function.
+       (tui_new_layout_command): New function.
+       (_initialize_tui_layout): Register "new-layout".
+       (tui_layout_window::specification): New method.
+       (tui_layout_window::specification): New method.
+       * tui/tui-layout.h (class tui_layout_base) <specification>: New
+       method.
+       (class tui_layout_window) <specification>: New method.
+       (class tui_layout_split) <specification>: New method.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui.c (tui_enable): Call tui_set_initial_layout.
+       * tui/tui-win.c (window_name_completer): Update comment.
+       * tui/tui-layout.h (class tui_layout_base) <replace_window>:
+       Declare method.
+       (class tui_layout_window) <replace_window>: Likewise.
+       (class tui_layout_split) <replace_window>: Likewise.
+       (tui_set_layout): Don't declare.
+       (tui_set_initial_layout): Declare function.
+       * tui/tui-layout.c (layouts, applied_skeleton, src_regs_layout)
+       (asm_regs_layout): New globals.
+       (tui_current_layout, show_layout): Remove.
+       (tui_set_layout, tui_add_win_to_layout): Rewrite.
+       (find_layout, tui_apply_layout): New function.
+       (layout_completer): Remove.
+       (tui_next_layout): Reimplement.
+       (tui_next_layout_command): New function.
+       (tui_set_initial_layout, tui_prev_layout_command): New functions.
+       (tui_regs_layout): Reimplement.
+       (tui_regs_layout_command): New function.
+       (extract_display_start_addr): Rewrite.
+       (next_layout, prev_layout): Remove.
+       (tui_layout_window::replace_window): New method.
+       (tui_layout_split::replace_window): New method.
+       (destroy_layout): New function.
+       (layout_list): New global.
+       (add_layout_command): New function.
+       (initialize_layouts): Update.
+       (tui_layout_command): New function.
+       (_initialize_tui_layout): Install "layout" commands.
+       * tui/tui-data.h (enum tui_layout_type): Remove.
+       (tui_current_layout): Don't declare.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-regs.c (tui_reg_layout): Remove.
+       (tui_reg_command): Use tui_regs_layout.
+       * tui/tui-layout.h (tui_reg_command): Declare.
+       * tui/tui-layout.c (tui_reg_command): New function.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui.c (tui_rl_delete_other_windows): Call
+       tui_remove_some_windows.
+       * tui/tui-layout.h (class tui_layout_base) <remove_windows>:
+       Declare method.
+       (class tui_layout_window) <remove_windows>: New method.
+       (class tui_layout_split) <remove_windows>: Declare.
+       (tui_remove_some_windows): Declare.
+       * tui/tui-layout.c (tui_remove_some_windows): New function.
+       (tui_layout_split::remove_windows): New method.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui.c (tui_rl_change_windows): Call tui_next_layout.
+       * tui/tui-layout.h (tui_next_layout): Declare.
+       * tui/tui-layout.c (tui_next_layout): New function.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-regs.c (tui_data_window::display_registers_from): Use
+       correct coordinates.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-layout.h (tui_add_win_to_layout): Add comment.
+       * tui/tui-layout.c (tui_add_win_to_layout): Add assert.  Remove
+       DATA_WIN case.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * tui/tui-disasm.c (tui_get_low_disassembly_address): Use
+       TUI_DISASM_WIN, not tui_win_list.
+
+2020-02-22  Tom Tromey  <tom@tromey.com>
+
+       * valprint.c (generic_val_print_enum_1)
+       (val_print_type_code_flags): Style member names.
+       * rust-lang.c (val_print_struct, rust_print_enum)
+       (rust_print_struct_def, rust_internal_print_type): Style member
+       names.
+       * p-valprint.c (pascal_object_print_value_fields): Style member
+       names.  Only call fprintf_symbol_filtered for static members.
+       * m2-typeprint.c (m2_record_fields, m2_enum): Style member names.
+       * f-valprint.c (f_val_print): Style member names.
+       * f-typeprint.c (f_type_print_base): Style member names.
+       * cp-valprint.c (cp_print_value_fields): Style member names.  Only
+       call fprintf_symbol_filtered for static members.
+       (cp_print_class_member): Style member names.
+       * c-typeprint.c (c_print_type_1, c_type_print_base_1): Style
+       member names.
+       * ada-valprint.c (ada_print_scalar): Style enum names.
+       (ada_val_print_enum): Likewise.
+       * ada-typeprint.c (print_enum_type): Style enum names.
+
+2020-02-21  Tom Tromey  <tom@tromey.com>
+
+       * psympriv.h (struct partial_symtab): Update comment.
+
+2020-02-21  Tom Tromey  <tromey@adacore.com>
+
+       * mips-tdep.h (mips_pc_is_mips16, mips_pc_is_micromips): Parameter
+       type is CORE_ADDR.
+
+2020-02-21  Tom de Vries  <tdevries@suse.de>
+
+       PR gdb/25534
+       * psymtab.c (partial_symtab::read_dependencies): Don't read dependency
+       if dependencies[i]->user != NULL.
+
+2020-02-21  Ali Tamur  <tamur@google.com>
+
+       * dwarf2/read.c (dwarf2_name): Add null check.
+
+2020-02-20  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/read.c (dwarf2_find_containing_comp_unit): Use ">", not
+       ">=", in binary search.
+       (dwarf2_find_containing_comp_unit): New overload.
+       (run_test): New self-test.
+       (_initialize_dwarf2_read): Register new test.
+
+2020-02-20  Nelson Chu  <nelson.chu@sifive.com>
+
+       * riscv-tdep.c: Updated since the DECLARE_CSR is changed.
+       * riscv-tdep.h: Likewise.
+       * features/riscv/rebuild-csr-xml.sh: Generate the 64bit-csr.xml without
+       rv32-only CSR.
+       * features/riscv/64bit-csr.xml: Regenerated.
+
+2020-02-20  Sergio Durigan Junior  <sergiodj@redhat.com>
+           Tom Tromey  <tom@tromey.com>
+
+       * utils.c (fputs_maybe_filtered): Call 'stream->puts' instead
+       of 'fputc_unfiltered'.
+       (putchar_unfiltered): Call 'fputc_unfiltered'.
+       (fputc_unfiltered): Call 'fputs_unfiltered'.
+
+2020-02-20  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * config.in: Regenerate.
+       * configure: Regenerate.
+       * configure.ac: Add --with-python-libdir option.
+       * main.c: Use WITH_PYTHON_LIBDIR.
+
+2020-02-19  Tom Tromey  <tom@tromey.com>
+
+       * symtab.c (general_symbol_info::compute_and_set_names): Use
+       obstack_strndup.  Simplify call to symbol_set_demangled_name.
+
+2020-02-19  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (allocate_signatured_type_table,
+       allocate_dwo_unit_table, allocate_type_unit_groups_table,
+       allocate_dwo_file_hash_table, allocate_dwp_loaded_cutus_table):
+       Remove objfile parameter, update all callers.
+
+2020-02-19  Doug Evans  <dje@google.com>
+
+       PR rust/25535
+       * rust-lang.c (rust_print_enum): Apply embedded_offset to
+       rust_enum_variant calculation.
+
+2020-02-19  Tom Tromey  <tromey@adacore.com>
+
+       * mips-tdep.h (mips_pc_is_mips): Parameter type is CORE_ADDR.
+
+2020-02-19  Tom Tromey  <tromey@adacore.com>
+
+       * ada-lang.c (cache_symbol): Use obstack_strdup.
+
+2020-02-19  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * configure: Regenerate.
+
+2020-02-19  Tom Tromey  <tromey@adacore.com>
+
+       * python/python.c (do_start_initialization): Use XNEWVEC.  Remove
+       NULL check.
+
+2020-02-19  Maciej W. Rozycki  <macro@wdc.com>
+
+       * NEWS: Mention RISC-V GNU/Linux GDBserver support.
+
 2020-02-19  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * arch/riscv.c (struct riscv_gdbarch_features_hasher): Only define
This page took 0.03084 seconds and 4 git commands to generate.