+2020-07-22 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.c (jiter_objfile_data::~jiter_objfile_data): Remove some
+ checks.
+ (jit_read_descriptor): Remove NULL check.
+ (jit_event_handler): Add an assertion.
+
+2020-07-22 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.h (struct jit_objfile_data): Split into...
+ (struct jiter_objfile_data): ... this ...
+ (struct jited_objfile_data): ... and this.
+ * objfiles.h (struct objfile) <jit_data>: Remove.
+ <jiter_data, jited_data>: New fields.
+ * jit.c (jit_objfile_data::~jit_objfile_data): Rename to ...
+ (jiter_objfile_data::~jiter_objfile_data): ... this.
+ (get_jit_objfile_data): Rename to ...
+ (get_jiter_objfile_data): ... this.
+ (add_objfile_entry): Update.
+ (jit_read_descriptor): Use get_jiter_objfile_data.
+ (jit_find_objf_with_entry_addr): Use objfile's jited_data field.
+ (jit_breakpoint_re_set_internal): Use get_jiter_objfile_data.
+ (jit_inferior_exit_hook): Use objfile's jited_data field.
+
+2020-07-22 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.h: Forward-declare `struct minimal_symbol`.
+ (struct jit_objfile_data): Migrate to here from jit.c; also add a
+ constructor, destructor, and an objfile* field.
+ * jit.c (jit_objfile_data): Remove.
+ (struct jit_objfile_data): Migrate from here to jit.h.
+ (jit_objfile_data::~jit_objfile_data): New destructor
+ implementation with code moved from free_objfile_data.
+ (free_objfile_data): Delete.
+ (get_jit_objfile_data): Update to use the jit_data field of objfile.
+ (jit_find_objf_with_entry_addr): Ditto.
+ (jit_inferior_exit_hook): Ditto.
+ (_initialize_jit): Remove the call to
+ register_objfile_data_with_cleanup.
+ * objfiles.h (struct objfile) <jit_data>: New field.
+
+2020-07-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ * jit.h: Forward-declare `struct objfile`.
+ (jit_event_handler): Add a second parameter, the JITer objfile.
+ * jit.c (jit_read_descriptor): Change the signature to take the
+ JITer objfile as an argument instead of the jit_program_space_data.
+ (jit_inferior_init): Update the call to jit_read_descriptor.
+ (jit_event_handler): Use the new JITer objfile argument when calling
+ jit_read_descriptor.
+ * breakpoint.c (handle_jit_event): Update the call to
+ jit_event_handler to pass the JITer objfile.
+
+2020-07-21 John Baldwin <jhb@FreeBSD.org>
+
+ * gdbarch.c: Regenerate.
+ * gdbarch.h: Regenerate.
+ * gdbarch.sh (handle_segmentation_fault): Remove method.
+ * infrun.c (handle_segmentation_fault): Remove.
+ (print_signal_received_reason): Remove call to
+ handle_segmentation_fault.
+
+2020-07-21 John Baldwin <jhb@FreeBSD.org>
+
+ * sparc64-linux-tdep.c (sparc64_linux_handle_segmentation_fault):
+ Rename to sparc64_linux_report_signal_info and add siggnal
+ argument.
+ (sparc64_linux_init_abi): Use sparc64_linux_report_signal_info
+ instead of sparc64_linux_handle_segmentation_fault.
+
+2020-07-21 John Baldwin <jhb@FreeBSD.org>
+
+ * amd64-linux-tdep.c (amd64_linux_init_abi_common): Use
+ i386_linux_report_signal_info instead of
+ i386_linux_handle_segmentation_fault.
+ * i386-linux-tdep.c (i386_linux_handle_segmentation_fault): Rename
+ to i386_linux_report_signal_info and add siggnal argument.
+ (i386_linux_init_abi): Use i386_linux_report_signal_info instead
+ of i386_linux_handle_segmentation_fault.
+ * i386-linux-tdep.h (i386_linux_handle_segmentation_fault): Rename
+ to i386_linux_report_signal_info and add siggnal argument.
+
+2020-07-21 John Baldwin <jhb@FreeBSD.org>
+
+ * corelow.c (core_target_open): Invoke gdbarch report_signal_info
+ hook if present.
+
+2020-07-21 John Baldwin <jhb@FreeBSD.org>
+
+ * gdbarch.c: Regenerate.
+ * gdbarch.h: Regenerate.
+ * gdbarch.sh (report_signal_info): New method.
+ * infrun.c (print_signal_received_reason): Invoke gdbarch
+ report_signal_info hook if present.
+
+2020-07-21 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * python/py-registers.c : Add 'unordered_map' include.
+ (gdbpy_new_reggroup): Renamed to...
+ (gdbpy_get_reggroup): ...this. Update to only create register
+ group descriptors when needed.
+ (gdbpy_reggroup_iter_next): Update.
+
+2020-07-21 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * python/py-registers.c (gdbpy_register_object_data): New static
+ global.
+ (gdbpy_register_object_data_init): New function.
+ (gdbpy_new_register_descriptor): Renamed to...
+ (gdbpy_get_register_descriptor): ...this, and update to reuse
+ existing register descriptors where possible.
+ (gdbpy_register_descriptor_iter_next): Update.
+ (gdbpy_initialize_registers): Register new gdbarch data.
+
+2020-07-21 Simon Marchi <simon.marchi@efficios.com>
+
+ * linux-nat.c (stopped_pids): Make static.
+
+2020-07-21 Simon Marchi <simon.marchi@polymtl.ca>
+
+ PR ada/26235
+ * gdbtypes.c (ada_discrete_type_low_bound,
+ ada_discrete_type_high_bound): Handle undefined bounds.
+
+2020-07-21 Kamil Rytarowski <n54@gmx.com>
+
+ * nbsd-nat.h (nbsd_nat_target::supports_multi_process): New
+ declaration.
+ * nbsd-nat.c (nbsd_nat_target::supports_multi_process): New
+ function.
+
+2020-07-20 John Baldwin <jhb@FreeBSD.org>
+
+ * fbsd-tdep.c (fbsd_skip_solib_resolver): New function.
+ (fbsd_init_abi): Install gdbarch "skip_solib_resolver" method.
+ * fbsd-tdep.h (fbsd_skip_solib_resolver): New prototype.
+ * mips-fbsd-tdep.c (mips_fbsd_skip_solib_resolver): New function.
+ (mips_fbsd_init_abi): Install gdbarch "skip_solib_resolver"
+ method.
+
+2020-07-20 Ludovic Courtès <ludo@gnu.org>
+
+ * guile/scm-math.c (vlscm_integer_fits_p): Use 'uintmax_t'
+ and 'intmax_t' instead of 'scm_t_uintmax' and 'scm_t_intmax',
+ which are deprecated in Guile 3.0.
+ * configure.ac (try_guile_versions): Add "guile-3.0".
+ * configure (try_guile_versions): Regenerate.
+ * NEWS: Update entry.
+
+2020-07-20 Ludovic Courtès <ludo@gnu.org>
+ Doug Evans <dje@google.com>
+
+ PR gdb/21104
+ * guile/scm-ports.c (USING_GUILE_BEFORE_2_2): New macro.
+ (ioscm_memory_port)[read_buf_size, write_buf_size]: Wrap in #if
+ USING_GUILE_BEFORE_2_2.
+ (stdio_port_desc, memory_port_desc) [!USING_GUILE_BEFORE_2_2]:
+ Change type to 'scm_t_port_type *'.
+ (natural_buffer_size) [!USING_GUILE_BEFORE_2_2]: New variable.
+ (ioscm_open_port) [USING_GUILE_BEFORE_2_2]: Add 'stream'
+ parameter and honor it. Update callers.
+ (ioscm_open_port) [!USING_GUILE_BEFORE_2_2]: New function.
+ (ioscm_read_from_port, ioscm_write) [!USING_GUILE_BEFORE_2_2]: New
+ functions.
+ (ioscm_fill_input, ioscm_input_waiting, ioscm_flush): Wrap in #if
+ USING_GUILE_BEFORE_2_2.
+ (ioscm_init_gdb_stdio_port) [!USING_GUILE_BEFORE_2_2]: Use
+ 'ioscm_read_from_port'. Call 'scm_set_port_read_wait_fd'.
+ (ioscm_init_stdio_buffers) [!USING_GUILE_BEFORE_2_2]: New function.
+ (gdbscm_stdio_port_p) [!USING_GUILE_BEFORE_2_2]: Use 'SCM_PORTP'
+ and 'SCM_PORT_TYPE'.
+ (gdbscm_memory_port_end_input, gdbscm_memory_port_seek)
+ (ioscm_reinit_memory_port): Wrap in #if USING_GUILE_BEFORE_2_2.
+ (gdbscm_memory_port_read, gdbscm_memory_port_write)
+ (gdbscm_memory_port_seek, gdbscm_memory_port_close)
+ [!USING_GUILE_BEFORE_2_2]: New functions.
+ (gdbscm_memory_port_print): Remove use of 'SCM_PTOB_NAME'.
+ (ioscm_init_memory_port_type) [!USING_GUILE_BEFORE_2_2]: Use
+ 'gdbscm_memory_port_read'.
+ Wrap 'scm_set_port_end_input', 'scm_set_port_flush', and
+ 'scm_set_port_free' calls in #if USING_GUILE_BEFORE_2_2.
+ (gdbscm_get_natural_buffer_sizes) [!USING_GUILE_BEFORE_2_2]: New
+ function.
+ (ioscm_init_memory_port): Remove.
+ (ioscm_init_memory_port_stream): New function
+ (ioscm_init_memory_port_buffers) [USING_GUILE_BEFORE_2_2]: New
+ function.
+ (gdbscm_memory_port_read_buffer_size) [!USING_GUILE_BEFORE_2_2]:
+ Return scm_from_uint (0).
+ (gdbscm_set_memory_port_read_buffer_size_x)
+ [!USING_GUILE_BEFORE_2_2]: Call 'scm_setvbuf'.
+ (gdbscm_memory_port_write_buffer_size) [!USING_GUILE_BEFORE_2_2]:
+ Return scm_from_uint (0).
+ (gdbscm_set_memory_port_write_buffer_size_x)
+ [!USING_GUILE_BEFORE_2_2]: Call 'scm_setvbuf'.
+ * configure.ac (try_guile_versions): Add "guile-2.2".
+ * configure: Regenerate.
+ * NEWS: Add entry.
+
+2020-07-18 Tom Tromey <tom@tromey.com>
+
+ * linux-nat.c (linux_multi_process): Remove.
+ (linux_nat_target::supports_multi_process): Return true.
+
+2020-07-17 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * arch/riscv.c (riscv_tdesc_cache): Change map type.
+ (riscv_lookup_target_description): Return pointer out of
+ unique_ptr.
+ * target-descriptions.c (allocate_target_description): Add
+ comment.
+ (target_desc_deleter::operator()): Likewise.
+ * target-descriptions.h (struct target_desc_deleter): Moved to
+ gdbsupport/tdesc.h.
+ (target_desc_up): Likewise.
+
+2020-07-17 Tom Tromey <tromey@adacore.com>
+
+ * linux-nat.c (linux_nat_target::supports_non_stop)
+ (linux_nat_target::always_non_stop_p): Use "true".
+ (linux_nat_target::supports_disable_randomization): Use "true" and
+ "false".
+
+2020-07-16 Caroline Tice <cmtice@google.com>
+
+ * dwarf2/read.c (RNGLIST_HEADER_SIZE32) New constant definition.
+ (RNGLIST_HEADER_SIZE64): New constant definition.
+ (struct dwop_section_names): Add rnglists_dwo.
+ (dwop_section_names): Add .debug_rnglists.dwo, .zdebug_rnglists.dwo.
+ (struct loclist_header): Rename to 'loclists_rnglists_header'.
+ (struct dwo_sections): Add rnglists field.
+ (read_attribut_reprocess): Add tag parameter.
+ (dwarf2_ranges_read): Add tag parameter & remove forward function decl.
+ (cu_debug_rnglists_section): New function (decl & definition).
+ (dwarf2_locate_dwo_sections): Add code to read rnglists_dwo section.
+ (dwarf2_rnglists_process): Add a dwarf_tag parameter, for the kind of
+ die whose range is being checked; get rnglist section from
+ cu_debug_rnglists_section, to get from either objfile or dwo file as
+ appropriate. Add cases for DW_RLE_base_addressx,
+ DW_RLE_startx_length, DW_RLE_startx_endx. Also, update to only add
+ the base address to DW_RLE_offset_pairs (not to all ranges), moving
+ test inside if-condition and updating complaint message.
+ (dwarf2_ranges_process): Add dwarf tag parameter and pass it to
+ dwarf2_rnglists_process.
+ (dwarf2_ranges_read): Add dwarf tag parameter and pass it to
+ dwarf2_ranges_process.
+ (dwarf2_get_pc_bounds): Check for DW_FORM_rnglistx when setting
+ need_ranges_base and update comment appropriately. Also pass die tag
+ to dwarf2_ranges_read.
+ (dwarf2_record_block_ranges): Check for DW_FORM_rnglistx when setting
+ need_ranges_base and update comment appropriately. Also pass die tag
+ to dwarf2_ranges_process.
+ (read_full_die_1): Add code to read DW_AT_rnglists_base and assign to
+ cu->ranges_base. Also pass die tag to read_attribute_reprocess.
+ (partial_die_info::read): Check for DW_FORM_rnglistx when setting
+ need_ranges_base and update comment appropriately. Also pass die tag
+ to read_attribute_reprocess and dwarf2_ranges_read.
+ (read_loclist_header): Rename function to read_loclists_rnglists_header,
+ and update function comment appropriately.
+ (read_loclist_index): Call read_loclists_rnglists_header instead of
+ read_loclist_header.
+ (read_rnglist_index): New function.
+ (read_attribute_reprocess): Add tag parameter. Add code for
+ DW_FORM_rnglistx, passing tag to read_rnglist_index.
+ (read_attribute_value): Mark DW_FORM_rnglistx with need_reprocess.
+
+2020-07-15 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * f-typeprint.c (f_type_print_base): Allow for dynamic types not
+ being resolved.
+
+2020-07-14 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * arch-utils.c (show_architecture): Update formatting of messages.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (struct type) <bounds>: Handle array and string
+ types.
+ * ada-lang.c (assign_aggregate): Use type::bounds on
+ array/string type.
+ * c-typeprint.c (c_type_print_varspec_suffix): Likewise.
+ * c-varobj.c (c_number_of_children): Likewise.
+ (c_describe_child): Likewise.
+ * eval.c (evaluate_subexp_for_sizeof): Likewise.
+ * f-typeprint.c (f_type_print_varspec_suffix): Likewise.
+ (f_type_print_base): Likewise.
+ * f-valprint.c (f77_array_offset_tbl): Likewise.
+ (f77_get_upperbound): Likewise.
+ (f77_print_array_1): Likewise.
+ * guile/scm-type.c (gdbscm_type_range): Likewise.
+ * m2-typeprint.c (m2_array): Likewise.
+ (m2_is_long_set_of_type): Likewise.
+ * m2-valprint.c (get_long_set_bounds): Likewise.
+ * p-typeprint.c (pascal_type_print_varspec_prefix): Likewise.
+ * python/py-type.c (typy_range): Likewise.
+ * rust-lang.c (rust_internal_print_type): Likewise.
+ * type-stack.c (type_stack::follow_types): Likewise.
+ * valarith.c (value_subscripted_rvalue): Likewise.
+ * valops.c (value_cast): Likewise.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.c (TYPE_ARRAY_BIT_STRIDE): Remove. Update all
+ callers to use the equivalent accessor methods.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (struct range_bounds) <bit_stride>: New method.
+ (struct type) <bit_stride>: New method.
+ (TYPE_BIT_STRIDE): Remove.
+ * gdbtypes.c (update_static_array_size): Use type::bit_stride.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (TYPE_ARRAY_LOWER_BOUND_VALUE,
+ TYPE_ARRAY_UPPER_BOUND_VALUE): Remove. Update all
+ callers to use the equivalent accessor methods instead.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED,
+ TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED): Remove. Update all
+ callers to use the equivalent accessor methods instead.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (TYPE_LOW_BOUND_KIND,
+ TYPE_HIGH_BOUND_KIND): Remove. Update all callers
+ to use dynamic_prop::kind.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (TYPE_LOW_BOUND_UNDEFINED,
+ TYPE_HIGH_BOUND_UNDEFINED): Remove. Update all callers
+ to get the bound property's kind and check against
+ PROP_UNDEFINED.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (TYPE_LOW_BOUND, TYPE_HIGH_BOUND): Remove. Update
+ all callers to use type::range_bounds followed by
+ dynamic_prop::{low,high}.
+
+2020-07-12 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * gdbtypes.h (struct dynamic_prop) <kind, set_undefined,
+ const_val, set_const_val, baton, set_locexpr, set_loclist,
+ set_addr_offset, variant_parts, set_variant_parts,
+ original_type, set_original_type>: New methods.
+ <kind>: Rename to...
+ <m_kind>: ... this. Update all users to use the new methods
+ instead.
+ <data>: Rename to...
+ <m_data>: ... this. Update all users to use the new methods
+ instead.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.c (get_discrete_bounds): Return failure if
+ the range type's bounds are not both defined and constant
+ values.
+ (get_array_bounds): Update comment. Remove undefined bound check.
+
+2020-07-12 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * gdbtypes.h (TYPE_RANGE_DATA): Remove. Update callers to use
+ the type::bounds method directly.
+
+2020-07-12 Simon Marchi <simon.marchi@efficios.com>
+
+ * gdbtypes.h (struct type) <bounds, set_bounds>: New methods.
+ (TYPE_RANGE_DATA): Use type::bounds. Change all uses that
+ are used to set the range type's bounds to use set_bounds.
+
+2020-07-11 Philippe Waroquiers <philippe.waroquiers@skynet.be>
+
+ * exec.c (_initialize_exec): Update exec-file-mismatch help.
+
+2020-07-10 Pedro Alves <pedro@palves.net>
+
+ * gdbthread.h (inferior_ref): Define.
+ (scoped_restore_current_thread) <m_thread>: Now a thread_info_ref.
+ (scoped_restore_current_thread) <m_inf>: Now an inferior_ref.
+ * thread.c
+ (scoped_restore_current_thread::restore):
+ Adjust to gdb::ref_ptr.
+ (scoped_restore_current_thread::~scoped_restore_current_thread):
+ Remove manual decref handling.
+ (scoped_restore_current_thread::scoped_restore_current_thread):
+ Adjust to use
+ inferior_ref::new_reference/thread_info_ref::new_reference.
+ Incref the thread before calling get_frame_id instead of after.
+ Let TARGET_CLOSE_ERROR propagate.
+
+2020-07-10 Pedro Alves <pedro@palves.net>
+
+ * frame-tailcall.c (dwarf2_tailcall_sniffer_first): Only swallow
+ NO_ENTRY_VALUE_ERROR / MEMORY_ERROR / OPTIMIZED_OUT_ERROR /
+ NOT_AVAILABLE_ERROR.
+ * value.c (value_optimized_out): Only swallow MEMORY_ERROR /
+ OPTIMIZED_OUT_ERROR / NOT_AVAILABLE_ERROR.
+
+2020-07-10 Simon Marchi <simon.marchi@polymtl.ca>
+ Pedro Alves <pedro@palves.net>
+
+ PR gdb/26199
+ * infrun.c (threads_are_resumed_pending_p): Delete.
+ (do_target_wait): Remove threads_are_executing and
+ threads_are_resumed_pending_p checks from the inferior_matches
+ lambda. Update comments.
+
+2020-07-10 Pedro Alves <pedro@palves.net>
+
+ PR gdb/26199
+ * infrun.c (handle_no_resumed): Transfer terminal to inferior with
+ executing threads.
+
+2020-07-10 Pedro Alves <pedro@palves.net>
+
+ PR gdb/26199
+ * infrun.c (handle_no_resumed): Handle multiple targets.
+
+2020-07-10 Pedro Alves <pedro@palves.net>
+
+ PR gdb/26199
+ * infrun.c (prepare_to_wait): Check target_can_async_p instead of
+ target_is_async_p.
+
+2020-07-10 Pedro Alves <pedro@palves.net>
+
+ PR gdb/26199
+ * target.c (target_pass_ctrlc): Look at the inferior's non-exited
+ threads, not all threads.
+
+2020-07-10 Pedro Alves <pedro@palves.net>
+
+ PR gdb/26199
+ * remote.c (remote_target::open_1): Pass remote target pointer as
+ data to create_async_event_handler.
+ (remote_async_inferior_event_handler): Mark async event handler
+ before returning if the remote target still has either pending
+ events or unacknowledged notifications.
+
+2020-07-10 John Baldwin <jhb@FreeBSD.org>
+
+ * fbsd-nat.h (fbsd_nat_target::supports_multi_process): New
+ declaration.
+ * fbsd-nat.c (fbsd_nat_target::supports_multi_process): New
+ function.
+
+2020-07-09 John Baldwin <jhb@FreeBSD.org>
+
+ * inf-ptrace.c (inf_ptrace_target::wait): Don't compare against
+ inferior_ptid.
+
+2020-07-09 John Baldwin <jhb@FreeBSD.org>
+
+ * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_ARGC,
+ AT_FREEBSD_ARGV, AT_FREEBSD_ENVC, AT_FREEBSD_ENVV,
+ AT_FREEBSD_PS_STRINGS.
+
+2020-07-08 Hannes Domani <ssbssa@yahoo.de>
+
+ * auto-load.c (auto_load_objfile_script_1): Convert drive part
+ of debugfile path on Windows.
+
+2020-07-08 John Baldwin <jhb@FreeBSD.org>
+
+ * fbsd-nat.c (fbsd_nat_target::find_memory_regions): Rename 'obfd'
+ argument to 'data'.
+
+2020-07-08 Tom Tromey <tromey@adacore.com>
+
+ * ada-lang.c (ada_exception_message_1): Use read_memory.
+
+2020-07-06 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ PR python/22748
+ * dwarf2/frame-tailcall.c (dwarf2_tailcall_sniffer_first): Remove
+ special handling for inline frames.
+ * findvar.c (value_of_register_lazy): Skip inline frames when
+ creating lazy register values.
+ * frame.c (frame_id_computed_p): Delete definition.
+ * frame.h (frame_id_computed_p): Delete declaration.
+
+2020-07-06 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * NEWS: Mention additions to Python API.
+ * python/py-arch.c (archpy_register_groups): New function.
+ (arch_object_methods): Add 'register_groups' method.
+ * python/py-registers.c (reggroup_iterator_object): New struct.
+ (reggroup_object): New struct.
+ (gdbpy_new_reggroup): New function.
+ (gdbpy_reggroup_to_string): New function.
+ (gdbpy_reggroup_name): New function.
+ (gdbpy_reggroup_iter): New function.
+ (gdbpy_reggroup_iter_next): New function.
+ (gdbpy_new_reggroup_iterator): New function
+ (gdbpy_initialize_registers): Register new types.
+ (reggroup_iterator_object_type): Define new Python type.
+ (gdbpy_reggroup_getset): New static global.
+ (reggroup_object_type): Define new Python type.
+ * python/python-internal.h
+
+2020-07-06 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * Makefile.in (SUBDIR_PYTHON_SRCS): Add py-registers.c
+ * python/py-arch.c (archpy_registers): New function.
+ (arch_object_methods): Add 'registers' method.
+ * python/py-registers.c: New file.
+ * python/python-internal.h
+ (gdbpy_new_register_descriptor_iterator): Declare.
+ (gdbpy_initialize_registers): Declare.
+ * python/python.c (do_start_initialization): Call
+ gdbpy_initialize_registers.
+ * NEWS: Mention additions to the Python API.
+
+2020-07-06 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * NEWS: Mention new Python API method.
+ * python/py-unwind.c (pending_framepy_architecture): New function.
+ (pending_frame_object_methods): Add architecture method.
+
+2020-07-06 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * gdbarch.c: Regenerate.
+ * gdbarch.h: Regenerate.
+ * gdbarch.sh (deprecated_set_gdbarch_data): Delete.
+ (gdbarch_data): Use internal_error for the case where
+ deprecated_set_gdbarch_data was originally needed.
+ * ia64-libunwind-tdep.c (libunwind_descr_init): Update parameters,
+ and use passed in obstack.
+ (libunwind_frame_set_descr): Should no longer get back NULL from
+ gdbarch_data.
+ (_initialize_libunwind_frame): Register as a pre-init gdbarch data
+ type.
+ * user-regs.c (user_regs_init): Update parameters, and use passed
+ in obstack.
+ (user_reg_add): Should no longer get back NULL from gdbarch_data.
+ (_initialize_user_regs): Register as a pre-init gdbarch data type.
+
+2020-07-06 Tom de Vries <tdevries@suse.de>
+
+ * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Handle
+ End-Of-Sequence in lte_is_less_than.
+ * symtab.c (find_pc_sect_line): Revert change from commit 3d92a3e313
+ "gdb: Don't reorder line table entries too much when sorting".
+
+2020-07-06 Tom de Vries <tdevries@suse.de>
+
+ PR tui/26205
+ * tui/tui-win.c (tui_partial_win_by_name): Don't test for NULL name.
+
+2020-07-05 Tom de Vries <tdevries@suse.de>
+
+ PR build/26187
+ * inferior.h (struct infcall_suspend_state_deleter): If available, use
+ std::uncaught_exceptions instead of deprecated
+ std::uncaught_exception.
+
+2020-07-02 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * macroexp.h (macro_stringify): Return
+ gdb::unique_xmalloc_ptr<char>.
+ * macroexp.c (macro_stringify): Likewise.
+ * macrotab.c (fixup_definition): Update.
+
+2020-07-02 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * c-exp.y (scan_macro_expansion): Don't free `expansion`.
+ (lex_one_token): Update.
+ * macroexp.c (struct macro_buffer) <release>: Return
+ gdb::unique_xmalloc_ptr<char>.
+ (macro_stringify): Update.
+ (macro_expand): Update.
+ (macro_expand_next): Return gdb::unique_xmalloc_ptr<char>.
+ * macroexp.h (macro_expand_next): Likewise.
+
+2020-07-02 Simon Marchi <simon.marchi@efficios.com>
+
+ * macroexp.h (macro_lookup_ftype): Remove.
+ (macro_expand, macro_expand_once, macro_expand_next): Remove
+ lookup function parameters, add scope parameter.
+ * macroexp.c (scan, substitute_args, expand, maybe_expand,
+ macro_expand, macro_expand_once, macro_expand_next): Likewise.
+ * macroscope.h (standard_macro_lookup): Change parameter type
+ to macro_scope.
+ * macroscope.c (standard_macro_lookup): Likewise.
+ * c-exp.y (lex_one_token): Update.
+ * macrocmd.c (macro_expand_command): Likewise.
+ (macro_expand_once_command): Likewise.
+
+2020-07-02 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * inf-loop.c (inferior_event_handler): Remove client_data param.
+ * inf-loop.h (inferior_event_handler): Likewise.
+ * infcmd.c (step_1): Adjust.
+ * infrun.c (proceed): Adjust.
+ (fetch_inferior_event): Remove client_data param.
+ (infrun_async_inferior_event_handler): Adjust.
+ * infrun.h (fetch_inferior_event): Remove `void *` param.
+ * linux-nat.c (handle_target_event): Adjust.
+ * record-btrace.c (record_btrace_handle_async_inferior_event):
+ Adjust.
+ * record-full.c (record_full_async_inferior_event_handler):
+ Adjust.
+ * remote.c (remote_async_inferior_event_handler): Adjust.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-data.h (struct tui_win_info) <name>: Now pure virtual.
+ * tui/tui-stack.h (struct tui_locator_window) <name>: New method.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-wingeneral.c (tui_win_info::refresh_window): Move from
+ tui_gen_win_info.
+ (tui_win_info::make_window): Merge with
+ tui_gen_win_info::make_window.
+ (tui_win_info::make_visible): Move from tui_gen_win_info.
+ * tui/tui-win.c (tui_win_info::max_width): Move from
+ tui_gen_win_info.
+ * tui/tui-layout.h (class tui_layout_window) <m_window>: Change
+ type.
+ <window_factory>: Likewise.
+ * tui/tui-layout.c (tui_win_info::resize): Move from
+ tui_gen_win_info.
+ (make_standard_window): Change return type.
+ (get_locator_window, tui_get_window_by_name): Likewise.
+ (tui_layout_window::apply): Remove a cast.
+ * tui/tui-data.h (MIN_WIN_HEIGHT): Move earlier.
+ (struct tui_win_info): Merge with tui_gen_win_info.
+ (struct tui_gen_win_info): Remove.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-stack.h (struct tui_locator_window): Derive from
+ tui_win_info.
+ <do_scroll_horizontal, do_scroll_vertical>: New methods.
+ <can_box>: New method.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-stack.h (struct tui_locator_window): Remove body.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-regs.c (tui_data_window::display_registers_from)
+ (tui_data_window::display_registers_from)
+ (tui_data_window::first_data_item_displayed)
+ (tui_data_window::delete_data_content_windows): Update.
+ (tui_data_window::refresh_window, tui_data_window::no_refresh):
+ Remove.
+ (tui_data_window::check_register_values): Update.
+ (tui_data_item_window::rerender): Add parameters. Update.
+ (tui_data_item_window::refresh_window): Remove.
+ * tui/tui-data.h (struct tui_gen_win_info) <no_refresh>: No longer
+ virtual.
+ * tui/tui-regs.h (struct tui_data_item_window): Don't derive from
+ tui_gen_win_info.
+ <refresh_window, max_height, min_height>: Remove.
+ <rerender>: Add parameters.
+ <x, y, visible>: New members.
+ (struct tui_data_window) <refresh_window, no_refresh>: Remove.
+ <m_item_width>: New member.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-regs.c (tui_data_window::show_register_group)
+ (tui_data_window::check_register_values): Update.
+ * tui/tui-regs.h (struct tui_data_item_window) <regno>: Rename
+ from item_no.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-regs.c (tui_data_window::show_register_group): Remove
+ useless "if".
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-regs.c (tui_data_window::show_register_group): Update.
+ * tui/tui-regs.h (struct tui_data_item_window) <name>: Remove.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-stack.c (SINGLE_KEY): Move from tui-data.h
+ * tui/tui-winsource.h (enum tui_line_or_address_kind)
+ (struct tui_line_or_address): Move from tui-data.h.
+ * tui/tui-win.c (DEFAULT_TAB_LEN): Move from tui-data.h.
+ * tui/tui-data.h (DEFAULT_TAB_LEN): Move to tui-win.c.
+ (tui_cmd_window, tui_source_window_base, tui_source_window)
+ (tui_disasm_window): Don't declare.
+ (enum tui_line_or_address_kind, struct tui_line_or_address): Move
+ to tui-winsource.h.
+ (SINGLE_KEY): Move to tui-stack.c.
+
+2020-07-01 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-regs.h (struct tui_data_item_window) <content>: Now a
+ std::string.
+ * tui/tui-regs.c (class tab_expansion_file): New.
+ (tab_expansion_file::write): New method.
+ (tui_register_format): Change return type. Use
+ tab_expansion_file.
+ (tui_get_register, tui_data_window::display_registers_from)
+ (tui_data_item_window::rerender): Update.
+ * tui/tui-io.h (tui_expand_tabs): Don't declare.
+ * tui/tui-io.c (tui_expand_tabs): Remove.
+
2020-07-01 Tom Tromey <tom@tromey.com>
* tui/tui-regs.c (tui_reggroup_completer): Use complete_on_enum.