Add horizontal splitting to TUI layout
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 5b705632af3d45f993f98725d1e5345a435d2310..83293187444ff6179a32574e2fa0c5a657093055 100644 (file)
@@ -1,3 +1,439 @@
+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
+       if GDBSERVER is not defined.
+       (riscv_tdesc_cache): Likewise, also store const target_desc.
+       (STATIC_IN_GDB): Define.
+       (riscv_create_target_description): Update declaration with
+       STATIC_IN_GDB.
+       (riscv_lookup_target_description): New function, only define if
+       GDBSERVER is not defined.
+       * arch/riscv.h (riscv_create_target_description): Declare only
+       when GDBSERVER is defined.
+       (riscv_lookup_target_description): New declaration when GDBSERVER
+       is not defined.
+       * nat/riscv-linux-tdesc.c (riscv_linux_read_description): Rename to...
+       (riscv_linux_read_features): ...this, and return
+       riscv_gdbarch_features instead of target_desc.
+       * nat/riscv-linux-tdesc.h: Include 'arch/riscv.h'.
+       (riscv_linux_read_description): Rename to...
+       (riscv_linux_read_features): ...this.
+       * riscv-linux-nat.c (riscv_linux_nat_target::read_description):
+       Update to use riscv_gdbarch_features and
+       riscv_lookup_target_description.
+       * riscv-tdep.c (riscv_find_default_target_description): Use
+       riscv_lookup_target_description instead of
+       riscv_create_target_description.
+
+2020-02-18  Simon Marchi  <simon.marchi@efficios.com>
+
+       * valprint.c (generic_val_print_enum_1): When printing a flag
+       enum with value 0 and there is no enumerator with value 0, print
+       just "0" instead of "(unknown: 0x0)".
+
+2020-02-18  Simon Marchi  <simon.marchi@efficios.com>
+
+       * valprint.c (generic_val_print_enum_1): Print unknown part of
+       flag enum in hex.
+
+2020-02-18  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (update_enumeration_type_from_children): Allow
+       flag enums to contain duplicate enumerators.
+       * valprint.c (generic_val_print_enum_1): Update comment.
+
+2020-02-18  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c: Include "count-one-bits.h".
+       (update_enumeration_type_from_children): If an enumerator has
+       multiple bits set, don't treat the enumeration as a "flag enum".
+       * valprint.c (generic_val_print_enum_1): Assert that enumerators
+       of flag enums have 0 or 1 bit set.
+
+2020-02-18  Bernd Edlinger  <bernd.edlinger@hotmail.de>
+
+       * aarch64-tdep.c (aarch64_displaced_step_copy_insn): Use an explicit
+       conversion.
+       * amd64-tdep.c (amd64_displaced_step_copy_insn): Likewise.
+       * arm-linux-tdep.c (arm_linux_displaced_step_copy_insn): Likewise.
+       * i386-tdep.c (i386_displaced_step_copy_insn): Likewise.
+       * rs6000-tdep.c (ppc_displaced_step_copy_insn): Likewise.
+       * s390-tdep.c (s390_displaced_step_copy_insn): Likewise.
+
+2020-02-18  Simon Marchi  <simon.marchi@efficios.com>
+
+       * MAINTAINERS: Change palmer@sifive.com to palmer@dabbelt.com.
+
+2020-02-14  Simon Marchi  <simon.marchi@efficios.com>
+
+       * aarch64-tdep.c (aarch64_displaced_step_copy_insn): Use
+       displaced_step_closure_up.
+       * aarch64-tdep.h (aarch64_displaced_step_copy_insn): Likewise.
+       (struct displaced_step_closure_up):
+       * amd64-tdep.c (amd64_displaced_step_copy_insn): Likewise.
+       * amd64-tdep.h (amd64_displaced_step_copy_insn): Likewise.
+       * arm-linux-tdep.c (arm_linux_displaced_step_copy_insn):
+       Likewise.
+       * gdbarch.sh (displaced_step_copy_insn): Likewise.
+       * gdbarch.c, gdbarch.h: Re-generate.
+       * i386-linux-tdep.c (i386_linux_displaced_step_copy_insn): Use
+       displaced_step_closure_up.
+       * i386-tdep.c (i386_displaced_step_copy_insn): Likewise.
+       * i386-tdep.h (i386_displaced_step_copy_insn): Likewise.
+       * infrun.h (displaced_step_closure_up): New type alias.
+       (struct displaced_step_inferior_state) <step_closure>: Change
+       type to displaced_step_closure_up.
+       * rs6000-tdep.c (ppc_displaced_step_copy_insn): Use
+       displaced_step_closure_up.
+       * s390-tdep.c (s390_displaced_step_copy_insn): Likewise.
+
+2020-02-14  Tom Tromey  <tom@tromey.com>
+
+       * minidebug.c (gnu_debug_key): New global.
+       (find_separate_debug_file_in_section): Use it.
+
+2020-02-14  Simon Marchi  <simon.marchi@efficios.com>
+
+       * gdbarch.sh (displaced_step_copy_insn): Change return type to an
+       std::unique_ptr.
+       * gdbarch.c: Re-generate.
+       * gdbarch.h: Re-generate.
+       * infrun.c (displaced_step_prepare_throw): Adjust to std::unique_ptr
+       change.
+       * aarch64-tdep.c (aarch64_displaced_step_copy_insn): Change return
+       type to std::unique_ptr.
+       * aarch64-tdep.h (aarch64_displaced_step_copy_insn): Likewise.
+       * amd64-tdep.c (amd64_displaced_step_copy_insn): Likewise.
+       * amd64-tdep.h (amd64_displaced_step_copy_insn): Likewise.
+       * arm-linux-tdep.c (arm_linux_displaced_step_copy_insn): Likewise.
+       * i386-linux-tdep.c (i386_linux_displaced_step_copy_insn): Likewise.
+       * i386-tdep.c (i386_displaced_step_copy_insn): Likewise.
+       * i386-tdep.h (i386_displaced_step_copy_insn): Likewise.
+       * rs6000-tdep.c (ppc_displaced_step_copy_insn): Likewise.
+       * s390-tdep.c (s390_displaced_step_copy_insn): Likewise.
+
+2020-02-14  Simon Marchi  <simon.marchi@efficios.com>
+
+       * infrun.c (get_displaced_step_closure_by_addr): Adjust to
+       std::unique_ptr.
+       (displaced_step_clear): Rename to...
+       (displaced_step_reset): ... this.  Just call displaced->reset ().
+       (displaced_step_clear_cleanup): Rename to...
+       (displaced_step_reset_cleanup): ... this.
+       (displaced_step_prepare_throw): Adjust to std::unique_ptr.
+       (displaced_step_fixup): Likewise.
+       (resume_1): Likewise.
+       (handle_inferior_event): Restore child's memory before calling
+       displaced_step_fixup on the parent.
+       * infrun.h (displaced_step_inferior_state) <reset>: Adjust
+       to std::unique_ptr.
+       <step_closure>: Change type to std::unique_ptr.
+
+2020-02-14  Simon Marchi  <simon.marchi@efficios.com>
+
+       * arm-tdep.c: Include count-one-bits.h.
+       (cleanup_block_store_pc): Use count_one_bits.
+       (cleanup_block_load_pc): Use count_one_bits.
+       (arm_copy_block_xfer): Use count_one_bits.
+       (thumb2_copy_block_xfer): Use count_one_bits.
+       (thumb_copy_pop_pc_16bit): Use count_one_bits.
+       * arch/arm-get-next-pcs.c: Include count-one-bits.h.
+       (thumb_get_next_pcs_raw): Use count_one_bits.
+       (arm_get_next_pcs_raw): Use count_one_bits_l.
+       * arch/arm.c (bitcount): Remove.
+       * arch/arm.h (bitcount): Remove.
+
+2020-02-14  Tom Tromey  <tromey@adacore.com>
+
+       * dwarf2/frame-tailcall.c (dwarf2_tailcall_sniffer_first):
+       Update.
+       * dwarf2/loc.h (call_site_find_chain): Return unique_xmalloc_ptr.
+       * dwarf2/loc.c (call_site_find_chain_1): Return
+       unique_xmalloc_ptr.
+       (call_site_find_chain): Likewise.
+
+2020-02-14  Richard Biener  <rguenther@suse.de>
+
+       * dwarf2/read.c (lnp_state_machine::handle_special_opcode): Apply CSE
+       on expression with division operators.
+
+2020-02-13  Alok Kumar Sharma  <AlokKumar.Sharma@amd.com>
+
+       * MAINTAINERS (Write After Approval): Adding myself.
+
+2020-02-12  Tom Tromey  <tom@tromey.com>
+
+       * event-loop.c (event_data, gdb_event, event_handler_func):
+       Remove.
+
+2020-02-12  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/frame.c (dwarf2_frame_bfd_data): New global.
+       (dwarf2_frame_objfile_data): Add comment.
+       (find_comp_unit, set_comp_unit): New functions.
+       (dwarf2_frame_find_fde): Use find_comp_unit.
+       (dwarf2_build_frame_info): Use set_comp_unit.
+
+2020-02-12  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/frame.c (struct comp_unit) <objfile>: Remove.
+       (comp_unit): Don't initialize objfile.
+       (execute_cfa_program): Add text_offset parameter.
+       (execute_cfa_program_test, dwarf2_fetch_cfa_info)
+       (dwarf2_frame_cache): Update.
+       (dwarf2_build_frame_info): Don't set "objfile" member.
+
+2020-02-12  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2/frame.c (decode_frame_entry_1): Add gdbarch parameter.
+       (decode_frame_entry): Likewise.
+       (dwarf2_build_frame_info): Update.
+
 2020-02-12  Tom Tromey  <tom@tromey.com>
 
        * dwarf2/frame.c (struct comp_unit) <obstack>: New member.
This page took 0.029586 seconds and 4 git commands to generate.