2020-08-17 Tom de Vries PR gdb/26393 * gdbtypes.c (dump_dynamic_prop): New function. (recursive_dump_type): Use dump_dynamic_prop for TYPE_CODE_RANGE. 2020-08-15 Tom de Vries PR backtrace/26390 * stack.c (print_frame_args): Temporarily set the selected frame to FRAME while printing the frame's arguments. 2020-08-14 Pedro Franco de Carvalho PR breakpoints/26385 * ppc-linux-nat.c (ppc_linux_nat_target::low_prepare_to_resume): Always clear watchpoint with PTRACE_SET_DEBUGREG. 2020-08-14 Pedro Franco de Carvalho * ppc-linux-nat.c (ppc_linux_dreg_interface::detect) (ppc_linux_nat_target::low_prepare_to_resume): Use ptrace () < 0 and >= to check return value instead of == -1 and != -1. 2020-08-14 Simon Marchi * utils.h (class gdb_argv) : New method. * utils.c (gdb_argv_as_array_view_test): New. (_initialize_utils): Register selftest. * maint.c (maintenance_selftest): Use the new method. 2020-08-13 Kamil Rytarowski * target.h (supports_dumpcore, dumpcore): New function declarations. * target.c (supports_dumpcore, dumpcore): New functions. * target-delegates.c: Rebuild. * gcore.c (gcore_command): Use target_supports_dumpcore () and target_dumpcore (). 2020-08-13 Aaron Merey * debuginfod-support.c: Replace global variables with user_data. 2020-08-13 Simon Marchi * maint.c (maintenance_selftest): Split args and pass array_view to run_tests. 2020-08-12 Luis Machado * value.c (check_type_length_before_alloc): Use ULONGEST to store a type's length. Use %s and pulongest to print the length. 2020-08-12 Pedro Alves * NEWS: Move "Multi-target debugging support" item to the "Changes since GDB 9" section. 2020-08-12 Pedro Alves PR gdb/26336 * progspace.c (program_space::remove_objfile): Invalidate the frame cache. 2020-08-11 Tom de Vries * MAINTAINERS: Mark ms1 as deleted. 2020-08-10 Luis Machado PR gdb/26310 * aarch64-tdep.c (aarch64_analyze_prologue): Track use of SP/FP and act accordingly. (aarch64_analyze_prologue_test): Add more unit tests to exercise movz/str/stur/stp skipping behavior. 2020-08-10 Luis Machado * nat/aarch64-sve-linux-sigcontext.h (SVE_PT_REGS_OFFSET): Use struct user_sve_header instead of struct sve_context. 2020-08-09 Simon Marchi * read.h (dwarf2_fetch_die_loc_sect_off, dwarf2_fetch_die_loc_cu_off): Replace function pointer + `void *` parameter with function_view. * read.c (dwarf2_fetch_die_loc_sect_off, dwarf2_fetch_die_loc_cu_off): Likewise. * loc.c (get_frame_pc_for_per_cu_dwarf_call): Remove. (per_cu_dwarf_call): Adjust. (get_frame_address_in_block_wrapper): Remove. (indirect_synthetic_pointer): Adjust. (get_ax_pc): Remove. (dwarf2_compile_expr_to_ax): Adjust. 2020-08-08 Tom de Vries PR build/26344 * arch/riscv.c (riscv_lookup_target_description): Use an explicit constructor. * regcache.c (get_thread_arch_aspace_regcache): Same. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target::set_base_thread_from_ravenscar_task): New method. (ravenscar_thread_target::wait): Check runtime_initialized. (ravenscar_thread_target::prepare_to_store) (ravenscar_thread_target::stopped_by_sw_breakpoint) (ravenscar_thread_target::stopped_by_hw_breakpoint) (ravenscar_thread_target::stopped_by_watchpoint) (ravenscar_thread_target::stopped_data_address) (ravenscar_thread_target::core_of_thread): Use scoped_restore_current_thread and set_base_thread_from_ravenscar_task. 2020-08-07 Tom Tromey * ravenscar-thread.c (update_thread_list): Set inferior_ptid. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target::wait): Call update_inferior_ptid before update_thread_list. (temporarily_change_regcache_ptid): New class. (ravenscar_thread_target::fetch_registers) (ravenscar_thread_target::store_registers) (ravenscar_thread_target::prepare_to_store): Use base thread when forwarding operation. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target::resume): Handle "is_pid" case. 2020-08-07 Tom Tromey * ravenscar-thread.c (xfer_partial, enable_btrace, add_thread): New methods. (ravenscar_thread_target::get_thread_base_cpu): Check m_cpu_map first. (ravenscar_thread_target::add_thread): Rename from ravenscar_add_thread. (ravenscar_thread_target::update_thread_list): Use a lambda. (ravenscar_thread_target::xfer_partial): New method. 2020-08-07 Tom Tromey * ada-lang.h (ada_task_list_iterator_ftype): Now a gdb::function_view. (iterate_over_live_ada_tasks): Change type of argument. * ada-tasks.c (iterate_over_live_ada_tasks): Change type of argument. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target) : Remove. (ravenscar_thread_target::extra_thread_info): Remove. (ravenscar_thread_target::pid_to_str): Mention Ravenscar in result; defer to target beneath for non-Ravenscar threads. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target) : Now methods. : New member. (ravenscar_thread_target::get_thread_base_cpu): Rename from ravenscar_get_thread_base_cpu. Check m_cpu_map. (ravenscar_thread_target::task_is_currently_active): Update. (ravenscar_thread_target::get_base_thread_from_ravenscar_task): Now a method. (ravenscar_thread_target::add_active_thread): Put initial thread into the m_cpu_map. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target::wait): Return event_ptid. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target::wait): Check runtime_initialized. 2020-08-07 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target): Don't call add_active_thread. (ravenscar_thread_target::add_active_thread): Now public. (ravenscar_inferior_created): Call add_active_thread after pushing the target. 2020-08-07 Simon Marchi * regcache.c (ptid_regcache_map): New type. (target_ptid_regcache_map): New type. (regcaches): Change type to target_ptid_regcache_map. (get_thread_arch_aspace_regcache): Update to regcaches' new type. (regcache_thread_ptid_changed): Likewise. (registers_changed_ptid): Likewise. (regcaches_size): Likewise. (regcaches_test): Update. (regcache_thread_ptid_changed): Update. * regcache.h (regcache_up): New type. * gdbsupport/ptid.h (hash_ptid): New struct. 2020-08-07 Simon Marchi * observable.h (thread_ptid_changed): Add parameter `process_stratum_target *`. * infrun.c (infrun_thread_ptid_changed): Add parameter `process_stratum_target *` and use it. (selftests): New namespace. (infrun_thread_ptid_changed): New function. (_initialize_infrun): Register selftest. * regcache.c (regcache_thread_ptid_changed): Add parameter `process_stratum_target *` and use it. (regcache_thread_ptid_changed): New function. (_initialize_regcache): Register selftest. * thread.c (thread_change_ptid): Pass target to thread_ptid_changed observable. 2020-08-06 Caroline Tice * dwarf2/read.c (struct dwo_file): Update comment on 'sections' field. (struct dwp_sections): Update field comments. Add loclists and rnglists fields. (struct virtual_v2_dwo_sections): Rename struct to 'virtual_v2_or_v5_dwo_sections'; update comments at top of struct; add size & offset fields for loclists and rnglists. (struct dwp_hash_table): Add a 'v5' struct field to the union section. (create_debug_type_hash_table): Add 'DW_UT_split_type' to the check for skipping dummy type units. (create_dwp_hash_table): Update the large comment above the function to discuss Version 5 DWP files as well, with references. Update all the version checks in the function to check for version 5 as well. Add new section at the end to create dwp hash table for version 5. (create_dwp_v2_section): Rename function to 'create_dwp_v2_or_v5_section'. Update function comment appropriately. Add V5 to error message text. (create_dwo_unit_in_dwp_v2): Change calls to create_dwp_v2_section into calls to create_dwp_v2_or_v5_section. (create_dwo_unit_in_dwp_v5): New function. (lookup_dwo_unit_in_dwp): Update conditional statement to explicitly check for version2; add else clause to handle version 5. (open_and_init_dwo_file): Add code to check dwarf version & only call create_debug_types_hash_table (with sections.types) if version is not 5; else call create_debug_type_hash_table, with sections.info. (dwarf2_locate_v2_dwp_sections): Update function comment to mention version 5. (dwarf2_locate_v5_dwp_sections): New function. (open_and_init_dwp_file): Add else-if clause for version 5 to call bfd_map_over_sections with dwarf2_locate_v5_dwp_sections. 2020-08-06 Simon Marchi * regcache.h (class regcache): Remove friend registers_changed_ptid. : Remove. : Remove. * regcache.c (regcache::regcaches): Rename to... (regcaches): ... this. Make static. (get_thread_arch_aspace_regcache): Update. (regcache::regcache_thread_ptid_changed): Rename to... (regcache_thread_ptid_changed): ... this. Update. (class regcache_access): Remove. (regcaches_test): Update. (_initialize_regcache): Update. * sparc64-tdep.c, dwarf2/index-write.c, record-btrace.c: Include . 2020-08-06 Simon Marchi * regcache.h (class regcache) : Rename to... : ... this. Move doc here. * regcache.c (regcache::current_regcache) Rename to... (regcache::regcaches): ... this. Move doc to header. (get_thread_arch_aspace_regcache): Update. (regcache::regcache_thread_ptid_changed): Update. (registers_changed_ptid): Update. (class regcache_access) : Rename to... : ... this. (current_regcache_test): Rename to... (regcaches_test): ... this. (_initialize_regcache): Update. 2020-08-06 Victor Collod * amd64-tdep.c (amd64_analyze_prologue): Fix incorrect comment. 2020-08-05 Kevin Buettner * corelow.c (core_target::build_file_mappings): Don't output null pathname in warning. 2020-08-05 Simon Marchi * gdb.dwarf2/clztest.exp, gdb.dwarf2/dw2-common-block.exp, gdb.dwarf2/dw2-dup-frame.exp, gdb.dwarf2/dw2-reg-undefined.exp, gdb.dwarf2/dw2-single-line-discriminators.exp, dw2-undefined-ret-addr.exp: Pass nopie to compilation options. 2020-08-05 Tom Tromey PR rust/26197: * dwarf2/read.c (alloc_rust_variant): Handle univariant case. (quirk_rust_enum): Call alloc_rust_variant for univariant case. Fix off-by-one and type size errors in ordinary case. 2020-08-05 Tom de Vries * gdbtypes.c (type_not_allocated, type_not_associated): Use "prop->const_val () == 0" instead of "prop->const_val () != 0". 2020-08-04 Simon Marchi * frame.h (frame_id_p): Return bool. (frame_id_artificial_p): Return bool. (frame_id_eq): Return bool. (has_stack_frames): Return bool. (get_selected_frame): Fix typo in comment. (get_frame_pc_if_available): Return bool. (get_frame_address_in_block_if_available): Return bool. (get_frame_func_if_available): Return bool. (read_frame_register_unsigned): Return bool. (get_frame_register_bytes): Return bool. (safe_frame_unwind_memory): Return bool. (deprecated_frame_register_read): Return bool. (frame_unwinder_is): Return bool. * frame.c (struct frame_info) : Change type to bool. : Likewise. : Likewise. (frame_stash_add): Return bool. (get_frame_id): Use bool. (frame_id_build_special) Use bool. (frame_id_build_unavailable_stack): Use bool. (frame_id_build): Use bool. (frame_id_p): Return bool, use true/false instead of 1/0. (frame_id_artificial_p): Likewise. (frame_id_eq): Likewise. (frame_id_inner): Likewise. (get_frame_func_if_available): Likewise. (read_frame_register_unsigned): Likewise. (deprecated_frame_register_read): Likewise. (get_frame_register_bytes): Likewise. (has_stack_frames): Likewise. (inside_main_func): Likewise. (inside_entry_func): Likewise. (get_frame_pc_if_available): Likewise. (get_frame_address_in_block_if_available): Likewise. (frame_unwinder_is): Likewise. (safe_frame_unwind_memory): Likewise. (frame_unwind_arch): Likewise. 2020-08-04 Simon Marchi * frame.c (frame_info)

: Rename to status, change type to cached_copy_status. (fprintf_frame): Adjust. (get_frame_func_if_available): Adjust. (frame_cleanup_after_sniffer): Adjust. 2020-08-04 Mark Wielaard * MAINTAINERS (Write After Approval): Update email address. 2020-08-04 Simon Marchi * gdbtypes.h (TYPE_DYN_PROP_ADDR): Remove, replace uses with dynamic_prop::const_val. 2020-08-04 Simon Marchi * gdbtypes.h (TYPE_DYN_PROP_KIND): Remove, replace uses with dynamic_prop::kind. 2020-08-04 Simon Marchi * gdbtypes.h (TYPE_DYN_PROP_BATON): Remove. 2020-08-04 Jose E. Marchesi * configure.tgt: Set gdb_sim for bpf-*-* targets. 2020-08-04 Weimin Pan Jose E. Marchesi * configure.tgt: Add entry for bpf-*-*. * Makefile.in (ALL_TARGET_OBS): Add bpf-tdep.o (ALLDEPFILES): Add bpf-tdep.c. * bpf-tdep.c: New file. * MAINTAINERS: Add bpf target and maintainer. * NEWS: Mention the support for the new target. 2020-08-04 Tom de Vries PR symtab/23270 * dwarf2/read.c (find_partial_die): Change internal error into Dwarf Error. 2020-08-03 John Baldwin * syscalls/freebsd.xml: Regenerate. 2020-08-03 John Baldwin * syscalls/update-freebsd.sh: Fix usage and year range. 2020-08-03 Tom de Vries PR symtab/26333 * dwarf2/read.c (dwarf_decode_lines_1): Ignore DW_LNE_lo_user/DW_LNE_hi_user range. 2020-07-30 Simon Marchi PR ada/26318 * ada-lang.c (ada_modulus): Return 0 if property is not of const kind. 2020-07-30 Tankut Baris Aktemur * breakpoint.c (set_breakpoint_condition): Do minor refactoring. 2020-07-30 Tankut Baris Aktemur * breakpoint.c (set_breakpoint_condition): Update the condition expressions after checking that the input condition string parses successfully and does not contain junk at the end. 2020-07-30 Tankut Baris Aktemur * breakpoint.c (set_breakpoint_condition): Update the condition string after parsing the new condition successfully. 2020-07-30 Rainer Orth * proc-api.c (_STRUCTURED_PROC): Don't define. * proc-events.c: Likewise. * proc-flags.c: Likewise. * proc-why.c: Likewise. * procfs.c: Likewise. * Makefile.in (INTERNAL_CPPFLAGS): Add LARGEFILE_CPPFLAGS. * configure, config.in: Regenerate. 2020-07-30 Tom de Vries PR build/26320 * ui-style.h (struct ui_file_style::color): Wrap m_value and m_red/m_green/m_blue in a union. 2020-07-29 Tom de Vries PR tdep/26280 * s390-tdep.c (s390_displaced_step_fixup): Fix Wmaybe-uninitialized. 2020-07-28 Tom Tromey PR symtab/26270: * symtab.h (find_pc_partial_function_sym): Declare. * cli/cli-cmds.c (disassemble_command): Use find_pc_partial_function_sym. Check asm_demangle. * blockframe.c (cache_pc_function_sym): New global. (cache_pc_function_name): Remove. (clear_pc_function_cache): Update. (find_pc_partial_function_sym): New function, from find_pc_partial_function. (find_pc_partial_function): Rewrite using find_pc_partial_function_sym. 2020-07-28 Tom Tromey * cli/cli-cmds.c (_initialize_cli_cmds): Rearrange "disassemble" help. Add usage. 2020-07-28 Tom Tromey * dwarf2/expr.c (dwarf_expr_context::execute_stack_op) : Cast to address type. 2020-07-28 Kamil Rytarowski * nbsd-nat.h (nbsd_nat_target::xfer_partial): New declaration. * nbsd-nat.c (nbsd_nat_target::xfer_partial): New function. * nbsd-tdep.c (nbsd_gdbarch_data_handle, struct nbsd_gdbarch_data) (init_nbsd_gdbarch_data, get_nbsd_gdbarch_data) (nbsd_get_siginfo_type): New. (nbsd_init_abi): Install gdbarch "get_siginfo_type" method. (_initialize_nbsd_tdep): New. 2020-07-28 H.J. Lu PR binutils/26301 * configure: Regenerated. 2020-07-28 H.J. Lu PR binutils/26301 * configure: Regenerated. 2020-07-28 Andrew Burgess * python/py-frame.c: Remove 'user-regs.h' include. (frapy_read_register): Rewrite to make use of gdbpy_parse_register_id. * python/py-registers.c (gdbpy_parse_register_id): New function, moved here from python/py-unwind.c. Updated the return type, and also accepts register descriptor objects. * python/py-unwind.c: Remove 'user-regs.h' include. (pyuw_parse_register_id): Moved to python/py-registers.c. (unwind_infopy_add_saved_register): Update to use gdbpy_parse_register_id. (pending_framepy_read_register): Likewise. * python/python-internal.h (gdbpy_parse_register_id): Declare. 2020-07-28 Andrew Burgess * python/py-registers.c: Add 'user-regs.h' include. (register_descriptor_iter_find): New function. (register_descriptor_iterator_object_methods): New static global methods array. (register_descriptor_iterator_object_type): Add pointer to methods array. 2020-07-27 John Baldwin * fbsd-nat.h: Include . Define USE_SIGTRAP_SIGINFO for all architectures on FreeBSD 11.3 and later. 2020-07-27 Tom Tromey * gcore.h (load_corefile): Don't declare. 2020-07-27 Tom de Vries * configure.ac: Fix sys/sockets.h -> sys/socket.h typo. * config.in: Regenerate. * configure: Regenerate. 2020-07-26 Eli Zaretskii * configure.ac (AC_CHECK_HEADERS): Check for sys/socket.h and ws2tcpip.h. When checking whether socklen_t type is defined, use ws2tcpip.h if it is available and sys/socket.h isn't. * configure: Regenerate. * config.in: Regenerate. 2020-07-25 Andrew Burgess PR fortran/23051 PR fortran/26139 * valops.c (value_ind): Pass address to readjust_indirect_value_type. * value.c (readjust_indirect_value_type): Make parameter non-const, and add extra address parameter. Resolve original type before using it. * value.h (readjust_indirect_value_type): Update function signature and comment. 2020-07-25 Tom de Vries PR symtab/26243 * dwarf2/read.c (lnp_state_machine::record_line): Ignore zero line entries. 2020-07-24 Aaron Merey * Makefile.in: Replace LIBDEBUGINFOD with DEBUGINFOD_LIBS. * configure: Rebuild. 2020-07-23 Kevin Buettner PR corefiles/26294 * corelow.c (_initialize_corelow): Add period to help text for "maintenance print core-file-backed-mappings". 2020-07-23 Pedro Alves * frame-unwind.c (frame_unwind_try_unwinder): On exception, don't touch THIS_CACHE/THIS_FRAME if the frame cache was cleared meanwhile. * frame.c (frame_cache_generation, get_frame_cache_generation): New. (reinit_frame_cache): Increment FRAME_CACHE_GENERATION. (get_prev_frame_if_no_cycle): On exception, don't touch PREV_FRAME/THIS_FRAME if the frame cache was cleared meanwhile. * frame.h (get_frame_cache_generation): Declare. 2020-07-23 Tom de Vries PR tui/26282 * tui/tui-winsource.h (struct tui_source_windows::tui_source_windows): New default constructor. 2020-07-23 Andrew Burgess * disasm.c (do_mixed_source_and_assembly_deprecated): Don't exclude non-statement entries. 2020-07-22 Kevin Buettner * NEWS (New commands): Mention new command "maintenance print core-file-backed-mappings". 2020-07-22 Kevin Buettner * corelow.c (gdbcmd.h): Include. (core_target::info_proc_mappings): New method. (get_current_core_target): New function. (maintenance_print_core_file_backed_mappings): New function. (_initialize_corelow): Add core-file-backed-mappings to "maint print" commands. 2020-07-22 Kevin Buettner * linux-tdep.c (dump_note_entry_p): New function. (linux_dump_mapping_p_ftype): New typedef. (linux_find_memory_regions_full): Add new parameter, should_dump_mapping_p. (linux_find_memory_regions): Adjust call to linux_find_memory_regions_full. (linux_make_mappings_core_file_notes): Use dump_note_entry_p in call to linux_find_memory_regions_full. 2020-07-22 Kevin Buettner * corelow.c (solist.h, unordered_map): Include. (class core_target): Add field m_core_file_mappings and method build_file_mappings. (core_target::core_target): Call build_file_mappings. (core_target::~core_target): Free memory associated with m_core_file_mappings. (core_target::build_file_mappings): New method. (core_target::xfer_partial): Use m_core_file_mappings for memory transfers. * linux-tdep.c (linux_read_core_file_mappings): New function. (linux_core_info_proc_mappings): Rewrite to use linux_read_core_file_mappings. (linux_init_abi): Register linux_read_core_file_mappings. 2020-07-22 Kevin Buettner * arch-utils.c (default_read_core_file_mappings): New function. * arch-utils.c (default_read_core_file_mappings): Declare. * gdbarch.sh (read_core_file_mappings): New gdbarch method. * gdbarch.h, gdbarch.c: Regenerate. 2020-07-22 Kevin Buettner PR corefiles/25631 * corelow.c (core_target:xfer_partial): Revise TARGET_OBJECT_MEMORY case to consider non-SEC_HAS_CONTENTS case after first checking the stratum beneath the core target. (has_all_memory): Return true. * target.c (raw_memory_xfer_partial): Revise comment regarding use of has_all_memory. 2020-07-22 Kevin Buettner * exec.h (section_table_xfer_memory): Revise declaration, replacing section name parameter with an optional callback predicate. * exec.c (section_table_xfer_memory): Likewise. * bfd-target.c, exec.c, target.c, corelow.c: Adjust all callers of section_table_xfer_memory. 2020-07-22 Tom Tromey * mi/mi-cmd-stack.c (list_args_or_locals): Use lookup_symbol_search_name. 2020-07-22 Andrew Burgess * python/py-registers.c (gdbpy_register_object_data_init): Remove redundant local variable. (gdbpy_get_register_descriptor): Extract descriptor vector as a reference, not pointer, update code accordingly. 2020-07-22 Simon Marchi Tankut Baris Aktemur * objfiles.h (struct objfile) : New field. * jit.c (jit_breakpoint_re_set_internal): Use the `skip_jit_symbol_lookup` field. 2020-07-22 Simon Marchi Tankut Baris Aktemur * jit.c (jit_read_descriptor): Define the descriptor address once, use twice. (jit_breakpoint_deleted): Move the declaration of the loop variable `iter` into the loop header. (jit_breakpoint_re_set_internal): Move the declaration of the local variable `objf_data` to the first point of definition. (jit_event_handler): Move the declaration of local variables `code_entry`, `entry_addr`, and `objf` to their first point of use. Rename `objf` to `jited`. 2020-07-22 Simon Marchi * jit.h (struct jiter_objfile_data) : Remove. * jit.c (get_jiter_objfile_data): Update. 2020-07-22 Tankut Baris Aktemur Simon Marchi * jit.c (struct jit_program_space_data): Remove. (jit_program_space_key): Remove. (jiter_objfile_data::~jiter_objfile_data): Remove program space stuff. (get_jit_program_space_data): Remove. (jit_breakpoint_deleted): Iterate on all of the program space's objfiles. (jit_inferior_init): Likewise. (jit_breakpoint_re_set_internal): Likewise. Also change return type to void. (jit_breakpoint_re_set): Pass current_program_space to jit_breakpoint_re_set_internal. 2020-07-22 Simon Marchi * jit.h (struct jiter_objfile_data) : Move to here from ... * jit.c (jit_program_space_data): ... here. (jiter_objfile_data::~jiter_objfile_data): Update. (jit_breakpoint_deleted): Update. (jit_breakpoint_re_set_internal): Update. 2020-07-22 Simon Marchi * 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 * jit.h (struct jit_objfile_data): Split into... (struct jiter_objfile_data): ... this ... (struct jited_objfile_data): ... and this. * objfiles.h (struct objfile) : Remove. : 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 * 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) : New field. 2020-07-22 Tankut Baris Aktemur * 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 * 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 * 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 * 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 * corelow.c (core_target_open): Invoke gdbarch report_signal_info hook if present. 2020-07-21 John Baldwin * 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 * 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 * 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 * linux-nat.c (stopped_pids): Make static. 2020-07-21 Simon Marchi PR ada/26235 * gdbtypes.c (ada_discrete_type_low_bound, ada_discrete_type_high_bound): Handle undefined bounds. 2020-07-21 Kamil Rytarowski * 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 * 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 * 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 Doug Evans 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 * linux-nat.c (linux_multi_process): Remove. (linux_nat_target::supports_multi_process): Return true. 2020-07-17 Andrew Burgess * 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 * 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 * 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 * f-typeprint.c (f_type_print_base): Allow for dynamic types not being resolved. 2020-07-14 Andrew Burgess * arch-utils.c (show_architecture): Update formatting of messages. 2020-07-12 Simon Marchi * gdbtypes.h (struct type) : 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 * gdbtypes.c (TYPE_ARRAY_BIT_STRIDE): Remove. Update all callers to use the equivalent accessor methods. 2020-07-12 Simon Marchi * gdbtypes.h (struct range_bounds) : New method. (struct type) : New method. (TYPE_BIT_STRIDE): Remove. * gdbtypes.c (update_static_array_size): Use type::bit_stride. 2020-07-12 Simon Marchi * 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 * 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 * gdbtypes.h (TYPE_LOW_BOUND_KIND, TYPE_HIGH_BOUND_KIND): Remove. Update all callers to use dynamic_prop::kind. 2020-07-12 Simon Marchi * 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 * 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 * gdbtypes.h (struct dynamic_prop) : New methods. : Rename to... : ... this. Update all users to use the new methods instead. : Rename to... : ... this. Update all users to use the new methods instead. 2020-07-12 Simon Marchi * 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 * gdbtypes.h (TYPE_RANGE_DATA): Remove. Update callers to use the type::bounds method directly. 2020-07-12 Simon Marchi * gdbtypes.h (struct type) : 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 * exec.c (_initialize_exec): Update exec-file-mismatch help. 2020-07-10 Pedro Alves * gdbthread.h (inferior_ref): Define. (scoped_restore_current_thread) : Now a thread_info_ref. (scoped_restore_current_thread) : 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 * 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 Pedro Alves 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 PR gdb/26199 * infrun.c (handle_no_resumed): Transfer terminal to inferior with executing threads. 2020-07-10 Pedro Alves PR gdb/26199 * infrun.c (handle_no_resumed): Handle multiple targets. 2020-07-10 Pedro Alves PR gdb/26199 * infrun.c (prepare_to_wait): Check target_can_async_p instead of target_is_async_p. 2020-07-10 Pedro Alves PR gdb/26199 * target.c (target_pass_ctrlc): Look at the inferior's non-exited threads, not all threads. 2020-07-10 Pedro Alves 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 * 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 * inf-ptrace.c (inf_ptrace_target::wait): Don't compare against inferior_ptid. 2020-07-09 John Baldwin * 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 * auto-load.c (auto_load_objfile_script_1): Convert drive part of debugfile path on Windows. 2020-07-08 John Baldwin * fbsd-nat.c (fbsd_nat_target::find_memory_regions): Rename 'obfd' argument to 'data'. 2020-07-08 Tom Tromey * ada-lang.c (ada_exception_message_1): Use read_memory. 2020-07-06 Andrew Burgess 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 * 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 * 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 * 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 * 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 * 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 PR tui/26205 * tui/tui-win.c (tui_partial_win_by_name): Don't test for NULL name. 2020-07-05 Tom de Vries 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 * macroexp.h (macro_stringify): Return gdb::unique_xmalloc_ptr. * macroexp.c (macro_stringify): Likewise. * macrotab.c (fixup_definition): Update. 2020-07-02 Simon Marchi * c-exp.y (scan_macro_expansion): Don't free `expansion`. (lex_one_token): Update. * macroexp.c (struct macro_buffer) : Return gdb::unique_xmalloc_ptr. (macro_stringify): Update. (macro_expand): Update. (macro_expand_next): Return gdb::unique_xmalloc_ptr. * macroexp.h (macro_expand_next): Likewise. 2020-07-02 Simon Marchi * 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 * 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 * tui/tui-data.h (struct tui_win_info) : Now pure virtual. * tui/tui-stack.h (struct tui_locator_window) : New method. 2020-07-01 Tom Tromey * 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) : Change type. : 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 * tui/tui-stack.h (struct tui_locator_window): Derive from tui_win_info. : New methods. : New method. 2020-07-01 Tom Tromey * tui/tui-stack.h (struct tui_locator_window): Remove body. 2020-07-01 Tom Tromey * 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 longer virtual. * tui/tui-regs.h (struct tui_data_item_window): Don't derive from tui_gen_win_info. : Remove. : Add parameters. : New members. (struct tui_data_window) : Remove. : New member. 2020-07-01 Tom Tromey * 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) : Rename from item_no. 2020-07-01 Tom Tromey * tui/tui-regs.c (tui_data_window::show_register_group): Remove useless "if". 2020-07-01 Tom Tromey * tui/tui-regs.c (tui_data_window::show_register_group): Update. * tui/tui-regs.h (struct tui_data_item_window) : Remove. 2020-07-01 Tom Tromey * 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 * tui/tui-regs.h (struct tui_data_item_window) : 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 * tui/tui-regs.c (tui_reggroup_completer): Use complete_on_enum. 2020-07-01 Fangrui Song * dwarf2/read.c (lnp_state_machine::check_line_address): Test -1. 2020-07-01 Alok Kumar Sharma * dwarf2/read.c (set_die_type): Removed conditions to restrict forms for DW_AT_associated and DW_AT_allocated attributes, which is already checked in function attr_to_dynamic_prop. 2020-06-30 Tom Tromey * dwarf2/read.c (quirk_rust_enum): Correctly call alloc_rust_variant for default-less enum. 2020-06-30 Tom Tromey PR build/26183: * ada-lang.c (ada_lookup_name_info::ada_lookup_name_info): Use gdb::to_string. 2020-06-29 Simon Marchi * gdbarch.sh (displaced_step_copy_insn): Update doc. * gdbarch.h: Re-generate. 2020-06-28 Tom Tromey * command.h (cmd_types): Remove. (cmd_type): Don't declare. * cli/cli-decode.h (enum cmd_types): Uncomment. No longer a typedef. * cli/cli-cmds.c (setting_cmd): Use cmd->type directly. * cli/cli-decode.c (cmd_type): Remove. 2020-06-27 Pedro Alves * fork-child.c (prefork_hook): Adjust. * infcmd.c (set_inferior_io_terminal, get_inferior_io_terminal): Delete. (set_inferior_tty_command, show_inferior_tty_command): Adjust. * inferior.c (inferior::set_tty, inferior::tty): New methods. * inferior.h (set_inferior_io_terminal, get_inferior_io_terminal): Remove declarations. (struct inferior) : New methods. (struct inferior) : Rename to ... (struct inferior) : ... this and make private. * main.c (captured_main_1): Adjust. * mi/mi-cmd-env.c (mi_cmd_inferior_tty_set): Adjust. (mi_cmd_inferior_tty_show): Adjust. * nto-procfs.c (nto_procfs_target::create_inferior): Adjust. * windows-nat.c (windows_nat_target::create_inferior): Adjust. 2020-06-26 Nick Alcock * configure.ac: Add --enable-libctf: handle --disable-static properly. * acinclude.m4: sinclude ../config/enable.m4. * Makefile.in (aclocal_m4_deps): Adjust accordingly. (LIBCTF): Substitute in. (CTF_DEPS): New, likewise. (CLIBS): libctf needs symbols from libbfd: move earlier. (CDEPS): Use CTF_DEPS, not LIBCTF, now LIBCTF can include rpath flags. * ctfread.c: Surround in ENABLE_LIBCTF. (elfctf_build_psymtabs) [!ENABLE_LIBCTF]: New stub. * configure: Regenerate. * config.in: Likewise. 2020-06-25 Simon Marchi * infcmd.c (set_inferior_io_terminal): Use make_unique_xstrdup. 2020-06-25 Simon Marchi * inferior.h (struct inferior) : Change type to gdb::unique_xmalloc_ptr. * inferior.c (inferior::~inferior): Don't free inf->terminal. * infcmd.c (set_inferior_io_terminal): Don't free terminal field, adjust to unique pointer. (get_inferior_io_terminal): Adjust to unique pointer. 2020-06-25 Andrew Burgess * riscv-tdep.c (riscv_print_registers_info): Loop over all registers, not just the known core set of registers. 2020-06-25 Andrew Burgess * riscv-tdep.c (riscv_register_name): Return NULL for duplicate fflags, frm, and fcsr registers. (riscv_register_reggroup_p): Remove unknown CSRs from save and restore groups. (riscv_tdesc_unknown_reg): New function. (riscv_gdbarch_init): Pass riscv_tdesc_unknown_reg to tdesc_use_registers. * riscv-tdep.h (struct gdbarch_tdep): Add unknown_csrs_first_regnum, unknown_csrs_count, duplicate_fflags_regnum, duplicate_frm_regnum, and duplicate_fcsr_regnum fields. 2020-06-25 Andrew Burgess * target-descriptions.c (tdesc_use_registers): Add new parameter a callback, use the callback (when not null) to help number unknown registers. * target-descriptions.h (tdesc_unknown_register_ftype): New typedef. (tdesc_use_registers): Add extra parameter to declaration. 2020-06-25 Andrew Burgess * riscv-tdep.c (value_of_riscv_user_reg): Moved to here from later in the file. (class riscv_pending_register_alias): Likewise. (riscv_register_feature::register_info): Change 'required_p' field to 'required', and change its type. Add 'check' member function. (riscv_register_feature::register_info::check): Define new member function. (riscv_xreg_feature): Change initialisation of 'required' field. (riscv_freg_feature): Likewise. (riscv_virtual_feature): Likewise. (riscv_csr_feature): Likewise. (riscv_check_tdesc_feature): Take extra parameter, the csr tdesc_feature, rewrite the function to use the new riscv_register_feature::register_info::check function. (riscv_gdbarch_init): Pass the csr tdesc_feature where needed. 2020-06-25 Andrew Burgess * features/Makefile: Remove all references to the deleted files below. * features/riscv/32bit-csr.c: Deleted. * features/riscv/32bit-csr.xml: Deleted. * features/riscv/64bit-csr.c: Deleted. * features/riscv/64bit-csr.xml: Deleted. * features/riscv/rebuild-csr-xml.sh: Deleted. 2020-06-25 Andrew Burgess * riscv-tdep.c (struct riscv_register_feature::register_info): Fix whitespace error for declaration of names member variable. (struct riscv_register_feature): Add new prefer_first_name member variable, and fix whitespace error in declaration of registers. (riscv_xreg_feature): Initialize prefer_first_name field. (riscv_freg_feature): Likewise. (riscv_virtual_feature): Likewise. (riscv_csr_feature): Likewise. (riscv_register_name): Expand on comments. Remove register name modifications for CSR and virtual registers. 2020-06-25 Andrew Burgess * riscv-tdep.c (struct riscv_register_feature): Fix whitespace errors. 2020-06-25 Andrew Burgess * riscv-tdep.c (riscv_create_csr_aliases): Handle csr aliases from riscv-opc.h. (class riscv_pending_register_alias): New class. (riscv_check_tdesc_feature): Take vector of pending aliases and populate it as appropriate. (riscv_setup_register_aliases): Delete. (riscv_gdbarch_init): Create vector of pending aliases and pass it to riscv_check_tdesc_feature in all cases. Use the vector to create the register aliases. 2020-06-25 Rainer Orth * sol2-tdep.c (sol2_static_transform_name): Remove. (sol2_init_abi): Don't register it. * gdbarch.sh (static_transform_name): Remove. * gdbarch.c, gdbarch.h: Regenerate. * dbxread.c (read_dbx_symtab) <'S'>: Remove call to gdbarch_static_transform_name. * mdebugread.c (parse_partial_symbols) <'S'>: Likewise. * stabsread.c (define_symbol) <'X'>: Remove. (define_symbol) <'S'>: Remove gdbarch_static_transform_name handling. <'V'>: Likewise. * xcoffread.c (scan_xcoff_symtab): Remove gdbarch. <'S'>: Remove call to gdbarch_static_transform_name. 2020-06-25 Rainer Orth * procfs.c (procfs_pre_trace): New function. (procfs_target::create_inferior): Pass it to fork_inferior. 2020-06-25 Rainer Orth * configure.tgt (gdb_target_obs): Remove sparc-sol2-tdep.o, sol2-tdep.o, sparc64-sol2-tdep.o. (gdb_target_obs): Remove sparc64-sol2-tdep.o, sol2-tdep.o, sparc-sol2-tdep.o. * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Make static. * sparc-tdep.h (sparc32_sol2_init_abi): Remove. * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Make static. * sparc64-tdep.h (sparc64_sol2_init_abi): Remove. 2020-06-25 Rainer Orth * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Remove. (amd64_sol2_init_abi): Use sol2_sigtramp_p. Call sol2_init_abi. Remove calls to set_gdbarch_skip_solib_resolver, set_gdbarch_core_pid_to_str. * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Remove. (i386_sol2_static_transform_name): Remove. (i386_sol2_init_abi): Call sol2_init_abi. Remove calls to set_gdbarch_sofun_address_maybe_missing, set_gdbarch_static_transform_name, set_gdbarch_skip_solib_resolver, set_gdbarch_core_pid_to_str. Use sol2_sigtramp_p. * sol2-tdep.c (sol2_pc_in_sigtramp): New function. (sol2_sigtramp_p): New function. (sol2_static_transform_name): New function. (sol2_skip_solib_resolver, sol2_core_pid_to_str): Make static. (sol2_init_abi): New function. * sol2-tdep.h (sol2_sigtramp_p, sol2_init_abi): Declare. (sol2_skip_solib_resolver, sol2_core_pid_to_str): Remove. * sparc-sol2-tdep.c (sparc_sol2_pc_in_sigtramp): Remove. (sparc32_sol2_sigtramp_frame_sniffer): Just call sol2_sigtramp_p. (sparc_sol2_static_transform_name): Remove. (sparc32_sol2_init_abi): Call sol2_init_abi. Remove calls to set_gdbarch_sofun_address_maybe_missing, set_gdbarch_static_transform_name, set_gdbarch_skip_solib_resolver, set_gdbarch_core_pid_to_str. * sparc-tdep.h (sparc_sol2_pc_in_sigtramp) (sparc_sol2_static_transform_name): Remove * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_sniffer): Just call sol2_sigtramp_p. (sparc64_sol2_init_abi): Call sol2_init_abi. Remove calls to set_gdbarch_sofun_address_maybe_missing, set_gdbarch_static_transform_name, set_gdbarch_skip_solib_resolver, set_gdbarch_core_pid_to_str. 2020-06-24 Philippe Waroquiers * symfile-add-flags.h: New flag SYMFILE_ALWAYS_CONFIRM. * exec.c (validate_exec_file): If from_tty, set both SYMFILE_VERBOSE (== from_tty) and SYMFILE_ALWAYS_CONFIRM. * symfile.c (symbol_file_add_with_addrs): if always_confirm and from_tty, unconditionally ask a confirmation. 2020-06-23 Andrew Burgess * target-descriptions.c (tdesc_architecture_name): Protect against NULL pointer dereference. (maint_print_xml_tdesc_cmd): New function. (_initialize_target_descriptions): Register new 'maint print xml-tdesc' command and give it the filename completer. * NEWS: Mention new 'maint print xml-tdesc' command. 2020-06-23 Andrew Burgess * target-descriptions.c (class tdesc_compatible_info): New class. (struct target_desc): Change type of compatible vector. (tdesc_compatible_p): Update for change in type of target_desc::compatible. (tdesc_compatible_info_list): New function. (tdesc_compatible_info_arch_name): New function. (tdesc_add_compatible): Update for change in type of target_desc::compatible. (print_c_tdesc::visit_pre): Likewise. 2020-06-23 Andrew Burgess * target-descriptions.c (print_c_tdesc::print_c_tdesc): Change whitespace to underscore. (maint_print_c_tdesc_cmd): Use fake filename for target descriptions that came from the target. (_initialize_target_descriptions): Add filename command completion for 'maint print c-tdesc'. 2020-06-23 Simon Marchi * dwarf2/loc.c (decode_debug_loclists_addresses): Add empty lines. 2020-06-23 Simon Marchi * dwarf2/loc.c (decode_debug_loc_dwo_addresses): Add empty lines. (dwarf2_find_location_expression): Likewise. (call_site_parameter_matches): Likewise. (dwarf2_compile_expr_to_ax): Likewise. (disassemble_dwarf_expression): Likewise. (loclist_describe_location): Likewise. 2020-06-23 Pedro Alves * gdbarch-selftests.c: Don't include inferior.h, gdbthread.h or progspace-and-thread.h. Include scoped-mock-context.h instead. (register_to_value_test): Use scoped_mock_context. * regcache.c: Include "scoped-mock-context.h". (cooked_read_test): Don't error out if a target is already pushed. Use scoped_mock_context. Adjust. * scoped-mock-context.h: New file. 2020-06-23 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_is_string_type_p initializer. (ada_language::is_string_type_p): New member function. * c-lang.c (c_language_data): Delete la_is_string_type_p initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_is_string_type_p): Delete function, implementation moved to f_language::is_string_type_p. (f_language_data): Delete la_is_string_type_p initializer. (f_language::is_string_type_p): New member function, implementation from f_is_string_type_p. * go-lang.c (go_is_string_type_p): Delete function, implementation moved to go_language::is_string_type_p. (go_language_data): Delete la_is_string_type_p initializer. (go_language::is_string_type_p): New member function, implementation from go_is_string_type_p. * language.c (language_defn::is_string_type_p): Define new member function. (default_is_string_type_p): Make static, add comment copied from header file. (unknown_language_data): Delete la_is_string_type_p initializer. (unknown_language::is_string_type_p): New member function. (auto_language_data): Delete la_is_string_type_p initializer. (auto_language::is_string_type_p): New member function. * language.h (language_data): Delete la_is_string_type_p field. (language_defn::is_string_type_p): Declare new function. (default_is_string_type_p): Delete desclaration, move comment to definition. * m2-lang.c (m2_is_string_type_p): Delete function, implementation moved to m2_language::is_string_type_p. (m2_language_data): Delete la_is_string_type_p initializer. (m2_language::is_string_type_p): New member function, implementation from m2_is_string_type_p. * objc-lang.c (objc_language_data): Delete la_is_string_type_p initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_is_string_type_p): Delete function, implementation moved to pascal_language::is_string_type_p. (pascal_language_data): Delete la_is_string_type_p initializer. (pascal_language::is_string_type_p): New member function, implementation from pascal_is_string_type_p. * rust-lang.c (rust_is_string_type_p): Delete function, implementation moved to rust_language::is_string_type_p. (rust_language_data): Delete la_is_string_type_p initializer. (rust_language::is_string_type_p): New member function, implementation from rust_is_string_type_p. * valprint.c (val_print_scalar_or_string_type_p): Update call to is_string_type_p. 2020-06-23 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_print_typedef initializer. (ada_language::print_typedef): New member function. * c-lang.c (c_language_data): Delete la_print_typedef initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. (f_language::print_typedef): New member function. * go-lang.c (go_language_data): Delete la_print_typedef initializer. * language.c (language_defn::print_typedef): Define member function. (unknown_language_data): Delete la_print_typedef initializer. (unknown_language::print_typedef): New member function. (auto_language_data): Delete la_print_typedef initializer. (auto_language::print_typedef): New member function. * language.h (language_data): Delete la_print_typedef field. (language_defn::print_typedef): Declare new member function. (LA_PRINT_TYPEDEF): Update call to print_typedef. (default_print_typedef): Delete declaration. * m2-lang.c (m2_language_data): Delete la_print_typedef initializer. (m2_language::print_typedef): New member function. * objc-lang.c (objc_language_data): Delete la_print_typedef initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. (pascal_language::print_typedef): New member function. * rust-lang.c (rust_print_typedef): Delete function, implementation moved to rust_language::print_typedef. (rust_language): Delete la_print_typedef initializer. (rust_language::print_typedef): New member function, implementation from rust_print_typedef. * typeprint.c (default_print_typedef): Delete. 2020-06-23 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_printstr initializer. (ada_language::printstr): New member function. * c-lang.c (c_language_data): Delete la_printstr initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_printstr): Rename to f_language::printstr. (f_language_data): Delete la_printstr initializer. (f_language::printstr): New member function, implementation from f_printstr. * go-lang.c (go_language_data): Delete la_printstr initializer. * language.c (language_defn::printstr): Define new member function. (unk_lang_printstr): Delete. (unknown_language_data): Delete la_printstr initializer. (unknown_language::printstr): New member function. (auto_language_data): Delete la_printstr initializer. (auto_language::printstr): New member function. * language.h (language_data): Delete la_printstr field. (language_defn::printstr): Declare new member function. (LA_PRINT_STRING): Update call to printstr. * m2-lang.c (m2_printstr): Rename to m2_language::printstr. (m2_language_data): Delete la_printstr initializer. (m2_language::printstr): New member function, implementation from m2_printstr. * objc-lang.c (objc_language_data): Delete la_printstr initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_printstr): Rename to pascal_language::printstr. (pascal_language_data): Delete la_printstr initializer. (pascal_language::printstr): New member function, implementation from pascal_printstr. * p-lang.h (pascal_printstr): Delete declaration. * rust-lang.c (rust_printstr): Update header comment. (rust_language_data): Delete la_printstr initializer. (rust_language::printstr): New member function. 2020-06-23 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_printchar initializer. (ada_language::printchar): New member function. * c-lang.c (c_language_data): Delete la_printchar initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_printchar): Rename to f_language::printchar. (f_language_data): Delete la_printchar initializer. (f_language::printchar): New member function, implementation from f_printchar. * go-lang.c (go_language_data): Delete la_printchar initializer. * language.c (unk_lang_printchar): Delete. (language_defn::printchar): Define new member function. (unknown_language_data): Delete la_printchar initializer. (unknown_language::printchar): New member function. (auto_language_data): Delete la_printchar initializer. (auto_language::printchar): New member function. * language.h (language_data): Delete la_printchar field. (language_defn::printchar): Declare new member function. (LA_PRINT_CHAR): Update call to printchar. * m2-lang.c (m2_language_data): Delete la_printchar initializer. (m2_language::printchar): New member function. * objc-lang.c (objc_language_data): Delete la_printchar initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Delete la_printchar initializer. (pascal_language::printchar): New member function. * rust-lang.c (rust_printchar): Rename to rust_language::printchar. (rust_language_data): Delete la_printchar initializer. (rust_language::printchar): New member function, implementation from rust_printchar. 2020-06-23 Andrew Burgess * ada-lang.c (emit_char): Renamed to ada_language::emitchar. (ada_language_data): Delete la_emitchar initializer. (ada_language::emitchar): New member function, implementation from emit_char. * c-lang.c (c_language_data): Delete la_emitchar initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_emit_char): Rename to f_language::emitchar. (f_language_data): Delete la_emitchar initializer. (f_language::emitchar): New member function, implementation from f_emit_char. * go-lang.c (go_language_data): Delete la_emitchar initializer. * language.c (unk_lang_emit_char): Delete. (language_defn::emitchar): New member function definition. (unknown_language_data): Delete la_emitchar initializer. (unknown_language::emitchar): New member function. (auto_language_data): Delete la_emitchar initializer. (auto_language::emitchar): New member function. * language.h (language_data): Delete la_emitchar field. (language_defn::emitchar): New member field declaration. (LA_EMIT_CHAR): Update call to emitchar. * m2-lang.c (m2_emit_char): Rename to m2_language::emitchar. (m2_language_data): Delete la_emitchar initializer. (m2_language::emitchar): New member function, implementation from m2_emit_char. * objc-lang.c (objc_language_data): Delete la_emitchar initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_emit_char): Rename to pascal_language::emitchar. (pascal_language_data): Delete la_emitchar initializer. (pascal_language::emitchar): New member function, implementation from pascal_emit_char. * rust-lang.c (rust_emitchar): Rename to rust_language::emitchar. (rust_language_data): Delete la_emitchar initializer. (rust_language::emitchar): New member function, implementation from rust_emitchar. 2020-06-23 Andrew Burgess * ada-lang.c (resolve): Rename to ada_language::post_parser. (ada_language_data): Delete la_post_parser initializer. (ada_language::post_parser): New member function. * c-lang.c (c_language_data): Delete la_post_parser initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (language_data): Delete la_post_parser field. (language_defn::post_parser): New member function. * m2-lang.c (m2_language_data): Delete la_post_parser initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * parse.c (parse_exp_in_context): Update call to post_parser. (null_post_parser): Delete definition. * parser-defs.h (null_post_parser): Delete declaration. * rust-lang.c (rust_language_data): Delete la_post_parser initializer. 2020-06-23 Andrew Burgess * ada-lang.c (parse): Rename to ada_language::parser. (ada_language_data): Delete la_parser initializer. (ada_language::parser): New member function, implementation from parse. * c-lang.c (c_language_data): Delete la_parser initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. (d_language::parser): New member function. * f-lang.c (f_language_data): Delete la_parser initializer. (f_language::parser): New member function. * go-lang.c (go_language_data): Delete la_parser initializer. (go_language::parser): New member function. * language.c (unk_lang_parser): Delete. (language_defn::parser): Define new member function. (unknown_language_data): Delete la_parser initializer. (unknown_language::parser): New member function. (auto_language_data): Delete la_parser initializer. (auto_language::parser): New member function. * language.h (language_data): Delete la_parser field. (language_defn::parser): Declare new member function. * m2-lang.c (m2_language_data): Delete la_parser initializer. (m2_language::parser): New member function. * objc-lang.c (objc_language_data): Delete la_parser initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. (pascal_language::parser): New member function. * parse.c (parse_exp_in_context): Update call to parser. * rust-lang.c (rust_language_data): Delete la_parser initializer. (rust_language::parser): New member function. 2020-06-23 Andrew Burgess * top.c (print_gdb_configuration): Print --with-python-libdir configuration value. 2020-06-22 Philippe Waroquiers * NEWS: Mention change to the alias command. 2020-06-22 Philippe Waroquiers * cli/cli-cmds.c (lookup_cmd_for_default_args) (alias_command_completer) (make_alias_options_def_group): New functions. (alias_opts, alias_option_defs): New struct and array. (alias_usage_error): Update usage. (alias_command): Handles optional DEFAULT-ARGS... arguments. Use option framework. (_initialize_cli_cmds): Update alias command help. Update aliases command help. (show_user): Add NULL for new default_args lookup_cmd argument. (valid_command_p): Rename to validate_aliased_command. Add NULL for new default_args lookup_cmd argument. Verify that the aliased_command has no default args. * cli/cli-decode.c (help_cmd): Show aliases definitions. (lookup_cmd_1, lookup_cmd): New argument default_args. (add_alias_cmd): Add NULL for new default_args lookup_cmd argument. (print_help_for_command): Show default args under the layout alias some_alias = some_aliased_cmd some_alias_default_arg. * cli/cli-decode.h (struct cmd_list_element): New member default_args. xfree default_args in destructor. * cli/cli-script.c (process_next_line, do_define_command): Add NULL for new default_args lookup_cmd argument. * command.h: Declare new default_args argument in lookup_cmd and lookup_cmd_1. * completer.c (complete_line_internal_1): Add NULL for new default_args lookup_cmd or lookup_cmd_1 argument. * guile/scm-cmd.c (gdbscm_parse_command_name): Likewise. * guile/scm-param.c (add_setshow_generic, pascm_parameter_defined_p): Likewise. * infcmd.c (_initialize_infcmd): Likewise. * python/py-auto-load.c (gdbpy_initialize_auto_load): Likewise. * python/py-cmd.c (gdbpy_parse_command_name): Likewise. * python/py-param.c (add_setshow_generic): Likewise. * remote.c (_initialize_remote): Likewise. * top.c (execute_command): Prepend default_args if command has some. (set_verbose): Add NULL for new default_args lookup_cmd or lookup_cmd_1 argument. * tracepoint.c (validate_actionline, encode_actions_1): Add NULL for new default_args lookup_cmd or lookup_cmd_1 argument. 2020-06-22 Tankut Baris Aktemur * jit.c (jit_read_descriptor): Use bool as the return type. (jit_breakpoint_re_set_internal): Use bool as the return type. Invert the return value logic; return true if the jit breakpoint has been successfully initialized. (jit_inferior_init): Update the call to jit_breakpoint_re_set_internal. 2020-06-22 Pedro Alves PR gdb/25939 * procfs.c (procfs_target::wait): Don't reference inferior_ptid. Use the current inferior instead. Don't return TARGET_WAITKIND_SPURIOUS/inferior_ptid -- instead continue and wait again. * sol-thread.c (sol_thread_target::wait): Don't reference inferior_ptid. (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs) (sol_update_thread_list_callback): Use the current inferior's pid instead of inferior_ptid. 2020-06-21 Rainer Orth * procfs.c: Cleanup many comments. (READ_WATCHFLAG, WRITE_WATCHFLAG, EXEC_WATCHFLAG) (AFTER_WATCHFLAG): Replace by value. (MAIN_PROC_NAME_FORMAT): Inline ... (create_procinfo): ... here. (procfs_debug_inferior): Remove SYS_exec handling. (syscall_is_exec): Likewise. (procfs_set_exec_trap): Likewise. (syscall_is_lwp_exit): Inline in callers. (syscall_is_exit): Likewise. (syscall_is_exec): Likewise. (syscall_is_lwp_create): Likewise. (invalidate_cache): Remove #if 0 code. (make_signal_thread_runnable): Remove. (procfs_target::resume): Remove #if 0 code. 2020-06-21 Rainer Orth PR gdb/25939 * procfs.c (procfs_target::procfs_init_inferior): Move push_target call ... (procfs_target::create_inferior): ... here. 2020-06-21 Philippe Waroquiers * exec.c (validate_exec_file): Ensure the build-id is up to date by calling reopen_exec_file (that checks file timestamp to decide to re-read the file). 2020-06-18 Pedro Alves PR gdb/25412 * gdbthread.h (delete_thread, delete_thread_silent) (find_thread_ptid): Update comments. * thread.c (current_thread_): New global. (is_current_thread): Move higher, and reimplement. (inferior_thread): Reimplement. (set_thread_exited): Use bool. Add assertions. (add_thread_silent): Simplify thread-reuse handling by always calling delete_thread. (delete_thread): Remove intro comment. (find_thread_ptid): Skip exited threads. (switch_to_thread_no_regs): Write to current_thread_. (switch_to_no_thread): Check CURRENT_THREAD_ instead of INFERIOR_PTID. Clear current_thread_. 2020-06-18 Pedro Alves * aix-thread.c (pd_update): Use switch_to_thread. 2020-06-18 Pedro Alves * ravenscar-thread.c (ravenscar_thread_target): Update. (ravenscar_thread_target::update_inferior_ptid): Rename to ... (ravenscar_thread_target::add_active_thread): ... this. Don't set m_base_ptid here. Update to avoid referencing inferior_ptid. (ravenscar_thread_target::wait): Don't write to inferior_ptid. 2020-06-18 Pedro Alves * nat/windows-nat.c (current_windows_thread): Remove. * nat/windows-nat.h (current_windows_thread): Remove. * windows-nat.c (windows_nat_target::stopped_by_sw_breakpoint): Adjust. (display_selectors): Adjust to fetch the current windows_thread_info based on inferior_ptid. (fake_create_process): No longer write to current_windows_thread. (windows_nat_target::get_windows_debug_event): Don't set inferior_ptid or current_windows_thread. (windows_nat_target::wait): Adjust to not rely on current_windows_thread. (do_initial_windows_stuff): Now a method of windows_nat_target. Switch to the last_ptid thread. (windows_nat_target::attach): Adjust. (windows_nat_target::detach): Use switch_to_no_thread instead of writing to inferior_ptid directly. (windows_nat_target::create_inferior): Adjust. 2020-06-18 Pedro Alves * windows-nat.c (do_initial_windows_stuff): No longer set inferior_ptid. 2020-06-18 Pedro Alves * go32-nat.c (go32_nat_target::create_inferior): Switch to thread after creating it, instead of writing to inferior_ptid. Don't write to inferior_ptid. 2020-06-18 Pedro Alves * fork-child.c (postfork_hook): Don't write to inferior_ptid. 2020-06-18 Pedro Alves * bsd-kvm.c (bsd_kvm_target_open): Switch to thread after adding it, instead of writing to inferior_ptid. 2020-06-18 Pedro Alves * btrace.c (btrace_fetch): Use switch_to_thread instead of writing to inferior_ptid. 2020-06-18 Pedro Alves * bsd-kvm.c (bsd_kvm_target::close): Use switch_to_no_thread instead of writing to inferior_ptid directly. 2020-06-18 Pedro Alves * corelow.c (core_target::close): Use switch_to_no_thread instead of writing to inferior_ptid directly. (add_to_thread_list, core_target_open): Use switch_to_thread instead of writing to inferior_ptid directly. 2020-06-18 Pedro Alves * darwin-nat.c (darwin_nat_target::decode_message): Don't write to inferior_ptid. (darwin_nat_target::stop_inferior, darwin_nat_target::kill): Avoid inferior_ptid. (darwin_attach_pid): Use switch_to_no_thread instead of writing to inferior_ptid directly. (darwin_nat_target::init_thread_list): Switch to thread, instead of writing to inferior_ptid. (darwin_nat_target::attach): Don't write to inferior_ptid. (darwin_nat_target::get_ada_task_ptid): Avoid inferior_ptid. 2020-06-18 Pedro Alves * gnu-nat.c (gnu_nat_target::create_inferior): Switch to the added thread. (gnu_nat_target::attach): Don't write to inferior_ptid directly. Instead use switch_to_thread. (gnu_nat_target::detach): Use switch_to_no_thread instead of writing to inferior_ptid directly. Used passed-in inferior instead of looking up the inferior by pid. 2020-06-18 Pedro Alves * go32-nat.c (go32_nat_target::create_inferior): Don't write to inferior_ptid. 2020-06-18 Pedro Alves * nto-procfs.c (nto_procfs_target::update_thread_list): Avoid inferior_ptid. (nto_procfs_target::attach): Avoid inferior_ptid. Switch to thread. (nto_procfs_target::detach): Avoid referencing inferior_ptid. Use switch_to_no_thread instead of writing to inferior_ptid directly. (nto_procfs_target::mourn_inferior): Use switch_to_no_thread instead of writing to inferior_ptid directly. (nto_procfs_target::create_inferior): Avoid inferior_ptid. Switch to thread. 2020-06-18 Pedro Alves * remote-sim.c (gdbsim_target::create_inferior): Switch to thread after creating it, instead of writing to inferior_ptid. (gdbsim_target_open): Use switch_to_no_thread instead of writing to inferior_ptid directly. (gdbsim_target::wait): Don't write to inferior_ptid. 2020-06-18 Pedro Alves * remote.c (remote_target::remote_notice_new_inferior): Use switch_to_thread instead of writing to inferior_ptid directly. (remote_target::add_current_inferior_and_thread): Use switch_to_no_thread instead of writing to inferior_ptid directly. (extended_remote_target::attach): Use switch_to_inferior_no_thread and switch_to_thread instead of using set_current_inferior or writing to inferior_ptid directly. 2020-06-18 Pedro Alves * tracectf.c (ctf_target_open): Switch to added thread instead of writing to inferior_ptid directly. (ctf_target::close): Use switch_to_no_thread instead of writing to inferior_ptid directly. 2020-06-18 Pedro Alves * tracefile-tfile.c (tfile_target_open): Don't write to inferior_ptid directly, instead switch to added thread. (tfile_target::close): Use switch_to_no_thread instead of writing to inferior_ptid directly. 2020-06-18 Pedro Alves * procfs.c (procfs_target::attach): Don't write to inferior_ptid. (procfs_target::detach): Use switch_to_no_thread instead of writing to inferior_ptid directly. (do_attach): Change return type to void. Switch to the added thread. (procfs_target::create_inferior): Switch to the added thread. (procfs_do_thread_registers): Don't write to inferior_ptid. 2020-06-18 Pedro Alves * infrun.c (generic_mourn_inferior): Use switch_to_thread instead of writing to inferior_ptid. (scoped_restore_exited_inferior): Delete. (handle_vfork_child_exec_or_exit): Simplify using scoped_restore_current_pspace_and_thread. Use switch_to_thread instead of writing to inferior_ptid. (THREAD_STOPPED_BY): Delete. (thread_stopped_by_watchpoint, thread_stopped_by_sw_breakpoint) (thread_stopped_by_hw_breakpoint): Delete. (save_waitstatus): Use scoped_restore_current_thread+switch_to_thread, and call target_stopped_by_watchpoint instead of thread_stopped_by_watchpoint, target_stopped_by_sw_breakpoint instead of thread_stopped_by_sw_breakpoint, and target_stopped_by_hw_breakpoint instead of thread_stopped_by_hw_breakpoint. (handle_inferior_event) : Don't write to inferior_ptid directly, nor set_current_inferior/set_current_program_space. Use switch_to_thread / switch_to_inferior_no_thread instead. 2020-06-18 Pedro Alves * target.c (generic_mourn_inferior): Use switch_to_no_thread instead of writing to inferior_ptid. 2020-06-18 Pedro Alves * inf-ptrace.c (inf_ptrace_target::create_inferior): Switch to the added thread. (inf_ptrace_target::attach): Don't write to inferior_ptid. Switch to the added thread. (inf_ptrace_target::detach_success): Use switch_to_no_thread instead of writing to inferior_ptid. 2020-06-18 Pedro Alves * gdbarch-selftests.c: Include "progspace-and-thread.h". (register_to_value_test): Mock a program_space too. Heap-allocate the address space. Don't write to inferior_ptid. Use switch_to_thread instead. 2020-06-18 Pedro Alves * linux-tdep.c (find_signalled_thread(thread_info *,void *)): Delete. (find_signalled_thread()): New, factored out from linux_make_corefile_notes and adjusted to handle exited threads. (linux_make_corefile_notes): Adjust to use the new find_signalled_thread. 2020-06-18 Pedro Alves * linux-tdep.c (btrace_fetch): Save/restore current thread instead of saving/restoring inferior_ptid. 2020-06-17 Tom Tromey * tui/tui-win.h (tui_scroll_forward, tui_scroll_backward) (tui_scroll_left, tui_scroll_right, struct tui_win_info): Don't declare. * tui/tui-data.h (MIN_CMD_WIN_HEIGHT): Remove. 2020-06-15 Simon Marchi * dwarf2/read.c (dwarf2_initialize_objfile): Check for presence of partial symtabs. 2020-06-17 Simon Marchi * regformats/reg-arm.dat: Remove. * regformats/reg-bfin.dat: Remove. * regformats/reg-cris.dat: Remove. * regformats/reg-crisv32.dat: Remove. * regformats/reg-m32r.dat: Remove. * regformats/reg-tilegx.dat: Remove. * regformats/reg-tilegx32.dat: Remove. 2020-06-17 Simon Marchi * features/Makefile (WHICH): Remove arm files. * regformats/arm/arm-with-iwmmxt.dat: Remove. * regformats/arm/arm-with-neon.dat: Remove. * regformats/arm/arm-with-vfpv2.dat: Remove. * regformats/arm/arm-with-vfpv3.dat: Remove. 2020-06-17 Simon Marchi * features/Makefile (XMLTOC): Remove rx.xml. 2020-06-17 Pedro Alves * gdbthread.h (thread_control_state) Update comments. 2020-06-17 Andrew Burgess * ada-lang.c (ada_lookup_symbol_nonlocal): Rename to ada_language::lookup_symbol_nonlocal. (ada_language_data): Delete la_lookup_symbol_nonlocal initializer. (ada_language::lookup_symbol_nonlocal): New member function, implementation from ada_lookup_symbol_nonlocal. * c-lang.c (c_language_data): Delete la_lookup_symbol_nonlocal initializer. (cplus_language_data): Delete la_lookup_symbol_nonlocal initializer. (cplus_language::lookup_symbol_nonlocal): New member function. (asm_language_data): Delete la_lookup_symbol_nonlocal initializer. (minimal_language_data) Likewise. * cp-namespace.c (cp_lookup_nested_symbol): Update comment. * d-lang.c (d_language_data): Delete la_lookup_symbol_nonlocal initializer. (d_language::lookup_symbol_nonlocal): New member function. * f-lang.c (f_language_data): Delete la_lookup_symbol_nonlocal initializer. (f_language::lookup_symbol_nonlocal): New member function. * go-lang.c (go_language_data): Delete la_lookup_symbol_nonlocal initializer. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (language_data): Delete la_lookup_symbol_nonlocal field. (language_defn::lookup_symbol_nonlocal): New member function. * m2-lang.c (m2_language_data): Delete la_lookup_symbol_nonlocal initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_lookup_symbol_nonlocal): Rename to rust_language::lookup_symbol_nonlocal. (rust_language_data): Delete la_lookup_symbol_nonlocal initializer. (rust_language::lookup_symbol_nonlocal): New member function, implementation from rust_lookup_symbol_nonlocal. * symtab.c (lookup_symbol_aux): Update call to lookup_symbol_nonlocal. (basic_lookup_symbol_nonlocal): Rename to... (language_defn::lookup_symbol_nonlocal): ...this, and update header comment. Remove language_defn parameter, and replace with uses of `this'. * symtab.h (basic_lookup_symbol_nonlocal): Delete declaration. 2020-06-17 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_value_print_inner initializer. (ada_language::value_print_inner): New member function. * c-lang.c (c_language_data): Delete la_value_print_inner initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. (d_language::value_print_inner): New member function. * f-lang.c (f_language_data): Delete la_value_print_inner initializer. (f_language::value_print_inner): New member function. * f-lang.h (f_value_print_innner): Rename to... (f_value_print_inner): ...this (note spelling of 'inner'). * f-valprint.c (f_value_print_innner): Rename to... (f_value_print_inner): ...this (note spelling of 'inner'). * go-lang.c (go_language_data): Delete la_value_print_inner initializer. (go_language::value_print_inner): New member function. * language.c (language_defn::value_print_inner): Define new member function. (unk_lang_value_print_inner): Delete. (unknown_language_data): Delete la_value_print_inner initializer. (unknown_language::value_print_inner): New member function. (auto_language_data): Delete la_value_print_inner initializer. (auto_language::value_print_inner): New member function. * language.h (language_data): Delete la_value_print_inner field. (language_defn::value_print_inner): Delcare new member function. * m2-lang.c (m2_language_data): Delete la_value_print_inner initializer. (m2_language::value_print_inner): New member function. * objc-lang.c (objc_language_data): Delete la_value_print_inner initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. (pascal_language::value_print_inner): New member function. * rust-lang.c (rust_language_data): Delete la_value_print_inner initializer. (rust_language::value_print_inner): New member function. * valprint.c (do_val_print): Update call to value_print_inner. 2020-06-17 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_value_print initializer. (ada_language::value_print): New member function. * c-lang.c (c_language_data): Delete la_value_print initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unk_lang_value_print): Delete. (language_defn::value_print): Define new member function. (unknown_language_data): Delete la_value_print initializer. (unknown_language::value_print): New member function. (auto_language_data): Delete la_value_print initializer. (auto_language::value_print): New member function. * language.h (language_data): Delete la_value_print field. (language_defn::value_print): Declare new member function. (LA_VALUE_PRINT): Update call to value_print. * m2-lang.c (m2_language_data): Delete la_value_print initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. (pascal_language::value_print): New member function. * rust-lang.c (rust_language_data): Delete la_value_print initializer. 2020-06-17 Andrew Burgess * ada-lang.c (ada_watch_location_expression): Rename to ada_language::watch_location_expression. (ada_language_data): Delete la_watch_location_expression initializer. (ada_language::watch_location_expression): New member function, implementation from ada_watch_location_expression. * breakpoint.c (watch_command_1): Update call to watch_location_expression. * c-lang.c (c_watch_location_expression): Rename to language_defn::watch_location_expression. (c_language_data): Delete la_watch_location_expression initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * c-lang.h (c_watch_location_expression): Delete declaration. * d-lang.c (d_language_data): Delete la_watch_location_expression initializer. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (language_defn::watch_location_expression): Member function implementation from c_watch_location_expression. (unknown_language_data): Delete la_watch_location_expression initializer. (auto_language_data): Likewise. * language.h (language_data): Delete la_watch_location_expression field. (language_defn::watch_location_expression): Declare new member function. * m2-lang.c (m2_language_data): Delete la_watch_location_expression initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_watch_location_expression): Rename to rust_language::watch_location_expression. (rust_language_data): Delete la_watch_location_expression initializer. (rust_language::watch_location_expression): New member function, implementation from rust_watch_location_expression. 2020-06-17 Andrew Burgess * ada-lang.c (ada_collect_symbol_completion_matches): Rename to ada_language::collect_symbol_completion_matches. (ada_language_data): Delete la_collect_symbol_completion_matches initializer. (ada_language::collect_symbol_completion_matches): New member function, implementation from ada_collect_symbol_completion_matches. * c-lang.c (c_language_data): Delete la_collect_symbol_completion_matches initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_collect_symbol_completion_matches): Rename to f_language::collect_symbol_completion_matches. (f_language_data): Delete la_collect_symbol_completion_matches initializer. (f_language::collect_symbol_completion_matches) New member function, implementation from f_collect_symbol_completion_matches. * go-lang.c (go_language_data): Delete la_collect_symbol_completion_matches initializer. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (language_data): Delete la_collect_symbol_completion_matches field. (language_defn::collect_symbol_completion_matches): New member function. * m2-lang.c (m2_language_data): Delete la_collect_symbol_completion_matches initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. * symtab.c (default_collect_symbol_completion_matches): Delete. (collect_symbol_completion_matches): Update call to collect_symbol_completion_matches. (collect_symbol_completion_matches_type): Likewise. * symtab.h (default_collect_symbol_completion_matches): Delete declaration. 2020-06-17 Andrew Burgess * ada-lang.c (ada_get_gdb_completer_word_break_characters): Delete. (ada_language_data): Delete la_word_break_characters initializer. (ada_language::word_break_characters): New member function. * c-lang.c (c_language_data): Delete la_word_break_characters initializer. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * completer.c: Update global comment. (advance_to_expression_complete_word_point): Update call to word_break_characters. (complete_files_symbols): Likewise. (complete_line_internal_1): Likewise. (default_completer_handle_brkchars): Likewise. (skip_quoted_chars): Likewise. * d-lang.c (d_language_data): Delete la_word_break_characters initializer. * f-lang.c (f_word_break_characters): Delete. (f_language_data): Delete la_word_break_characters initializer. (f_language::word_break_characters): New member function. * go-lang.c (go_language_data): Delete la_word_break_characters initializer. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (default_word_break_characters): Move declaration to earlier in the file. (language_data): Delete la_word_break_characters field. (language_defn::word_break_characters): New member function. * m2-lang.c (m2_language_data): Delete la_word_break_characters initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-17 Andrew Burgess * ada-lang.c (ada_get_symbol_name_matcher): Update header comment. (ada_language_data): Delete la_get_symbol_name_matcher initializer. (language_defn::get_symbol_name_matcher_inner): New member function. * c-lang.c (c_language_data): Delete la_get_symbol_name_matcher initializer. (cplus_language_data): Likewise. (cplus_language::get_symbol_name_matcher_inner): New member function. (asm_language_data): Delete la_get_symbol_name_matcher initializer. (minimal_language_data): Likewise. * cp-support.h (cp_get_symbol_name_matcher): Update header comment. * d-lang.c (d_language_data): Delete la_get_symbol_name_matcher initializer. * dictionary.c (iter_match_first_hashed): Update call to get_symbol_name_matcher. (iter_match_next_hashed): Likewise. (iter_match_next_linear): Likewise. * dwarf2/read.c (dw2_expand_symtabs_matching_symbol): Likewise. * f-lang.c (f_language_data): Delete la_get_symbol_name_matcher initializer. (f_language::get_symbol_name_matcher_inner): New member function. * go-lang.c (go_language_data): Delete la_get_symbol_name_matcher initializer. * language.c (default_symbol_name_matcher): Update header comment, make static. (language_defn::get_symbol_name_matcher): New definition. (language_defn::get_symbol_name_matcher_inner): Likewise. (get_symbol_name_matcher): Delete. (unknown_language_data): Delete la_get_symbol_name_matcher initializer. (auto_language_data): Likewise. * language.h (language_data): Delete la_get_symbol_name_matcher field. (language_defn::get_symbol_name_matcher): New member function. (language_defn::get_symbol_name_matcher_inner): Likewise. (default_symbol_name_matcher): Delete declaration. * linespec.c (find_methods): Update call to get_symbol_name_matcher. * m2-lang.c (m2_language_data): Delete la_get_symbol_name_matcher initializer. * minsyms.c (lookup_minimal_symbol): Update call to get_symbol_name_matcher. (iterate_over_minimal_symbols): Likewise. * objc-lang.c (objc_language_data): Delete la_get_symbol_name_matcher initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * psymtab.c (psymbol_name_matches): Update call to get_symbol_name_matcher. * rust-lang.c (rust_language_data): Delete la_get_symbol_name_matcher initializer. * symtab.c (symbol_matches_search_name): Update call to get_symbol_name_matcher. (compare_symbol_name): Likewise. 2020-06-17 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_compute_program initializer. * c-lang.c (c_language_data): Likewise. (c_language::compute_program): New member function. (cplus_language_data): Delete la_compute_program initializer. (cplus_language::compute_program): New member function. (asm_language_data): Delete la_compute_program initializer. (minimal_language_data): Likewise. * c-lang.h (c_compute_program): Update comment. (cplus_compute_program): Likewise. * compile/compile-c-support.c (c_compute_program): Likewise. (cplus_compute_program): Likewise. * compile/compile.c (compile_to_object): Update call to la_compute_program. * d-lang.c (d_language_data): Delete la_compute_program initializer. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (language_data): Delete la_compute_program field. (language_defn::compute_program): New member function. * m2-lang.c (m2_language_data): Delete la_compute_program initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-17 Andrew Burgess * ada-lang.c (ada_language_data) Delete la_class_name_from_physname initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (cplus_language::class_name_from_physname): New member function. (asm_language_data): Delete la_class_name_from_physname initializer. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * dwarf2/read.c (guess_partial_die_structure_name): Update to call method on language_defn class. (guess_full_die_structure_name): Likewise. * f-lang.c (f_language_data): Delete la_class_name_from_physname initializer. * go-lang.c (go_language_data): Likewise. * language.c (language_class_name_from_physname): Delete. (unk_lang_class_name): Delete. (unknown_language_data): Delete la_class_name_from_physname initializer. (auto_language_data): Likewise. * language.h (language_data): Delete la_class_name_from_physname field. (language_defn::class_name_from_physname): New function. (language_class_name_from_physname): Delete declaration. * m2-lang.c (m2_language_data): Delete la_class_name_from_physname initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-16 Tom Tromey * tui/tui-data.h (STATUS_NAME): New macro. * tui/tui-layout.c (tui_remove_some_windows) (initialize_known_windows, tui_register_window) (tui_layout_split::remove_windows, initialize_layouts) (tui_new_layout_command): Don't use hard-coded window names. 2020-06-16 Tom Tromey PR tui/25348: * tui/tui.c (tui_ensure_readline_initialized): Rename from tui_initialize_readline. Only run once. Call rl_initialize. * tui/tui.h (tui_ensure_readline_initialized): Rename from tui_initialize_readline. * tui/tui-io.c (tui_setup_io): Call tui_ensure_readline_initialized. * tui/tui-interp.c (tui_interp::init): Update. 2020-06-16 Tom Tromey * tui/tui-layout.c (tui_layout_split::remove_windows): Fix logic. Also preserve the status window. 2020-06-16 Tom Tromey * python/py-tui.c (tui_py_window::~tui_py_window): Handle case where m_window==nullptr. 2020-06-15 Tom Tromey * windows-nat.c (windows_nat::handle_output_debug_string): Update. (windows_nat::handle_ms_vc_exception): Update. * target.h (target_read_string): Change API. * target.c (target_read_string): Change API. * solib-svr4.c (open_symbol_file_object, svr4_read_so_list): Update. * solib-frv.c (frv_current_sos): Update. * solib-dsbt.c (dsbt_current_sos): Update. * solib-darwin.c (darwin_current_sos): Update. * linux-thread-db.c (inferior_has_bug): Update. * expprint.c (print_subexp_standard): Update. * ada-lang.c (ada_main_name, ada_tag_name_from_tsd) (ada_exception_message_1): Update. 2020-06-15 Tom Tromey * linux-tdep.c (dump_mapping_p): Use target_read_memory. 2020-06-15 Tom Tromey * valprint.c (read_string): Update comment. * target.c (MIN): Remove. (target_read_string): Rewrite. 2020-06-15 Tom Tromey * corefile.c (read_memory_string): Remove. * ada-valprint.c (ada_value_print_ptr): Update. * ada-lang.h (ada_tag_name): Change return type. * ada-lang.c (type_from_tag): Update. (ada_tag_name_from_tsd): Change return type. Use target_read_string. (ada_tag_name): Likewise. * gdbcore.h (read_memory_string): Don't declare. 2020-06-14 Hannes Domani * symtab.c (rbreak_command): Ignore Windows drive colon. 2020-06-12 Simon Marchi * NEWS: Mention removed GDBserver host support. 2020-06-12 Nelson Chu * features/riscv/rebuild-csr-xml.sh: Updated. 2020-06-11 Tom Tromey PR gdb/18318: * c-exp.y (lex_one_token): Handle 'p' like 'e'. 2020-06-09 Jonny Grant 2020-06-09 Simon Marchi * main.c (captured_main_1): Don't print new line after help. (print_gdb_help): add mailing list and IRC channel information to --help. Add new lines between items in the footer. Remove quotes around bug url. 2020-06-11 Keith Seitz PR gdb/21356 * gdbtypes.c (resolve_dynamic_union, resolve_dynamic_struct): Resolve typedefs for type length calculations. 2020-06-10 Tom de Vries PR ada/24713 * dwarf2/index-write.c (struct mapped_symtab): Add m_string_obstack. (write_psymbols): Enable .gdb_index for ada. * dwarf2/read.c: Remove comment stating .gdb_index is unsupported for ada. 2020-06-10 Tom de Vries * dwarf2/read.c (dw2_symtab_iter_init_common): Factor out of ... (dw2_symtab_iter_init): ... here. Add variant with "offset_type namei" instead of "const char *name" argument. (dw2_map_matching_symbols): Use "offset_type namei" variant of dw2_symtab_iter_init. 2020-06-08 Simon Marchi * gdbtypes.h (TYPE_FIELD_TYPE): Remove. Change all call sites to use type::field and field::type instead. 2020-06-08 Simon Marchi * gdbtypes.h (FIELD_TYPE): Remove. Change all call sites to use field::type instead. 2020-06-08 Simon Marchi * gdbtypes.h (struct field) : New methods. Rename `type` field to... : ... this. Change references throughout to use type or set_type methods. (FIELD_TYPE): Use field::type. Change call sites that modify the field's type to use field::set_type instead. 2020-06-08 Simon Marchi * gdbtypes.h (TYPE_INDEX_TYPE): Remove. Change all call sites to use type::index_type instead. 2020-06-08 Simon Marchi * gdbtypes.h (struct type) : New methods. (TYPE_INDEX_TYPE): Use type::index_type. * gdbtypes.c (create_array_type_with_stride): Likewise. 2020-06-07 Tom Tromey * valprint.c (generic_val_print_float): Remove "embedded_offset" parameter. (generic_value_print): Update. 2020-06-05 Andrew Burgess Revert commit 982a38f60b0. * python/py-tui.c (gdbpy_tui_set_title): Restore use of get. 2020-06-05 Andrew Burgess * python/py-tui.c (gdbpy_tui_set_title): Use release, not get, to avoid use after free. 2020-06-05 Tom de Vries * NEWS: Fix typos. 2020-06-04 Simon Marchi * dwarf2/read.c (dwarf2_read_gdb_index): Save partial_symtabs in the per_bfd object. (dwarf2_read_debug_names): Likewise. (dwarf2_initialize_objfile): Use partial_symtabs from per_bfd object when re-using a per_bfd object with an index. 2020-06-03 Tom de Vries PR symtab/26046 * dwarf2/read.c (scan_partial_symbols): Recurse into DW_TAG_subprogram children for C++. (load_partial_dies): Don't skip DW_TAG_inlined_subroutine child of DW_TAG_subprogram. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_data): Delete skip_trampoline initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (cplus_language::skip_trampoline): New member function. (asm_language_data): Delete skip_trampoline initializer. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unk_lang_trampoline): Delete function. (skip_language_trampoline): Update. (unknown_language_data): Delete skip_trampoline initializer. (auto_language_data): Likewise. * language.h (language_data): Delete skip_trampoline field. (language_defn::skip_trampoline): New function. * m2-lang.c (m2_language_data): Delete skip_trampoline initializer. * objc-lang.c (objc_skip_trampoline): Delete function, move implementation to objc_language::skip_trampoline. (objc_language_data): Delete skip_trampoline initializer. (objc_language::skip_trampoline): New member function with implementation from objc_skip_trampoline. * opencl-lang.c (opencl_language_data): Delete skip_trampoline initializer. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_demangle initializer. (ada_language::demangle): New member function. * c-lang.c (c_language_data): Delete la_demangle initializer. (cplus_language_data): Delete la_demangle initializer. (cplus_language::demangle): New member function. (asm_language_data): Delete la_demangle initializer. (minimal_language_data): Delete la_demangle initializer. * d-lang.c (d_language_data): Delete la_demangle initializer. (d_language::demangle): New member function. * f-lang.c (f_language_data): Delete la_demangle initializer. (f_language::demangle): New member function. * go-lang.c (go_language_data): Delete la_demangle initializer. (go_language::demangle): New member function. * language.c (language_demangle): Update. (unk_lang_demangle): Delete. (unknown_language_data): Delete la_demangle initializer. (unknown_language::demangle): New member function. (auto_language_data): Delete la_demangle initializer. (auto_language::demangle): New member function. * language.h (language_data): Delete la_demangle field. (language_defn::demangle): New function. * m2-lang.c (m2_language_data): Delete la_demangle initializer. * objc-lang.c (objc_language_data): Delete la_demangle initializer. (objc_language::demangle): New member function. * opencl-lang.c (opencl_language_data): Delete la_demangle initializer. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. (rust_language::demangle): New member function. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_print_type initializer. (ada_language::print_type): New member function. * c-lang.c (c_language_data): Delete la_print_type initializer. (c_language::print_type): New member function. (cplus_language_data): Delete la_print_type initializer. (cplus_language::print_type): New member function. (asm_language_data): Delete la_print_type initializer. (asm_language::print_type): New member function. (minimal_language_data): Delete la_print_type initializer. (minimal_language::print_type): New member function. * d-lang.c (d_language_data): Delete la_print_type initializer. (d_language::print_type): New member function. * f-lang.c (f_language_data): Delete la_print_type initializer. (f_language::print_type): New member function. * go-lang.c (go_language_data): Delete la_print_type initializer. (go_language::print_type): New member function. * language.c (unk_lang_print_type): Delete. (unknown_language_data): Delete la_print_type initializer. (unknown_language::print_type): New member function. (auto_language_data): Delete la_print_type initializer. (auto_language::print_type): New member function. * language.h (language_data): Delete la_print_type field. (language_defn::print_type): New function. (LA_PRINT_TYPE): Update. * m2-lang.c (m2_language_data): Delete la_print_type initializer. (m2_language::print_type): New member function. * objc-lang.c (objc_language_data): Delete la_print_type initializer. (objc_language::print_type): New member function. * opencl-lang.c (opencl_print_type): Delete, implementation moved to opencl_language::print_type. (opencl_language_data): Delete la_print_type initializer. (opencl_language::print_type): New member function, implementation from opencl_print_type. * p-lang.c (pascal_language_data): Delete la_print_type initializer. (pascal_language::print_type): New member function. * rust-lang.c (rust_print_type): Delete, implementation moved to rust_language::print_type. (rust_language_data): Delete la_print_type initializer. (rust_language::print_type): New member function, implementation from rust_print_type. 2020-06-02 Andrew Burgess * ada-lang.c (ada_sniff_from_mangled_name): Delete function, implementation moves to... (ada_language::sniff_from_mangled_name): ...here. Update return type. (ada_language_data): Delete la_sniff_from_mangled_name initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (cplus_language::sniff_from_mangled_name): New member function, implementation taken from gdb_sniff_from_mangled_name. (asm_language_data): Delete la_sniff_from_mangled_name initializer. (minimal_language_data): Likewise. * cp-support.c (gdb_sniff_from_mangled_name): Delete, implementation moves to cplus_language::sniff_from_mangled_name. * cp-support.h (gdb_sniff_from_mangled_name): Delete declaration. * d-lang.c (d_sniff_from_mangled_name): Delete, implementation moves to... (d_language::sniff_from_mangled_name): ...here. (d_language_data): Delete la_sniff_from_mangled_name initializer. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_sniff_from_mangled_name): Delete, implementation moves to... (go_language::sniff_from_mangled_name): ...here. (go_language_data): Delete la_sniff_from_mangled_name initializer. * language.c (language_sniff_from_mangled_name): Delete. (unknown_language_data): Delete la_sniff_from_mangled_name initializer. (auto_language_data): Likewise. * language.h (language_data): Delete la_sniff_from_mangled_name field. (language_defn::sniff_from_mangled_name): New function. (language_sniff_from_mangled_name): Delete declaration. * m2-lang.c (m2_language_data): Delete la_sniff_from_mangled_name field. * objc-lang.c (objc_sniff_from_mangled_name): Delete, implementation moves to... (objc_language::sniff_from_mangled_name): ...here. (objc_language_data): Delete la_sniff_from_mangled_name initializer. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_sniff_from_mangled_name): Delete, implementation moves to... (rust_language::sniff_from_mangled_name): ...here. (rust_language_data): Delete la_sniff_from_mangled_name initializer. * symtab.c (symbol_find_demangled_name): Call sniff_from_mangled_name member function. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_search_name_hash initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (cplus_language::search_name_hash): New member function. (asm_language_data): Delete la_search_name_hash initializer. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * dictionary.c (default_search_name_hash): Rename to... (language_defn::search_name_hash): ...this. * f-lang.c (f_language_data): Likewise. (f_language::search_name_hash): New member function. * go-lang.c (go_language_data): Delete la_search_name_hash initializer. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (struct language_data): Delete la_search_name_hash field. (language_defn::search_name_hash): Declare new member function. (default_search_name_hash): Delete declaration. * m2-lang.c (m2_language_data): Delete la_search_name_hash initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. * symtab.c (search_name_hash): Update call. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_get_compile_instance initializer. * c-lang.c (class compile_instance): Declare. (c_language_data): Delete la_get_compile_instance initializer. (c_language::get_compile_instance): New member function. (cplus_language_data): Delete la_get_compile_instance initializer. (cplus_language::get_compile_instance): New member function. (asm_language_data): Delete la_get_compile_instance initializer. (minimal_language_data): Likewise. * c-lang.h (c_get_compile_context): Update comment. (cplus_get_compile_context): Update comment. * compile/compile.c (compile_to_object): Update calls, don't rely on function pointer being NULL. * d-lang.c (d_language_data): Delete la_get_compile_instance initializer. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (language_data): Delete la_get_compile_instance field. (language_defn::get_compile_instance): New member function. * m2-lang.c (m2_language_data): Delete la_get_compile_instance initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-02 Andrew Burgess * ada-lang.c (ada_add_all_symbols): Update comment. (ada_iterate_over_symbols): Delete, move implementation to... (ada_language::iterate_over_symbols): ...here, a new member function, rewrite to use range based for loop. (ada_language_data): Delete la_iterate_over_symbols initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (asm_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (language_data): Delete la_iterate_over_symbols field. (language_defn::iterate_over_symbols): New member function. (LA_ITERATE_OVER_SYMBOLS): Update. * linespec.c (iterate_over_all_matching_symtabs): Update. * m2-lang.c (m2_language_data): Delete la_iterate_over_symbols initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_lookup_transparent_type initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (cplus_language::lookup_transparent_type): New member function. (asm_language_data): Delete la_lookup_transparent_type initializer. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (unknown_language_data): Likewise. (auto_language_data): Likewise. * language.h (struct language_data): Delete la_lookup_transparent_type field. (language_defn::lookup_transparent_type): New member function. * m2-lang.c (m2_language_data): Delete la_lookup_transparent_type initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. * symtab.c (symbol_matches_domain): Update call. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_arch_info): Delete function, move implementation to... (ada_language::language_arch_info): ...here, a new member function. (ada_language_data): Delete la_language_arch_info. * c-lang.c (c_language_data): Likewise. (c_language::language_arch_info): New member function. (cplus_language_arch_info): Delete function, move implementation to... (cplus_language::language_arch_info): ...here, a new member function. (cplus_language_data): Delete la_language_arch_info. (asm_language_data): Likewise. (asm_language::language_arch_info): New member function. (minimal_language_data): Delete la_language_arch_info. (minimal_language::language_arch_info): New member function. * d-lang.c (d_language_arch_info): Delete function, move implementation to... (d_language::language_arch_info): ...here, a new member function. (d_language_data): Delete la_language_arch_info. * f-lang.c (f_language_arch_info): Delete function, move implementation to... (f_language::language_arch_info): ...here, a new member function. (f_language_data): Delete la_language_arch_info. * go-lang.c (go_language_arch_info): Delete function, move implementation to... (go_language::language_arch_info): ...here, a new member function. (go_language_data): Delete la_language_arch_info. * language.c (unknown_language_data): Likewise. (unknown_language::language_arch_info): New member function. (auto_language_data): Delete la_language_arch_info. (auto_language::language_arch_info): New member function. (language_gdbarch_post_init): Update call to la_language_arch_info. * language.h (language_data): Delete la_language_arch_info function pointer. (language_defn::language_arch_info): New function. * m2-lang.c (m2_language_arch_info): Delete function, move implementation to... (m2_language::language_arch_info): ...here, a new member function. (m2_language_data): Delete la_language_arch_info. * objc-lang.c (objc_language_arch_info): Delete function, move implementation to... (objc_language::language_arch_info): ...here, a new member function. (objc_language_data): Delete la_language_arch_info. * opencl-lang.c (opencl_language_arch_info): Delete function, move implementation to... (opencl_language::language_arch_info): ...here, a new member function. (opencl_language_data): Delete la_language_arch_info. * p-lang.c (pascal_language_arch_info): Delete function, move implementation to... (pascal_language::language_arch_info): ...here, a new member function. (pascal_language_data): Delete la_language_arch_info. * rust-lang.c (rust_language_arch_info): Delete function, move implementation to... (rust_language::language_arch_info): ...here, a new member function. (rust_language_data): Delete la_language_arch_info. 2020-06-02 Andrew Burgess * ada-lang.c (ada_language_data): Delete la_pass_by_reference initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (cplus_language::pass_by_reference_info): New method. (asm_language_data): Delete la_pass_by_reference initializer. (minimal_language_data): Likewise. * cp-abi.c (cp_pass_by_reference): Remove use of default_pass_by_reference. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * gnu-v3-abi.c (gnuv3_pass_by_reference): Remove use of default_pass_by_reference. * go-lang.c (go_language_data): Likewise. * language.c (language_pass_by_reference): Update. (default_pass_by_reference): Delete. (unknown_language_data): Delete la_pass_by_reference initializer. (auto_language_data): Likewise. * language.h (struct language_data): Delete la_pass_by_reference field. (language_defn::pass_by_reference_info): New member function. (default_pass_by_reference): Delete declaration. * m2-lang.c (m2_language_data): Delete la_pass_by_reference initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-02 Andrew Burgess * ada-lang.c (ada_read_var_value): Delete function, move implementation to... (ada_language::read_var_value): ...here. (ada_language_data): Delete la_read_var_value initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * findvar.c (default_read_var_value): Rename to... (language_defn::read_var_value): ...this. * findvar.c (read_var_value): Update header comment, and change to call member function instead of function pointer. * go-lang.c (go_language_data): Likewise. * language.c (unknown_language_data): Delete la_read_var_value initializer. (auto_language_data): Likewise. * language.h (struct language_data): Delete la_read_var_value field. (language_defn::read_var_value): New member function. (default_read_var_value): Delete declaration. * m2-lang.c (m2_language_data): Delete la_read_var_value initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. * value.h (default_read_var_value): Delete declaration. 2020-06-02 Andrew Burgess * ada-lang.c (ada_print_array_index): Delete function, move implementation to... (ada_language::print_array_index): ...here. (ada_language_data): Delete la_print_array_index initializer. * c-lang.c (c_language_data): Likewise. (cplus_language_data): Likewise. (minimal_language_data): Likewise. * d-lang.c (d_language_data): Likewise. * f-lang.c (f_language_data): Likewise. * go-lang.c (go_language_data): Likewise. * language.c (default_print_array_index): Delete function, move implementation to... (language_defn::print_array_index): ...here. (unknown_language_data): Delete la_print_array_index initializer. (auto_language_data): Likewise. * language.h (struct language_data): Delete la_print_array_index field. (language_defn::print_array_index): New member function. (LA_PRINT_ARRAY_INDEX): Update. (default_print_array_index): Delete declaration. * m2-lang.c (m2_language_data): Delete la_print_array_index initializer. * objc-lang.c (objc_language_data): Likewise. * opencl-lang.c (opencl_language_data): Likewise. * p-lang.c (pascal_language_data): Likewise. * rust-lang.c (rust_language_data): Likewise. 2020-06-02 Andrew Burgess * gdb/ada-lang.c (ada_language_defn): Convert to... (ada_language_data): ...this. (class ada_language): New class. (ada_language_defn): New static global. * gdb/c-lang.c (c_language_defn): Convert to... (c_language_data): ...this. (class c_language): New class. (c_language_defn): New static global. (cplus_language_defn): Convert to... (cplus_language_data): ...this. (class cplus_language): New class. (cplus_language_defn): New static global. (asm_language_defn): Convert to... (asm_language_data): ...this. (class asm_language): New class. (asm_language_defn): New static global. (minimal_language_defn): Convert to... (minimal_language_data): ...this. (class minimal_language): New class. (minimal_language_defn): New static global. * gdb/d-lang.c (d_language_defn): Convert to... (d_language_data): ...this. (class d_language): New class. (d_language_defn): New static global. * gdb/f-lang.c (f_language_defn): Convert to... (f_language_data): ...this. (class f_language): New class. (f_language_defn): New static global. * gdb/go-lang.c (go_language_defn): Convert to... (go_language_data): ...this. (class go_language): New class. (go_language_defn): New static global. * gdb/language.c (unknown_language_defn): Remove declaration. (current_language): Initialize to nullptr, real initialization is moved to _initialize_language. (languages): Delete global. (language_defn::languages): Define. (set_language_command): Use language_defn::languages. (set_language): Likewise. (range_error): Likewise. (language_enum): Likewise. (language_def): Likewise. (add_set_language_command): Use language_def::languages for the language list, and language_def to lookup language pointers. (skip_language_trampoline): Use language_defn::languages. (unknown_language_defn): Convert to... (unknown_language_data): ...this. (class unknown_language): New class. (unknown_language_defn): New static global. (auto_language_defn): Convert to... (auto_language_data): ...this. (class auto_language): New class. (auto_language_defn): New static global. (language_gdbarch_post_init): Use language_defn::languages. (_initialize_language): Initialize current_language. * gdb/language.h (struct language_defn): Rename to... (struct language_data): ...this. (struct language_defn): New. (auto_language_defn): Delete. (unknown_language_defn): Delete. (minimal_language_defn): Delete. (ada_language_defn): Delete. (asm_language_defn): Delete. (c_language_defn): Delete. (cplus_language_defn): Delete. (d_language_defn): Delete. (f_language_defn): Delete. (go_language_defn): Delete. (m2_language_defn): Delete. (objc_language_defn): Delete. (opencl_language_defn): Delete. (pascal_language_defn): Delete. (rust_language_defn): Delete. * gdb/m2-lang.c (m2_language_defn): Convert to... (m2_language_data): ...this. (class m2_language): New class. (m2_language_defn): New static global. * gdb/objc-lang.c (objc_language_defn): Convert to... (objc_language_data): ...this. (class objc_language): New class. (objc_language_defn): New static global. * gdb/opencl-lang.c (opencl_language_defn): Convert to... (opencl_language_data): ...this. (class opencl_language): New class. (opencl_language_defn): New static global. * gdb/p-lang.c (pascal_language_defn): Convert to... (pascal_language_data): ...this. (class pascal_language): New class. (pascal_language_defn): New static global. * gdb/rust-exp.y (rust_lex_tests): Use language_def to find language pointer, update comment format. * gdb/rust-lang.c (rust_language_defn): Convert to... (rust_language_data): ...this. (class rust_language): New class. (rust_language_defn): New static global. 2020-06-01 Andrew Burgess * dwarf2/read.c (class lnp_state_machine) : New member variable. : New member variable. (lnp_state_machine::record_line): Don't record some lines, update tracking of is_stmt at the same address. (lnp_state_machine::lnp_state_machine): Initialise new member variables. 2020-06-01 Samuel Thibault * config/i386/i386gnu.mn [%_S.o %_U.o] (COMPILE.post): Add "-include gnu-nat-mig.h". * gnu-nat-mig.h: New file. * gnu-nat.c: Include "gnu-nat-mig.h". (exc_server, msg_reply_server, notify_server, process_reply_server): Remove declarations. 2020-05-30 Samuel Thibault * gnu-nat.h (inf_validate_procs, inf_suspend, inf_set_traced, steal_exc_port, proc_get_state, inf_clear_wait, inf_cleanup, inf_startup, inf_update_suspends, inf_set_pid, inf_steal_exc_ports, inf_validate_procinfo, inf_validate_task_sc, inf_restore_exc_ports, inf_set_threads_resume_sc, inf_set_threads_resume_sc_for_signal_thread, inf_resume, inf_set_step_thread, inf_detach, inf_attach, inf_signal, inf_continue, make_proc, proc_abort, _proc_free, proc_update_sc, proc_get_exception_port, proc_set_exception_port, _proc_get_exc_port, proc_steal_exc_port, proc_restore_exc_port, proc_trace): Move functions to gnu_nat_target class. * gnu-nat.c: Likewise. (inf_update_procs, S_proc_wait_reply, set_task_pause_cmd, set_task_exc_port_cmd, set_signals_cmd, set_thread_pause_cmd, set_thread_exc_port_cmd): Call inf_validate_procs through gnu_target object. (gnu_nat_target::create_inferior, gnu_nat_target::detach): Pass `this' instead of `gnu_target'. 2020-05-30 Samuel Thibault * i386-gnu-tdep.c: Include "gdbcore.h" (gnu_sigtramp_code, i386_gnu_sc_reg_offset): New arrays. (GNU_SIGTRAMP_LEN, GNU_SIGTRAMP_TAIL, I386_GNU_SIGCONTEXT_THREAD_STATE_OFFSET): New macros (i386_gnu_sigtramp_start, i386_gnu_sigtramp_p, i386_gnu_sigcontext_addr): New functions (i386gnu_init_abi): Register i386_gnu_sigtramp_p, i386_gnu_sigcontext_addr, and i386_gnu_sc_reg_offset in the gdbarch tdep. 2020-05-30 Samuel Thibault * gnu-nat.c (gnu_nat_target::create_inferior): Move push_target call before fork_inferior call. Avoid calling it if target_is_pushed returns true. 2020-05-30 Samuel Thibault * gnu-nat.h (gnu_target): New variable declaration. * i386-gnu-nat.c (_initialize_i386gnu_nat): Initialize gnu_target. * gnu-nat.c (gnu_target): New variable. (inf_validate_procs): Pass gnu_target to thread_change_ptid, add_thread_silent, and add_thread calls. (gnu_nat_target::create_inferior): Pass gnu_target to add_thread_silent, thread_change_ptid call. (gnu_nat_target::detach): Pass gnu_target to detach_inferior call. 2020-05-30 Samuel Thibault * gnu-nat.c (gnu_xfer_auxv): Remove unused `res' variable. (gnu_nat_target::find_memory_regions): Remove unused `old_address' variable. 2020-05-30 Samuel Thibault * gnu-nat.c: Include "gdbarch.h". 2020-05-30 Samuel Thibault * reply_mig_hack.awk (Error return): Cast function through void *, to bypass compiler function call check. 2020-05-30 Samuel Thibault * config/i386/i386gnu.mn (%_reply_S.c): Add dependency on $(srcdir)/reply_mig_hack.awk. 2020-05-30 Samuel Thibault * gnu-nat.h (gnu_debug_flag): Set type to bool. 2020-05-30 Jonny Grant * configure.ac (ACX_BUGURL): change bug URL to https. 2020-05-30 Pedro Alves * cp-support.c (replace_typedefs_template): New. (replace_typedefs_qualified_name): Handle DEMANGLE_COMPONENT_TEMPLATE. 2020-05-29 Simon Marchi * dwarf2/comp-unit.c, dwarf2/comp-unit.h, dwarf2/index-cache.c, dwarf2/index-cache.h, dwarf2/index-write.c, dwarf2/index-write.h, dwarf2/line-header.c, dwarf2/line-header.h, dwarf2/macro.c, dwarf2/macro.h, dwarf2/read.c, dwarf2/read.h: Rename struct dwarf2_per_objfile variables and fields from `dwarf2_per_objfile` to just `per_objfile` throughout. 2020-05-28 Simon Marchi * dwarf2/loc.c (class dwarf_evaluate_loc_desc) : Add comment. 2020-05-28 Kevin Buettner Keith Seitz * python/python.c (do_start_initialization): Call PyEval_SaveThread instead of PyEval_ReleaseLock. (class gdbpy_gil): Move to earlier in file. (finalize_python): Set gdb_python_initialized. (gdbpy_check_quit_flag): Acquire GIL via gdbpy_gil. Return early when not initialized. 2020-05-28 Simon Marchi * dwarf2/loc.c (class dwarf_evaluate_loc_desc) : Remove assert. Override per_objfile with caller_per_objfile. 2020-05-28 Tom de Vries * dwarf2/read.c (dw2_symtab_iter_next, dw2_expand_marked_cus): Limit PR gold/15646 workaround to symbol kind "type". 2020-05-27 Tom Tromey * dwarf2/read.c (load_partial_dies): Use add_partial_symbol. 2020-05-27 Tom Tromey * dwarf2/abbrev.h (struct abbrev_table) : Inline. Use htab_find_with_hash. : Remove "abbrev_number" parameter. * dwarf2/abbrev.c (abbrev_table::add_abbrev): Remove "abbrev_number" parameter. Use htab_find_slot_with_hash. (hash_abbrev): Add comment. (abbrev_table::lookup_abbrev): Move to header file. (abbrev_table::read): Update. 2020-05-27 Tom Tromey * dwarf2/read.c (struct partial_die_info) : Declare new method. : New member. : Rename from "name". (partial_die_info): Initialize canonical_name. (scan_partial_symbols): Check raw_name. (partial_die_parent_scope, partial_die_full_name) (add_partial_symbol, add_partial_subprogram) (add_partial_enumeration, load_partial_dies): Use "name" method. (partial_die_info::name): New method. (partial_die_info::read, guess_partial_die_structure_name) (partial_die_info::fixup): Update. 2020-05-27 Tom Tromey * dwarf2/attribute.h (struct attribute) : Inline. : Inline. : New method. * dwarf2/attribute.c (attribute::form_is_ref): Move to header. (attribute::get_ref_die_offset_complaint): Rename from get_ref_die_offset. Just issue complaint. 2020-05-27 Hannes Domani * cli/cli-cmds.c (shell_escape): Move exit_status_set_internal_vars. 2020-05-27 Hannes Domani * exec.c (exec_file_attach): Use errno value of first openp failure. 2020-05-27 Hannes Domani * nat/windows-nat.c (windows_thread_info::~windows_thread_info): Don't close thread handle. 2020-05-27 Tom Tromey Simon Marchi * objfiles.h (struct objfile) : Now a shared_ptr. * dwarf2/read.h (struct dwarf2_per_objfile) : New member. * dwarf2/read.c (dwarf2_per_bfd_bfd_data_key, dwarf2_per_bfd_objfile_data_key>: New globals. (dwarf2_has_info): Use shared dwarf2_per_bfd if possible. (dwarf2_get_section_info): Use get_dwarf2_per_objfile. (dwarf2_initialize_objfile): Consider cases where per_bfd can be shared. (dwarf2_build_psymtabs): Set objfile::partial_symtabs and short-circuit when sharing. (dwarf2_build_psymtabs): Set dwarf2_per_objfile::partial_symtabs. (dwarf2_psymtab::expand_psymtab): Use free_cached_comp_units. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_bfd) : Move to... (struct dwarf2_per_objfile) : ... here. * dwarf2/read.c (handle_DW_AT_stmt_list): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (struct mapped_index_base) : Add per_objfile parameter. (struct mapped_index) : Likewise. (struct mapped_debug_names): Remove constructor. : Remove field. : Add per_objfile parameter. (mapped_index_base::find_name_components_bounds, mapped_index_base::build_name_components, dw2_expand_symtabs_matching_symbol): Likewise. (class mock_mapped_index) : Likewise. (check_match): Likewise. (check_find_bounds_finds): Likewise. (test_mapped_index_find_name_component_bounds): Update. (CHECK_MATCH): Update. (dw2_expand_symtabs_matching): Update. (class dw2_debug_names_iterator) : Add per_objfile parameter. : Likewise. : New field. (mapped_debug_names::namei_to_name): Add dwarf2_per_objfile parameter. (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise. (dw2_debug_names_iterator::next): Update. (dw2_debug_names_lookup_symbol): Update. (dw2_debug_names_expand_symtabs_for_function): Update. (dw2_debug_names_map_matching_symbols): Update. (dw2_debug_names_expand_symtabs_matching): Update. (dwarf2_read_debug_names): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_cu): Forward-declare. (struct dwarf2_per_bfd) : Remove, move to dwarf2_per_objfile. : Remove. (struct dwarf2_per_objfile) : New methods. : New member. (struct dwarf2_per_cu_data) : Remove. * dwarf2/read.c (struct dwarf2_cu) : Remove. (age_cached_comp_units, free_one_cached_comp_unit): Remove, moved to methods of dwarf2_per_objfile. (dwarf2_clear_marks): Remove. (dwarf2_queue_item::~dwarf2_queue_item): Update. (dwarf2_per_bfd::~dwarf2_per_bfd): Don't free dwarf2_cus. (dwarf2_per_bfd::free_cached_comp_units): Remove. (dwarf2_per_objfile::remove_all_cus): New. (class free_cached_comp_units) <~free_cached_comp_units>: Update. (load_cu): Update. (dw2_do_instantiate_symtab): Adjust. (fill_in_sig_entry_from_dwo_entry): Adjust. (cutu_reader::init_tu_and_read_dwo_dies): Update. (cutu_reader::cutu_reader): Likewise. (cutu_reader::keep): Use dwarf2_per_objfile::set_cu. (cutu_reader::cutu_reader): Use dwarf2_per_objfile::get_cu. (process_psymtab_comp_unit): Use dwarf2_per_objfile::remove_cu and dwarf2_per_objfile::age_comp_units. (load_partial_comp_unit): Update. (maybe_queue_comp_unit): Use dwarf2_per_objfile::get_cu. (process_queue): Likewise. (find_partial_die): Use dwarf2_per_objfile::get_cu instead of cu backlink. (dwarf2_read_addr_index): Likewise. (follow_die_offset): Likewise. (dwarf2_fetch_die_loc_sect_off): Likewise. (dwarf2_fetch_constant_bytes): Likewise. (dwarf2_fetch_die_type_sect_off): Likewise. (follow_die_sig_1): Likewise. (load_full_type_unit): Likewise. (read_signatured_type): Likewise. (dwarf2_cu::dwarf2_cu): Don't set cu field. (dwarf2_cu::~dwarf2_cu): Remove. (dwarf2_per_objfile::get_cu): New. (dwarf2_per_objfile::set_cu): New. (age_cached_comp_units): Rename to... (dwarf2_per_objfile::age_comp_units): ... this. Adjust to std::unordered_map. (free_one_cached_comp_unit): Rename to... (dwarf2_per_objfile::remove_cu): ... this. Adjust to std::unordered_map. (dwarf2_per_objfile::~dwarf2_per_objfile): New. (dwarf2_mark_helper): Use dwarf2_per_objfile::get_cu, expect a dwarf2_per_objfile in data. (dwarf2_mark): Pass dwarf2_per_objfile in data to htab_traverse. (dwarf2_clear_marks): Remove. 2020-05-27 Simon Marchi * dwarf2/read.c (class cutu_reader) : Replace `int use_existing_cu` parameter with `dwarf2_cu *existing_cu`. (init_tu_and_read_dwo_dies): Likewise. (cutu_reader::init_tu_and_read_dwo_dies): Likewise. (cutu_reader::cutu_reader): Likewise. (load_partial_comp_unit): Likewise. (process_psymtab_comp_unit): Update. (build_type_psymtabs_1): Update. (process_skeletonless_type_unit): Update. (load_full_comp_unit): Update. (find_partial_die): Update. (dwarf2_read_addr_index): Update. (read_signatured_type): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_cu_data) : New fields. : New method. * dwarf2/read.c (per_cu_header_read_in): Remove. (dwarf2_per_cu_data::get_header): New. (dwarf2_per_cu_data::addr_size): Update. (dwarf2_per_cu_data::offset_size): Update. (dwarf2_per_cu_data::ref_addr_size): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (load_cu): Return dwarf2_cu. (dw2_do_instantiate_symtab): Update. (queue_and_load_all_dwo_tus): Change parameter from dwarf2_per_cu_data to dwarf2_cu. (dwarf2_fetch_die_loc_sect_off): Update. (dwarf2_fetch_constant_bytes): Update. (dwarf2_fetch_die_type_sect_off): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (process_full_comp_unit, process_full_type_unit): Remove per_cu, per_objfile paramters. Add dwarf2_cu parameter. (process_queue): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (create_cu_from_index_list): Replace dwarf2_per_objfile parameter with dwarf2_per_bfd. (create_cus_from_index_list): Likewise. (create_cus_from_index): Likewise. (create_signatured_type_table_from_index): Likewise. (create_cus_from_debug_names_list): Likewise. (create_cus_from_debug_names): Likewise. (dwarf2_read_gdb_index): Update. (dwarf2_read_debug_names): Update. 2020-05-27 Tom Tromey Simon Marchi * dwarf2/read.h (struct dwarf2_per_objfile) : New methods. : New member. (struct signatured_type) : Remove. * dwarf2/read.c (dwarf2_per_objfile::get_type_for_signatured_type, dwarf2_per_objfile::set_type_for_signatured_type): New. (get_signatured_type): Use new methods. 2020-05-27 Tom Tromey Simon Marchi * dwarf2/read.h (struct type_unit_group_unshareable): New. (struct dwarf2_per_objfile) : New member. : New method. * dwarf2/read.c (struct type_unit_group) : Remove; move to type_unit_group_unshareable. (dwarf2_per_objfile::get_type_unit_group_unshareable): New. (process_full_type_unit, dwarf2_cu::setup_type_unit_groups) (dwarf2_cu::setup_type_unit_groups): Use type_unit_group_unshareable. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_cu_data): : Remove. * dwarf2/read.c (create_cu_from_index_list): Don't assign dwarf2_per_objfile. (create_signatured_type_table_from_index): Likewise. (create_signatured_type_table_from_debug_names): Likewise. (create_debug_type_hash_table): Likewise. (fill_in_sig_entry_from_dwo_entry): Likewise. (create_type_unit_group): Likewise. (read_comp_units_from_section): Likewise. (create_cus_hash_table): Likewise. 2020-05-27 Simon Marchi * dwarf2/read.c (process_psymtab_comp_unit): Remove reference to dwarf2_per_cu_data::dwarf2_per_objfile. (compute_compunit_symtab_includes): Likewise. (dwarf2_cu::start_symtab): Likewise. 2020-05-27 Simon Marchi * dwarf2/read.h (dwarf2_get_die_type): Add dwarf2_per_objfile parameter. * dwarf2/read.c (get_die_type_at_offset): Likewise. (read_namespace_alias): Update. (lookup_die_type): Update. (dwarf2_get_die_type): Add dwarf2_per_objfile parameter. * dwarf2/loc.c (class dwarf_evaluate_loc_desc) : Update. (disassemble_dwarf_expression): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_queue_item): Add dwarf2_per_objfile parameter, assign new parameter. : New field. * dwarf2/read.c (free_one_cached_comp_unit): Add dwarf2_per_objfile parameter. (queue_comp_unit): Likewise. (dw2_do_instantiate_symtab): Update. (process_psymtab_comp_unit): Update. (maybe_queue_comp_unit): Add dwarf2_per_objfile parameter. (process_imported_unit_die): Update. (queue_and_load_dwo_tu): Update. (follow_die_offset): Update. (follow_die_sig_1): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_cu_data) : Remove. * dwarf2/read.c (dwarf2_compute_name): Pass per_objfile down. (read_call_site_scope): Assign per_objfile. (dwarf2_per_cu_data::objfile): Remove. * gdbtypes.h (struct call_site) : New member. * dwarf2/loc.h (dwarf2_evaluate_loc_desc): Add dwarf2_per_objfile parameter. * dwarf2/loc.c (dwarf2_evaluate_loc_desc_full): Add dwarf2_per_objfile parameter. (dwarf_expr_reg_to_entry_parameter): Add output dwarf2_per_objfile parameter. (locexpr_get_frame_base): Update. (class dwarf_evaluate_loc_desc) : Update. : Update. : Update. (dwarf_entry_parameter_to_value): Add dwarf2_per_objfile parameter. (value_of_dwarf_reg_entry): Update. (rw_pieced_value): Update. (indirect_synthetic_pointer): Update. (dwarf2_evaluate_property): Update. (dwarf2_loc_desc_get_symbol_read_needs): Add dwarf2_per_objfile parameter. (locexpr_read_variable): Update. (locexpr_get_symbol_read_needs): Update. (loclist_read_variable): Update. 2020-05-27 Simon Marchi * 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): Add dwarf2_per_objfile parameter. * 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): Add dwarf2_per_objfile parameter. * dwarf2/loc.c (indirect_synthetic_pointer, per_cu_dwarf_call, sect_variable_value): Add dwarf2_per_objfile parameter. (class dwarf_evaluate_loc_desc) : Update. (fetch_const_value_from_synthetic_pointer): Add dwarf2_per_objfile parameter. (fetch_const_value_from_synthetic_pointer): Update. (coerced_pieced_ref): Update. (class symbol_needs_eval_context) : Update. (dwarf2_compile_expr_to_ax): Update. 2020-05-27 Simon Marchi * dwarf2/loc.c (allocate_piece_closure): Add dwarf2_per_objfile parameter. (dwarf2_evaluate_loc_desc_full): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (dwarf2_read_addr_index): Add dwarf2_per_objfile parameter. * dwarf2/read.c (dwarf2_read_addr_index): Likewise. * dwarf2/loc.c (decode_debug_loclists_addresses): Add dwarf2_per_objfile parameter. (decode_debug_loc_dwo_addresses): Likewise. (dwarf2_find_location_expression): Update. (class dwarf_evaluate_loc_desc) : Update. (locexpr_describe_location_piece): Add dwarf2_per_objfile parameter. (disassemble_dwarf_expression): Add dwarf2_per_objfile parameter. (locexpr_describe_location_1): Likewise. (locexpr_describe_location): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_cu_data) : Remove. * dwarf2/read.c (dwarf2_per_cu_data::text_offset): Remove. * dwarf2/loc.c (dwarf2_find_location_expression): Update. (dwarf2_compile_property_to_c): Update. (dwarf2_compile_expr_to_ax): Add dwarf2_per_objfile parameter, use text offset from objfile. (locexpr_tracepoint_var_ref): Update. (locexpr_generate_c_location): Update. (loclist_describe_location): Update. (loclist_tracepoint_var_ref): Update. * dwarf2/compile.h (compile_dwarf_bounds_to_c): Add dwarf2_per_objfile parameter. * dwarf2/loc2c.c (do_compile_dwarf_expr_to_c): Likewise, use text offset from objfile. (compile_dwarf_expr_to_c): Add dwarf2_per_objfile parameter. 2020-05-27 Simon Marchi * dwarf2/expr.h (struct dwarf_expr_context) : Add dwarf2_per_objfile parameter. : Remove. : New member. * dwarf2/expr.c (dwarf_expr_context::dwarf_expr_context): Add dwarf2_per_objfile parameter. Don't set offset, set per_objfile. (dwarf_expr_context::execute_stack_op): Use offset from objfile. * dwarf2/frame.c (dwarf2_frame_find_fde): Return (by parameter) a dwarf2_per_objfile object instead of an offset. (class dwarf_expr_executor) : Add constructor. (execute_stack_op): Add dwarf2_per_objfile parameter, pass it to dwarf2_expr_executor constructor. Don't set offset. (dwarf2_fetch_cfa_info): Update. (struct dwarf2_frame_cache) : Remove. : New field. (dwarf2_frame_cache): Update. (dwarf2_frame_prev_register): Update. * dwarf2/loc.c (class dwarf_evaluate_loc_desc) : Add constructor. (dwarf2_evaluate_loc_desc_full): Update. (dwarf2_locexpr_baton_eval): Update. (class symbol_needs_eval_context) : Add constructor. (dwarf2_loc_desc_get_symbol_read_needs): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_cu_data) : Move to dwarf2_cu. : Move to dwarf2_per_objfile. (struct dwarf2_per_objfile) : Move here. * dwarf2/read.c (struct dwarf2_cu) : Move here. (read_func_scope): Update. (read_array_type): Update. (read_tag_string_type): Update. (attr_to_dynamic_prop): Update. (dwarf2_per_cu_data::int_type): Rename to... (dwarf2_per_objfile::int_type): ... this. (dwarf2_per_cu_data::addr_sized_int_type): Rename to... (dwarf2_cu::addr_sized_int_type): ... this. (read_subrange_type): Update. (dwarf2_per_cu_data::addr_type): Rename to... (dwarf2_cu::addr_type): ... this. (set_die_type): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (queue_and_load_all_dwo_tus): Access per_objfile data through per_cu->cu. 2020-05-27 Simon Marchi * dwarf2/read.c (lookup_dwo_comp_unit): Change dwarf2_per_cu_data parameter fo dwarf2_cu. (lookup_dwo_type_unit): Likewise. (read_cutu_die_from_dwo): Likewise. (lookup_dwo_unit): Likewise. (open_and_init_dwo_file): Likewise. (lookup_dwo_cutu): Likewise. (lookup_dwo_comp_unit): Likewise. (lookup_dwo_type_unit): Likewise. (cutu_reader::init_tu_and_read_dwo_dies): Update. (cutu_reader::cutu_reader): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (process_full_comp_unit): Add dwarf2_per_objfile parameter. (process_full_type_unit): Likewise. (process_queue): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (recursively_compute_inclusions): Add dwarf2_per_objfile parameter. (compute_compunit_symtab_includes): Likewise. (process_cu_includes): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (create_partial_symtab): Add dwarf2_per_objfile parameter. (create_type_unit_group): Update. (process_psymtab_comp_unit_reader): Update. (build_type_psymtabs_reader): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (cutu_reader::keep): Access dwarf2_per_objfile object through m_this_cu->cu. 2020-05-27 Simon Marchi * dwarf2/read.c (queue_and_load_dwo_tu): Expect a dwarf2_cu as the info parameter. (queue_and_load_all_dwo_tus): Pass per_cu->cu. 2020-05-27 Simon Marchi * dwarf2/read.c (class cutu_reader) : Add per_objfile parameter. (load_full_type_unit): Add per_objfile parameter. (read_signatured_type): Likewise. (load_full_comp_unit): Likewise. (load_cu): Likewise. (dw2_do_instantiate_symtab): Likewise. (dw2_get_file_names): Likewise. (dw2_map_symtabs_matching_filename): Update. (dw_expand_symtabs_matching_file_matcher): Update. (dw2_map_symbol_filenames): Update. (process_psymtab_comp_unit): Add per_objfile parameter. (build_type_psymtabs_1): Update. (process_skeletonless_type_unit): Update. (dwarf2_build_psymtabs_hard): Update. (load_partial_comp_unit): Add per_objfile parameter. (scan_partial_symbols): Update. (load_full_comp_unit): Add per_objfile parameter. (process_imported_unit_die): Update. (create_cus_hash_table): Update. (find_partial_die): Update. (dwarf2_read_addr_index): Update. (follow_die_offset): Update. (dwarf2_fetch_die_loc_sect_off): Update. (dwarf2_fetch_constant_bytes): Update. (dwarf2_fetch_die_type_sect_off): Update. (follow_die_sig_1): Update. (load_full_type_unit): Add per_objfile parameter. (read_signatured_type): Likewise. 2020-05-27 Simon Marchi * dwarf2/read.c (lookup_dwo_unit): Use bfd_get_filename instead of objfile_name. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_bfd) : New member. (dwarf2_get_dwz_file): Replace parameter with dwarf2_per_bfd. * dwarf2/read.c (dwarf2_per_bfd::dwarf2_per_bfd): Assign obfd field. (dwarf2_get_dwz_file): Replace parameter with dwarf2_per_bfd. (create_cus_from_index): Update. (dwarf2_read_gdb_index): Update. (create_cus_from_debug_names): Update. (dwarf2_read_debug_names): Update. (get_abbrev_section_for_cu): Update. (create_all_comp_units): Update. (read_attribute_value): Update. (get_debug_line_section): Update. * dwarf2/index-cache.c (index_cache::store): Update. * dwarf2/index-write.c (save_gdb_index_command): Update. * dwarf2/macro.c (dwarf_decode_macro_bytes): Update. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_cu_data) : New member. * dwarf2/read.c (dwarf2_per_bfd::allocate_per_cu): Initialize dwarf2_per_cu_data::per_bfd. (dwarf2_per_bfd::allocate_signatured_type): Likewise. (create_type_unit_group): Likewise. (queue_comp_unit): Remove reference to per_cu->dwarf2_per_objfile. (maybe_queue_comp_unit): Likewise. (fill_in_sig_entry_from_dwo_entry): Assign new field. (create_cus_hash_table): Assign new field. 2020-05-27 Simon Marchi * dwarf2/read.c: Replace dwarf2_cu->per_cu->dwarf2_per_objfile references with dwarf2_cu->per_objfile throughout. 2020-05-27 Simon Marchi * dwarf2/read.c (dw2_do_instantiate_symtab): Add per_objfile parameter, don't use per_cu->dwarf2_per_objfile. (dw2_instantiate_symtab): Likewise. (dw2_find_last_source_symtab): Update. (dw2_map_expand_apply): Update. (dw2_lookup_symbol): Update. (dw2_expand_symtabs_for_function): Update. (dw2_expand_all_symtabs): Update. (dw2_expand_symtabs_with_fullname): Update. (dw2_expand_symtabs_matching_one): Add per_objfile parameter, don't use per_cu->dwarf2_per_objfile. (dw2_expand_marked_cus): Update. (dw2_find_pc_sect_compunit_symtab): Update. (dw2_debug_names_lookup_symbol): Update. (dw2_debug_names_expand_symtabs_for_function): Update. (dw2_debug_names_map_matching_symbols): Update. (dwarf2_psymtab::expand_psymtab): Update. 2020-05-27 Simon Marchi * dwarf2/read.c (struct dwarf2_cu) : Add parameter. : New member. (class cutu_reader) : Add parameter. (cutu_reader::init_tu_and_read_dwo_dies): Add parameter, update call to dwarf2_cu. (cutu_reader::cutu_reader): Update. (dwarf2_cu::dwarf2_cu): Add parameter, initialize per_objfile. 2020-05-27 Simon Marchi * dwarf2/read.h (struct dwarf2_per_bfd) : Move to struct dwarf2_per_objfile. (struct dwarf2_per_objfile) : Move from struct dwarf2_per_bfd. * dwarf2/read.c (set_die_type): Update. (get_die_type_at_offset): Update. 2020-05-27 Tom Tromey Simon Marchi * dwarf2/read.h (struct dwarf2_per_bfd) : New method. (struct dwarf2_per_objfile) : New methods. : New field. (struct dwarf2_psymtab): Derive from partial_symtab. : Declare methods. * dwarf2/read.c (dwarf2_per_objfile::symtab_set_p, dwarf2_per_objfile::get_symtab, dwarf2_per_objfile::set_symtab): New methods. (struct dwarf2_per_cu_quick_data) : Remove. (dw2_do_instantiate_symtab, dw2_instantiate_symtab) (dw2_map_expand_apply, dw2_map_symtabs_matching_filename) (dw2_symtab_iter_next, dw2_print_stats) (dw2_expand_symtabs_with_fullname) (dw2_expand_symtabs_matching_one) (dw_expand_symtabs_matching_file_matcher) (dw2_find_pc_sect_compunit_symtab, dw2_map_symbol_filenames) (dw2_debug_names_iterator::next) (dw2_debug_names_map_matching_symbols) (fill_in_sig_entry_from_dwo_entry, dwarf2_psymtab::read_symtab) (process_queue, dwarf2_psymtab::expand_psymtab): Update. (dwarf2_psymtab::readin_p, dwarf2_psymtab::get_compunit_symtab): New methods. (get_compunit_symtab, process_full_comp_unit) (process_full_type_unit): Update. (dwarf2_build_psymtabs, dwarf2_initialize_objfile, add_type_unit): Call 2020-05-27 Simon Marchi * dwarf2/read.h (dwarf2_per_objfile): Rename to dwarf2_per_bfd, then introduce a new dwarf2_per_objfile type. : Move to the new dwarf2_per_objfile type. : Likewise. (dwarf2_per_bfd): Rename dwarf2_per_objfile to this. * dwarf2/read.c: Replace references to dwarf2_per_objfile with dwarf2_per_objfile->per_bfd. (dwarf2_per_objfile::dwarf2_per_objfile): Rename to... (dwarf2_per_bfd::dwarf2_per_bfd): ... this. (dwarf2_per_objfile::free_cached_comp_units): Rename to... (dwarf2_per_bfd::free_cached_comp_units): ... this. (dwarf2_has_info): Allocate dwarf2_per_bfd. (dwarf2_per_objfile::locate_sections): Rename to... (dwarf2_per_bfd::locate_sections): ... this. (dwarf2_per_objfile::get_cutu): Rename to... (dwarf2_per_bfd::get_cutu): ... this. (dwarf2_per_objfile::get_cu): Rename to... (dwarf2_per_bfd::get_cu): ... this. (dwarf2_per_objfile::get_tu): Rename to... (dwarf2_per_bfd::get_tu): ... this. (dwarf2_per_objfile::allocate_per_cu): Rename to... (dwarf2_per_bfd::allocate_per_cu): ... this. (dwarf2_per_objfile::allocate_signatured_type): Rename to... (dwarf2_per_bfd::allocate_signatured_type): ... this. (get_gdb_index_contents_ftype): Change parameter from dwarf2_per_objfile to dwarf2_per_bfd. * dwarf2/macro.c, dwarf2/index-write.c: Replace references to dwarf2_per_objfile with dwarf2_per_objfile->per_bfd. 2020-05-27 Tom Tromey Simon Marchi * dwarf2/loc.c (struct piece_closure) : New member. (allocate_piece_closure): Set "per_objfile" member. (dwarf2_find_location_expression, dwarf2_locexpr_baton_eval) (locexpr_describe_location, loclist_describe_location): Use new member. * dwarf2/read.c (read_call_site_scope) (mark_common_block_symbol_computed, attr_to_dynamic_prop) (dwarf2_const_value_attr, dwarf2_fetch_die_loc_sect_off) (fill_in_loclist_baton, dwarf2_symbol_mark_computed, handle_data_member_location): Set per_objfile member. * dwarf2/loc.h (struct dwarf2_locexpr_baton) : New member. (struct dwarf2_loclist_baton) : New member. 2020-05-27 Tom Tromey * dwarf2/read.h (struct dwarf2_per_objfile) : Declare new methods. : New member. (struct dwarf2_per_cu_data) : New member. * dwarf2/read.c (dwarf2_per_objfile::allocate_per_cu) (dwarf2_per_objfile::allocate_signatured_type): New methods. (create_cu_from_index_list): Use allocate_per_cu. (create_signatured_type_table_from_index) (create_signatured_type_table_from_debug_names) (create_debug_type_hash_table, add_type_unit) (read_comp_units_from_section): Use allocate_signatured_type. 2020-05-27 Tom Tromey * psymtab.c (partial_map_expand_apply) (psym_find_pc_sect_compunit_symtab, psym_lookup_symbol) (psym_lookup_global_symbol_language) (psymtab_to_symtab, psym_find_last_source_symtab, dump_psymtab) (psym_print_stats, psym_expand_symtabs_for_function) (psym_map_symbol_filenames, psym_map_matching_symbols) (psym_expand_symtabs_matching) (partial_symtab::read_dependencies, maintenance_info_psymtabs) (maintenance_check_psymtabs): Update. * psympriv.h (struct partial_symtab) : Add objfile parameter. (struct standard_psymtab) : Likewise. * dwarf2/read.c (struct dwarf2_include_psymtab) : Likewise. (dwarf2_psymtab::expand_psymtab): Pass objfile argument. 2020-05-27 Tom Tromey * dwarf2/read.h (struct dwarf2_per_objfile) : New member. * dwarf2/read.c (delete_file_name_entry): Fix comment. (create_cu_from_index_list) (create_signatured_type_table_from_index) (create_signatured_type_table_from_debug_names) (dw2_get_file_names_reader, dwarf2_initialize_objfile) (dwarf2_create_include_psymtab) (create_debug_type_hash_table, add_type_unit) (create_type_unit_group, read_comp_units_from_section) (dwarf2_compute_name, create_cus_hash_table) (create_dwp_hash_table, create_dwo_unit_in_dwp_v1) (create_dwo_unit_in_dwp_v2, open_and_init_dwp_file): Use new obstack. (dw2_get_real_path): Likewise. Change argument to dwarf2_per_objfile. 2020-05-27 Luis Machado PR tdep/26000 * arm-tdep.c (thumb_analyze_prologue): Fix instruction matching for ldrd (immediate). 2020-05-26 Philippe Waroquiers * command.h: Add comment giving the name of class_tui. * cli/cli-cmds.c (_initialize_cli_cmds): If TUI defined, create the fake command for the help for class_tui. 2020-05-26 Tom Tromey * ada-lang.c (ada_print_array_index): Change type. Call val_atr. (ada_value_ptr_subscript): Don't call pos_atr on the lower bound. (val_atr): New function. (value_val_atr): Use it. * ada-valprint.c (print_optional_low_bound): Change low bound handling for enums. (val_print_packed_array_elements): Don't call discrete_position. * gdbtypes.c (get_discrete_bounds) : Call discrete_position for enum types. * language.c (default_print_array_index): Change type. * language.h (struct language_defn) : Add index_type parameter, change type of index_value. (LA_PRINT_ARRAY_INDEX): Add index_type parameter. (default_print_array_index): Update. * valprint.c (maybe_print_array_index): Don't call value_from_longest. Update. (value_print_array_elements): Don't call discrete_position. 2020-05-26 Tom Tromey * ada-lang.c (value_val_atr): Handle TYPE_CODE_RANGE. * gdbtypes.c (discrete_position): Handle TYPE_CODE_RANGE. 2020-05-25 Cristiano De Alti PR gdb/13519 * avr-tdep.c (avr_integer_to_address): Return data or code address accordingly to the second 'type' argument of the function. 2020-05-25 Michael Weghorn * infcmd.c, inferior.h: (construct_inferior_arguments): Moved function from here to gdbsupport/common-inferior.{h,cc} 2020-05-23 Tom Tromey Revert commit eca1f90c: * NEWS: Remove entry for completion styling. * completer.c (_rl_completion_prefix_display_length): Move declaration later. (gdb_fnprint): Revert. (gdb_display_match_list_1): Likewise. * cli/cli-style.c (completion_prefix_style) (completion_difference_style, completion_suffix_style): Remove. (_initialize_cli_style): Revert. * cli/cli-style.h (completion_prefix_style) (completion_difference_style, completion_suffix_style): Don't declare. 2020-05-24 Pedro Alves * symtab.c (completion_list_add_name): Return boolean indication of whether the symbol matched. (completion_list_add_symbol): Don't try to remove C++ aliases if the symbol didn't match in the first place. * symtab.h (completion_list_add_name): Return bool. 2020-05-23 Simon Marchi * gdbtypes.h (TYPE_FIELD): Remove. Replace all uses with type::field. 2020-05-23 Joel Brobecker GDB 9.2 released. 2020-05-23 Tom Tromey * NEWS: Add entry for completion styling. * completer.c (_rl_completion_prefix_display_length): Move declaration earlier. (gdb_fnprint): Use completion_style. (gdb_display_match_list_1): Likewise. * cli/cli-style.c (completion_prefix_style) (completion_difference_style, completion_suffix_style): New globals. (_initialize_cli_style): Register new globals. * cli/cli-style.h (completion_prefix_style) (completion_difference_style, completion_suffix_style): Declare. 2020-05-23 Pedro Alves * utils.c: Include "gdbsupport/gdb-safe-ctype.h". (parse_escape): Use ISDIGIT instead of isdigit. (puts_debug): Use gdb_isprint instead of isprint. (fprintf_symbol_filtered): Use ISALNUM instead of isalnum. (cp_skip_operator_token, skip_ws, strncmp_iw_with_mode): Use ISSPACE instead of isspace. (strncmp_iw_with_mode): Use TOLOWER instead of tolower and ISSPACE instead of isspace. (strcmp_iw_ordered): Use ISSPACE instead of isspace. (string_to_core_addr): Use TOLOWER instead of tolower, ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit. 2020-05-22 Simon Marchi * gdbtypes.h (struct type) : New method. (TYPE_FIELDS): Remove, replace all uses with either type::fields or type::field. 2020-05-22 Simon Marchi * gdbtypes.h (struct type) : New methods. (TYPE_FIELDS): Use type::fields. Change all call sites that modify the propery to use type::set_fields instead. 2020-05-22 Simon Marchi * gdbtypes.h (TYPE_NFIELDS): Remove. Change all cal sites to use type::num_fields instead. 2020-05-22 Simon Marchi * gdbtypes.h (struct type) : New methods. (TYPE_NFIELDS): Use type::num_fields. Change all call sites that modify the number of fields to use type::set_num_fields instead. 2020-05-22 Tom Tromey * compile/compile-object-load.h (munmap_list_free): Don't declare. 2020-05-22 Andrew Burgess * annotate.c (annotate_source_line): Update return type, add call to update current symtab and line. * annotate.h (annotate_source_line): Update return type, and extend header comment. * source.c (info_line_command): Check annotation_level before calling annotate_source_line. * stack.c (print_frame_info): If calling annotate_source_line returns true, then don't print any other source line information. 2020-05-21 Simon Marchi * lm32-tdep.c (lm32_register_reggroup_p): Fix condition. 2020-05-21 Simon Marchi * coffread.c (patch_type): Remove NULL check before xfree. * corefile.c (set_gnutarget): Likewise. * cp-abi.c (set_cp_abi_as_auto_default): Likewise. * exec.c (build_section_table): Likewise. * remote.c (remote_target::pass_signals): Likewise. * utils.c (n_spaces): Likewise. * cli/cli-script.c (document_command): Likewise. * i386-windows-tdep.c (core_process_module_section): Likewise. * linux-fork.c (struct fork_info) <~fork_info>: Likewise. 2020-05-20 Simon Marchi * symfile.c (reread_symbols): Clear objfile's section_offsets vector and section indices, re-compute them by calling sym_offsets. 2020-05-20 Tom Tromey * ada-lang.c (bound_name, MAX_ADA_DIMENS): Remove. (desc_one_bound, desc_index_type): Compute field name. 2020-05-20 Tom de Vries PR symtab/25833 * dwarf2/read.c (dw2_map_matching_symbols): Handle .gdb_index. 2020-05-20 Alan Modra PR 25993 * solib-darwin.c (darwin_bfd_open): Don't strdup pathname for bfd_set_filename. * solib-aix.c (solib_aix_bfd_open): Use std::string for name passed to bfd_set_filename. * symfile-mem.c (add_vsyscall_page): Likewise for string passed to symbol_file_add_from_memory. (symbol_file_add_from_memory): Make name param a const char* and don't strdup. 2020-05-20 Alan Modra * coff-pe-read.c (read_pe_exported_syms): Use bfd_get_filename rather than accessing bfd->filename directly. * dtrace-probe.c (dtrace_static_probe_ops::get_probes): Likewise, and use bfd_section_name. * dwarf2/frame.c (decode_frame_entry): Likewise. * exec.c (exec_set_section_address): Likewise. * solib-aix.c (solib_aix_bfd_open): Likewise. * stap-probe.c (get_stap_base_address): Likewise. * symfile.c (reread_symbols): Likewise. 2020-05-19 Tom Tromey * sparc64-tdep.c (adi_tag_fd): Update call to target_fileio_open. 2020-05-19 Simon Marchi * dwarf2/read.c (quirk_rust_enum): Allocate enough fields. 2020-05-19 Pedro Alves * NEWS (set exec-file-mismatch): Adjust entry. * exec.c: Include "build-id.h". (validate_exec_file): Try to match build IDs instead of filenames. * gdb_bfd.c (struct gdb_bfd_open_closure): New. (gdb_bfd_iovec_fileio_open): Adjust to use gdb_bfd_open_closure and pass down 'warn_if_slow'. (gdb_bfd_open): Add 'warn_if_slow' parameter. Use gdb_bfd_open_closure to pass it down. * gdb_bfd.h (gdb_bfd_open): Add 'warn_if_slow' parameter. 2020-05-19 Pedro Alves * gdb_bfd.c (gdb_bfd_iovec_fileio_open): Adjust. * target.c (target_fileio_open_1): Rename to target_fileio_open and make extern. Use bool. (target_fileio_open, target_fileio_open_warn_if_slow): Delete. (target_fileio_read_alloc_1): Adjust. * target.h (target_fileio_open): Add 'warn_if_slow' parameter. (target_fileio_open_warn_if_slow): Delete declaration. 2020-05-19 Pedro Alves * gdb_bfd.h: (gdb_bfd_open): Default to 'fd' parameter to -1. Adjust all callers. 2020-05-19 Yoshinori Sato * h8300-tdep.c (h8300_is_argument_spill): Change how we check whether disp is negative. 2020-05-19 Simon Marchi * symfile.h (struct symfile_segment_data) <~symfile_segment_data>: Remove. : Change to std::vector. * symfile.c (default_symfile_segments): Update. * elfread.c (elf_symfile_segments): Update. 2020-05-19 Simon Marchi * symfile.h (struct symfile_segment_data) : New. : New. : Remove. * symfile.c (default_symfile_segments): Update. * elfread.c (elf_symfile_segments): Update. * remote.c (remote_target::get_offsets): Update. * solib-target.c (solib_target_relocate_section_addresses): Update. 2020-05-19 Simon Marchi * symfile.h (struct symfile_segment_data): Initialize fields. <~symfile_segment_data>: Add. (symfile_segment_data_up): New. (struct sym_fns) : Return a symfile_segment_data_up. (default_symfile_segments): Return a symfile_segment_data_up. (free_symfile_segment_data): Remove. (get_symfile_segment_data): Return a symfile_segment_data_up. * symfile.c (default_symfile_segments): Likewise. (get_symfile_segment_data): Likewise. (free_symfile_segment_data): Remove. (symfile_find_segment_sections): Update. * elfread.c (elf_symfile_segments): Return a symfile_segment_data_up. * remote.c (remote_target::get_offsets): Update. * solib-target.c (solib_target_relocate_section_addresses): Update. * symfile-debug.c (debug_sym_segments): Return a symfile_segment_data_up. 2020-05-18 Rainer Orth PR build/25981 * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64] (regmap): Hardcode register numbers. PR build/25981 * procfs.c [(__i386__ || __x86_64__) && sun] (proc_get_LDT_entry, procfs_find_LDT_entry): Remove. * procfs.h [(__i386__ || __x86_64__) && sun] (struct ssd, procfs_find_LDT_entry): Remove. * sol-thread.c [(__i386__ || __x86_64__) && sun] (ps_lgetLDT): Remove. 2020-05-17 Pedro Alves Andrew Burgess Keno Fischer PR gdb/25741 * breakpoint.c (build_target_condition_list): Update comments. (build_target_command_list): Update comments and skip matching locations. (insert_bp_location): Move "set breakpoint auto-hw on" handling to a separate function. Simplify "set breakpoint auto-hw off" handling. (insert_breakpoints): Update comment. (tracepoint_locations_match): New parameter. For breakpoints, compare location types too, if the caller wants to. (handle_automatic_hardware_breakpoints): New functions. (bp_location_is_less_than): Also sort by location type and hardware breakpoint length. (update_global_location_list): Handle "set breakpoint auto-hw on" here. (update_breakpoint_locations): Ask breakpoint_locations_match to ignore location types. 2020-05-16 Simon Marchi * gdbtypes.h (TYPE_NAME): Remove. Change all cal sites to use type::name instead. 2020-05-16 Simon Marchi * gdbtypes.h (struct type) : New methods. (TYPE_CODE): Use type::name. Change all call sites used to set the name to use type::set_name instead. 2020-05-16 Tom Tromey * top.c (quit_force): Update. * infrun.c (handle_no_resumed): Update. * top.h (all_uis): New function. (ALL_UIS): Remove. 2020-05-16 Simon Marchi * mips-linux-tdep.c (mips_linux_in_dynsym_stub): Fix condition. 2020-05-16 Pedro Alves * ia64-linux-nat.c (ia64_linux_nat_target) : Declare method. (enable_watchpoints_in_psr): Now a method of ia64_linux_nat_target. 2020-05-15 Simon Marchi * sparc64-tdep.c (adi_stat_t): Remove typedef (leaving struct). (sparc64_adi_info): Likewise. 2020-05-15 Tom Tromey * symtab.c (lookup_language_this, lookup_symbol_aux): Use block_objfile. (lookup_objfile_from_block): Remove. (lookup_symbol_in_block, lookup_symbol_in_static_block) (lookup_global_symbol): Use block_objfile. * symtab.h (lookup_objfile_from_block): Don't declare. * printcmd.c (clear_dangling_display_expressions): Use block_objfile. * parse.c (operator_check_standard): Use block_objfile. 2020-05-15 Tom Tromey * language.c (language_alloc_type_symbol): Set SYMBOL_SECTION. * symtab.c (initialize_objfile_symbol): Remove. (allocate_symbol): Remove. (allocate_template_symbol): Remove. * dwarf2/read.c (fixup_go_packaging): Use "new". (new_symbol): Use "new". (read_variable): Don't call initialize_objfile_symbol. Use "new". (read_func_scope): Use "new". * xcoffread.c (process_xcoff_symbol): Don't call initialize_objfile_symbol. (SYMBOL_DUP): Remove. * coffread.c (process_coff_symbol, coff_read_enum_type): Use "new". * symtab.h (allocate_symbol, initialize_objfile_symbol) (allocate_template_symbol): Don't declare. (struct symbol): Add copy constructor. Change defaults. * jit.c (finalize_symtab): Use "new". * ctfread.c (ctf_add_enum_member_cb, new_symbol, ctf_add_var_cb): Use "new". * stabsread.c (patch_block_stabs, define_symbol, read_enum_type) (common_block_end): Use "new". * mdebugread.c (parse_symbol): Use "new". (new_symbol): Likewise. 2020-05-15 Philippe Waroquiers * NEWS: Mention changes to help and apropos. 2020-05-15 Philippe Waroquiers * command.h (enum command_class): Improve comments, document that class_alias is for user-defined aliases, give the class name for each class, remove unused class_xdb. * cli/cli-decode.c (add_com_alias): Document THECLASS intended usage. * breakpoint.c (_initialize_breakpoint): Replace class_alias by a precise class. * infcmd.c (_initialize_infcmd): Likewise. * reverse.c (_initialize_reverse): Likewise. * stack.c (_initialize_stack): Likewise. * symfile.c (_initialize_symfile): Likewise. * tracepoint.c (_initialize_tracepoint): Likewise. 2020-05-15 Philippe Waroquiers * cli/cli-decode.c (apropos_cmd): Produce output for aliases when their aliased command is traversed. (help_cmd): Add fput_command_names_styled call to output command name and aliases when command has an alias. 2020-05-15 Philippe Waroquiers * cli/cli-decode.h (help_cmd_list): Remove declaration. * cli/cli-decode.c (help_cmd_list): Declare as static, remove prefix argument, use bool for recurse arg, rework to show the aliases of a command together with the command. (fput_command_name_styled, fput_command_names_styled): New functions. (print_help_for_command): Remove prefix arg, use bool for recurse arg, use fput_command_name_styled. (help_list, help_all): Update callers to remove prefix arg and use bool recurse. * cli/cli-cmds.c (_initialize_cli_cmds): Update alias_command doc. 2020-05-15 Philippe Waroquiers * cli/cli-setshow.h (cmd_show_list): Remove prefix argument. * cli/cli-decode.c (do_show_prefix_cmd): Likewise. * command.h (cmd_show_list): Likewise. * dwarf2/index-cache.c (show_index_cache_command): Likewise. * cli/cli-setshow.c (cmd_show_list): Use the prefix to produce the output. Skip aliases. 2020-05-15 Philippe Waroquiers * unittests/command-def-selftests.c (traverse_command_structure): Verify all commands of a list have the same prefix command and that only the top cmdlist commands have a null prefix. 2020-05-15 Philippe Waroquiers * cli/cli-decode.c (lookup_cmd_for_prefix): Return the aliased command as prefix, not one of its aliases. (set_cmd_prefix): Remove. (do_add_cmd): Centralize the setting of the prefix of a command, when command is defined after its full chain of prefix commands. (add_alias_cmd): Remove call to set_cmd_prefix, as do_add_cmd does it. (add_setshow_cmd_full): Likewise. (update_prefix_field_of_prefixed_commands): New function. (add_prefix_cmd): Replace non working call to set_cmd_prefix by update_prefix_field_of_prefixed_commands. * gdb/remote-fileio.c (initialize_remote_fileio): Use the real addresses of remote_set_cmdlist and remote_show_cmdlist given as argument, not the address of an argument. * gdb/remote-fileio.h (initialize_remote_fileio): Likewise. * gdb/remote.c (_initialize_remote): Likewise. 2020-05-15 Philippe Waroquiers * cli/cli-cmds.c (alias_command): Check for an existing alias using lookup_cmd_composition, as valid_command_p is too strict and forbids aliases that are the prefix of an existing alias or command. * cli/cli-decode.c (lookup_cmd_composition): Ensure a prefix command is properly recognised as a valid command. 2020-05-15 Philippe Waroquiers * unittests/help-doc-selftests.c: Rename to unittests/command-def-selftests.c * unittests/command-def-selftests.c (help_doc_tests): Update some comments. (command_structure_tests, traverse_command_structure): New namespace and function. (command_structure_invariants_tests): New function. (_initialize_command_def_selftests) Renamed from _initialize_help_doc_selftests, register command_structure_invariants selftest. 2020-05-15 Philippe Waroquiers * cli/cli-cmds.c (_initialize_cli_cmds): Define 'info set' as an alias of 'show'. 2020-05-15 Joel Brobecker * ada-lang.h: (ada_is_gnat_encoded_fixed_point_type): Renames ada_is_fixed_point_type. Update all callers. (gnat_encoded_fixed_point_delta): Renames ada_delta. Update all callers. * ada-lang.c (gnat_encoded_fixed_type_info): Renames fixed_type_info. Update all callers. * ada-typeprint.c (print_gnat_encoded_fixed_point_type): Renames print_fixed_point_type. Update all callers. * ada-valprint.c (ada_value_print_num): Replace call to ada_is_fixed_point_type by ada_is_gnat_encoded_fixed_point_type. 2020-05-14 Kevin Buettner * nat/linux-btrace.c (btrace_this_cpu): Add check for AMD processors. (cpu_supports_bts): Add CV_AMD case. 2020-05-14 Laurent Morichetti Simon Marchi * infrun.c (stop_all_threads): Collect multiple wait events at each pass. 2020-05-14 Simon Marchi * gdbtypes.h (TYPE_CODE): Remove. Change all call sites to use type::code instead. 2020-05-14 Simon Marchi * gdbtypes.h (struct type) : New methods. (TYPE_CODE): Use type::code. Change all call sites used to set the code to use type::set_code instead. 2020-05-14 Tankut Baris Aktemur Tom de Vries Pedro Alves PR threads/25478 * infrun.c (stop_all_threads): Do NOT ignore TARGET_WAITKIND_NO_RESUMED, TARGET_WAITKIND_THREAD_EXITED, TARGET_WAITKIND_EXITED, TARGET_WAITKIND_SIGNALLED wait statuses received. (handle_no_resumed): Remove code handling a live inferior with no threads. * remote.c (has_single_non_exited_thread): New. (remote_target::update_thread_list): Do not delete a thread if is the last thread of the process. * thread.c (thread_select): Call delete_exited_threads instead of prune_threads. 2020-05-14 Tankut Baris Aktemur * infrun.c (stop_all_threads): Enable/disable thread events of all targets. Move a debug message denoting the end of the function into the SCOPED_EXIT block. 2020-05-14 Tankut Baris Aktemur * process-stratum-target.h: Include . (all_non_exited_process_targets, switch_to_target_no_thread): New function declarations. * process-stratum-target.c (all_non_exited_process_targets) (switch_to_target_no_thread): New function implementations. 2020-05-14 Tankut Baris Aktemur * infrun.c (handle_inferior_event): Extract out a piece of code into... (mark_non_executing_threads): ...this new function. 2020-05-14 Tankut Baris Aktemur * infrun.c (resume_1): Move a 'regcache_read_pc' call down to first use. 2020-05-14 Tankut Baris Aktemur * regcache.c (regcache_read_pc_protected): New function implementation that returns 0 if the PC cannot read via 'regcache_read_pc'. * infrun.c (proceed): Call 'regcache_read_pc_protected' instead of 'regcache_read_pc'. (keep_going_pass_signal): Ditto. 2020-05-13 Tom Tromey * ada-lang.c (align_value): Remove. (ada_template_to_fixed_record_type_1): Use align_up. 2020-05-13 Tankut Baris Aktemur * async-event.c: Update the copyright year. * async-event.h: Update the copyright year. 2020-05-12 Simon Marchi * objfiles.h (is_addr_in_objfile, shared_objfile_contains_address_p): Return bool. * objfile.c (is_addr_in_objfile, shared_objfile_contains_address_p): Return bool. 2020-05-11 Tom Tromey * cli/cli-cmds.c (info_command): Restore. (_initialize_cli_cmds): Use add_prefix_command for "info". * gdb-gdb.gdb.in: Restore breakpoint on info_command. 2020-05-11 Tom Tromey * ada-lang.c (ada_value_primitive_field): Now public. * ada-lang.h (ada_value_primitive_field): Declare. * ada-valprint.c (print_field_values): Use ada_value_primitive_field for wrapper fields. 2020-05-11 Tom de Vries * dwarf2/index-write.c (debug_names::psymbol_tag): Handle MODULE_DOMAIN. 2020-05-11 Tom de Vries PR symtab/25941 * dwarf2/read.c (create_cus_from_debug_names_list): Initialize CUs with length 0, if not gdb-produced. (cutu_reader::cutu_reader): Set CU length to actual length if 0. 2020-05-09 Tom de Vries PR gdb/25955 * break-catch-throw.c (check_status_exception_catchpoint): Fix name calculation. 2020-05-09 Tom Tromey * top.c (server_command): Now bool. * top.h (server_command): Now bool. 2020-05-08 Tom Tromey * dwarf2/read.c (read_lexical_block_scope): Don't process a DIE already being processed. 2020-05-08 Tom Tromey * printcmd.c (struct display) : Remove. : New constructor. : Now a std::string. : Now a bool. (display_number): Move definition earlier. (displays): Rename from display_chain. Now a std::vector. (ALL_DISPLAYS, ALL_DISPLAYS_SAFE): Remove. (display_command): Update. (do_one_display, disable_display) (enable_disable_display_command, do_enable_disable_display): Update. (free_display): Remove. (clear_displays): Rewrite. (delete_display): Update. (map_display_numbers): Use function_view. Remove "data" parameter. Update. (do_delete_display): Remove. (undisplay_command): Update. (do_one_display, do_displays, disable_display) (info_display_command): Update. (do_enable_disable_display): Remove. (enable_disable_display_command) (clear_dangling_display_expressions): Update. 2020-05-08 Tom Tromey * symtab.c (set_symbol_cache_size) (maintenance_print_symbol_cache, maintenance_flush_symbol_cache) (maintenance_print_symbol_cache_statistics): Update. * symmisc.c (print_symbol_bcache_statistics) (print_objfile_statistics, maintenance_print_objfiles) (maintenance_info_symtabs, maintenance_check_symtabs) (maintenance_expand_symtabs, maintenance_info_line_tables): Update. * symfile-debug.c (set_debug_symfile): Update. * source.c (forget_cached_source_info): Update. * python/python.c (gdbpy_progspaces): Update. * psymtab.c (maintenance_info_psymtabs): Update. * probe.c (parse_probes): Update. * linespec.c (iterate_over_all_matching_symtabs) (collect_symtabs_from_filename, search_minsyms_for_name): Update. * guile/scm-progspace.c (gdbscm_progspaces): Update. * exec.c (exec_target::close): Update. * ada-tasks.c (ada_tasks_new_objfile_observer): Update. * breakpoint.c (print_one_breakpoint_location) (create_longjmp_master_breakpoint) (create_std_terminate_master_breakpoint): Update. * progspace.c (program_spaces): Now a std::vector. (maybe_new_address_space): Update. (add_program_space): Remove. (program_space::program_space): Update. (remove_program_space): Update. (number_of_program_spaces): Remove. (print_program_space, update_address_spaces): Update. * progspace.h (program_spaces): Change type. (ALL_PSPACES): Remove. (number_of_program_spaces): Don't declare. (struct program_space) : Remove. 2020-05-08 Tom Tromey * mi/mi-cmd-file.c (mi_cmd_file_list_shared_libraries): Update. * solib-svr4.c (svr4_fetch_objfile_link_map): Update. (enable_break): Update. * solib-frv.c (frv_fdpic_find_global_pointer): Update. (frv_fdpic_find_canonical_descriptor): Update. (frv_fetch_objfile_link_map): Update. * progspace.c (program_space::free_all_objfiles): Update. (program_space::solibs): New method. * progspace.h (struct program_space) : New method. * solist.h (master_so_list): Don't declare. (ALL_SO_LIBS): Remove. * solib.h (so_list_head): Remove. (update_solib_list): Update comment. * solib.c (master_so_list): Remove. (solib_used, update_solib_list, solib_add) (info_sharedlibrary_command, clear_solib) (reload_shared_libraries_1, remove_user_added_objfile): Update. 2020-05-08 Tom Tromey * extension.c (extension_languages): Now a std::array. (ALL_EXTENSION_LANGUAGES): Remove. (get_ext_lang_defn, get_ext_lang_of_file) (eval_ext_lang_from_control_command): Update. (finish_ext_lang_initialization) (auto_load_ext_lang_scripts_for_objfile) (ext_lang_type_printers::ext_lang_type_printers) (apply_ext_lang_type_printers) (ext_lang_type_printers::~ext_lang_type_printers) (apply_ext_lang_val_pretty_printer, apply_ext_lang_frame_filter) (preserve_ext_lang_values, get_breakpoint_cond_ext_lang) (breakpoint_ext_lang_cond_says_stop, check_quit_flag) (get_matching_xmethod_workers, ext_lang_colorize) (ext_lang_before_prompt): Update. (ALL_ENABLED_EXTENSION_LANGUAGES): Remove. 2020-05-08 Tom Tromey * symtab.h (class demangle_result_storage) : New overload. : Remove. * symtab.c (demangle_for_lookup, completion_list_add_symbol): Update. * stabsread.c (define_symbol, read_type): Update. * linespec.c (find_linespec_symbols): Update. * gnu-v3-abi.c (gnuv3_get_typeid): Update. * dwarf2/read.c (dwarf2_canonicalize_name): Update. * dbxread.c (read_dbx_symtab): Update. * cp-support.h (cp_canonicalize_string_full) (cp_canonicalize_string, cp_canonicalize_string_no_typedefs): Return unique_xmalloc_ptr. * cp-support.c (inspect_type): Update. (cp_canonicalize_string_full): Return unique_xmalloc_ptr. (cp_canonicalize_string_no_typedefs, cp_canonicalize_string): Likewise. * c-typeprint.c (print_name_maybe_canonical): Update. * break-catch-throw.c (check_status_exception_catchpoint): Update. 2020-05-08 Tom de Vries * infrun.c (follow_fork): Copy current_line and current_symtab to child thread. 2020-05-07 Simon Marchi * async-event.c (struct async_signal_handler, struct async_event_handler): Reformat, remove typedef. 2020-05-07 Simon Marchi * gdbtypes.h (TYPE_DYN_PROP_LIST): Remove. Update all users access thistype->main_type->dyn_prop_list directly. 2020-05-07 Simon Marchi * gdbtypes.h (struct type) : New method. (remove_dyn_prop): Remove. Update all users to use type::remove_dyn_prop. * gdbtypes.c (remove_dyn_prop): Rename to... (type::remove_dyn_prop): ... this. 2020-05-07 Simon Marchi via Gdb-patches * gdbtypes.h (struct type) : New method. (add_dyn_prop): Remove. Update all users to use type::add_dyn_prop. * gdbtypes.c (add_dyn_prop): Rename to... (type::add_dyn_prop): ... this. 2020-05-07 Simon Marchi * gdbtypes.h (struct type) : New method. (get_dyn_prop): Remove. Update all users to use type::dyn_prop. * gdbtypes.c (get_dyn_prop): Rename to... (type::dyn_prop): ... this. 2020-05-06 Simon Marchi * gdbtypes.h (struct main_type) : Remove. 2020-05-06 Simon Marchi * amd64-tdep.c (amd64_analyze_prologue): Check for `endbr64` instruction, skip it if it's there. 2020-05-05 Simon Marchi * gdbtypes.h (struct main_type) : Remove. 2020-05-04 Simon Marchi * gdbtypes.h (TYPE_INCOMPLETE): Remove. * gdbtypes.c (recursive_dump_type): Remove use of TYPE_INCOMPLETE. 2020-05-03 Tom Tromey * breakpoint.c (catch_command, tcatch_command): Remove. (_initialize_breakpoint): Use add_basic_prefix_cmd, add_show_prefix_cmd. (set_breakpoint_cmd, show_breakpoint_cmd): Remove * utils.c (set_internal_problem_cmd, show_internal_problem_cmd): Remove. (add_internal_problem_command): Use add_basic_prefix_cmd, add_show_prefix_cmd. * mips-tdep.c (set_mipsfpu_command): Remove. (_initialize_mips_tdep): Use add_basic_prefix_cmd. * dwarf2/index-cache.c (set_index_cache_command): Remove. (_initialize_index_cache): Use add_basic_prefix_cmd. * memattr.c (dummy_cmd): Remove. (_initialize_mem): Use add_basic_prefix_cmd, add_show_prefix_cmd. * tui/tui-win.c (set_tui_cmd, show_tui_cmd): Remove. (_initialize_tui_win): Use add_basic_prefix_cmd, add_show_prefix_cmd. * cli/cli-logging.c (set_logging_command): Remove. (_initialize_cli_logging): Use add_basic_prefix_cmd, add_show_prefix_cmd. (show_logging_command): Remove. * target.c (target_command): Remove. (add_target): Use add_basic_prefix_cmd. 2020-05-02 Hannes Domani * gdbtypes.h (enum dynamic_prop_node_kind): Fix typo. 2020-05-01 Philippe Waroquiers * gdb-gdb.gdb-in: Remove breakpoint on disappeared function info_command. 2020-04-30 Kamil Rytarowski * nbsd-nat.c (nbsd_enable_proc_events) (nbsd_nat_target::post_startup_inferior): Add. (nbsd_nat_target::post_attach): Call `nbsd_enable_proc_events'. (nbsd_nat_target::update_thread_list): Rewrite. (nbsd_nat_target::wait): Handle "PTRACE_LWP_EXIT" and "PTRACE_LWP_CREATE". * nbsd-nat.h (nbsd_nat_target::post_startup_inferior): Add. 2020-04-30 Philippe Waroquiers * stack.c (_initialize_stack): Remove duplicated creation of "frame" command and "f" alias. 2020-04-30 Hannes Domani PR gdb/18706 * gdbtypes.c (check_typedef): Calculate size of array of stubbed type. 2020-04-30 Hannes Domani PR gdb/15559 * i386-tdep.c (i386_push_dummy_call): Call i386_thiscall_push_dummy_call. (i386_thiscall_push_dummy_call): New function. * i386-tdep.h (i386_thiscall_push_dummy_call): Declare. * i386-windows-tdep.c (i386_windows_push_dummy_call): New function. (i386_windows_init_abi): Call set_gdbarch_push_dummy_call. 2020-04-29 Simon Marchi * gdbarch.sh (do_read): Add shellcheck disable directive for warning SC2162. 2020-04-29 Simon Marchi * gdbarch.sh: Use ${foo:-} where shellcheck would report a "referenced but not assigned" warning. 2020-04-29 Simon Marchi * gdbarch.sh: Remove code that sets fallbackdefault. 2020-04-29 Simon Marchi * gdbarch.sh: Use shell operators && and || instead of -a and -o. 2020-04-29 Simon Marchi * gdbarch.sh: Use $(...) instead of `...`. 2020-04-29 Simon Marchi * gdbarch.sh: Use double quotes around variables. 2020-04-29 Simon Marchi * gdbarch.sh: Use %s with printf, instead of variables in the format string. 2020-04-29 Tom Tromey PR ada/25875: * dwarf2/read.c (update_enumeration_type_from_children): Compute type fields here. (read_enumeration_type): Call update_enumeration_type_from_children later. Update comments. (process_enumeration_scope): Don't create type fields. 2020-04-29 Kamil Rytarowski * nbsd-tdep.c: Include "xml-syscall.h". (nbsd_init_abi): Call `set_xml_syscall_file_name'. 2020-04-29 Kamil Rytarowski * nbsd-nat.c: Include "sys/wait.h". (nbsd_resume, nbsd_nat_target::resume, nbsd_wait) (nbsd_nat_target::wait, nbsd_nat_target::insert_exec_catchpoint) (nbsd_nat_target::remove_exec_catchpoint) (nbsd_nat_target::set_syscall_catchpoint): Add. * nbsd-nat.h (nbsd_nat_target::resume, nbsd_nat_target::wait) (nbsd_nat_target::insert_exec_catchpoint) (nbsd_nat_target::remove_exec_catchpoint) (nbsd_nat_target::set_syscall_catchpoint): Add. * nbsd-tdep.c (nbsd_get_syscall_number): Add. (nbsd_init_abi): Call `set_gdbarch_get_syscall_number' and pass `nbsd_get_syscall_number'. 2020-04-29 Tom Tromey * stack.c (print_block_frame_labels): Remove. 2020-04-29 Hannes Domani PR gdb/17320 * ada-valprint.c (val_print_packed_array_elements): Move array end bracket to new line. (ada_val_print_string): Remove extra spaces before first array element. * c-valprint.c (c_value_print_array): Likewise. * m2-valprint.c (m2_print_array_contents): Likewise. (m2_value_print_inner): Likewise. * p-valprint.c (pascal_value_print_inner): Likewise. * valprint.c (generic_val_print_array): Likewise. (value_print_array_elements): Move first array element and array end bracket to new line. 2020-04-29 Tom de Vries PR symtab/25889 * linespec.c (find_method): Fix ix calculation. 2020-04-28 Kamil Rytarowski * syscalls/update-netbsd.sh: New file. * syscalls/netbsd.xml: Regenerate. * data-directory/Makefile.in: Register `netbsd.xml' in `SYSCALLS_FILES'. 2020-04-28 Simon Marchi * syscalls/update-freebsd.sh: Add double quotes. 2020-04-28 Tom Tromey * NEWS: Update. * python/py-cmd.c (gdbpy_initialize_commands): Add COMMAND_TUI. (cmdpy_init): Allow class_tui. 2020-04-28 Mark Williams PR gdb/24480 * dwarf2read.c: Add missing assingments to list_in_scope when start_symtab was already called. 2020-04-28 Simon Marchi PR gdb/25881 * dwarf2/read.c (offset_map_type): Use gdb:hash_enum as hash function. 2020-04-28 Tom de Vries * dwarf2/read.c (process_structure_scope): Add symbol for struct decl with DW_AT_signature. 2020-04-27 Simon Marchi * configure.ac: Remove check for fs_base/gs_base in user_regs_struct. * configure: Re-generate. * config.in: Re-generate. * amd64-nat.c (amd64_native_gregset_reg_offset): Adjust. * amd64-linux-nat.c (amd64_linux_nat_target::fetch_registers, amd64_linux_nat_target::store_registers, ps_get_thread_area, ): Adjust. 2020-04-27 Luis Machado * dwarf2/frame-tailcall.c (dwarf2_tailcall_sniffer_first): Handle problematic inline frame unwinding situation. * frame.c (frame_id_computed_p): New function. * frame.h (frame_id_computed_p): New prototype. 2020-04-26 Tom Tromey * command.h (enum command_class) : Remove. 2020-04-26 Philippe Waroquiers * cli/cli-decode.c (lookup_cmd_composition): Fix comments and whitespace. 2020-04-25 Kamil Rytarowski * inf-ptrace.c (inf_ptrace_target::wait): Remove `PT_GET_PROCESS_STATE' block. 2020-04-24 Tom Tromey * symtab.h (symbol_get_demangled_name): Don't declare. * symtab.c (symbol_get_demangled_name): Remove. (general_symbol_info::natural_name) (general_symbol_info::demangled_name): Update. 2020-04-24 Tom Tromey PR rust/25025: * dwarf2/read.c (dwarf2_physname): Do not demangle for Rust. 2020-04-24 Tom Tromey PR symtab/12707: * dwarf2/read.c (add_partial_symbol): Use the linkage name if it exists. (new_symbol): Likewise. * compile/compile-object-load.c (get_out_value_type): Use symbol_matches_search_name. 2020-04-24 Tom Tromey * dwarf2/read.c (add_partial_symbol): Do not call compute_and_set_names. 2020-04-24 Tom Tromey * dwarf2/read.c (add_partial_symbol): Use new add_psymbol_to_list overload. 2020-04-24 Tom Tromey * psymtab.c (add_psymbol_to_bcache): Simplify calling convention. (add_psymbol_to_list): New overload. Make old overload call new one. * psympriv.h (add_psymbol_to_list): New overload. 2020-04-24 Tom Tromey * dwarf2/read.c (partial_die_info::read) : Use value_as_string. (dwarf2_string_attr): Use value_as_string. * dwarf2/attribute.h (struct attribute) : Declare method. * dwarf2/attribute.c (attribute::value_as_string): New method. 2020-04-24 Tom Tromey * symtab.c (general_symbol_info::natural_name) (general_symbol_info::demangled_name): Check for language_rust. 2020-04-24 Tom Tromey * dwarf2/read.c (dw2_linkage_name): Move Rust "{" hack here... (dwarf2_physname): ... from here. (partial_die_info::read): Add Rust "{" hack. 2020-04-24 Tom Tromey * symtab.h (struct general_symbol_info) : New method. (symbol_set_demangled_name): Don't declare. * symtab.c (general_symbol_info::set_demangled_name): Rename from symbol_set_demangled_name. (general_symbol_info::set_language) (general_symbol_info::compute_and_set_names): Update. * minsyms.c (minimal_symbol_reader::install): Update. * dwarf2/read.c (new_symbol): Update. 2020-04-24 Tom Tromey PR python/23662: * python/py-type.c (convert_field): Handle FIELD_LOC_KIND_DWARF_BLOCK. (typy_get_sizeof): Handle TYPE_HAS_DYNAMIC_LENGTH. (typy_get_dynamic): Nw function. (type_object_getset): Add "dynamic". * NEWS: Add entry. 2020-04-24 Tom Tromey * ada-typeprint.c (print_choices, print_variant_part) (print_record_field_types_dynamic): New functions. (print_record_field_types): Use print_record_field_types_dynamic. 2020-04-24 Tom Tromey * dwarf2/read.c (handle_data_member_location): New overload. (dwarf2_add_field): Use it. (decode_locdesc): Add "computed" parameter. Update comment. * gdbtypes.c (is_dynamic_type_internal): Also look for FIELD_LOC_KIND_DWARF_BLOCK. (resolve_dynamic_struct): Handle FIELD_LOC_KIND_DWARF_BLOCK. * gdbtypes.c (is_dynamic_type_internal): Add special case for C++ virtual base classes. * gnu-v3-abi.c (gnuv3_baseclass_offset): Handle FIELD_LOC_KIND_DWARF_BLOCK. 2020-04-24 Tom Tromey * dwarf2/read.c (read_structure_type): Handle dynamic length. * gdbtypes.c (is_dynamic_type_internal): Check TYPE_HAS_DYNAMIC_LENGTH. (resolve_dynamic_type_internal): Use TYPE_DYNAMIC_LENGTH. * gdbtypes.h (TYPE_HAS_DYNAMIC_LENGTH, TYPE_DYNAMIC_LENGTH): New macros. (enum dynamic_prop_node_kind) : New constant. 2020-04-24 Tom Tromey * dwarf2/read.c (struct variant_field): Rewrite. (struct variant_part_builder): New. (struct nextfield): Remove "variant" field. Add "offset". (struct field_info): Add "current_variant_part" and "variant_parts". (alloc_discriminant_info): Remove. (alloc_rust_variant): New function. (quirk_rust_enum): Update. (dwarf2_add_field): Set "offset" member. Don't handle DW_TAG_variant_part. (offset_map_type): New typedef. (convert_variant_range, create_one_variant) (create_one_variant_part, create_variant_parts) (add_variant_property): New functions. (dwarf2_attach_fields_to_type): Call add_variant_property. (read_structure_type): Don't handle DW_TAG_variant_part. (handle_variant_part, handle_variant): New functions. (handle_struct_member_die): Use them. (process_structure_scope): Don't handle variant parts. * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): Remove. (struct discriminant_info): Remove. (enum dynamic_prop_node_kind) : Remove. (struct main_type) : Remove. * rust-lang.c (rust_enum_p, rust_empty_enum_p): Rewrite. (rust_enum_variant): Return int. Remove "contents". Rewrite. (rust_print_enum, rust_print_struct_def, rust_evaluate_subexp): Update. * valops.c (value_union_variant): Remove. * value.h (value_union_variant): Don't declare. 2020-04-24 Tom Tromey * ada-lang.c (ada_discrete_type_high_bound, ada_discrete_type_low) (ada_value_primitive_packed_val): Update. * ada-valprint.c (ada_value_print_1): Update. * dwarf2/loc.c (evaluate_for_locexpr_baton): New struct. (dwarf2_locexpr_baton_eval): Take a property_addr_info rather than just an address. Use evaluate_for_locexpr_baton. (dwarf2_evaluate_property): Update. * dwarf2/loc.h (struct property_addr_info) : Now an array_view. * findvar.c (default_read_var_value): Update. * gdbtypes.c (compute_variant_fields_inner) (resolve_dynamic_type_internal): Update. (resolve_dynamic_type): Change type of valaddr parameter. * gdbtypes.h (resolve_dynamic_type): Update. * valarith.c (value_subscripted_rvalue): Update. * value.c (value_from_contents_and_address): Update. 2020-04-24 Tom Tromey * dwarf2/loc.c (dwarf2_locexpr_baton_eval): Add "push_initial_value" parameter. (dwarf2_evaluate_property): Likewise. * dwarf2/loc.h (dwarf2_evaluate_property): Update. 2020-04-24 Tom Tromey * gdbtypes.c (is_dynamic_type_internal): Check for variant parts. (variant::matches, compute_variant_fields_recurse) (compute_variant_fields_inner, compute_variant_fields): New functions. (resolve_dynamic_struct): Check for DYN_PROP_VARIANT_PARTS. Use resolved_type after type is made. (operator==): Add new cases. * gdbtypes.h (TYPE_HAS_VARIANT_PARTS): New macro. (struct discriminant_range, struct variant, struct variant_part): New. (union dynamic_prop_data) : New members. (enum dynamic_prop_node_kind) : New constant. (enum dynamic_prop_kind) : New constants. * value.c (unpack_bits_as_long): Now public. * value.h (unpack_bits_as_long): Declare. 2020-04-24 Tom Tromey * rs6000-tdep.c (struct ppc_variant): Rename from "variant". (variants, find_variant_by_arch, rs6000_gdbarch_init): Update. 2020-04-24 Hannes Domani * windows-tdep.c (exception_values): Add WOW64 exception numbers. 2020-04-24 Kamil Rytarowski * inf-ptrace.h (follow_fork, insert_fork_catchpoint) (remove_fork_catchpoint, post_startup_inferior) (post_attach): Move... * obsd-nat.h (follow_fork, insert_fork_catchpoint) (remove_fork_catchpoint, post_startup_inferior) (post_attach): ...here. * inf-ptrace.c (follow_fork, insert_fork_catchpoint) (remove_fork_catchpoint, post_startup_inferior) (post_attach): Move... * obsd-nat.c (follow_fork, insert_fork_catchpoint) (remove_fork_catchpoint, post_startup_inferior) (post_attach): ...here. 2020-04-24 Tom Tromey * nat/windows-nat.h (struct windows_thread_info) : New member. * windows-nat.c (windows_fetch_one_register): Check pc_adjusted. (windows_nat_target::get_windows_debug_event) (windows_nat_target::wait): Set pc_adjusted. 2020-04-24 Tom de Vries * contrib/cc-with-tweaks.sh: Remove .gdb-index file handling. Run gdb-add-index inside temp dir. 2020-04-23 Tom Tromey * windows-tdep.c (is_linked_with_cygwin_dll): Always update "iter" in loop. 2020-04-23 Luis Machado * dwarf2/frame-tailcall.c (dwarf2_tailcall_sniffer_first): Use get_frame_register instead of gdbarch_unwind_pc. 2020-04-23 Tom de Vries * symtab.c (lookup_global_symbol): Prefer def over decl. 2020-04-23 Tom de Vries PR symtab/25807 * block.c (best_symbol, better_symbol): Promote to external. * block.h (best_symbol, better_symbol): Declare. * symtab.c (lookup_symbol_in_objfile_symtabs): Prefer def over decl. 2020-04-23 Tom Tromey PR ada/25837: * dwarf2/read.c (dw2_expand_symtabs_matching_symbol): Store a "const char *", not a "const std::string &". : Update. * unittests/lookup_name_info-selftests.c: Change type of "result". 2020-04-23 Tom Tromey * inferior.h (iterate_over_inferiors): Don't declare. * inferior.c (iterate_over_inferiors): Remove. * darwin-nat.c (find_inferior_task_it, find_inferior_pid_it): Remove. (darwin_find_inferior_by_task, darwin_find_inferior_by_pid): Don't use iterate_over_inferiors. (darwin_resume_inferior_it) (struct resume_inferior_threads_param) (darwin_resume_inferior_threads_it): Remove. (darwin_nat_target::resume): Don't use iterate_over_inferiors. 2020-04-23 Tom de Vries * blockframe.c (find_pc_partial_function): Use find_pc_sect_compunit_symtab rather than objfile->sf->qf->find_pc_sect_compunit_symtab. 2020-04-22 Tom de Vries PR symtab/25764 * dwarf2/read.c (scan_partial_symbols): Allow external variable decls in psymtabs. 2020-04-22 Tom de Vries PR symtab/25801 * psymtab.c (psym_map_symtabs_matching_filename): Don't skip shared symtabs. 2020-04-22 Tom de Vries PR symtab/25700 * dwarf2/read.c (dwarf2_build_psymtabs_hard): Don't create psymtab for CU if already created. 2020-04-21 Tankut Baris Aktemur * infrun.c (displaced_step_fixup): Switch to the event_thread before calling displaced_step_restore, not after. 2020-04-21 Markus Metzger * record-btrace.c (record_btrace_enable_warn): Ignore thread if its inferior is not recorded by us. (record_btrace_target_open): Replace call to all_non_exited_threads () with call to current_inferior ()->non_exited_threads (). (record_btrace_target::stop_recording): Likewise. (record_btrace_target::close): Likewise. (record_btrace_target::wait): Likewise. (record_btrace_target::record_stop_replaying): Likewise. 2020-04-21 Markus Metzger * btrace.c (btrace_enable): Throw an error on double enables and when enabling recording fails. (btrace_disable): Throw an error if the thread is not recorded. 2020-04-21 Markus Metzger * record-btrace.c (record_btrace_target::fetch_registers): Forward request if we do not have a thread_info. 2020-04-21 Tom de Vries PR gdb/25471 * thread.c (scoped_restore_current_thread::scoped_restore_current_thread): Catch exception in get_frame_id. 2020-04-20 Tom Tromey * python/python.c (struct gdbpy_event): Mark move constructor as noexcept. * python/py-tui.c (class gdbpy_tui_window_maker): Mark move constructor as noexcept. * completer.h (struct completion_result): Mark move constructor as noexcept. * completer.c (completion_result::completion_result): Use initialization style. Don't call reset_match_list. 2020-04-20 Mihails Strasuns * MAINTAINERS (Write After Approval): Add myself. 2020-04-18 Tom Tromey * windows-tdep.c (init_w32_command_list) (w32_prefix_command_valid): Restore. (_initialize_windows_tdep): Call init_w32_command_list. 2020-04-18 Tom Tromey * xcoffread.c (enter_line_range, scan_xcoff_symtab): Update. * value.c (value_fn_field): Update. * valops.c (find_function_in_inferior) (value_allocate_space_in_inferior): Update. * tui/tui-winsource.c (tui_update_source_windows_with_line): Update. * tui/tui-source.c (tui_source_window::set_contents): Update. * symtab.c (lookup_global_or_static_symbol) (find_function_start_sal_1, skip_prologue_sal) (print_msymbol_info, find_gnu_ifunc, symbol_arch): Update. * symmisc.c (dump_msymbols, dump_symtab_1) (maintenance_print_one_line_table): Update. * symfile.c (init_entry_point_info, section_is_mapped) (list_overlays_command, simple_read_overlay_table) (simple_overlay_update_1): Update. * stap-probe.c (handle_stap_probe): Update. * stabsread.c (dbx_init_float_type, define_symbol) (read_one_struct_field, read_enum_type, read_range_type): Update. * source.c (info_line_command): Update. * python/python.c (gdbpy_source_objfile_script) (gdbpy_execute_objfile_script): Update. * python/py-type.c (save_objfile_types): Update. * python/py-objfile.c (py_free_objfile): Update. * python/py-inferior.c (python_new_objfile): Update. * psymtab.c (psym_find_pc_sect_compunit_symtab, dump_psymtab) (dump_psymtab_addrmap_1, maintenance_info_psymtabs) (maintenance_check_psymtabs): Update. * printcmd.c (info_address_command): Update. * objfiles.h (struct objfile) : New method, from get_objfile_arch. (get_objfile_arch): Don't declare. * objfiles.c (get_objfile_arch): Remove. (filter_overlapping_sections): Update. * minsyms.c (msymbol_is_function): Update. * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines) (output_nondebug_symbol): Update. * mdebugread.c (parse_symbol, basic_type, parse_partial_symbols) (mdebug_expand_psymtab): Update. * machoread.c (macho_add_oso_symfile): Update. * linux-tdep.c (linux_infcall_mmap, linux_infcall_munmap): Update. * linux-fork.c (checkpoint_command): Update. * linespec.c (convert_linespec_to_sals): Update. * jit.c (finalize_symtab): Update. * infrun.c (insert_exception_resume_from_probe): Update. * ia64-tdep.c (ia64_find_unwind_table): Update. * hppa-tdep.c (internalize_unwinds): Update. * gdbtypes.c (get_type_arch, init_float_type, objfile_type): Update. * gcore.c (call_target_sbrk): Update. * elfread.c (record_minimal_symbol, elf_symtab_read) (elf_rel_plt_read, elf_gnu_ifunc_record_cache) (elf_gnu_ifunc_resolve_by_got): Update. * dwarf2/read.c (create_addrmap_from_index) (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab) (read_debug_names_from_section) (process_psymtab_comp_unit_reader, add_partial_symbol) (add_partial_subprogram, process_full_comp_unit) (read_file_scope, read_func_scope, read_lexical_block_scope) (read_call_site_scope, dwarf2_ranges_read) (dwarf2_record_block_ranges, dwarf2_add_field) (mark_common_block_symbol_computed, read_tag_pointer_type) (read_tag_string_type, dwarf2_init_float_type) (dwarf2_init_complex_target_type, read_base_type) (partial_die_info::read, partial_die_info::read) (read_attribute_value, dwarf_decode_lines_1, new_symbol) (dwarf2_fetch_die_loc_sect_off): Update. * dwarf2/loc.c (dwarf2_find_location_expression) (class dwarf_evaluate_loc_desc, rw_pieced_value) (dwarf2_evaluate_loc_desc_full, dwarf2_locexpr_baton_eval) (dwarf2_loc_desc_get_symbol_read_needs) (locexpr_describe_location_piece, locexpr_describe_location_1) (loclist_describe_location): Update. * dwarf2/index-write.c (write_debug_names): Update. * dwarf2/frame.c (dwarf2_build_frame_info): Update. * dtrace-probe.c (dtrace_process_dof): Update. * dbxread.c (read_dbx_symtab, dbx_end_psymtab) (process_one_symbol): Update. * ctfread.c (ctf_init_float_type, read_base_type): Update. * coffread.c (coff_symtab_read, enter_linenos, decode_base_type) (coff_read_enum_type): Update. * cli/cli-cmds.c (edit_command, list_command): Update. * buildsym.c (buildsym_compunit::finish_block_internal): Update. * breakpoint.c (create_overlay_event_breakpoint) (create_longjmp_master_breakpoint) (create_std_terminate_master_breakpoint) (create_exception_master_breakpoint, get_sal_arch): Update. * block.c (block_gdbarch): Update. * annotate.c (annotate_source_line): Update. 2020-04-17 Tom Tromey * auto-load.c (show_auto_load_cmd): Remove. (auto_load_show_cmdlist_get): Use add_show_prefix_cmd. * arc-tdep.c (_initialize_arc_tdep): Use add_show_prefix_cmd. (maintenance_print_arc_command): Remove. * tui/tui-win.c (tui_command): Remove. (tui_get_cmd_list): Use add_basic_prefix_cmd. * tui/tui-layout.c (tui_layout_command): Remove. (_initialize_tui_layout): Use add_basic_prefix_cmd. * python/python.c (user_set_python, user_show_python): Remove. (_initialize_python): Use add_basic_prefix_cmd, add_show_prefix_cmd. * guile/guile.c (set_guile_command, show_guile_command): Remove. (install_gdb_commands): Use add_basic_prefix_cmd, add_show_prefix_cmd. (info_guile_command): Remove. * dwarf2/read.c (set_dwarf_cmd, show_dwarf_cmd): Remove. (_initialize_dwarf2_read): Use add_basic_prefix_cmd, add_show_prefix_cmd. * cli/cli-style.h (class cli_style_option) : Remove do_set and do_show parameters. * cli/cli-style.c (set_style, show_style): Remove. (_initialize_cli_style): Use add_basic_prefix_cmd, add_show_prefix_cmd. (cli_style_option::add_setshow_commands): Remove do_set and do_show parameters. (cli_style_option::add_setshow_commands): Use add_basic_prefix_cmd, add_show_prefix_cmd. (STYLE_ADD_SETSHOW_COMMANDS): Remove macro. (set_style_name): Remove. * cli/cli-dump.c (dump_command, append_command): Remove. (srec_dump_command, ihex_dump_command, verilog_dump_command) (tekhex_dump_command, binary_dump_command) (binary_append_command): Remove. (_initialize_cli_dump): Use add_basic_prefix_cmd. * windows-tdep.c (w32_prefix_command_valid): Remove global. (init_w32_command_list): Remove; move into ... (_initialize_windows_tdep): ... here. Use add_basic_prefix_cmd. * valprint.c (set_print, show_print, set_print_raw) (show_print_raw): Remove. (_initialize_valprint): Use add_basic_prefix_cmd, add_show_prefix_cmd. * typeprint.c (set_print_type, show_print_type): Remove. (_initialize_typeprint): Use add_basic_prefix_cmd, add_show_prefix_cmd. * record.c (set_record_command, show_record_command): Remove. (_initialize_record): Use add_basic_prefix_cmd, add_show_prefix_cmd. * cli/cli-cmds.c (_initialize_cli_cmds): Use add_basic_prefix_cmd, add_show_prefix_cmd. (info_command, show_command, set_debug, show_debug): Remove. * top.h (set_history, show_history): Don't declare. * top.c (set_history, show_history): Remove. * target-descriptions.c (set_tdesc_cmd, show_tdesc_cmd) (unset_tdesc_cmd): Remove. (_initialize_target_descriptions): Use add_basic_prefix_cmd, add_show_prefix_cmd. * symtab.c (info_module_command): Remove. (_initialize_symtab): Use add_basic_prefix_cmd. * symfile.c (overlay_command): Remove. (_initialize_symfile): Use add_basic_prefix_cmd. * sparc64-tdep.c (info_adi_command): Remove. (_initialize_sparc64_adi_tdep): Use add_basic_prefix_cmd. * sh-tdep.c (show_sh_command, set_sh_command): Remove. (_initialize_sh_tdep): Use add_basic_prefix_cmd, add_show_prefix_cmd. * serial.c (serial_set_cmd, serial_show_cmd): Remove. (_initialize_serial): Use add_basic_prefix_cmd, add_show_prefix_cmd. * ser-tcp.c (set_tcp_cmd, show_tcp_cmd): Remove. (_initialize_ser_tcp): Use add_basic_prefix_cmd, add_show_prefix_cmd. * rs6000-tdep.c (set_powerpc_command, show_powerpc_command) (_initialize_rs6000_tdep): Use add_basic_prefix_cmd, add_show_prefix_cmd. * riscv-tdep.c (show_riscv_command, set_riscv_command) (show_debug_riscv_command, set_debug_riscv_command): Remove. (_initialize_riscv_tdep): Use add_basic_prefix_cmd, add_show_prefix_cmd. * remote.c (remote_command, set_remote_cmd): Remove. (_initialize_remote): Use add_basic_prefix_cmd. * record-full.c (set_record_full_command) (show_record_full_command): Remove. (_initialize_record_full): Use add_basic_prefix_cmd, add_show_prefix_cmd. * record-btrace.c (cmd_set_record_btrace) (cmd_show_record_btrace, cmd_set_record_btrace_bts) (cmd_show_record_btrace_bts, cmd_set_record_btrace_pt) (cmd_show_record_btrace_pt): Remove. (_initialize_record_btrace): Use add_basic_prefix_cmd, add_show_prefix_cmd. * ravenscar-thread.c (set_ravenscar_command) (show_ravenscar_command): Remove. (_initialize_ravenscar): Use add_basic_prefix_cmd, add_show_prefix_cmd. * mips-tdep.c (show_mips_command, set_mips_command) (_initialize_mips_tdep): Use add_basic_prefix_cmd, add_show_prefix_cmd. * maint.c (maintenance_command, maintenance_info_command) (maintenance_check_command, maintenance_print_command) (maintenance_set_cmd, maintenance_show_cmd): Remove. (_initialize_maint_cmds): Use add_basic_prefix_cmd, add_show_prefix_cmd. (show_per_command_cmd): Remove. * maint-test-settings.c (maintenance_set_test_settings_cmd): Remove. (maintenance_show_test_settings_cmd): Remove. (_initialize_maint_test_settings): Use add_basic_prefix_cmd, add_show_prefix_cmd. * maint-test-options.c (maintenance_test_options_command): Remove. (_initialize_maint_test_options): Use add_basic_prefix_cmd. * macrocmd.c (macro_command): Remove (_initialize_macrocmd): Use add_basic_prefix_cmd. * language.c (set_check, show_check): Remove. (_initialize_language): Use add_basic_prefix_cmd, add_show_prefix_cmd. * infcmd.c (unset_command): Remove. (_initialize_infcmd): Use add_basic_prefix_cmd. * i386-tdep.c (set_mpx_cmd, show_mpx_cmd): Remove. (_initialize_i386_tdep): Use add_basic_prefix_cmd, add_show_prefix_cmd. * go32-nat.c (go32_info_dos_command): Remove. (_initialize_go32_nat): Use add_basic_prefix_cmd. * cli/cli-decode.c (do_prefix_cmd, add_basic_prefix_cmd) (do_show_prefix_cmd, add_show_prefix_cmd): New functions. * frame.c (set_backtrace_cmd, show_backtrace_cmd): Remove. (_initialize_frame): Use add_basic_prefix_cmd, add_show_prefix_cmd. * dcache.c (set_dcache_command, show_dcache_command): Remove. (_initialize_dcache): Use add_basic_prefix_cmd, add_show_prefix_cmd. * cp-support.c (maint_cplus_command): Remove. (_initialize_cp_support): Use add_basic_prefix_cmd. * btrace.c (maint_btrace_cmd, maint_btrace_set_cmd) (maint_btrace_show_cmd, maint_btrace_pt_set_cmd) (maint_btrace_pt_show_cmd, _initialize_btrace): Use add_basic_prefix_cmd, add_show_prefix_cmd. * breakpoint.c (save_command): Remove. (_initialize_breakpoint): Use add_basic_prefix_cmd. * arm-tdep.c (set_arm_command, show_arm_command): Remove. (_initialize_arm_tdep): Use add_basic_prefix_cmd, add_show_prefix_cmd. * ada-lang.c (maint_set_ada_cmd, maint_show_ada_cmd) (set_ada_command, show_ada_command): Remove. (_initialize_ada_language): Use add_basic_prefix_cmd, add_show_prefix_cmd. * command.h (add_basic_prefix_cmd, add_show_prefix_cmd): Declare. 2020-04-16 Kamil Rytarowski * nbsd-nat.c (inf_ptrace_target::auxv_parse): Remove. * nbsd-nat.h (inf_ptrace_target::auxv_parse): Likewise. 2020-04-16 Simon Marchi * windows-tdep.c (is_linked_with_cygwin_dll): Add filename to warning messages. 2020-04-16 Simon Marchi * windows-tdep.c (is_linked_with_cygwin_dll): Consider case where import table is not at beginning of .idata section. 2020-04-16 Pedro Alves * inferior.c (delete_inferior): Use delete operator directly instead of delete_program_space. * progspace.c (add_program_space): New, factored out from program_space::program_space. (remove_program_space): New, factored out from delete_program_space. (program_space::program_space): Remove intro comment. Rewrite. (program_space::~program_space): Remove intro comment. Call remove_program_space. (delete_program_space): Delete. * progspace.h (program_space::program_space): Make explicit. Move intro comment here, adjusted. (program_space::~program_space): Move intro comment here, adjusted. (delete_program_space): Remove. 2020-04-16 Tom Tromey * windows-nat.c (windows_nat::handle_access_violation): New function. * nat/windows-nat.h (handle_access_violation): Declare. * nat/windows-nat.c (handle_exception): Move Cygwin code to windows-nat.c. Call handle_access_violation. 2020-04-16 Tom de Vries PR symtab/25791 * dwarf2/index-write.c (write_gdbindex): Generate CU table entries for CUs without psymtab. 2020-04-16 Kevin Buettner * python/python.c (do_start_initialization): Don't call PyEval_InitThreads for Python 3.9 and beyond. 2020-04-15 Kamil Rytarowski * obsd-nat.c (obsd_nat_target::update_thread_list): Pass "this" to thread functions. (obsd_nat_target::wait): Likewise. 2020-04-15 Tom Tromey * windows-nat.c (DEBUG_EXEC, DEBUG_EVENTS, DEBUG_MEM) (DEBUG_EXCEPT): Use debug_printf. 2020-04-15 Andrew Burgess * completer.c (class completion_tracker::completion_hash_entry) : New member function. (completion_tracker::discard_completions): New callback to hash a completion_hash_entry, pass this to htab_create_alloc. 2016-01-20 Jon Turney * windows-nat.c (windows_make_so): Warn rather than stopping with an error if realpath() fails. 2020-04-14 Kamil Rytarowski * nbsd-nat.c (nbsd_pid_to_kinfo_proc2): New. (nbsd_nat_target::info_proc): Add do_status. 2020-04-14 Simon Marchi Tom de Vries PR symtab/25718 * psympriv.h (struct partial_symtab::read_symtab) (struct partial_symtab::expand_psymtab) (struct partial_symtab::read_dependencies): Update comments. * dwarf2/read.c (struct dwarf2_include_psymtab::read_symtab): Call read_symtab for includer. (struct dwarf2_include_psymtab::expand_psymtab): Assert false. (struct dwarf2_include_psymtab::readin_p): Call readin_p () for includer. (struct dwarf2_include_psymtab::m_readin): Remove. (struct dwarf2_include_psymtab::includer): New member function. (dwarf2_psymtab::expand_psymtab): Assert !readin. 2020-04-14 Tom de Vries PR symtab/25720 * symmisc.c (maintenance_expand_symtabs): Call expand_symtabs_matching with NULL symbol_matcher and lookup_name. * psymtab.c (psym_expand_symtabs_matching): Handle NULL symbol_matcher and lookup_name. * dwarf2/read.c (dw2_expand_symtabs_matching) (dw2_debug_names_expand_symtabs_matching): Same. * symfile.h (struct quick_symbol_functions::expand_symtabs_matching): Make lookup_name a pointer. Update comment. * symtab.c (global_symbol_searcher::expand_symtabs): Handle lookup_name being a pointer. * symfile.c (expand_symtabs_matching): Same. * symfile-debug.c (debug_qf_expand_symtabs_matching): Same. * linespec.c (iterate_over_all_matching_symtabs): Same. 2020-04-13 Tom Tromey * run-on-main-thread.c: Update include. * unittests/main-thread-selftests.c: Update include. * tui/tui-win.c: Update include. * tui/tui-io.c: Update include. * tui/tui-interp.c: Update include. * tui/tui-hooks.c: Update include. * top.h: Update include. * top.c: Update include. * ser-base.c: Update include. * remote.c: Update include. * remote-notif.c: Update include. * remote-fileio.c: Update include. * record-full.c: Update include. * record-btrace.c: Update include. * python/python.c: Update include. * posix-hdep.c: Update include. * mingw-hdep.c: Update include. * mi/mi-main.c: Update include. * mi/mi-interp.c: Update include. * main.c: Update include. * linux-nat.c: Update include. * interps.c: Update include. * infrun.c: Update include. * inf-loop.c: Update include. * event-top.c: Update include. * event-loop.c: Move to ../gdbsupport/. * event-loop.h: Move to ../gdbsupport/. * async-event.h: Update include. * Makefile.in (COMMON_SFILES, HFILES_NO_SRCDIR): Update. 2020-04-13 Tom Tromey * tui/tui-win.c: Include async-event.h. * remote.c: Include async-event.h. * remote-notif.c: Include async-event.h. * record-full.c: Include async-event.h. * record-btrace.c: Include async-event.h. * infrun.c: Include async-event.h. * event-top.c: Include async-event.h. * event-loop.h: Move some declarations to async-event.h. * event-loop.c: Don't include ser-event.h or top.h. Move some code to async-event.c. * async-event.h: New file. * async-event.c: New file. * Makefile.in (COMMON_SFILES): Add async-event.c. (HFILES_NO_SRCDIR): Add async-event.h. 2020-04-13 Tom Tromey * utils.c (flush_streams): New function. * event-loop.c (gdb_wait_for_event): Call flush_streams. 2020-04-13 Tom Tromey * event-loop.c (handle_file_event): Use warning, not printf_unfiltered. 2020-04-13 Tom Tromey * event-loop.c: Include . 2020-04-13 Tom Tromey * gdb_select.h: Move to ../gdbsupport/. * event-loop.c: Update include path. * top.c: Update include path. * ser-base.c: Update include path. * ui-file.c: Update include path. * ser-tcp.c: Update include path. * guile/scm-ports.c: Update include path. * posix-hdep.c: Update include path. * ser-unix.c: Update include path. * gdb_usleep.c: Update include path. * mingw-hdep.c: Update include path. * inflow.c: Update include path. * infrun.c: Update include path. * event-top.c: Update include path. 2020-04-13 Tom Tromey * configure: Rebuild. * configure.ac: Remove checks that are now in GDB_AC_COMMON. 2020-04-13 Tom Tromey * event-loop.h (start_event_loop): Don't declare. * event-loop.c (start_event_loop): Move... * main.c (start_event_loop): ...here. Now static. 2020-04-13 Sergio Durigan Junior * MAINTAINERS: Update my email address. 2020-04-12 Kamil Rytarowski * nbsd-nat.c (nbsd_nat_target::info_proc): Add IP_MINIMAL and IP_ALL. 2020-04-12 Kamil Rytarowski * nbsd-nat.c (nbsd_pid_to_cmdline): Add. (nbsd_nat_target::info_proc): Add do_cmdline. 2020-04-12 Kamil Rytarowski * nbsd-nat.c (nbsd_pid_to_cwd): Add. (nbsd_nat_target::info_proc): Add do_cwd. 2020-04-12 Kamil Rytarowski * nbsd-nat.c (nbsd_nat_target::info_proc): Add do_exe. 2020-04-11 Kamil Rytarowski * nbsd-nat.c; Include "nbsd-tdep.h" and "gdbarch.h". * nbsd-nat.c (nbsd_nat_target::find_memory_regions) (nbsd_nat_target::info_proc): New functions. * nbsd-nat.c (kinfo_get_vmmap): New function. * nbsd-nat.c (nbsd_nat_target::info_proc) Use nbsd_info_proc_mappings_header and nbsd_info_proc_mappings_entry. * nbsd-tdep.c (nbsd_info_proc_mappings_header) (nbsd_info_proc_mappings_entry, nbsd_vm_map_entry_flags): New functions. * nbsd-tdep.c (KINFO_VME_PROT_READ, KINFO_VME_PROT_WRITE) (KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW) (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP) (KINFO_VME_FLAG_PAGEABLE, KINFO_VME_FLAG_GROWS_UP) (KINFO_VME_FLAG_GROWS_DOWN): New. 2020-04-10 Artur Shepilko * utils.c (copy_bitwise): Use unsigned 0 constant as operand of bit shift. 2020-04-10 Tom Tromey * symfile.c (symbol_file_add_separate): Preserve OBJF_MAINLINE. 2020-04-10 Tom Tromey * symtab.c (get_symbol_address, get_msymbol_address): Skip separate debug files. 2020-04-10 Hannes Domani * nat/windows-nat.c (STATUS_WX86_BREAKPOINT, STATUS_WX86_SINGLE_STEP): Move to... * nat/windows-nat.h (STATUS_WX86_BREAKPOINT, STATUS_WX86_SINGLE_STEP): ... here. * windows-nat.c (windows_nat_target::get_windows_debug_event): Check for STATUS_WX86_BREAKPOINT. (windows_nat_target::wait): Same. 2020-04-10 Tom de Vries PR cli/25808 * python/lib/gdb/__init__.py: Initialize lexer with stripnl=False. 2020-04-09 Simon Marchi * MAINTAINERS (Global Maintainers): Add Tom de Vries. (Write After Approval): Remove Tom de Vries. 2020-04-09 Bernd Edlinger revert partially: 2020-04-01 Bernd Edlinger * buildsym.c (record_line): Fix undefined behavior and preserve lines at eof. 2020-04-09 Kamil Rytarowski * auxv.h (svr4_auxv_parse): New. * auxv.c (default_auxv_parse): Split into default_auxv_parse and generic_auxv_parse. (svr4_auxv_parse): Add. * obsd-tdep.c: Include "auxv.h". (obsd_auxv_parse): Remove. (obsd_init_abi): Remove comment. (obsd_init_abi): Change set_gdbarch_auxv_parse passed argument from `obsd_auxv_parse' to `svr4_auxv_parse'. * nbsd-tdep.c: Include "auxv.h". (nbsd_init_abi): Call set_gdbarch_auxv_parse. 2020-04-08 Tom Tromey * nat/windows-nat.h (last_wait_event): Don't declare. (wait_for_debug_event): Update comment. * nat/windows-nat.c (last_wait_event): Now static. 2020-04-08 Tom Tromey * windows-nat.c (wait_for_debug_event): Move to nat/windows-nat.c. * nat/windows-nat.h (wait_for_debug_event): Declare. * nat/windows-nat.c (wait_for_debug_event): Move from windows-nat.c. No longer static. 2020-04-08 Tom Tromey * windows-nat.c (get_windows_debug_event): Use fetch_pending_stop. * nat/windows-nat.h (fetch_pending_stop): Declare. * nat/windows-nat.c (fetch_pending_stop): New function. 2020-04-08 Tom Tromey * windows-nat.c (windows_continue): Use matching_pending_stop and continue_last_debug_event. * nat/windows-nat.h (matching_pending_stop) (continue_last_debug_event): Declare. * nat/windows-nat.c (DEBUG_EVENTS): New define. (matching_pending_stop, continue_last_debug_event): New functions. 2020-04-08 Tom Tromey * windows-nat.c (MS_VC_EXCEPTION): Move to nat/windows-nat.c. (handle_exception_result): Move to nat/windows-nat.h. (DEBUG_EXCEPTION_SIMPLE): Remove. (windows_nat::handle_ms_vc_exception): New function. (handle_exception): Move to nat/windows-nat.c. (get_windows_debug_event): Update. (STATUS_WX86_BREAKPOINT, STATUS_WX86_SINGLE_STEP): Move to nat/windows-nat.c. * nat/windows-nat.h (handle_ms_vc_exception): Declare. (handle_exception_result): Move from windows-nat.c. (handle_exception): Declare. * nat/windows-nat.c (MS_VC_EXCEPTION, handle_exception) (STATUS_WX86_SINGLE_STEP, STATUS_WX86_BREAKPOINT): Move from windows-nat.c. 2020-04-08 Tom Tromey * windows-nat.c (exception_count, event_count): Remove. (handle_exception, get_windows_debug_event) (do_initial_windows_stuff): Update. 2020-04-08 Tom Tromey * windows-nat.c (windows_nat::handle_load_dll) (windows_nat::handle_unload_dll): Rename. No longer static. * nat/windows-nat.h (handle_load_dll, handle_unload_dll): Declare. 2020-04-08 Tom Tromey * complaints.h (stop_whining): Declare at top-level. (complaint): Don't declare stop_whining. 2020-04-08 Tom Tromey * windows-nat.c (windows_nat::handle_output_debug_string): Rename. No longer static. * nat/windows-nat.h (handle_output_debug_string): Declare. 2020-04-08 Tom Tromey * windows-nat.c (current_process_handle, current_process_id) (main_thread_id, last_sig, current_event, last_wait_event) (current_windows_thread, desired_stop_thread_id, pending_stops) (struct pending_stop, siginfo_er): Move to nat/windows-nat.c. (display_selectors, fake_create_process) (get_windows_debug_event): Update. * nat/windows-nat.h (current_process_handle, current_process_id) (main_thread_id, last_sig, current_event, last_wait_event) (current_windows_thread, desired_stop_thread_id, pending_stops) (struct pending_stop, siginfo_er): Move from windows-nat.c. * nat/windows-nat.c (current_process_handle, current_process_id) (main_thread_id, last_sig, current_event, last_wait_event) (current_windows_thread, desired_stop_thread_id, pending_stops) (siginfo_er): New globals. Move from windows-nat.c. 2020-04-08 Tom Tromey * windows-nat.c (get_image_name): Move to nat/windows-nat.c. (handle_load_dll): Update. * nat/windows-nat.c (get_image_name): Move from windows-nat.c. 2020-04-08 Tom Tromey * windows-nat.c (enum thread_disposition_type): Move to nat/windows-nat.h. (windows_nat::thread_rec): Rename from thread_rec. No longer static. (windows_add_thread, windows_nat_target::fetch_registers) (windows_nat_target::store_registers, handle_exception) (windows_nat_target::resume, get_windows_debug_event) (windows_nat_target::get_tib_address) (windows_nat_target::thread_name) (windows_nat_target::thread_alive): Update. * nat/windows-nat.h (enum thread_disposition_type): Move from windows-nat.c. (thread_rec): Declare. 2020-04-08 Tom Tromey * windows-nat.c: Add "using namespace". * nat/windows-nat.h: Wrap contents in windows_nat namespace. * nat/windows-nat.c: Wrap contents in windows_nat namespace. 2020-04-08 Tom Tromey * nat/windows-nat.h (struct windows_thread_info): Declare destructor. * nat/windows-nat.c (~windows_thread_info): New. 2020-04-08 Tom Tromey PR gdb/22992 * windows-nat.c (current_event): Update comment. (last_wait_event, desired_stop_thread_id): New globals. (struct pending_stop): New. (pending_stops): New global. (windows_nat_target) : New methods. (windows_fetch_one_register): Add assertions. Adjust PC. (windows_continue): Handle pending stops. Suspend other threads when stepping. Use last_wait_event (wait_for_debug_event): New function. (get_windows_debug_event): Use wait_for_debug_event. Handle pending stops. Queue spurious stops. (windows_nat_target::wait): Set stopped_at_software_breakpoint. (windows_nat_target::kill): Use wait_for_debug_event. * nat/windows-nat.h (struct windows_thread_info) : New field. * nat/windows-nat.c (windows_thread_info::resume): Clear stopped_at_software_breakpoint. 2020-04-08 Tom Tromey * windows-nat.c (enum thread_disposition_type): New. (thread_rec): Replace "get_context" parameter with "disposition"; change type. (windows_add_thread, windows_nat_target::fetch_registers) (windows_nat_target::store_registers, handle_exception) (windows_nat_target::resume, get_windows_debug_event) (windows_nat_target::get_tib_address) (windows_nat_target::thread_name) (windows_nat_target::thread_alive): Update. 2020-04-08 Tom Tromey * windows-nat.c (thread_rec): Use windows_thread_info::suspend. (windows_continue): Use windows_continue::resume. * nat/windows-nat.h (struct windows_thread_info) : Declare new methods. * nat/windows-nat.c: New file. * configure.nat (NATDEPFILES): Add nat/windows-nat.o when needed. 2020-04-08 Tom Tromey * windows-nat.c (windows_add_thread, windows_delete_thread) (windows_nat_target::fetch_registers) (windows_nat_target::store_registers, fake_create_process) (windows_nat_target::resume, windows_nat_target::resume) (get_windows_debug_event, windows_nat_target::wait) (windows_nat_target::pid_to_str) (windows_nat_target::get_tib_address) (windows_nat_target::get_ada_task_ptid) (windows_nat_target::thread_name) (windows_nat_target::thread_alive): Use lwp, not tid. 2020-04-08 Tom Tromey * windows-nat.c (handle_exception) (windows_nat_target::thread_name): Update. * nat/windows-nat.h (windows_thread_info): Remove destructor. : Now unique_xmalloc_ptr. 2020-04-08 Tom Tromey * windows-nat.c (thread_rec) (windows_nat_target::fetch_registers): Update. * nat/windows-nat.h (struct windows_thread_info) : Update comment. : Now bool. 2020-04-08 Tom Tromey * windows-nat.c (windows_add_thread): Use new. (windows_init_thread_list, windows_delete_thread): Use delete. (get_windows_debug_event): Update. * nat/windows-nat.h (struct windows_thread_info): Add constructor, destructor, and initializers. 2020-04-08 Tom Tromey * windows-nat.c (struct windows_thread_info): Remove. * nat/windows-nat.h: New file. 2020-04-08 Tom Tromey * windows-nat.c (struct windows_thread_info) : Rename from "id". (thread_rec, windows_add_thread, windows_delete_thread) (windows_continue): Update. 2020-04-08 Tom Tromey * windows-nat.c (struct windows_thread_info): Remove typedef. (thread_head): Remove. (thread_list): New global. (thread_rec, windows_add_thread, windows_init_thread_list) (windows_delete_thread, windows_continue): Update. 2020-04-08 Simon Marchi * windows-tdep.h (windows_init_abi): Add comment. (cygwin_init_abi): New declaration. * windows-tdep.c: Split signal enumeration in two, one for Windows and one for Cygwin. (windows_gdb_signal_to_target): Only deal with signal of the Windows OS ABI. (cygwin_gdb_signal_to_target): New function. (windows_init_abi): Rename to windows_init_abi_common, don't set gdb_signal_to_target gdbarch method. Add new new function with this name. (cygwin_init_abi): New function. * amd64-windows-tdep.c (amd64_windows_init_abi_common): Add comment. Don't call windows_init_abi. (amd64_windows_init_abi): Add comment, call windows_init_abi. (amd64_cygwin_init_abi): Add comment, call cygwin_init_abi. * i386-windows-tdep.c (i386_windows_init_abi): Rename to i386_windows_init_abi_common, don't call windows_init_abi. Add a new function of this name. (i386_cygwin_init_abi): New function. (_initialize_i386_windows_tdep): Bind i386_cygwin_init_abi to OS ABI Cygwin. 2020-04-08 Simon Marchi * dwarf2/read.c (read_gdb_index_from_buffer): Remove objfile parameter.c. (dwarf2_read_gdb_index): Update. 2020-04-07 Kamil Rytarowski * nbsd-tdep.c: Include "objfiles.h". (nbsd_skip_solib_resolver): New. (nbsd_init_abi): Call set_gdbarch_skip_solib_resolver(). 2020-04-07 Nitika Achra * dwarf2/loc.c (loclist_describe_location): Call the function decode_debug_loclists_ addresses if DWARF version is 5 or more because DW_LLE_start* or DW_LLE_offset_pair with DW_LLE_base_addressx are being emitted in DWARFv5. Add the newly added kind DW_LOC_OFFSET_PAIR also. The length of location description is an unsigned ULEB integer in DWARFv5 instead of unsigned integer. 2020-04-07 Nitika Achra * dwarf2/loc.c (enum debug_loc_kind): Add a new kind DEBUG_LOC_OFFSET_PAIR. (dwarf2_find_location_expression): Call the function decode_debug_loclists_ addresses if DWARF version is 5 or more. DW_LLE_start* or DW_LLE_offset_pair with DW_LLE_base_addressx are being emitted in DWARFv5 instead of DW_LLE_GNU*. Add applicable base address if the entry is DW_LLE_offset_pair from DWO. (decode_debug_loclists_addresses): Return DEBUG_LOC_OFFSET_PAIR instead of DEBUG_LOC_START_END in case of DW_LLE_offset_pair. 2020-04-07 Nitika Achra * dwarf2/read.c (cu_debug_loc_section): Added the declaration for the function. (read_loclist_index): New function definition. (lookup_loclist_base): New function definition. (read_loclist_header): New function definition. (dwarf2_cu): Add loclist_base and loclist_header field. (dwarf2_locate_dwo_sections): Handle .debug_loclists.dwo section. (read_full_die_1): Read the value of DW_AT_loclists_base. (read_attribute_reprocess): Handle DW_FORM_loclistx. (read_attribute_value): Handle DW_FORM_loclistx. (skip_one_die): Handle DW_FORM_loclistx. (loclist_header): New structure declaration. * dwarf2/attribute.c (form_is_section_offset): Handle DW_FORM_loclistx. 2020-04-07 Simon Marchi * dwarf2/read.h (struct dwarf2_psymtab): Remove two-parameters constructor. Remove `addr` parameter from other constructor and add `per_cu` parameter. * dwarf2/read.c (create_partial_symtab): Update. 2020-04-07 Tom de Vries PR symtab/25796 * dwarf2/read.c (can_have_DW_AT_const_value_p): New function. (partial_die_info::fixup): Inherit has_const_value. 2020-04-07 Tom de Vries * psymtab.c (maintenance_check_psymtabs): Skip static LOC_BLOCK symbols without address. 2020-04-06 Kamil Rytarowski * nbsd-nat.h (struct thread_info): Add forward declaration. (nbsd_nat_target::thread_alive): Add. (nbsd_nat_target::thread_name): Likewise. (nbsd_nat_target::update_thread_list): Likewise. (update_thread_list::post_attach): Likewise. (post_attach::pid_to_str): Likewise. * nbsd-nat.c: Include "gdbthread.h" and "inferior.h". (nbsd_thread_lister): Add. (nbsd_nat_target::thread_alive): Likewise. (nbsd_nat_target::thread_name): Likewise. (nbsd_add_threads): Likewise. (update_thread_list::post_attach): Likewise. (nbsd_nat_target::update_thread_list): Likewise. (post_attach::pid_to_str): Likewise. 2020-04-06 Tom Tromey * ada-valprint.c (print_variant_part): Extract the variant field. (print_field_values): Use the field as the outer value when recursing. 2020-04-06 Tom Tromey * sh-nbsd-tdep.c: Include nbsd-tdep.h. * ppc-nbsd-tdep.c: Include nbsd-tdep.h. * mips-nbsd-tdep.c (mipsnbsd_init_abi): Add missing ";". * arm-nbsd-tdep.c: Include nbsd-tdep.h. * hppa-nbsd-tdep.c: Include nbsd-tdep.h. 2020-04-06 Tom Tromey * dwarf2/read.c (read_base_type) : Handle TYPE_CODE_ERROR. 2020-04-06 Kamil Rytarowski * nbsd-tdep.c: Include "gdbarch.h". Define enum with NetBSD signal numbers. (nbsd_gdb_signal_from_target, nbsd_gdb_signal_to_target): New. * alpha-nbsd-tdep.c (alphanbsd_init_abi): Call nbsd_init_abi(). * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise. * arm-nbsd-tdep.c (arm_netbsd_elf_init_abi): Likewise. * hppa-nbsd-tdep.c (hppanbsd_init_abi): Likewise. * i386-nbsd-tdep.c (i386nbsd_init_abi): Likewise. * mips-nbsd-tdep.c (nbsd_init_abi): Likewise. * ppc-nbsd-tdep.c (ppcnbsd_init_abi): Likewise. * sh-nbsd-tdep.c (shnbsd_init_abi): Likewise. * sparc-nbsd-tdep.c (sparc32nbsd_init_abi): Likewise. * sparc64-nbsd-tdep.c (sparc64nbsd_init_abi): Likewise. * vax-nbsd-tdep.c (vaxnbsd_elf_init_abi): Likewise. 2020-04-03 Hannes Domani PR gdb/25325 * dwarf2/read.c (read_enumeration_type): Fix typed enum attributes. 2020-04-03 Tom Tromey * dwarf2/loc.c (disassemble_dwarf_expression) : Read constant block. 2020-04-02 Simon Marchi * gdb_bfd.h: Include gdbsupport/byte-vector.h. (gdb_bfd_get_full_section_contents): New declaration. * gdb_bfd.c (gdb_bfd_get_full_section_contents): New function. * windows-tdep.c (is_linked_with_cygwin_dll): Use gdb_bfd_get_full_section_contents. 2020-04-02 Simon Marchi * exec.c (build_section_table): Replace internal_error with gdb_assert. (section_table_xfer_memory_partial): Likewise. * mdebugread.c (parse_partial_symbols): Likewise. * psymtab.c (lookup_partial_symbol): Likewise. * utils.c (wrap_here): Likewise. 2020-04-02 Tom Tromey * f-lang.c (build_fortran_types): Use arch_type to initialize builtin_complex_s32 in the TYPE_CODE_ERROR case. 2020-04-02 Tom Tromey * dwarf2/read.c (partial_die_info::read): Do not create a vector of attributes. 2020-04-02 Andrew Burgess Bernd Edlinger Tom Tromey * buildsym.c (buildsym_compunit::record_line): Remove deduplication code. 2020-04-02 Tom de Vries PR ada/24671 * dwarf2/read.c (dw2_map_matching_symbols): Handle -readnow. 2020-04-02 Tom de Vries * dwarf2/read.c (dwarf2_gdb_index_functions, dwarf2_debug_names_functions): Init lookup_global_symbol_language with NULL. * psymtab.c (psym_lookup_global_symbol_language): New function. (psym_functions): Init psym_lookup_global_symbol_language with psym_lookup_global_symbol_language. * symfile-debug.c (debug_sym_quick_functions): Init lookup_global_symbol_language with NULL. * symfile.c (set_initial_language): Remove fixme comment. * symfile.h (struct quick_symbol_functions): Add lookup_global_symbol_language. * symtab.c (find_quick_global_symbol_language): New function. (find_main_name): Use find_quick_global_symbol_language. 2020-04-01 Simon Marchi * windows-tdep.c (is_linked_with_cygwin_dll): Fix style. 2020-04-01 Bernd Edlinger * buildsym.c (record_line): Fix undefined behavior and preserve lines at eof. 2020-04-01 Bernd Edlinger * buildsym.c (record_line): Fix the resizing condition. 2020-04-01 Tom Tromey * value.h (value_literal_complex): Add comment. * valops.c (value_literal_complex): Refer to value.h. 2020-04-01 Tom Tromey * c-exp.y (FLOAT_KEYWORD, COMPLEX): New tokens. (scalar_type): New rule, from typebase. (typebase): Use scalar_type. Recognize complex types. (field_name): Handle FLOAT_KEYWORD. (ident_tokens): Add _Complex and __complex__. 2020-04-01 Tom Tromey PR exp/25299: * valarith.c (promotion_type, complex_binop): New functions. (scalar_binop): Handle complex numbers. Use promotion_type. (value_pos, value_neg, value_complement): Handle complex numbers. 2020-04-01 Tom Tromey * c-exp.y (COMPLEX_INT, COMPLEX_FLOAT): New tokens. (exp) : New rules. (parse_number): Handle complex numbers. 2020-04-01 Tom Tromey * c-valprint.c (c_decorations): Change complex suffix to "i". 2020-04-01 Tom Tromey * valprint.c (generic_value_print_complex): Use accessors. * value.h (value_real_part, value_imaginary_part): Declare. * valops.c (value_real_part, value_imaginary_part): New functions. * value.c (creal_internal_fn, cimag_internal_fn): Use accessors. 2020-04-01 Tom Tromey * stabsread.c (rs6000_builtin_type, read_sun_floating_type) (read_range_type): Update. * mdebugread.c (basic_type): Update. * go-lang.c (build_go_types): Use init_complex_type. * gdbtypes.h (struct main_type) : New member. (init_complex_type): Update. (arch_complex_type): Don't declare. * gdbtypes.c (init_complex_type): Remove "objfile" parameter. Make name if none given. Use alloc_type_copy. Look for cached complex type. (arch_complex_type): Remove. (gdbtypes_post_init): Use init_complex_type. * f-lang.c (build_fortran_types): Use init_complex_type. * dwarf2/read.c (read_base_type): Update. * d-lang.c (build_d_types): Use init_complex_type. * ctfread.c (read_base_type): Update. 2020-04-01 Tankut Baris Aktemur * infrun.c (stop_all_threads): Update assertion, plus when stopping threads, take into account that we might be trying to stop an all-stop target. (stop_waiting): Call 'stop_all_threads' if there exists a non-stop target. 2020-04-01 Tankut Baris Aktemur * target.h (exists_non_stop_target): New function declaration. * target.c (exists_non_stop_target): New function. 2020-04-01 Hannes Domani PR gdb/24789 * eval.c (is_integral_or_integral_reference): New function. (evaluate_subexp_standard): Allow integer references in pointer arithmetic. 2020-04-01 Tankut Baris Aktemur * remote.c (remote_target::remote_parse_stop_reply): Remove the check for no ptid in the stop reply when the target is non-stop. 2020-04-01 Tom Tromey * symtab.h (class lookup_name_info) : Change "name" parameter to rvalue reference. Initialize m_name_holder. : New overloads. : Return gdb::string_view. : New method. : Update. : Update. : Return const char *. : Change type. * symtab.c (demangle_for_lookup_info::demangle_for_lookup_info) (demangle_for_lookup_info::demangle_for_lookup_info): Update. (lookup_name_info::match_any): Update. * psymtab.c (match_partial_symbol, lookup_partial_symbol): Update. * minsyms.c (linkage_name_str): Update. * language.c (default_symbol_name_matcher): Update. * dwarf2/read.c (mapped_index_base::find_name_components_bounds): Update. * ada-lang.c (ada_fold_name): Change parameter to string_view. (ada_lookup_name_info::ada_lookup_name_info): Update. (literal_symbol_name_matcher): Update. 2020-04-01 Tom Tromey * psymtab.c (psymtab_search_name): Remove function. (psym_lookup_symbol): Create search name and lookup name here. (lookup_partial_symbol): Remove "name" parameter; add lookup_name. (psym_expand_symtabs_for_function): Update. 2020-03-31 Joel Jones PR tui/25597: * python/py-tui.c: Include gdb_curses.h inside of #ifdef TUI. 2020-03-31 Tom Tromey * dwarf2/abbrev.c (abbrev_table::read): Conditionally call memcpy. 2020-03-30 Nelson Chu * features/riscv/32bit-csr.xml: Regenerated. * features/riscv/64bit-csr.xml: Regenerated. 2020-03-30 Tom Tromey * ada-valprint.c (print_variant_part): Update. * ada-lang.h (ada_which_variant_applies): Update. * ada-lang.c (ada_which_variant_applies): Remove outer_type and outer_valaddr parameters; replace with "outer" value parameter. (to_fixed_variant_branch_type): Update. 2020-03-30 Pedro Franco de Carvalho * ppc-linux-nat.c: Include , , and . Remove inclusion of observable.h. (PPC_DEBUG_CURRENT_VERSION): Move up define. (struct arch_lwp_info): New struct. (class ppc_linux_dreg_interface): New class. (struct ppc_linux_process_info): New struct. (struct ppc_linux_nat_target) : Declare as methods. : New inner struct. : Declare members. (saved_dabr_value, hwdebug_info, max_slots_number) (struct hw_break_tuple, struct thread_points, ppc_threads) (have_ptrace_hwdebug_interface) (hwdebug_find_thread_points_by_tid) (hwdebug_insert_point, hwdebug_remove_point): Remove. (ppc_linux_nat_target::can_use_hw_breakpoint): Use m_dreg_interface, remove call to PTRACE_SET_DEBUGREG. (ppc_linux_nat_target::region_ok_for_hw_watchpoint): Add comment, use m_dreg_interface. (hwdebug_point_cmp): Change to... (ppc_linux_nat_target::hwdebug_point_cmp): ...this method. Use reference arguments instead of pointers. (ppc_linux_nat_target::ranged_break_num_registers): Use m_dreg_interface. (ppc_linux_nat_target::insert_hw_breakpoint): Add comment, use m_dreg_interface. Call register_hw_breakpoint. (ppc_linux_nat_target::remove_hw_breakpoint): Add comment, use m_dreg_interface. Call clear_hw_breakpoint. (get_trigger_type): Change to... (ppc_linux_nat_target::get_trigger_type): ...this method. Add comment. (ppc_linux_nat_target::insert_mask_watchpoint): Update comment, use m_dreg_interface. Call register_hw_breakpoint. (ppc_linux_nat_target::remove_mask_watchpoint): Update comment, use m_dreg_interface. Call clear_hw_breakpoint. (can_use_watchpoint_cond_accel): Change to... (ppc_linux_nat_target::can_use_watchpoint_cond_accel): ...this method. Update comment, use m_dreg_interface and m_process_info. (calculate_dvc): Change to... (ppc_linux_nat_target::calculate_dvc): ...this method. Use m_dreg_interface. (num_memory_accesses): Change to... (ppc_linux_nat_target::num_memory_accesses): ...this method. (check_condition): Change to... (ppc_linux_nat_target::check_condition): ...this method. (ppc_linux_nat_target::can_accel_watchpoint_condition): Update comment, use m_dreg_interface. (create_watchpoint_request): Change to... (ppc_linux_nat_target::create_watchpoint_request): ...this method. Use m_dreg_interface. (ppc_linux_nat_target::insert_watchpoint): Add comment, use m_dreg_interface. Call register_hw_breakpoint or register_wp. (ppc_linux_nat_target::remove_watchpoint): Add comment, use m_dreg_interface. Call clear_hw_breakpoint or clear_wp. (ppc_linux_nat_target::low_forget_process) (ppc_linux_nat_target::low_new_fork) (ppc_linux_nat_target::low_new_clone) (ppc_linux_nat_target::low_delete_thread) (ppc_linux_nat_target::low_prepare_to_resume): New methods. (ppc_linux_nat_target::low_new_thread): Remove previous logic, only call mark_thread_stale. (ppc_linux_thread_exit): Remove. (ppc_linux_nat_target::stopped_data_address): Change to... (ppc_linux_nat_target::low_stopped_data_address): This. Add comment, use m_dreg_interface and m_thread_hw_breakpoints. (ppc_linux_nat_target::stopped_by_watchpoint): Change to... (ppc_linux_nat_target::stopped_by_watchpoint): This. Add comment. Call low_stopped_data_address. (ppc_linux_nat_target::watchpoint_addr_within_range): Use m_dreg_interface. (ppc_linux_nat_target::masked_watch_num_registers): Use m_dreg_interface. (ppc_linux_nat_target::copy_thread_dreg_state) (ppc_linux_nat_target::mark_thread_stale) (ppc_linux_nat_target::mark_debug_registers_changed) (ppc_linux_nat_target::register_hw_breakpoint) (ppc_linux_nat_target::clear_hw_breakpoint) (ppc_linux_nat_target::register_wp) (ppc_linux_nat_target::clear_wp) (ppc_linux_nat_target::init_arch_lwp_info) (ppc_linux_nat_target::get_arch_lwp_info): New methods. (_initialize_ppc_linux_nat): Remove observer callback. 2020-03-30 Pedro Franco de Carvalho * ppc-linux-nat.c (ppc_linux_nat_target::store_registers) (ppc_linux_nat_target::auxv_parse) (ppc_linux_nat_target::read_description) (supply_gregset, fill_gregset, supply_fpregset, fill_fpregset): Move up. 2020-03-30 Pedro Franco de Carvalho * linux-nat.h (low_new_clone): New method. * linux-nat.c (linux_handle_extended_wait): Call low_new_clone. 2020-03-29 Simon Marchi * dbxread.c (dbx_psymtab_to_symtab_1): Rename to... (dbx_expand_psymtab): ... this. (start_psymtab): Update. * mdebugread.c (psymtab_to_symtab_1): Rename to... (mdebug_expand_psymtab): ... this. (parse_partial_symbols): Update. (new_psymtab): Update. * xcoffread.c (xcoff_psymtab_to_symtab_1): Rename to... (xcoff_expand_psymtab): ... this. (xcoff_start_psymtab): Update. 2020-03-29 Simon Marchi * psympriv.h (partial_symtab) : Rename to... : ... this. * psymtab.c (partial_symtab::read_dependencies): Rename to... (partial_symtab::expand_dependencies): ... this. * dwarf2/read.c (dwarf2_include_psymtab) : Update. (dwarf2_psymtab::expand_psymtab): Update. * dbxread.c (dbx_psymtab_to_symtab_1): Update. * mdebugread.c (psymtab_to_symtab_1): Update. * xcoffread.c (xcoff_psymtab_to_symtab_1): Update. 2020-03-29 Simon Marchi * psympriv.h (discard_psymtab): Remove. * dbxread.c (dbx_end_psymtab): Update. * xcoffread.c (xcoff_end_psymtab): Update. 2020-03-28 Tom Tromey * dwarf2/attribute.h (struct attribute) : Update comment. 2020-03-28 Tom Tromey * dwarf2/read.c (read_attribute_reprocess): Fix formatting. 2020-03-27 Hannes Domani * windows-nat.c (windows_add_all_dlls): Fix system dll paths. 2020-03-26 John Baldwin * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_BSDFLAGS. 2020-03-26 Tom Tromey * dwarf2/read.c (handle_data_member_location, dwarf2_add_field) (mark_common_block_symbol_computed, read_tag_string_type) (attr_to_dynamic_prop, read_subrange_type): Update. (dwarf2_get_ref_die_offset, dwarf2_get_attr_constant_value): Move to be methods on struct attribute. (skip_one_die, process_imported_unit_die, read_namespace_alias) (read_call_site_scope, partial_die_info::read) (partial_die_info::read, lookup_die_type, follow_die_ref): Update. * dwarf2/attribute.c (attribute::get_ref_die_offset): New method, from dwarf2_get_ref_die_offset. (attribute::constant_value): New method, from dwarf2_get_attr_constant_value. * dwarf2/attribute.h (struct attribute) : Declare method. : New method. 2020-03-26 Tom Tromey * dwarf2/read.c (dwarf_unit_type_name, dwarf_tag_name) (dwarf_attr_name, dwarf_form_name, dwarf_bool_name) (dwarf_type_encoding_name): Move to stringify.c. * Makefile.in (COMMON_SFILES): Add dwarf2/stringify.c. * dwarf2/stringify.c: New file. * dwarf2/stringify.h: New file. 2020-03-26 Tom Tromey * dwarf2/die.h (struct die_info) : Rewrite. 2020-03-26 Tom Tromey * dwarf2/die.h (struct die_info) : New methods. * dwarf2/read.c (lookup_addr_base): Move to die.h. (lookup_ranges_base): Likewise. (read_cutu_die_from_dwo, read_full_die_1): Update. 2020-03-26 Tom Tromey * dwarf2/read.c (read_import_statement, read_file_scope) (read_type_unit_scope, inherit_abstract_dies, read_func_scope) (read_lexical_block_scope, read_call_site_scope) (dwarf2_get_subprogram_pc_bounds, get_scope_pc_bounds) (handle_struct_member_die, process_structure_scope) (update_enumeration_type_from_children) (process_enumeration_scope, read_array_type, read_common_block) (read_namespace, read_module, read_subroutine_type): Update. (sibling_die): Remove. 2020-03-26 Tom Tromey * dwarf2/read.c (lookup_addr_base, lookup_ranges_base) (build_type_psymtabs_reader, read_structure_type) (read_enumeration_type, read_full_die_1): Update. (dwarf2_attr_no_follow): Move to die.h. * dwarf2/die.h (struct die_info) : New method. 2020-03-26 Tom Tromey * dwarf2/read.c (struct dwarf2_cu) : Remove. : Now an optional. (dwarf2_find_base_address, dwarf2_rnglists_process) (dwarf2_ranges_process, fill_in_loclist_baton) (dwarf2_symbol_mark_computed): Update. 2020-03-26 Tom Tromey * dwarf2/read.c (struct die_info): Move to die.h. * dwarf2/die.h: New file. 2020-03-26 Tom Tromey * dwarf2/line-header.h (dwarf_decode_line_header): Declare. * dwarf2/read.c (dwarf2_statement_list_fits_in_line_number_section_complaint): Move to line-header.c. (read_checked_initial_length_and_offset, read_formatted_entries): Likewise. (dwarf_decode_line_header): Split into two. * dwarf2/line-header.c (dwarf2_statement_list_fits_in_line_number_section_complaint): Move from read.c. (read_checked_initial_length_and_offset, read_formatted_entries): Likewise. (dwarf_decode_line_header): New function, split from read.c. 2020-03-26 Tom Tromey * dwarf2/read.h (struct dwarf2_per_objfile) : Declare method. * dwarf2/read.c (read_attribute_value): Update. (dwarf2_per_objfile::read_line_string): Rename from read_indirect_line_string. (read_formatted_entries): Update. 2020-03-26 Tom Tromey * dwarf2/macro.c (dwarf_decode_macro_bytes): Use objfile local variable. 2020-03-26 Tom Tromey * dwarf2/macro.h (dwarf_decode_macros): Make section parameter const. * dwarf2/macro.c (skip_form_bytes, skip_unknown_opcode) (dwarf_decode_macro_bytes, dwarf_decode_macros): Make section parameter const. 2020-03-26 Tom Tromey * dwarf2/read.c (dwarf_decode_macros): Make "lh" const. * dwarf2/macro.h (dwarf_decode_macros): Constify "lh" parameter. * dwarf2/macro.c (macro_start_file): Constify "lh" parameter. (dwarf_decode_macro_bytes, dwarf_decode_macros): Likewise. 2020-03-26 Tom Tromey * dwarf2/line-header.h (struct line_header) : Use const. : Add const overload. * dwarf2/line-header.c (line_header::file_file_name) (line_header::file_full_name): Update. 2020-03-26 Tom Tromey * dwarf2/read.c (dwarf2_macro_malformed_definition_complaint) (macro_start_file, consume_improper_spaces) (parse_macro_definition, skip_form_bytes, skip_unknown_opcode) (dwarf_parse_macro_header, dwarf_decode_macro_bytes) (dwarf_decode_macros): Move to macro.c. * dwarf2/macro.c: New file. * dwarf2/macro.h: New file. * Makefile.in (COMMON_SFILES): Add dwarf2/macro.c. 2020-03-26 Tom Tromey * dwarf2/section.h (struct dwarf2_section_info) : New method. * dwarf2/section.c: New method. From read_indirect_string_at_offset_from. * dwarf2/read.c (mapped_debug_names::namei_to_name): Update. (read_indirect_string_at_offset_from): Move to section.c. (read_indirect_string_at_offset): Rewrite. (read_indirect_line_string_at_offset): Remove. (read_indirect_string, read_indirect_line_string) (dwarf_decode_macro_bytes): Update. 2020-03-26 Tom Tromey * dwarf2/section.h (struct dwarf2_section_info) : Declare. (dwarf2_section_buffer_overflow_complaint): Don't declare. * dwarf2/section.c (dwarf2_section_info::overflow_complaint): Rename from dwarf2_section_buffer_overflow_complaint. * dwarf2/read.c (skip_one_die, partial_die_info::read) (skip_form_bytes, dwarf_decode_macro_bytes): Update. 2020-03-26 Tom Tromey * dwarf2/section.h (dwarf2_section_buffer_overflow_complaint): Declare. * dwarf2/section.c (dwarf2_section_buffer_overflow_complaint): Move from read.c. * dwarf2/read.c (dwarf2_section_buffer_overflow_complaint): Move to section.c. 2020-03-26 Tom Tromey * dwarf2/read.c (dwarf_decode_macros): Split into two overloads. 2020-03-26 Tom Tromey * dwarf2/read.c (macro_start_file): Change "cu" parameter to "builder". (dwarf_decode_macro_bytes): Likewise. Add dwarf2_per_objfile parameter. (dwarf_decode_macros): Update. 2020-03-26 Tom Tromey * dwarf2/read.c (read_attribute_value): Update. (read_indirect_string_from_dwz): Move to dwz.c; change into method. (dwarf_decode_macro_bytes): Update. * dwarf2/dwz.h (struct dwz_file) : Declare method. * dwarf2/dwz.c: New file. * Makefile.in (COMMON_SFILES): Add dwz.c. 2020-03-26 Tom Tromey * dwarf2/read.h (struct dwz_file): Move to dwz.h. * dwarf2/read.c: Add include. * dwarf2/index-write.c: Add include. * dwarf2/index-cache.c: Add include. * dwarf2/dwz.h: New file. 2020-03-25 Tom Tromey * compile/compile-object-load.c (get_out_value_type): Mention correct symbol name in error message. 2020-03-25 Hannes Domani * windows-nat.c (windows_add_all_dlls): Fix system dll paths. 2020-03-25 Tom de Vries * symtab.h (is_main_symtab_of_compunit_symtab): New function. * symmisc.c (dump_symtab_1): Print user and includes fields. (maintenance_info_symtabs): Same. 2020-03-25 Andrew Burgess PR gdb/25534 * riscv-tdep.c (riscv_arg_info::c_offset): Update comment. (riscv_regcache_cooked_write): New function. (riscv_push_dummy_call): Use new function. (riscv_return_value): Likewise. 2020-03-24 Simon Marchi * fbsd-nat.c (fbsd_nat_target::follow_fork): Change bool to int. * fbsd-nat.h (class fbsd_nat_target) : Likewise. * inf-ptrace.c (inf_ptrace_target::follow_fork): Likewise. * inf-ptrace.h (struct inf_ptrace_target) : Likewise. * infrun.c (follow_fork): Likewise. (follow_fork_inferior): Likewise. * linux-nat.c (linux_nat_target::follow_fork): Likewise. * linux-nat.h (class linux_nat_target): Likewise. * remote.c (class remote_target) : Likewise. (remote_target::follow_fork): Likewise. * target-delegates.c: Re-generate. * target.c (default_follow_fork): Likewise. (target_follow_fork): Likewise. * target.h (struct target_ops) : Likewise. (target_follow_fork): Likewise. 2020-03-24 Tom de Vries * psymtab.c (maintenance_info_psymtabs): Print user field. 2020-03-20 Tom Tromey * dwarf2/loc.h (dwarf2_evaluate_property): Make "addr_stack" const. * dwarf2/loc.c (dwarf2_evaluate_property): Make "addr_stack" const. 2020-03-20 Simon Marchi * ptrace.m4: Don't check for ptrace declaration. * config.in: Re-generate. * configure: Re-generate. * nat/gdb_ptrace.h: Don't declare ptrace if HAVE_DECL_PTRACE is not defined. 2020-03-20 Kamil Rytarowski * amd64-bsd-nat.c (gdb_ptrace): Change return type from `int' to `PTRACE_TYPE_RET'. * i386-bsd-nat.c (gdb_ptrace): Likewise. * sparc-nat.c (gdb_ptrace): Likewise. * x86-bsd-nat.c (gdb_ptrace): Likewise. 2020-03-20 Tom Tromey * c-exp.y (lex_one_token): Fix assert. 2020-03-20 Tom Tromey * ada-tasks.c (read_atcb): Use smaller length in strncpy call. * linux-tdep.c (linux_fill_prpsinfo): Use smaller length in strncpy call. 2020-03-20 Tom Tromey * symmisc.c (maintenance_print_one_line_table): Use ui_out. 2020-03-20 Tom Tromey * ada-valprint.c (print_variant_part): Remove parameters; switch to value-based API. (print_field_values): Likewise. (ada_val_print_struct_union): Likewise. (ada_value_print_1): Update. 2020-03-20 Kamil Rytarowski * ppc-nbsd-nat.c (ppc_nbsd_nat_target): Inherit from nbsd_nat_target instead of inf_ptrace_target. * ppc-nbsd-nat.c: Include "nbsd-nat.h", as we are now using nbsd_nat_target. 2020-03-20 Kamil Rytarowski * hppa-nbsd-nat.c (fetch_registers): New variable lwp and pass it to the ptrace call. * (store_registers): Likewise. 2020-03-20 Kamil Rytarowski * ppc-nbsd-nat.c (fetch_registers): New variable lwp and pass it to the ptrace call. * (store_registers): Likewise. 2020-03-19 Luis Machado * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_set_vq): If vg is not valid, fetch vg value from ptrace. 2020-03-19 Kamil Rytarowski * inf-ptrace.h: Disable get_ptrace_pid on NetBSD. * inf-ptrace.c: Likewise. * (gdb_ptrace): Add. * (inf_ptrace_target::resume): Update. * (inf_ptrace_target::xfer_partial): Likewise. * (inf_ptrace_peek_poke): Change argument `pid' to `ptid'. * (inf_ptrace_peek_poke): Update. 2020-03-19 Kamil Rytarowski * x86-bsd-nat.c (gdb_ptrace): New. * (x86bsd_dr_set): Add new argument `ptid'. * (x86bsd_dr_get, x86bsd_dr_set, x86bsd_dr_set_control, x86bsd_dr_set_addr): Update. 2020-03-19 Andrew Burgess * remote.c (remote_target::process_stop_reply): Handle events for all threads differently. 2020-03-19 Andrew Burgess * completer.c (completion_tracker::remove_completion): Define new function. * completer.h (completion_tracker::remove_completion): Declare new function. * symtab.c (completion_list_add_symbol): Remove aliasing msymbols when adding a C++ function symbol. 2020-03-19 Andrew Burgess * completer.c (completion_tracker::completion_hash_entry): Define new class. (advance_to_filename_complete_word_point): Call recompute_lowest_common_denominator. (completion_tracker::completion_tracker): Call discard_completions to setup the hash table. (completion_tracker::discard_completions): Allow for being called from the constructor, pass new equal function, and element deleter when constructing the hash table. Initialise new class member variables. (completion_tracker::maybe_add_completion): Remove use of m_entries_vec, and store more information into m_entries_hash. (completion_tracker::recompute_lcd_visitor): New function, most content taken from... (completion_tracker::recompute_lowest_common_denominator): ...here, this now just visits each item in the hash calling the above visitor. (completion_tracker::build_completion_result): Remove use of m_entries_vec, call recompute_lowest_common_denominator. * completer.h (completion_tracker::have_completions): Remove use of m_entries_vec. (completion_tracker::completion_hash_entry): Declare new class. (completion_tracker::recompute_lowest_common_denominator): Change function signature. (completion_tracker::recompute_lcd_visitor): Declare new function. (completion_tracker::m_entries_vec): Delete. (completion_tracker::m_entries_hash): Initialize to NULL. (completion_tracker::m_lowest_common_denominator_valid): New member variable. (completion_tracker::m_lowest_common_denominator_max_length): New member variable. 2020-03-17 Kamil Rytarowski * regformats/regdef.h: Put reg in gdb namespace. 2020-03-17 Kamil Rytarowski * i386-bsd-nat.c (gdb_ptrace): New. * (i386bsd_fetch_inferior_registers, i386bsd_store_inferior_registers) Switch from pid_t to ptid_t. * (i386bsd_fetch_inferior_registers, i386bsd_store_inferior_registers) Use gdb_ptrace. 2020-03-17 Kamil Rytarowski * amd64-bsd-nat.c (gdb_ptrace): New. * (amd64bsd_fetch_inferior_registers, amd64bsd_store_inferior_registers) Switch from pid_t to ptid_t. * (amd64bsd_fetch_inferior_registers, amd64bsd_store_inferior_registers) Use gdb_ptrace. 2020-03-17 Kamil Rytarowski * user-regs.c (user_reg::read): Rename to... (user_reg::xread): ...this. * (append_user_reg): Rename argument `read' to `xread'. * (user_reg_add_builtin): Likewise. * (user_reg_add): Likewise. * (value_of_user_reg): Likewise. 2020-03-17 Kamil Rytarowski * sparc-nat.c (gdb_ptrace): New. * sparc-nat.c (sparc_fetch_inferior_registers) (sparc_store_inferior_registers) Remove obsolete comment. * sparc-nat.c (sparc_fetch_inferior_registers) (sparc_store_inferior_registers) Switch from pid_t to ptid_t. * sparc-nat.c (sparc_fetch_inferior_registers) (sparc_store_inferior_registers) Use gdb_ptrace. 2020-03-17 Kamil Rytarowski * sh-nbsd-nat.c (fetch_registers): New variable lwp and pass it to the ptrace call. * sh-nbsd-nat.c (store_registers): Likewise. 2020-03-17 Kamil Rytarowski * sh-nbsd-nat.c (sh_nbsd_nat_target): Inherit from nbsd_nat_target instead of inf_ptrace_target. * sh-nbsd-nat.c: Include "nbsd-nat.h", as we are now using nbsd_nat_target. 2020-03-17 Kamil Rytarowski * amd64-bsd-nat.c: Include amd64-bsd-nat.h". 2020-03-17 Kamil Rytarowski * nbsd-nat.c: Include , and . * nbsd-nat.c (nbsd_nat_target::pid_to_exec_file): Rewrite. 2020-03-17 Tom de Vries PR gdb/23710 * dwarf2/read.h (struct dwarf2_per_cu_data): Add unit_type and lang fields. * dwarf2/read.c (process_psymtab_comp_unit): Initialize unit_type and lang fields. (process_imported_unit_die): Skip import of c++ CUs. 2020-03-16 Tom Tromey * p-valprint.c (pascal_object_print_value): Initialize base_value. 2020-03-16 Anton Kolesov Shahab Vahedi * Makefile.in: Add arch/arc.o * configure.tgt: Likewise. * arc-tdep.c (arc_tdesc_init): Use arc_read_description. (_initialize_arc_tdep): Don't initialize old target descriptions. (arc_read_description): New function to cache target descriptions. * arc-tdep.h (arc_read_description): Add proto type. * arch/arc.c: New file. * arch/arc.h: Likewise. * features/Makefile: Replace old target descriptions with new. * features/arc-arcompact.c: Remove. * features/arc-arcompact.xml: Likewise. * features/arc-v2.c: Likewise * features/arc-v2.xml: Likewise * features/arc/aux-arcompact.xml: New file. * features/arc/aux-v2.xml: Likewise. * features/arc/core-arcompact.xml: Likewise. * features/arc/core-v2.xml: Likewise. * features/arc/aux-arcompact.c: Generate. * features/arc/aux-v2.c: Likewise. * features/arc/core-arcompact.c: Likewise. * features/arc/core-v2.c: Likewise. * target-descriptions (maint_print_c_tdesc_cmd): Support ARC features. 2020-03-16 Tom Tromey PR gdb/25663: * dwarf2/read.c (dwarf2_name): Strip leading namespaces after putting value into bcache. 2020-03-16 Simon Marchi PR gdb/21500 * amd64-windows-tdep.c (amd64_windows_init_abi): Rename to... (amd64_windows_init_abi_common): ... this. Don't set size of long type. (amd64_windows_init_abi): New function. (amd64_cygwin_init_abi): New function. (_initialize_amd64_windows_tdep): Use amd64_cygwin_init_abi for the Cygwin OS ABI. * i386-windows-tdep.c (_initialize_i386_windows_tdep): Clarify comment. 2020-03-16 Simon Marchi * windows-tdep.h (is_linked_with_cygwin_dll): New declaration. * windows-tdep.c (CYGWIN_DLL_NAME): New. (pe_import_directory_entry): New struct type. (is_linked_with_cygwin_dll): New function. * amd64-windows-tdep.c (amd64_windows_osabi_sniffer): Select GDB_OSABI_CYGWIN if the BFD is linked with the Cygwin DLL. * i386-windows-tdep.c (i386_windows_osabi_sniffer): Likewise. 2020-03-16 Simon Marchi * i386-windows-tdep.c: Mass-rename "cygwin" to "windows", except i386_cygwin_core_osabi_sniffer. 2020-03-16 Simon Marchi * i386-cygwin-tdep.c: Rename to... * i386-windows-tdep.c: ... this. * Makefile.in (ALL_TARGET_OBS): Rename i386-cygwin-tdep.c to i386-windows-tdep.c. * configure.tgt: Likewise. 2020-03-16 Simon Marchi * osabi.h (enum gdb_osabi): Add GDB_OSABI_WINDOWS. * osabi.c (gdb_osabi_names): Add "Windows". * i386-cygwin-tdep.c (i386_cygwin_osabi_sniffer): Return GDB_OSABI_WINDOWS when the binary's target is "pei-i386". (i386_cygwin_core_osabi_sniffer): New function, extracted from i386_cygwin_osabi_sniffer. (_initialize_i386_cygwin_tdep): Register OS ABI GDB_OSABI_WINDOWS for i386. * amd64-windows-tdep.c (amd64_windows_osabi_sniffer): Return GDB_OSABI_WINDOWS when the binary's target is "pei-x86-64". (_initialize_amd64_windows_tdep): Register OS ABI GDB_OSABI_WINDOWS for x86-64. * configure.tgt: Use GDB_OSABI_WINDOWS as the default OS ABI when the target matches '*-*-mingw*'. 2020-03-16 Simon Marchi * defs.h (enum gdb_osabi): Move to... * osabi.h (enum gdb_osabi): ... here. * gdbarch.sh: Include osabi.h in gdbarch.h. * gdbarch.h: Re-generate. 2020-03-16 Simon Marchi * amd64-windows-tdep.c (amd64_windows_osabi_sniffer): New function. (_initialize_amd64_windows_tdep): Register osabi sniffer. 2020-03-14 Tom Tromey * c-typeprint.c (cp_type_print_method_args): Print "__restrict__" for C++. (c_type_print_modifier): Likewise. Add "language" parameter. (c_type_print_varspec_prefix, c_type_print_base_struct_union) (c_type_print_base_1): Update. * type-stack.h (enum type_pieces) : New constants. * type-stack.c (type_stack::insert): Handle tp_atomic and tp_restrict. (type_stack::follow_type_instance_flags): Likewise. (type_stack::follow_types): Likewise. Merge type-following code. * c-exp.y (RESTRICT, ATOMIC): New tokens. (space_identifier, cv_with_space_id) (const_or_volatile_or_space_identifier_noopt) (const_or_volatile_or_space_identifier): Remove. (single_qualifier, qualifier_seq_noopt, qualifier_seq): New rules. (ptr_operator, typebase): Update. (enum token_flag) : New constant. (ident_tokens): Add "restrict", "__restrict__", "__restrict", and "_Atomic". (lex_one_token): Handle FLAG_C. 2020-03-14 Kamil Rytarowski * m68k-bsd-nat.c (fetch_registers): New variable lwp and pass it to the ptrace call. * m68k-bsd-nat.c (store_registers): Likewise. 2020-03-14 Kamil Rytarowski * m68k-bsd-nat.c (m68kbsd_supply_gregset): Change type of regs to gdb_byte *. * m68k-bsd-nat.c (m68kbsd_supply_fpregset): Likewise. * m68k-bsd-nat.c (m68kbsd_collect_gregset): Likewise. * m68k-bsd-nat.c (m68kbsd_supply_pcb): Cast &tmp to gdb_byte *. 2020-03-14 Kamil Rytarowski * m68k-bsd-nat.c (m68k_bsd_nat_target): Inherit from nbsd_nat_target instead of inf_ptrace_target. * m68k-bsd-nat.c: Include "nbsd-nat.h", as we are now using nbsd_nat_target. 2020-03-14 Kamil Rytarowski * m68k-bsd-nat.c: Define _KERNTYPES to get the declaration of register_t. 2020-03-14 Kamil Rytarowski * alpha-bsd-nat.c (fetch_registers): New variable lwp and pass it to the ptrace call. * alpha-bsd-nat.c (store_registers): Likewise. 2020-03-14 Kamil Rytarowski * alpha-bsd-nat.c: Remove and "gregset.h" from includes. * alpha-bsd-nat.c (gregset_t, fpregset_t): Remove. * alpha-bsd-nat.c (supply_gregset, fill_gregset, supply_fpregset, fill_fpregset): Likewise. 2020-03-14 Kamil Rytarowski * alpha-bsd-nat.c (alpha_netbsd_nat_target): Inherit from nbsd_nat_target instead of inf_ptrace_target. * alpha-bsd-nat.c: Include "nbsd-nat.h", as we are now using nbsd_nat_target. 2020-03-14 Kamil Rytarowski * alpha-bsd-nat.c: Define _KERNTYPES to get the declaration of register_t. 2020-03-14 Kamil Rytarowski * arm-nbsd-nat.c (fetch_register): New variable lwp and pass it to the ptrace call. * arm-nbsd-nat.c (fetch_fp_register): Likewise. * arm-nbsd-nat.c (fetch_fp_regs): Likewise. * arm-nbsd-nat.c (store_register): Likewise. * arm-nbsd-nat.c (store_regs): Likewise. * arm-nbsd-nat.c (store_fp_register): Likewise. * arm-nbsd-nat.c (store_fp_regs): Likewise. 2020-03-14 Kamil Rytarowski * arm-nbsd-nat.c (arm_netbsd_nat_target): Inherit from nbsd_nat_target instead of inf_ptrace_target. * arm-nbsd-nat.c: Include "nbsd-nat.h", as we are now using nbsd_nat_target. 2020-03-14 Kamil Rytarowski * x86-bsd-nat.c (x86bsd_dr_get): New variable lwp and pass it to the ptrace call. * x86-bsd-nat.c (x86bsd_dr_set): Likewise. 2020-03-14 Kamil Rytarowski * vax-bsd-nat.c (vaxbsd_supply_gregset): New variable lwp and pass it to the ptrace call. * vax-bsd-nat.c (vaxbsd_collect_gregset): Likewise. 2020-03-14 Kamil Rytarowski * vax-bsd-nat.c (vaxbsd_supply_gregset): Cast gregs to const gdb_byte *. * vax-bsd-nat.c (vaxbsd_collect_gregset): Cast gregs to void *. 2020-03-14 Kamil Rytarowski * vax-bsd-nat.c (vax_bsd_nat_target): Inherit from nbsd_nat_target instead of inf_ptrace_target. * vax-bsd-nat.c: Include "nbsd-nat.h", as we are now using nbsd_nat_target. 2020-03-14 Kamil Rytarowski * mips-nbsd-nat.c: Define _KERNTYPES to get the declaration of register_t. 2020-03-14 Kamil Rytarowski * ppc-nbsd-nat.c: Define _KERNTYPES to get the declaration of register_t. 2020-03-14 Kamil Rytarowski * vax-bsd-nat.c: Define _KERNTYPES to get the declaration of register_t. 2020-03-13 Tom Tromey * value.h (val_print): Don't declare. * valprint.h (val_print_array_elements) (val_print_scalar_formatted, generic_val_print): Don't declare. * valprint.c (generic_val_print_array): Take a struct value. (generic_val_print_ptr, generic_val_print_memberptr) (generic_val_print_bool, generic_val_print_int) (generic_val_print_char, generic_val_print_complex) (generic_val_print): Remove. (generic_value_print): Update. (do_val_print): Remove unused parameters. Don't call la_val_print. (val_print): Remove. (common_val_print): Update. Don't call value_check_printable. (val_print_scalar_formatted, val_print_array_elements): Remove. * rust-lang.c (rust_val_print): Remove. (rust_language_defn): Update. * p-valprint.c (pascal_val_print): Remove. (pascal_value_print_inner): Update. (pascal_object_print_val_fields, pascal_object_print_val): Remove. (pascal_object_print_static_field): Update. * p-lang.h (pascal_val_print): Don't declare. * p-lang.c (pascal_language_defn): Update. * opencl-lang.c (opencl_language_defn): Update. * objc-lang.c (objc_language_defn): Update. * m2-valprint.c (m2_print_unbounded_array, m2_val_print): Remove. * m2-lang.h (m2_val_print): Don't declare. * m2-lang.c (m2_language_defn): Update. * language.h (struct language_defn) : Remove. * language.c (unk_lang_value_print_inner): Rename. Change argument types. (unknown_language_defn, auto_language_defn): Update. * go-valprint.c (go_val_print): Remove. * go-lang.h (go_val_print): Don't declare. * go-lang.c (go_language_defn): Update. * f-valprint.c (f_val_print): Remove. * f-lang.h (f_value_print): Don't declare. * f-lang.c (f_language_defn): Update. * d-valprint.c (d_val_print): Remove. * d-lang.h (d_value_print): Don't declare. * d-lang.c (d_language_defn): Update. * cp-valprint.c (cp_print_value_fields) (cp_print_value_fields_rtti, cp_print_value): Remove. (cp_print_static_field): Update. * c-valprint.c (c_val_print_array, c_val_print_ptr) (c_val_print_struct, c_val_print_union, c_val_print_int) (c_val_print_memberptr, c_val_print): Remove. * c-lang.h (c_val_print_array, cp_print_value_fields) (cp_print_value_fields_rtti): Don't declare. * c-lang.c (c_language_defn, cplus_language_defn) (asm_language_defn, minimal_language_defn): Update. * ada-valprint.c (ada_val_print_ptr, ada_val_print_num): Remove. (ada_val_print_enum): Take a struct value. (ada_val_print_flt, ada_val_print_array, ada_val_print_1) (ada_val_print): Remove. (ada_value_print_1): Update. (printable_val_type): Remove. * ada-lang.h (ada_val_print): Don't declare. * ada-lang.c (ada_language_defn): Update. 2020-03-13 Tom Tromey * valprint.c (do_val_print): Update. * python/python-internal.h (gdbpy_apply_val_pretty_printer): Take a struct value. (value_to_value_object_no_release): Declare. * python/py-value.c (value_to_value_object_no_release): New function. * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Take a struct value. * guile/scm-value.c (vlscm_scm_from_value_no_release): New function. * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer): Take a struct value. * guile/guile-internal.h (vlscm_scm_from_value_no_release): Declare. (gdbscm_apply_val_pretty_printer): Take a struct value. * extension.h (apply_ext_lang_val_pretty_printer): Take a struct value. * extension.c (apply_ext_lang_val_pretty_printer): Take a struct value. * extension-priv.h (struct extension_language_ops) : Take a struct value. * cp-valprint.c (cp_print_value): Create a struct value. (cp_print_value): Update. 2020-03-13 Tom Tromey * ada-valprint.c (print_field_values): Call common_val_print. 2020-03-13 Tom Tromey * ada-valprint.c (val_print_packed_array_elements): Remove bitoffset and val parameters. Call common_val_print. (ada_val_print_string): Remove offset, address, and original_value parameters. (ada_val_print_array): Update. (ada_value_print_array): New function. (ada_value_print_1): Call it. 2020-03-13 Tom Tromey * ada-valprint.c (ada_value_print): Use common_val_print. 2020-03-13 Tom Tromey * ada-valprint.c (ada_val_print_ref): Use common_val_print. 2020-03-13 Tom Tromey * ada-valprint.c (ada_value_print_num): New function. (ada_value_print_1): Use it. 2020-03-13 Tom Tromey * ada-valprint.c (ada_value_print_1) : Rewrite. 2020-03-13 Tom Tromey * ada-valprint.c (ada_value_print_ptr): New function. (ada_value_print_1): Use it. 2020-03-13 Tom Tromey * ada-valprint.c (ada_val_print_gnat_array): Take a struct value; call common_val_print. (ada_val_print_1): Update. (ada_value_print_1): New function. (ada_value_print_inner): Rewrite. 2020-03-13 Tom Tromey * cp-valprint.c (cp_print_value_fields): Update. (cp_print_value): New function. 2020-03-13 Tom Tromey * m2-valprint.c (m2_value_print_inner): Use cp_print_value_fields. * cp-valprint.c (cp_print_value_fields): New function. * c-valprint.c (c_value_print_struct): New function. (c_value_print_inner): Use c_value_print_struct. * c-lang.h (cp_print_value_fields): Declare. 2020-03-13 Tom Tromey * c-valprint.c (c_value_print_array): New function. (c_value_print_inner): Use it. 2020-03-13 Tom Tromey * c-valprint.c (c_value_print_memberptr): New function. (c_value_print_inner): Use it. 2020-03-13 Tom Tromey * c-valprint.c (c_value_print_int): New function. (c_value_print_inner): Use it. 2020-03-13 Tom Tromey * c-valprint.c (c_value_print_ptr): New function. (c_value_print_inner): Use it. 2020-03-13 Tom Tromey * c-valprint.c (c_value_print_inner): Rewrite. 2020-03-13 Tom Tromey * valprint.c (generic_value_print_complex): New function. (generic_value_print): Use it. 2020-03-13 Tom Tromey * valprint.c (generic_val_print_float): Don't call val_print_scalar_formatted. (generic_val_print, generic_value_print): Update. 2020-03-13 Tom Tromey * valprint.c (generic_value_print_char): New function (generic_value_print): Use it. 2020-03-13 Tom Tromey * valprint.c (generic_value_print_int): New function. (generic_value_print): Use it. 2020-03-13 Tom Tromey * valprint.c (generic_value_print_bool): New function. (generic_value_print): Use it. 2020-03-13 Tom Tromey * valprint.c (generic_val_print_func): Simplify. (generic_val_print, generic_value_print): Update. 2020-03-13 Tom Tromey * valprint.c (generic_val_print_flags): Remove. (generic_val_print, generic_value_print): Update. (val_print_type_code_flags): Add original_value parameter. 2020-03-13 Tom Tromey * valprint.c (generic_val_print): Update. (generic_value_print): Update. * valprint.c (generic_val_print_enum): Don't call val_print_scalar_formatted. 2020-03-13 Tom Tromey * valprint.c (generic_value_print): Call generic_value_print_ptr. * valprint.c (generic_value_print_ptr): New function. 2020-03-13 Tom Tromey * valprint.c (generic_value_print): Rewrite. 2020-03-13 Tom Tromey * p-valprint.c (pascal_object_print_value_fields) (pascal_object_print_value): New functions. 2020-03-13 Tom Tromey * p-valprint.c (pascal_value_print_inner): Rewrite. 2020-03-13 Tom Tromey * f-valprint.c (f_value_print_innner): Rewrite. 2020-03-13 Tom Tromey * m2-valprint.c (m2_print_unbounded_array): New overload. (m2_print_unbounded_array): Update. (m2_print_array_contents): Take a struct value. (m2_value_print_inner): Rewrite. 2020-03-13 Tom Tromey * d-valprint.c (dynamic_array_type): Call d_value_print_inner. (d_value_print_inner): New function. * d-lang.h (d_value_print_inner): Declare. * d-lang.c (d_language_defn): Use d_value_print_inner. 2020-03-13 Tom Tromey * go-valprint.c (go_value_print_inner): New function. * go-lang.h (go_value_print_inner): Declare. * go-lang.c (go_language_defn): Use go_value_print_inner. 2020-03-13 Tom Tromey * rust-lang.c (val_print_struct, rust_print_enum): Use the value API. (rust_val_print): Rewrite. (rust_value_print_inner): New function, from rust_val_print. (rust_language_defn): Use rust_value_print_inner. 2020-03-13 Tom Tromey * ada-valprint.c (ada_value_print_inner): New function. * ada-lang.h (ada_value_print_inner): Declare. * ada-lang.c (ada_language_defn): Use ada_value_print_inner. 2020-03-13 Tom Tromey * f-valprint.c (f_value_print_innner): New function. * f-lang.h (f_value_print_innner): Declare. * f-lang.c (f_language_defn): Use f_value_print_innner. 2020-03-13 Tom Tromey * p-valprint.c (pascal_value_print_inner): New function. * p-lang.h (pascal_value_print_inner): Declare. * p-lang.c (pascal_language_defn): Use pascal_value_print_inner. 2020-03-13 Tom Tromey * m2-valprint.c (m2_value_print_inner): New function. * m2-lang.h (m2_value_print_inner): Declare. * m2-lang.c (m2_language_defn): Use m2_value_print_inner. 2020-03-13 Tom Tromey * opencl-lang.c (opencl_language_defn): Use c_value_print_inner. * objc-lang.c (objc_language_defn): Use c_value_print_inner. * c-valprint.c (c_value_print_inner): New function. * c-lang.h (c_value_print_inner): Declare. * c-lang.c (c_language_defn, cplus_language_defn) (asm_language_defn, minimal_language_defn): Use c_value_print_inner. 2020-03-13 Tom Tromey * p-valprint.c (pascal_object_print_value_fields): Now static. * p-lang.h (pascal_object_print_value_fields): Don't declare. 2020-03-13 Tom Tromey * c-valprint.c (c_val_print_array): Simplify. 2020-03-13 Tom Tromey * valprint.c (value_print_array_elements): New function. * valprint.h (value_print_array_elements): Declare. 2020-03-13 Tom Tromey * printcmd.c (print_formatted): Use value_print_scalar_formatted. * mips-tdep.c (mips_print_register): Use value_print_scalar_formatted. 2020-03-13 Tom Tromey * valprint.h (value_print_scalar_formatted): Declare. * valprint.c (value_print_scalar_formatted): New function. 2020-03-13 Tom Tromey * valprint.h (generic_value_print): Declare. * valprint.c (generic_value_print): New function. 2020-03-13 Tom Tromey * valprint.c (do_val_print): Call la_value_print_inner, if available. * rust-lang.c (rust_language_defn): Update. * p-lang.c (pascal_language_defn): Update. * opencl-lang.c (opencl_language_defn): Update. * objc-lang.c (objc_language_defn): Update. * m2-lang.c (m2_language_defn): Update. * language.h (struct language_defn) : New member. * language.c (unknown_language_defn, auto_language_defn): Update. * go-lang.c (go_language_defn): Update. * f-lang.c (f_language_defn): Update. * d-lang.c (d_language_defn): Update. * c-lang.c (c_language_defn, cplus_language_defn) (asm_language_defn, minimal_language_defn): Update. * ada-lang.c (ada_language_defn): Update. 2020-03-13 Tom Tromey * c-valprint.c (c_value_print): Use common_val_print. 2020-03-13 Tom Tromey * cp-valprint.c (cp_print_static_field): Use common_val_print. 2020-03-13 Tom Tromey * f-valprint.c (f77_print_array_1, f_val_print): Use common_val_print. 2020-03-13 Tom Tromey * riscv-tdep.c (riscv_print_one_register_info): Use common_val_print. 2020-03-13 Tom Tromey * mi/mi-main.c (output_register): Use common_val_print. 2020-03-13 Tom Tromey * infcmd.c (default_print_one_register_info): Use common_val_print. 2020-03-13 Tom Tromey * valprint.h (common_val_print_checked): Declare. * valprint.c (common_val_print_checked): New function. * stack.c (print_frame_arg): Use common_val_print_checked. 2020-03-13 Tom Tromey * valprint.c (do_val_print): New function, from val_print. (val_print): Use do_val_print. (common_val_print): Use do_val_print. 2020-03-13 Tom Tromey * valprint.c (value_print): Use scoped_value_mark. 2020-03-13 Tom de Vries PR symtab/25646 * psymtab.c (partial_symtab::partial_symtab): Don't set globals_offset and statics_offset. Push element onto current_global_psymbols and current_static_psymbols stacks. (concat): New function. (end_psymtab_common): Set globals_offset and statics_offset. Pop element from current_global_psymbols and current_static_psymbols stacks. Concat popped elements to global_psymbols and static_symbols. (add_psymbol_to_list): Use current_global_psymbols and current_static_psymbols stacks. * psymtab.h (class psymtab_storage): Add current_global_psymbols and current_static_psymbols fields. 2020-03-12 Christian Biesinger * corelow.c (sniff_core_bfd): Remove. (class core_target) : Remove. (core_target::core_target): Update. (core_file_fns): Remove. (deprecated_add_core_fns): Remove. (default_core_sniffer): Remove. (sniff_core_bfd): Remove. (default_check_format): Remove. (gdb_check_format): Remove. (core_target_open): Update. (core_target::get_core_register_section): Update. (get_core_registers_cb): Update. (core_target::fetch_registers): Update. * gdbcore.h (struct core_fns): Remove. (deprecated_add_core_fns): Remove. (default_core_sniffer): Remove. (default_check_format): Remove. 2020-03-12 Tom Tromey * arm-tdep.c (struct arm_mapping_symbol) : Now a CORE_ADDR. (struct arm_exidx_entry) : Now a CORE_ADDR. 2020-03-12 Tom Tromey * remote.c (remote_target::download_tracepoint) (remote_target::enable_tracepoint) (remote_target::disable_tracepoint): Use phex, not sprintf_vma. * breakpoint.c (print_recreate_masked_watchpoint): Use phex, not sprintf_vma. 2020-03-12 Tom Tromey * symfile-mem.c: Update CORE_ADDR size assert. 2020-03-12 Simon Marchi * selftest.m4: Move to gdbsupport/. * acinclude.m4: Update path to selftest.m4. 2020-03-12 Simon Marchi * Makefile.in (SUBDIR_UNITTESTS_SRCS): Rename to... (SELFTESTS_SRCS): ... this. Add disasm-selftests.c, gdbarch-selfselftests.c and selftest-arch.c. (SUBDIR_UNITTESTS_OBS): Rename to... (SELFTESTS_OBS): ... this. (COMMON_SFILES): Remove disasm-selftests.c and gdbarch-selftests.c. * configure.ac: Don't add selftest-arch.{c,o} to CONFIG_{SRCS,OBS}. * disasm-selftests.c, gdbarch-selftests.c: Remove GDB_SELF_TEST preprocessor conditions. 2020-03-12 Simon Marchi * configure.ac: Don't source bfd/development.sh. * selftest.m4: Modify comment. * configure: Re-generate. 2020-03-12 Simon Marchi * selftest.m4 (GDB_AC_SELFTEST): Error out if $development is not "true" or "false". * configure: Re-generate. 2020-03-12 Christian Biesinger * Makefile.in (HFILES_NO_SRCDIR): Add new arm-nbsd-tdep.h file. * arm-nbsd-nat.c (arm_supply_gregset): Moved to arm-nbsd-tdep and renamed to arm_nbsd_supply_gregset. (fetch_register): Update to call arm_nbsd_supply_gregset. (fetch_regs): Remove in favor of fetch_register with a -1 regno. (arm_netbsd_nat_target::fetch_registers): Update. (fetch_elfcore_registers): Removed. (_initialize_arm_netbsd_nat): Removed call to deprecated_add_core_fns. * arm-nbsd-tdep.c (struct arm_nbsd_reg): New struct. (arm_nbsd_supply_gregset): Moved from arm-nbsd-nat.c and updated to not require NetBSD system headers. (arm_nbsd_regset): New struct. (arm_nbsd_iterate_over_regset_sections): New function. (arm_netbsd_init_abi_common): Updated to call set_gdbarch_iterate_over_regset_sections. * arm-nbsd-tdep.h: New file. 2020-03-11 Kevin Buettner * symtab.c (find_pc_sect_line): Add check which prevents infinite recursion. 2020-03-11 Simon Marchi * configure: Re-generate. 2020-03-11 Tom Tromey * ada-typeprint.c (print_choices): Fix comment. 2020-03-11 Andrew Burgess * buildsyms.c (buildsym_compunit::record_line): Avoid accessing previous item in the list, when the list has no items. 2020-03-11 Tom de Vries * dwarf2/loc.c (dwarf2_evaluate_property): Handle NULL frame in PROP_LOCLIST handling code. 2020-03-10 Andrew Burgess * 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 * dwarf2/read.c (read_typedef): Treat anonymous typedef as forwarder DIE. 2020-03-07 Tom Tromey * valops.c (value_literal_complex): Remove obsolete comment. * gdbtypes.h (enum type_code) : Remove obsolete comment. 2020-03-06 Simon Marchi * 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 * windows-tdep.c (windows_solib_create_inferior_hook): Check if inferior is running. 2020-03-06 Tom de Vries * NEWS: Fix "the the". * ctfread.c: Same. 2020-03-06 Tom de Vries * psymtab.c (psymtab_to_symtab): Don't print "done.". 2020-03-06 Andrew Burgess * .dir-locals.el: Add a comment referencing the other copies of this file. 2020-03-05 John Baldwin * fbsd-tdep.c (fbsd_make_corefile_notes): Use std::string for psargs. 2020-03-05 Tankut Baris Aktemur * .gitattributes: New file. 2020-03-04 Tom Tromey * 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) : Remove. : New member. (struct objfile) : 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 * 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 * 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 (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 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 * target-descriptions.c (tdesc_register_in_reggroup_p): Return 0 when reg->group is empty and reggroup is not. 2020-03-03 Tom Tromey * dwarf2/frame.c (struct dwarf2_frame_cache) : 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 Alok Kumar Sharma * f-valprint.c (f_val_print): Handle TYPE_CODE_BOOL, any non-zero value should be printed as true. 2020-03-03 Hannes Domani * 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 * printcmd.c (print_c_string): Check also for TYPE_CODE_PTR when verifying if dealing with a convenience variable. 2020-03-03 Luis Machado * auxv.c (default_print_auxv_entry): Add new AUXV entries. 2020-03-02 Simon Marchi * 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 * 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 * 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 * 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 * debuginfod-support.c: Include defs.h first. 2020-02-28 Tom de Vries * symfile.c (set_initial_language): Use default language for lookup. 2020-02-28 Simon Marchi * 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 * source.c (open_source_file): Check for nullptr when computing srcpath. 2020-02-27 Tom Tromey * dwarf2/read.c (struct field_info) : 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 * gdbtypes.c (create_array_type_with_stride): Use std::abs not abs. 2020-02-26 Tom Tromey * 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 * 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 * 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 * thread.c (thr_try_catch_cmd): Print thread name. 2020-02-26 Simon Marchi * 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 PR gdb/25603 * symfile.c (set_initial_language): Exit-early if language_mode == language_mode_manual. 2020-02-25 Simon Marchi * 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 * gdbtypes.c (create_array_type_with_stride): Handle negative array strides. * valarith.c (value_subscripted_rvalue): Likewise. 2020-02-25 Luis Machado * aarch64-tdep.c (aarch64_vnv_type): Fix comment typo. 2020-02-25 Simon Marchi * 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 * copypright.py (EXCLUDE_LIST): Add 'gnulib/config.in' and 'gnulib/Makefile.in' to the list. 2020-02-24 Tom Tromey * dwarf2/read.h (struct type_unit_unshareable) : Remove. * dwarf2/read.c (dwarf2_cu::setup_type_unit_groups): Use XOBNEWVEC. 2020-02-24 Tom Tromey * dwarf2/read.h (struct dwarf2_per_cu_data) : 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 * 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 PR gdb/25592 * stack.c (iterate_over_block_locals): Handle LOC_CONST. 2020-02-24 Tom de Vries * tui/tui-layout.c (_initialize_tui_layout): Fix help messages for commands layout next/prev/regs. 2020-02-22 Tom Tromey * 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 * tui/tui-data.h (TUI_DISASM_WIN): Cast to tui_disasm_window. 2020-02-22 Tom Tromey * 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 * 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 * tui/tui-layout.c (extract_display_start_addr): Rewrite. * tui/tui-disasm.h (struct tui_disasm_window) : Declare. * tui/tui-source.h (struct tui_source_window) : Declare. * tui/tui-winsource.h (struct tui_source_window_base) : New methods. : 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 * 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 * tui/tui-io.c (do_tui_putc): Don't omit annotations. 2020-02-22 Tom Tromey * 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 * 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 * tui/tui.h (enum tui_win_type) : Remove constants. * tui/tui-winsource.h (struct 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) : Update. * tui/tui-source.h (struct tui_source_window) : Default the constructor. * tui/tui-regs.h (struct tui_data_item_window) : Default the constructor. (struct tui_data_window) : Likewise. * tui/tui-disasm.h (struct tui_disasm_window) : Default the constructor. * tui/tui-data.h (struct tui_gen_win_info) : Default the constructor. : Remove. (struct 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) : Default the constructor. 2020-02-22 Tom Tromey * 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 * tui/tui-win.c (tui_partial_win_by_name): Handle ambiguity correctly. 2020-02-22 Tom Tromey * tui/tui-data.c (tui_next_win, tui_prev_win): Reimplement. 2020-02-22 Tom Tromey * tui/tui-winsource.h (struct tui_source_window_iterator) : New etytypedef. : Take "end" parameter. : Take iterator. : Update. : Change type. : New field. (struct tui_source_windows) : 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 PR tui/17850: * tui/tui-win.c (tui_gen_win_info::max_width): New method. * tui/tui-layout.h (class tui_layout_base) : Add "height" argument. (class tui_layout_window) : Likewise. (class tui_layout_split) : Add "vertical" argument. : Add "height" argument. : 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) : New methods. 2020-02-22 Tom Tromey * tui/tui-layout.h (enum tui_adjust_result): New. (class tui_layout_base) : Return tui_adjust_result. (class tui_layout_window) : Return tui_adjust_result. Rewrite. (class tui_layout_split) : Return tui_adjust_result. * tui/tui-layout.c (tui_layout_split::adjust_size): Update. 2020-02-22 Tom Tromey * tui/tui-layout.h (class tui_layout_split) : Change parameter and return types. (class tui_layout_base) : Add "depth". (class tui_layout_window) : Add "depth". (class tui_layout_split) : 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 * 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) : New method. (class tui_layout_window) : New method. (class tui_layout_split) : New method. 2020-02-22 Tom Tromey * 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) : Declare method. (class tui_layout_window) : Likewise. (class tui_layout_split) : 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 * 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 * tui/tui.c (tui_rl_delete_other_windows): Call tui_remove_some_windows. * tui/tui-layout.h (class tui_layout_base) : Declare method. (class tui_layout_window) : New method. (class tui_layout_split) : 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 * 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 * tui/tui-regs.c (tui_data_window::display_registers_from): Use correct coordinates. 2020-02-22 Tom Tromey * 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 * tui/tui-disasm.c (tui_get_low_disassembly_address): Use TUI_DISASM_WIN, not tui_win_list. 2020-02-22 Tom Tromey * 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 * psympriv.h (struct partial_symtab): Update comment. 2020-02-21 Tom Tromey * mips-tdep.h (mips_pc_is_mips16, mips_pc_is_micromips): Parameter type is CORE_ADDR. 2020-02-21 Tom de Vries PR gdb/25534 * psymtab.c (partial_symtab::read_dependencies): Don't read dependency if dependencies[i]->user != NULL. 2020-02-21 Ali Tamur * dwarf2/read.c (dwarf2_name): Add null check. 2020-02-20 Tom Tromey * 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 * 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 Tom Tromey * 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 * config.in: Regenerate. * configure: Regenerate. * configure.ac: Add --with-python-libdir option. * main.c: Use WITH_PYTHON_LIBDIR. 2020-02-19 Tom Tromey * symtab.c (general_symbol_info::compute_and_set_names): Use obstack_strndup. Simplify call to symbol_set_demangled_name. 2020-02-19 Simon Marchi * 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 PR rust/25535 * rust-lang.c (rust_print_enum): Apply embedded_offset to rust_enum_variant calculation. 2020-02-19 Tom Tromey * mips-tdep.h (mips_pc_is_mips): Parameter type is CORE_ADDR. 2020-02-19 Tom Tromey * ada-lang.c (cache_symbol): Use obstack_strdup. 2020-02-19 Andrew Burgess * configure: Regenerate. 2020-02-19 Tom Tromey * python/python.c (do_start_initialization): Use XNEWVEC. Remove NULL check. 2020-02-19 Maciej W. Rozycki * NEWS: Mention RISC-V GNU/Linux GDBserver support. 2020-02-19 Andrew Burgess * 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 * 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 * valprint.c (generic_val_print_enum_1): Print unknown part of flag enum in hex. 2020-02-18 Simon Marchi * 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 * 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 * 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 * MAINTAINERS: Change palmer@sifive.com to palmer@dabbelt.com. 2020-02-14 Simon Marchi * 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) : 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 * minidebug.c (gnu_debug_key): New global. (find_separate_debug_file_in_section): Use it. 2020-02-14 Simon Marchi * 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 * 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) : Adjust to std::unique_ptr. : Change type to std::unique_ptr. 2020-02-14 Simon Marchi * 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 * 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 * dwarf2/read.c (lnp_state_machine::handle_special_opcode): Apply CSE on expression with division operators. 2020-02-13 Alok Kumar Sharma * MAINTAINERS (Write After Approval): Adding myself. 2020-02-12 Tom Tromey * event-loop.c (event_data, gdb_event, event_handler_func): Remove. 2020-02-12 Tom Tromey * 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 * dwarf2/frame.c (struct comp_unit) : 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 * dwarf2/frame.c (decode_frame_entry_1): Add gdbarch parameter. (decode_frame_entry): Likewise. (dwarf2_build_frame_info): Update. 2020-02-12 Tom Tromey * dwarf2/frame.c (struct comp_unit) : New member. (decode_frame_entry_1): Use the comp_unit obstack. 2020-02-12 Tom Tromey * dwarf2/frame.c (struct comp_unit): Add initializers and constructor. (dwarf2_frame_objfile_data): Store a comp_unit. (dwarf2_frame_find_fde): Update. (dwarf2_build_frame_info): Use "new". 2020-02-12 Tom Tromey * dwarf2/frame.c (struct dwarf2_fde_table): Remove. (dwarf2_fde_table): Typedef for std::vector. (dwarf2_frame_objfile_data): Remove the deleter. Now static. (dwarf2_frame_find_fde, add_fde, decode_frame_entry_1) (decode_frame_entry): Update. (dwarf2_build_frame_info): Use "new". 2020-02-12 Christian Biesinger * arm-tdep.c (arm_gdbarch_init): Update. * arm-tdep.h (struct gdbarch_tdep) : Change to bool. 2020-02-12 Christian Biesinger * arm-tdep.c (arm_dump_tdep): Print more fields of tdep. 2020-02-12 Tom Tromey * dwarf2/loc.c (struct dwarf_expr_baton): Remove. 2020-02-12 Hannes Domani * windows-tdep.c (struct windows_gdbarch_data): Add tib_ptr_type. (windows_get_tlb_type): Use windows_gdbarch_data->tib_ptr_type. 2020-02-11 Tom Tromey * psymtab.h: Update comment. 2020-02-11 Tom Tromey * gdb_obstack.h (struct auto_obstack): Use DISABLE_COPY_AND_ASSIGN. 2020-02-11 Tom Tromey * dwarf2/frame.h (struct objfile): Don't forward declare. 2020-02-11 Christian Biesinger * cris-tdep.c (cris_supply_gregset): Change signature to match what struct regset expects. (cris_regset): New struct. (fetch_core_registers): Remove. (cris_iterate_over_regset_sections): New function. (_initialize_cris_tdep): Don't call deprecated_add_core_fns. (cris_gdbarch_init): Call set_gdbarch_iterate_over_regset_sections. 2020-02-11 Christian Biesinger * arch/arm.h (enum gdb_regnum): Add comment for the FP0..7 registers. 2020-02-11 Christian Biesinger * arm-tdep.c (arm_dump_tdep): Add \n in fprintf. 2020-02-11 Simon Marchi * configure: Re-generate. 2020-02-11 Simon Marchi * configure: Re-generate. 2020-02-11 Simon Marchi * acinclude: Update warning.m4 path. * warning.m4: Move to gdbsupport. 2020-02-11 Tom Tromey * remote.c (remote_console_output): Update. * printcmd.c (printf_command): Update. * event-loop.c (gdb_wait_for_event): Update. * linux-nat.c (sigchld_handler): Update. * remote-sim.c (gdb_os_write_stdout): Update. (gdb_os_flush_stdout): Update. (gdb_os_flush_stderr): Update. (gdb_os_write_stderr): Update. * exceptions.c (print_exception): Update. * remote-fileio.c (remote_fileio_func_read): Update. (remote_fileio_func_write): Update. * tui/tui.c (tui_enable): Update. * tui/tui-interp.c (tui_interp::init): Update. * utils.c (init_page_info): Update. (putchar_unfiltered, fputc_unfiltered): Update. (gdb_flush): Update. (emit_style_escape): Update. (flush_wrap_buffer, fputs_maybe_filtered): Update. * ui-file.c (ui_file_isatty, ui_file_read, ui_file_write) (ui_file_write_async_safe, ui_file_flush, ui_file_puts): Remove. (stderr_file::write): Update. (stderr_file::puts): Update. * ui-file.h (ui_file_isatty, ui_file_write) (ui_file_write_async_safe, ui_file_read, ui_file_flush) (ui_file_puts): Don't declare. 2020-02-10 Tom de Vries * dwarf2/read.c (process_psymtab_comp_unit_reader): Cast concat NULL sentinel to char *. 2020-02-09 Tom de Vries * dwarf2read.c (process_psymtab_comp_unit_reader): Append CU offset to filename if it matches "". 2020-02-09 Hannes Domani * windows-tdep.c (struct enum_value_name): New struct. (create_enum): New function. (windows_get_siginfo_type): Create and use enum types. 2020-02-09 Hannes Domani * NEWS: Mention $_siginfo support for Windows. * windows-nat.c (handle_exception): Set siginfo_er. (windows_nat_target::mourn_inferior): Reset siginfo_er. (windows_xfer_siginfo): New function. (windows_nat_target::xfer_partial): Call windows_xfer_siginfo. * windows-tdep.c (struct windows_gdbarch_data): New struct. (init_windows_gdbarch_data): New function. (get_windows_gdbarch_data): New function. (windows_get_siginfo_type): New function. (windows_init_abi): Register windows_get_siginfo_type. (_initialize_windows_tdep): Register init_windows_gdbarch_data. 2020-02-08 Tom Tromey * dwarf2/read.c (class cutu_reader) : Remove "keep" parameter. : Declare method. : Remove member. <~cutu_reader>: Remove. (cutu_reader::init_tu_and_read_dwo_dies): Update. (cutu_reader::cutu_reader): Update. (cutu_reader::keep): Rename from ~cutu_reader. (process_psymtab_comp_unit, build_type_psymtabs_1) (process_skeletonless_type_unit, load_partial_comp_unit) (load_full_comp_unit, dwarf2_read_addr_index) (read_signatured_type): Update. 2020-02-08 Tom Tromey * dwarf2/read.c (process_psymtab_comp_unit_reader): Remove "want_partial_unit" parameter. (process_psymtab_comp_unit): Change want_partial_unit to bool. Inline check for DW_TAG_partial_unit. (dwarf2_build_psymtabs_hard, scan_partial_symbols): Update. 2020-02-08 Tom Tromey * dwarf2/read.c (read_n_bytes, read_direct_string): Move to read.c. * dwarf2/leb.h (read_n_bytes, read_direct_string): Move from read.c. 2020-02-08 Tom Tromey * dwarf2/read.c (read_address): Move to comp-unit.c. (dwarf2_rnglists_process, dwarf2_ranges_process) (read_attribute_value, dwarf_decode_lines_1) (var_decode_location, decode_locdesc): Update. * dwarf2/comp-unit.c (comp_unit_head::read_address): Move from read.c. Remove "cu" parameter. * dwarf2/comp-unit.h (struct comp_unit_head) : New method. 2020-02-08 Tom Tromey * dwarf2/read.c (read_attribute_value, read_indirect_string) (read_indirect_line_string): Update. * dwarf2/comp-unit.c (read_offset): Remove. (read_comp_unit_head): Update. * dwarf2/comp-unit.h (struct comp_unit_head) : New method. (read_offset): Don't declare. 2020-02-08 Tom Tromey * Makefile.in (COMMON_SFILES): Add dwarf2/comp-unit.c. * dwarf2/read.c (struct comp_unit_head): Move to dwarf2/comp-unit.h. (enum class rcuh_kind): Move to comp-unit.h. (get_cu_length, offset_in_cu_p): Now methods on comp_unit_head. (read_comp_unit_head, error_check_comp_unit_head) (read_and_check_comp_unit_head): Move to comp-unit.c. (read_offset, dwarf_unit_type_name): Likewise. (create_debug_type_hash_table, read_cutu_die_from_dwo) (cutu_reader::cutu_reader, read_call_site_scope) (find_partial_die, follow_die_offset): Update. * dwarf2/comp-unit.h: New file, from dwarf2read.c. 2020-02-08 Tom Tromey * dwarf2/read.c (read_offset_1): Move to leb.c. (read_abbrev_offset, read_offset, dwarf_decode_line_header) (dwarf_decode_macro_bytes): Update. * dwarf2/leb.c (read_offset): Rename; move from read.c. * dwarf2/leb.h (read_offset): Declare. 2020-02-08 Tom Tromey * dwarf2/read.c (dwarf2_section_size): Remove. (error_check_comp_unit_head, dwarf2_symbol_mark_computed): Update. * dwarf2/section.h (struct dwarf2_section_info) : New method. 2020-02-08 Tom Tromey * dwarf2/read.c (read_initial_length): Move to leb.c. * dwarf2/leb.h (read_initial_length): Declare. * dwarf2/leb.c (read_initial_length): Move from read.c. Add handle_nonstd parameter. * dwarf2/frame.c (read_initial_length): Remove. (decode_frame_entry_1): Update. 2020-02-08 Tom Tromey * dwarf2/loc.c (dwarf2_find_location_expression) (dwarf_evaluate_loc_desc::get_tls_address) (dwarf_evaluate_loc_desc::push_dwarf_reg_entry_value) (rw_pieced_value, dwarf2_evaluate_loc_desc_full) (dwarf2_locexpr_baton_eval, dwarf2_evaluate_property) (dwarf2_compile_property_to_c) (dwarf2_loc_desc_get_symbol_read_needs) (dwarf2_compile_expr_to_ax, locexpr_describe_location) (locexpr_tracepoint_var_ref, locexpr_generate_c_location) (loclist_describe_location, loclist_tracepoint_var_ref) (loclist_generate_c_location): Update. * compile/compile-loc2c.c (do_compile_dwarf_expr_to_c): Update. * dwarf2/loc.h (dwarf2_per_cu_objfile, dwarf2_per_cu_addr_size) (dwarf2_per_cu_ref_addr_size, dwarf2_per_cu_offset_size) (dwarf2_per_cu_text_offset, dwarf2_version): Don't declare. * dwarf2/read.c (dwarf2_per_cu_data::objfile) (dwarf2_per_cu_data::addr_size) (dwarf2_per_cu_data::ref_addr_size) (dwarf2_per_cu_data::text_offset) (dwarf2_per_cu_data::addr_type): Now methods. (per_cu_header_read_in): Make per_cu "const". (dwarf2_version): Remove. (dwarf2_per_cu_data::int_type): Now a method. (dwarf2_per_cu_data::_addr_sized_int_type): Likewise. (set_die_type, read_array_type, read_subrange_index_type) (read_tag_string_type, read_subrange_type): Update. * dwarf2/read.h (struct dwarf2_per_cu_data) : Declare methods. 2020-02-08 Tom Tromey * dwarf2/read.h (struct dwarf2_per_cu_data) : Move earlier. 2020-02-08 Tom Tromey * dwarf2/read.h (dwarf_line_debug): Declare. * Makefile.in (COMMON_SFILES): Add dwarf2/line-header.c. * dwarf2/read.c: Move line_header code to new files. (dwarf_line_debug): No longer static. * dwarf2/line-header.c: New file. * dwarf2/line-header.h: New file. 2020-02-08 Tom Tromey * dwarf2/read.c (struct line_header) : Return unique_xmalloc_ptr. (line_header::file_file_name): Update. (line_header::file_full_name): Update. (dw2_get_file_names_reader): Update. (macro_start_file): Update. 2020-02-08 Tom Tromey * dwarf2/read.c (struct line_header) : Declare methods. (dw2_get_file_names_reader): Update. (file_file_name): Now a method. (file_full_name): Likewise. (macro_start_file): Update. 2020-02-08 Tom Tromey * dwarf2/read.c (dwarf_always_disassemble) (show_dwarf_always_disassemble): Move to loc.c. (_initialize_dwarf2_read): Move "always-disassemble" registration to loc.c. * dwarf2/read.h (dwarf_always_disassemble): Don't declare. * dwarf2/loc.c (dwarf_always_disassemble): Move from read.c. Now static. (show_dwarf_always_disassemble): Move from read.c. (_initialize_dwarf2loc): Move always-disassemble from read.c. 2020-02-08 Tom Tromey * dwarf2/read.c (~dwarf2_per_objfile): Update. (create_quick_file_names_table): Return htab_up. (dw2_get_file_names_reader, dw2_forget_cached_source_info): Update. * dwarf2/read.h (struct dwarf2_per_objfile) : Now htab_up. 2020-02-08 Tom Tromey * dwarf2/abbrev.c (abbrev_table::read): Simplify. 2020-02-08 Tom Tromey * dwarf2/abbrev.c (abbrev_table): Move constructor from header. Rewrite. (abbrev_table::add_abbrev, abbrev_table::lookup_abbrev): Rewrite. * dwarf2/abbrev.h (struct abbrev_info) : Remove. (abbrev_table::abbrev_table): No longer inline. (ABBREV_HASH_SIZE): Remove. (abbrev_table::m_abbrevs): Now an htab_up. 2020-02-08 Tom Tromey * dwarf2/read.c (read_cutu_die_from_dwo): Update. (cutu_reader): Update. (build_type_psymtabs_1): Update. * dwarf2/abbrev.c (abbrev_table::read): Rename. (abbrev_table::alloc_abbrev): Update. * dwarf2/abbrev.h (abbrev_table_up): Move earlier. (abbrev_table::read): New static method, renamed from abbrev_table_read_table. (abbrev_table::alloc_abbrev) (abbrev_table::add_abbrev): Now private. (abbrev_table::abbrev_table): Now private. (abbrev_table::m_abbrev_obstack): Now private. Rename. 2020-02-08 Tom Tromey * dwarf2/read.c (set_die_type, get_die_type_at_offset): Update. * dwarf2/read.h (struct dwarf2_per_objfile) : Now htab_up. 2020-02-08 Tom Tromey * dwarf2/read.c (struct dwp_file) : Now htab_up. (lookup_dwo_unit_in_dwp): Update. (allocate_dwp_loaded_cutus_table): Return htab_up. Don't allocate on obstack. 2020-02-08 Tom Tromey * dwarf2/read.c (allocate_dwo_file_hash_table): Don't allocate on obstack. 2020-02-08 Tom Tromey * dwarf2/read.c (~dwarf2_per_objfile): Don't delete line_header_hash. (handle_DW_AT_stmt_list): Update. Don't allocate on obstack. * dwarf2/read.h (struct dwarf2_per_objfile) : Change type to htab_up. 2020-02-08 Tom Tromey * dwarf2/read.c (allocate_type_unit_groups_table): Return htab_up. Don't allocate on obstack. (get_type_unit_group, dwarf2_build_psymtabs_hard): Update. * dwarf2/read.h (struct dwarf2_per_objfile) : Change type to htab_up. 2020-02-08 Tom Tromey * dwarf2/read.h (struct dwarf2_per_objfile) : Change type to htab_up. * dwarf2/read.c (create_signatured_type_table_from_index) (create_signatured_type_table_from_debug_names) (create_all_type_units, add_type_unit) (lookup_dwo_signatured_type, lookup_signatured_type) (process_skeletonless_type_unit): Update. (create_debug_type_hash_table, create_debug_types_hash_table): Change type of types_htab. (allocate_signatured_type_table, allocate_dwo_unit_table): Return htab_up. Don't allocate on obstack. (create_cus_hash_table): Change type of cus_htab parameter. (struct dwo_file) : Now htab_up. (lookup_dwo_signatured_type, lookup_dwo_cutu) (process_dwo_file_for_skeletonless_type_units, lookup_dwo_cutu) (queue_and_load_all_dwo_tus): Update. * dwarf2/index-write.c (write_gdbindex): Update. (write_debug_names): Update. 2020-02-08 Tom Tromey * dwarf2/read.h (struct dwarf2_queue_item): Move from dwarf2/read.c. Remove "next" member. Add constructor ntad destructor. (struct dwarf2_per_objfile) : New member. * dwarf2/read.c (struct dwarf2_queue_item): Move to dwarf2/read.h. (dwarf2_queue, dwarf2_queue_tail): Remove. (class dwarf2_queue_guard): Add parameter to constructor. Use DISABLE_COPY_AND_ASSIGN. : New member. <~dwarf2_queue_guard>: Rewrite. (dw2_do_instantiate_symtab, queue_comp_unit, process_queue): Update. (~dwarf2_queue_item): New. 2020-02-08 Tom Tromey * dwarf2/read.c (struct die_info) : New member. (dw2_get_file_names_reader): Remove has_children. (dw2_get_file_names): Update. (read_cutu_die_from_dwo): Remove has_children. (cutu_reader::init_tu_and_read_dwo_dies) (cutu_reader::cutu_reader): Update. (process_psymtab_comp_unit_reader, build_type_psymtabs_reader): Remove has_children. (build_type_psymtabs_1, process_skeletonless_type_unit) (load_partial_comp_unit, load_full_comp_unit): Update. (create_dwo_cu_reader): Remove has_children. (create_cus_hash_table, read_die_and_children): Update. (read_full_die_1,read_full_die): Remove has_children. (read_signatured_type): Update. (class cutu_reader) : Remove. 2020-02-08 Tom Tromey * dwarf2/expr.c: Rename from dwarf2expr.c. * dwarf2/expr.h: Rename from dwarf2expr.h. * dwarf2/frame-tailcall.c: Rename from dwarf2-frame-tailcall.c. * dwarf2/frame-tailcall.h: Rename from dwarf2-frame-tailcall.h. * dwarf2/frame.c: Rename from dwarf2-frame.c. * dwarf2/frame.h: Rename from dwarf2-frame.h. * dwarf2/index-cache.c: Rename from dwarf-index-cache.c. * dwarf2/index-cache.h: Rename from dwarf-index-cache.h. * dwarf2/index-common.c: Rename from dwarf-index-common.c. * dwarf2/index-common.h: Rename from dwarf-index-common.h. * dwarf2/index-write.c: Rename from dwarf-index-write.c. * dwarf2/index-write.h: Rename from dwarf-index-write.h. * dwarf2/loc.c: Rename from dwarf2loc.c. * dwarf2/loc.h: Rename from dwarf2loc.h. * dwarf2/read.c: Rename from dwarf2read.c. * dwarf2/read.h: Rename from dwarf2read.h. * dwarf2/abbrev.c, aarch64-tdep.c, alpha-tdep.c, amd64-darwin-tdep.c, arc-tdep.c, arm-tdep.c, bfin-tdep.c, compile/compile-c-symbols.c, compile/compile-cplus-symbols.c, compile/compile-loc2c.c, cris-tdep.c, csky-tdep.c, findvar.c, gdbtypes.c, guile/scm-type.c, h8300-tdep.c, hppa-bsd-tdep.c, hppa-linux-tdep.c, i386-darwin-tdep.c, i386-linux-tdep.c, i386-tdep.c, iq2000-tdep.c, m32c-tdep.c, m68hc11-tdep.c, m68k-tdep.c, microblaze-tdep.c, mips-tdep.c, mn10300-tdep.c, msp430-tdep.c, nds32-tdep.c, nios2-tdep.c, or1k-tdep.c, riscv-tdep.c, rl78-tdep.c, rs6000-tdep.c, rx-tdep.c, s12z-tdep.c, s390-tdep.c, score-tdep.c, sh-tdep.c, sparc-linux-tdep.c, sparc-tdep.c, sparc64-linux-tdep.c, sparc64-tdep.c, tic6x-tdep.c, tilegx-tdep.c, v850-tdep.c, xstormy16-tdep.c, xtensa-tdep.c: Update. * Makefile.in (COMMON_SFILES): Update. (HFILES_NO_SRCDIR): Update. 2020-02-08 Tom Tromey * dwarf2read.c (struct die_reader_specs) : Remove. (init_cu_die_reader, read_cutu_die_from_dwo): Update. 2020-02-08 Tom Tromey * dwarf2read.h (struct die_info): Don't declare. 2020-02-08 Tom Tromey * dwarf2read.h (die_info_ptr): Remove typedef. 2020-02-08 Tom Tromey * dwarf2read.c (read_call_site_scope) (handle_data_member_location, dwarf2_add_member_fn) (mark_common_block_symbol_computed, read_common_block) (attr_to_dynamic_prop, partial_die_info::read) (var_decode_location, dwarf2_fetch_die_loc_sect_off) (dwarf2_symbol_mark_computed, set_die_type): Update. * dwarf2/attribute.h (struct attribute) : Declare method. (attr_form_is_block): Don't declare. * dwarf2/attribute.c (attribute::form_is_block): Now a method. 2020-02-08 Tom Tromey * dwarf2read.c (dwarf2_find_base_address, ) (read_call_site_scope, rust_containing_type) (dwarf2_get_pc_bounds, dwarf2_record_block_ranges) (handle_data_member_location, dwarf2_add_member_fn) (get_alignment, read_structure_type, process_structure_scope) (mark_common_block_symbol_computed, read_common_block) (read_tag_string_type, attr_to_dynamic_prop, read_subrange_type) (partial_die_info::read, read_attribute_value, new_symbol) (lookup_die_type, dwarf2_get_ref_die_offset) (dwarf2_get_attr_constant_value, follow_die_ref_or_sig) (dwarf2_fetch_die_loc_sect_off, get_DW_AT_signature_type) (dwarf2_symbol_mark_computed): Update. * dwarf2/attribute.h (struct attribute) : Declare methods. (value_as_address, attr_form_is_section_offset) (attr_form_is_constant, attr_form_is_ref): Don't declare. * dwarf2/attribute.c (attribute::value_as_address) (attribute::form_is_section_offset, attribute::form_is_constant) (attribute::form_is_ref): Now methods. 2020-02-08 Tom Tromey * dwarf2read.c (struct attribute, DW_STRING) (DW_STRING_IS_CANONICAL, DW_UNSND, DW_BLOCK, DW_SND, DW_ADDR) (DW_SIGNATURE, struct dwarf_block, attr_value_as_address) (attr_form_is_block, attr_form_is_section_offset) (attr_form_is_constant, attr_form_is_ref): Move. * dwarf2/attribute.h: New file. * dwarf2/attribute.c: New file, from dwarf2read.c. * Makefile.in (COMMON_SFILES): Add dwarf2/attribute.c. 2020-02-08 Tom Tromey * dwarf2read.c (abbrev_table_up, struct abbrev_info) (struct attr_abbrev, ABBREV_HASH_SIZE, struct abbrev_table): Move. (read_cutu_die_from_dwo, build_type_psymtabs_1): Update. (abbrev_table::alloc_abbrev, abbrev_table::add_abbrev) (abbrev_table::lookup_abbrev, abbrev_table_read_table): Move to abbrev.c. * dwarf2/abbrev.h: New file. * dwarf2/abbrev.c: New file, from dwarf2read.c. * Makefile.in (COMMON_SFILES): Add dwarf2/abbrev.c. 2020-02-08 Tom Tromey * dwarf2read.c (dwarf2_section_buffer_overflow_complaint) (dwarf2_section_size, dwarf2_get_section_info) (create_signatured_type_table_from_debug_names) (create_addrmap_from_aranges, read_debug_names_from_section) (get_gdb_index_contents_from_section, read_comp_unit_head) (error_check_comp_unit_head, read_abbrev_offset) (create_debug_type_hash_table, init_cu_die_reader) (read_cutu_die_from_dwo, dwarf2_build_psymtabs_hard) (read_comp_units_from_section, create_cus_hash_table) (create_dwp_hash_table, create_dwo_unit_in_dwp_v1) (create_dwp_v2_section, dwarf2_rnglists_process) (dwarf2_ranges_process, read_die_and_siblings, read_full_die) (abbrev_table_read_table, read_indirect_string_at_offset_from) (read_indirect_string_from_dwz, read_addr_index_1) (read_str_index, dwarf_decode_line_header, skip_form_bytes) (dwarf_decode_macro_bytes, dwarf_decode_macros) (fill_in_loclist_baton): Update. * dwarf2/section.h (struct dwarf2_section_info) : Declare methods. (dwarf2_read_section, get_section_name, get_section_file_name) (get_containing_section, get_section_bfd_owner) (get_section_bfd_section, get_section_name, get_section_file_name) (get_section_id, get_section_flags, dwarf2_section_empty_p): Don't declare. * dwarf2/section.c (dwarf2_section_info::get_containing_section) (dwarf2_section_info::get_bfd_owner) (dwarf2_section_info::get_bfd_section) (dwarf2_section_info::get_name) (dwarf2_section_info::get_file_name, dwarf2_section_info::get_id) (dwarf2_section_info::get_flags, dwarf2_section_info::empty) (dwarf2_section_info::read): Now methods. * dwarf-index-write.c (class debug_names): Update. 2020-02-08 Tom Tromey * dwarf2read.h (struct dwarf2_section_info, dwarf2_read_section): Move to dwarf2/section.h. * dwarf2read.c (get_containing_section, get_section_bfd_owner) (get_section_bfd_section, get_section_name) (get_section_file_name, get_section_id, get_section_flags) (dwarf2_section_empty_p, dwarf2_read_section): Moe to dwarf2/section.c. * dwarf2/section.h: New file. * dwarf2/section.c: New file, from dwarf2read.c. * Makefile.in (COMMON_SFILES): Add dwarf2/section.c. 2020-02-08 Tom Tromey * dwarf2read.h (read_unsigned_leb128): Don't declare. * dwarf2read.c (read_1_byte, read_1_signed_byte, read_2_bytes) (read_2_signed_bytes, read_3_bytes, read_4_bytes) (read_4_signed_bytes, read_8_bytes): Move to dwarf2/leb.h. (read_unsigned_leb128, read_signed_leb128): Move to dwarf2/leb.c. * dwarf2/leb.h: New file, from dwarf2read.c. * dwarf2/leb.c: New file, from dwarf2read.c. * dwarf2-frame.c (read_1_byte, read_4_bytes, read_8_bytes): Remove. * Makefile.in (CONFIG_SRC_SUBDIR): Add dwarf2. (COMMON_SFILES): Add dwarf2/leb.c. 2020-02-08 Joel Brobecker GDB 9.1 released. 2020-02-05 Iain Buclaw PR gdb/25190: * gdb/remote-sim.c (gdb_os_write_stderr): Update. * gdb/remote.c (remote_console_output): Update. * gdb/ui-file.c (fputs_unfiltered): Rename to... (ui_file_puts): ...this. * gdb/ui-file.h (ui_file_puts): Add declaration. * gdb/utils.c (emit_style_escape): Update. (flush_wrap_buffer): Update. (fputs_maybe_filtered): Update. (fputs_unfiltered): Add function. 2020-02-05 Iain Buclaw * gdb/event-loop.c (gdb_wait_for_event): Update. * gdb/printcmd.c (printf_command): Update. * gdb/remote-fileio.c (remote_fileio_func_write): Update. * gdb/remote-sim.c (gdb_os_flush_stdout): Update. (gdb_os_flush_stderr): Update. * gdb/remote.c (remote_console_output): Update. * gdb/ui-file.c (gdb_flush): Rename to... (ui_file_flush): ...this. (stderr_file::write): Update. (stderr_file::puts): Update. * gdb/ui-file.h (gdb_flush): Rename to... (ui_file_flush): ...this. * gdb/utils.c (gdb_flush): Add function. * gdb/utils.h (gdb_flush): Add declaration. 2020-02-07 Tom Tromey PR breakpoints/24915: * source.c (find_and_open_source): Do not check basenames_may_differ. 2020-02-07 Tom Tromey * README: Update gdbserver documentation. * gdbserver: Move to top level. * configure.tgt (build_gdbserver): Remove. * configure.ac: Remove --enable-gdbserver. * configure: Rebuild. * Makefile.in (distclean): Don't mention gdbserver. 2020-02-06 Shahab Vahedi * source-cache.c (source_cache::ensure): Surround get_plain_source_lines with a try/catch. (source_cache::get_line_charpos): Get rid of try/catch and only check for the return value of "ensure". * tui/tui-source.c (tui_source_window::set_contents): Simplify "nlines" calculation. 2020-02-06 Shahab Vahedi * MAINTAINERS (Write After Approval): Add myself. 2020-02-05 Christian Biesinger * sparc-nat.h (struct sparc_target) : Fix base class function call. 2020-02-05 Christian Biesinger * ppc-nbsd-tdep.h: Fix macro name in #endif comment. 2020-02-05 Maciej W. Rozycki * nat/riscv-linux-tdesc.h: New file. * nat/riscv-linux-tdesc.c: New file, taking code from... * riscv-linux-nat.c (riscv_linux_nat_target::read_description): ... here. * configure.nat : Add nat/riscv-linux-tdesc.o to NATDEPFILES. 2020-02-04 Andrew Burgess * remote-sim.c (sim_inferior_data::sim_inferior_data): Assert that we don't set the fake simulator ptid to the null_ptid. 2020-02-03 Simon Marchi * fork-child.c (gdb_startup_inferior): Use bool instead of int. * gdbthread.h (class thread_info) : Likewise. * infrun.c (resume_1): Likewise. (proceed): Likewise. (infrun_thread_stop_requested): Likewise. (stop_all_threads): Likewise. (handle_inferior_event): Likewise. (restart_threads): Likewise. (finish_step_over): Likewise. (keep_going_stepped_thread): Likewise. * linux-nat.c (attach_proc_task_lwp_callback): Likewise. (linux_handle_extended_wait): Likewise. * record-btrace.c (get_thread_current_frame_id): Likewise. * record-full.c (record_full_wait_1): Likewise. * remote.c (remote_target::process_initial_stop_replies): Likewise. * target.c (target_resume): Likewise. * thread.c (set_running_thread): Likewise. 2020-02-03 Alok Kumar Sharma * f-valprint.c (f77_print_array_1): Changed datatype of index variable to LONGEST from int to enable it to contain bound values correctly. 2020-02-03 Maciej W. Rozycki * riscv-linux-nat.c [!NFPREG] (NFPREG): New macro. (supply_fpregset_regnum, fill_fpregset): Handle regset buffer offsets according to FLEN determined. (riscv_linux_nat_target::read_description): Determine FLEN dynamically. (riscv_linux_nat_target::fetch_registers): Size regset buffer according to FLEN determined. (riscv_linux_nat_target::store_registers): Likewise. 2020-02-01 Shahab Vahedi * target-descriptions.c (tdesc_register_in_reggroup_p): Return 0 when reg->group is empty and reggroup is not. 2020-01-31 Tom Tromey * ravenscar-thread.c (ravenscar_thread_target::mourn_inferior): Call beneath target's mourn_inferior after unpushing. 2020-01-31 Andrew Burgess PR tui/9765 * tui/tui-disasm.c (tui_find_disassembly_address): If we don't have enough lines to fill the screen, still return the lowest address we found. 2020-01-31 Andrew Burgess * tui/tui-win.c (_initialize_tui_win): Update help text for '+', '-', '<', and '>' commands. 2020-01-29 Pedro Alves Sergio Durigan Junior * infcmd.c (construct_inferior_arguments): Assert that 'argc' is greater than 0. 2020-01-29 Luis Machado * aarch64-tdep.c (BRK_INSN_MASK): Define to 0xffe0001f. (BRK_INSN_MASK): Define to 0xd4200000. (aarch64_program_breakpoint_here_p): New function. (aarch64_gdbarch_init): Set gdbarch_program_breakpoint_here_p hook. * arch-utils.c (default_program_breakpoint_here_p): Moved from breakpoint.c. * arch-utils.h (default_program_breakpoint_here_p): Moved from breakpoint.h * breakpoint.c (bp_loc_is_permanent): Changed return type to bool and call gdbarch_program_breakpoint_here_p. (program_breakpoint_here): Moved to arch-utils.c, renamed to default_program_breakpoint_here_p, changed return type to bool and simplified. * breakpoint.h (program_breakpoint_here): Moved prototype to arch-utils.h, renamed to default_program_breakpoint_here_p and changed return type to bool. * gdbarch.c: Regenerate. * gdbarch.h: Regenerate. * gdbarch.sh (program_breakpoint_here_p): New method. * infrun.c (handle_signal_stop): Call gdbarch_program_breakpoint_here_p. 2020-01-26 Tom Tromey * ctfread.c (struct ctf_fp_info): Reindent. (_initialize_ctfread): Remove. 2020-01-26 Tom Tromey * psymtab.c (partial_map_expand_apply) (psym_find_pc_sect_compunit_symtab, psym_lookup_symbol) (psymtab_to_symtab, psym_find_last_source_symtab, dump_psymtab) (psym_print_stats, psym_expand_symtabs_for_function) (psym_map_symbol_filenames, psym_map_matching_symbols) (psym_expand_symtabs_matching) (partial_symtab::read_dependencies, maintenance_info_psymtabs) (maintenance_check_psymtabs): Use new methods. * psympriv.h (struct partial_symtab) : New methods. : Remove members. (struct standard_psymtab): New. (struct legacy_psymtab): Derive from standard_psymtab. * dwarf2read.h (struct dwarf2_psymtab): Derive from standard_psymtab. * ctfread.c (struct ctf_psymtab): Derive from standard_psymtab. 2020-01-26 Tom Tromey * xcoffread.c (xcoff_psymtab_to_symtab_1): Call read_dependencies. Add assert. * psymtab.c (partial_symtab::read_dependencies): New method. * psympriv.h (struct partial_symtab) : New method. * mdebugread.c (psymtab_to_symtab_1): Call read_dependencies. * dwarf2read.c (dwarf2_psymtab::expand_psymtab): Call read_dependencies. * dbxread.c (dbx_psymtab_to_symtab_1): Call read_dependencies. Add assert. 2020-01-26 Tom Tromey * xcoffread.c (xcoff_psymtab_to_symtab_1): Change argument order. Call expand_psymtab. (xcoff_read_symtab): Call expand_psymtab. (xcoff_start_psymtab, xcoff_end_psymtab): Set legacy_expand_psymtab. * psympriv.h (struct partial_symtab) : New method. (struct legacy_psymtab) : Implement. : New member. * mdebugread.c (mdebug_read_symtab): Call expand_psymtab. (parse_partial_symbols): Set legacy_expand_psymtab. (psymtab_to_symtab_1): Change argument order. Call expand_psymtab. (new_psymtab): Set legacy_expand_psymtab. * dwarf2read.h (struct dwarf2_psymtab) : Declare. * dwarf2read.c (dwarf2_psymtab::read_symtab): Call expand_psymtab. (dwarf2_psymtab::expand_psymtab): Rename from psymtab_to_symtab_1. Call expand_psymtab. * dbxread.c (start_psymtab): Set legacy_expand_psymtab. (dbx_end_psymtab): Likewise. (dbx_psymtab_to_symtab_1): Change argument order. Call expand_psymtab. (dbx_read_symtab): Call expand_psymtab. * ctfread.c (struct ctf_psymtab) : Declare. (ctf_psymtab::expand_psymtab): Rename from psymtab_to_symtab. (ctf_psymtab::read_symtab): Call expand_psymtab. 2020-01-26 Tom Tromey * xcoffread.c (xcoff_read_symtab): Remove prints. Add assert. * psymtab.c (psymtab_to_symtab): Print verbose "Reading" messages. * mdebugread.c (mdebug_read_symtab): Remove prints. * dwarf2read.c (dwarf2_psymtab::read_symtab): Remove prints. Add assert. * dbxread.c (dbx_read_symtab): Remove prints. Add assert. 2020-01-26 Tom Tromey * xcoffread.c (this_symtab_psymtab, read_xcoff_symtab) (xcoff_psymtab_to_symtab_1, xcoff_read_symtab) (xcoff_start_psymtab, xcoff_end_psymtab, scan_xcoff_symtab): Use legacy_symtab. * stabsread.h (dbx_end_psymtab): Use legacy_symtab. * psymtab.c (psymtab_to_symtab): Call method. (dump_psymtab): Update. * psympriv.h (struct partial_symtab): Add virtual destructor. : New method. (struct legacy_symtab): New. * mdebugread.c (mdebug_read_symtab): Use legacy_psymtab. (struct pst_map) : Now a legacy_psymtab. (parse_procedure, parse_partial_symbols, psymtab_to_symtab_1) (new_psymtab): Use legacy_psymtab. * dwarf2read.h (struct dwarf2_psymtab): New. (struct dwarf2_per_cu_data) : Use it. * dwarf2read.c (dwarf2_create_include_psymtab) (dwarf2_build_include_psymtabs, create_type_unit_group) (create_partial_symtab, process_psymtab_comp_unit_reader) (build_type_psymtabs_reader, build_type_psymtab_dependencies) (set_partial_user): Use dwarf2_psymtab. (dwarf2_psymtab::read_symtab): Rename from dwarf2_read_symtab. (psymtab_to_symtab_1, process_full_comp_unit) (process_full_type_unit, dwarf2_ranges_read) (dwarf2_get_pc_bounds, psymtab_include_file_name) (dwarf_decode_lines): Use dwarf2_psymtab. * dwarf-index-write.c (psym_index_map): Use dwarf2_psymtab. (add_address_entry_worker, write_one_signatured_type) (recursively_count_psymbols, recursively_write_psymbols) (write_one_signatured_type, psyms_seen_size, write_gdbindex) (write_debug_names): Likewise. * dbxread.c (struct header_file_location): Take a legacy_psymtab. : Now a legacy_psymtab. (find_corresponding_bincl_psymtab): Return a legacy_psymtab. (read_dbx_symtab, start_psymtab, dbx_end_psymtab) (dbx_psymtab_to_symtab_1, read_ofile_symtab): Use legacy_psymtab. * ctfread.c (struct ctf_psymtab): New. (ctf_start_symtab, ctf_end_symtab, psymtab_to_symtab): Take a ctf_psymtab. (ctf_psymtab::read_symtab): Rename from ctf_read_symtab. (create_partial_symtab): Return a ctf_psymtab. (scan_partial_symbols): Update. 2020-01-26 Tom Tromey * xcoffread.c (xcoff_start_psymtab): Use new. * psymtab.c (partial_symtab::partial_symtab): New constructor, renamed from start_psymtab_common. * psympriv.h (struct partial_symtab): Add new constructor. (start_psymtab_common): Don't declare. * mdebugread.c (parse_partial_symbols): Use new. * dwarf2read.c (create_partial_symtab): Use new. * dbxread.c (start_psymtab): Use new. * ctfread.c (create_partial_symtab): Use new. 2020-01-26 Tom Tromey * xcoffread.c (xcoff_end_psymtab): Use new. * psymtab.c (start_psymtab_common): Use new. (partial_symtab::partial_symtab): Rename from allocate_psymtab. Update. * psympriv.h (struct partial_symtab): Add parameters to constructor. Don't inline. (allocate_psymtab): Don't declare. * mdebugread.c (new_psymtab): Use new. * dwarf2read.c (dwarf2_create_include_psymtab): Use new. * dbxread.c (dbx_end_psymtab): Use new. 2020-01-26 Tom Tromey * psymtab.h (class psymtab_storage) : Rename from allocate_psymtab. Update documentation. * psymtab.c (psymtab_storage::install_psymtab): Rename from allocate_psymtab. Do not use new. (allocate_psymtab): Use new. Update. 2020-01-26 Tom Tromey * xcoffread.c (xcoff_psymtab_to_symtab_1): Update. * psymtab.c (psym_print_stats): Update. * psympriv.h (struct partial_symtab) : Now bool. * mdebugread.c (psymtab_to_symtab_1): Update. * dwarf2read.c (create_type_unit_group, create_partial_symtab) (build_type_psymtabs_reader, psymtab_to_symtab_1) (process_full_comp_unit, process_full_type_unit): Update. * dbxread.c (dbx_psymtab_to_symtab_1): Update. * ctfread.c (psymtab_to_symtab): Update. 2020-01-26 Tom Tromey * mdebugread.c (parse_partial_symbols): Use discard_psymtab. * psymtab.h (class psymtab_storage) : Remove. * psymtab.c (psymtab_storage): Delete psymtabs. (psymtab_storage::allocate_psymtab): Use new. (psymtab_storage::discard_psymtab): Use delete. * psympriv.h (struct partial_symtab): Add constructor and initializers. 2020-01-26 Tom Tromey * machoread.c: Do not include psympriv.h. 2020-01-25 Philippe Waroquiers * NEWS: Mention the new option and the set/show commands. 2020-01-25 Philippe Waroquiers * exec.c (exec_file_mismatch_names, exec_file_mismatch_mode) (show_exec_file_mismatch_command, set_exec_file_mismatch_command) (validate_exec_file): New variables, enums, functions. (exec_file_locate_attach, print_section_info): Style the filenames. (_initialize_exec): Install show_exec_file_mismatch_command and set_exec_file_mismatch_command. * gdbcore.h (validate_exec_file): Declare. * infcmd.c (attach_command): Call validate_exec_file. * remote.c ( remote_target::remote_add_inferior): Likewise. 2020-01-24 Andrew Burgess * frame.c (find_frame_sal): Move call to get_next_frame into more inner scope. * inline-frame.c (inilne_state) : Update argument types. (inilne_state) : Rename to... (inilne_state) : ...this, and change to a vector. (skip_inline_frames): Build vector of skipped symbols and use this to reate the inline_state. (inline_skipped_symbol): Add a comment and some assertions, fetch skipped symbol from the list. 2020-01-24 Andrew Burgess * buildsym.c (lte_is_less_than): Delete. (buildsym_compunit::end_symtab_with_blockvector): Create local lambda function to sort line table entries, and use std::stable_sort instead of std::sort. * symtab.c (find_pc_sect_line): Skip backward over end of sequence markers when looking for a previous line. 2020-01-24 Andrew Burgess * dwarf2read.c (lnp_state_machine::record_line): Include end_sequence parameter in debug print out. Record the line if we are at an end_sequence marker even if it's not the start of a statement. * symmisc.c (maintenance_print_one_line_table): Print end of sequence markers with 'END' not '0'. 2020-01-24 Pedro Alves PR gdb/25410 * thread.c (scoped_restore_current_thread::restore): Use switch_to_inferior_no_thread. * exec.c: Include "progspace-and-thread.h". (add_target_sections, remove_target_sections): scoped_restore_current_pspace_and_thread instead of scoped_restore_current_thread. * infrun.c (handle_vfork_child_exec_or_exit): Assign the pspace and aspace to the inferior before calling clone_program_space. Remove stale comment. 2020-01-24 Christian Biesinger * arm-nbsd-nat.c (arm_nbsd_nat_target::fetch_registers): Rename to... (arm_netbsd_nat_target::fetch_registers): ...this. (arm_nbsd_nat_target::store_registers): Rename to... (arm_netbsd_nat_target::store_registers): ...this. 2020-01-24 Christian Biesinger * arm-nbsd-nat.c: Define _KERNTYPES to get the declaration of register_t. 2020-01-24 Christian Biesinger * aarch64-fbsd-tdep.c (aarch64_fbsd_iterate_over_regset_sections): Update comment. * aarch64-linux-tdep.c (aarch64_linux_iterate_over_regset_sections): Likewise. * arm-fbsd-tdep.c (arm_fbsd_iterate_over_regset_sections): Likewise. * gdbcore.h (deprecated_add_core_fns): Update comment to point to the correct replacement (iterate_over_regset_sections). * riscv-fbsd-tdep.c (riscv_fbsd_iterate_over_regset_sections): Update comment. 2020-01-24 Graham Markall PR gdb/23718 * gdb/python/python.c (execute_gdb_command): Call async_enable_stdin in catch block. 2020-01-24 Andrew Burgess * event-loop.c (start_event_loop): Wrap async_enable_stdin with SWITCH_THRU_ALL_UIS. 2020-01-24 Andrew Burgess PR tui/9765 * minsyms.c (lookup_minimal_symbol_by_pc_section): Update header comment, add extra parameter, and update to store previous symbol when appropriate. * minsyms.h (lookup_minimal_symbol_by_pc_section): Update comment, add extra parameter. * tui/tui-disasm.c (tui_disassemble): Update header comment, remove unneeded parameter, add try/catch around gdb_print_insn, rewrite to add items to asm_lines vector. (tui_find_backward_disassembly_start_address): New function. (tui_find_disassembly_address): Updated throughout. (tui_disasm_window::set_contents): Update for changes to tui_disassemble. (tui_disasm_window::do_scroll_vertical): No need to adjust the number of lines to scroll. 2020-01-23 Simon Marchi * objfiles.h (ALL_OBJFILE_OSECTIONS): Move up. (SECT_OFF_DATA): Likewise. (SECT_OFF_RODATA): Likewise. (SECT_OFF_TEXT): Likewise. (SECT_OFF_BSS): Likewise. (struct objfile) : New methods. * amd64-windows-tdep.c (amd64_windows_find_unwind_info): Use objfile::text_section_offset. * coff-pe-read.c (add_pe_forwarded_sym): Likewise. * coffread.c (coff_symtab_read): Likewise. (enter_linenos): Likewise. (process_coff_symbol): Likewise. * ctfread.c (get_objfile_text_range): Likewise. * dtrace-probe.c (dtrace_probe::get_relocated_address): Use objfile::data_section_offset. * dwarf2-frame.c (execute_cfa_program): Use objfile::text_section_offset. (dwarf2_frame_find_fde): Likewise. * dwarf2read.c (create_addrmap_from_index): Likewise. (create_addrmap_from_aranges): Likewise. (dw2_find_pc_sect_compunit_symtab): Likewise. (process_psymtab_comp_unit_reader): Likewise. (add_partial_symbol): Likewise. (add_partial_subprogram): Likewise. (process_full_comp_unit): Likewise. (read_file_scope): Likewise. (read_func_scope): Likewise. (read_lexical_block_scope): Likewise. (read_call_site_scope): Likewise. (dwarf2_rnglists_process): Likewise. (dwarf2_ranges_process): Likewise. (dwarf2_ranges_read): Likewise. (dwarf_decode_lines_1): Likewise. (new_symbol): Likewise. (dwarf2_fetch_die_loc_sect_off): Likewise. (dwarf2_per_cu_text_offset): Likewise. * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Likewise. * hppa-tdep.c (read_unwind_info): Likewise. * ia64-tdep.c (ia64_find_unwind_table): Likewise. * psympriv.h (struct partial_symtab): Likewise. * psymtab.c (find_pc_sect_psymtab): Likewise. * solib-svr4.c (enable_break): Likewise. * stap-probe.c (relocate_address): Use objfile::data_section_offset. * xcoffread.c (enter_line_range): Use objfile::text_section_offset. (read_xcoff_symtab): Likewise. 2020-01-23 Simon Marchi * darwin-nat.c (darwin_nat_target::wait_1): Move `inf` declaration to narrower scopes. 2020-01-23 Simon Marchi * darwin-nat.h (struct darwin_exception_msg, enum darwin_msg_state, struct darwin_thread_info, darwin_thread_t): Move up. (class darwin_nat_target) : Declare. * darwin-nat.c (darwin_check_new_threads): Rename to... (darwin_nat_target::check_new_threads): ... this. (darwin_suspend_inferior_it): Remove. (darwin_decode_exception_message): Rename to... (darwin_nat_target::decode_exception_message): ... this. (darwin_nat_target::resume): Pass target to find_inferior_ptid. (darwin_decode_message): Rename to... (darwin_nat_target::decode_message): ... this. (cancel_breakpoint): Rename to... (darwin_nat_target::cancel_breakpoint): ... this. (darwin_wait): Rename to... (darwin_nat_target::wait_1): ... this. Use range-based for loop instead of iterate_over_inferiors. (darwin_nat_target::wait): Call wait_1 instead of darwin_wait. (darwin_stop_inferior): Rename to... (darwin_nat_target::stop_inferior): ... this. (darwin_nat_target::kill): Call wait_1 instead of darwin_wait. (darwin_init_thread_list): Rename to... (darwin_nat_target::init_thread_list): ... this. (darwin_ptrace_him): Rename to... (darwin_nat_target::ptrace_him): ... this. (darwin_nat_target::create_inferior): Pass lambda function to fork_inferior. (darwin_nat_target::detach): Call stop_inferior instead of darwin_stop_inferior. * fork-inferior.h (fork_inferior): Change init_trace_fun parameter to gdb::function_view. * fork-inferior.c (fork_inferior): Likewise. 2020-01-23 Hannes Domani * i386-cygwin-tdep.c (core_process_module_section): Update. * windows-nat.c (struct lm_info_windows): Add text_offset. (windows_xfer_shared_libraries): Update. * windows-tdep.c (windows_xfer_shared_library): Add text_offset_cached argument. * windows-tdep.h (windows_xfer_shared_library): Update. 2020-01-21 Simon Marchi * gdbarch.sh: Add declaration for _initialize_gdbarch. 2020-01-21 Simon Marchi * remote-sim.c (check_for_duplicate_sim_descriptor): Remove. (get_sim_inferior_data): Remove use of iterate_over_inferiors, replace with range-based for. (gdbsim_interrupt_inferior): Remove. (gdbsim_target::interrupt): Replace iterate_over_inferiors use with a range-based for. Inline code from gdbsim_interrupt_inferior. 2020-01-21 Simon Marchi * infrun.c (proceed): Fix indentation. 2020-01-21 Tom Tromey * source-cache.c (source_cache::ensure): Call ext_lang_colorize. * python/python.c (python_extension_ops): Update. (gdbpy_colorize): New function. * python/lib/gdb/__init__.py (colorize): New function. * extension.h (ext_lang_colorize): Declare. * extension.c (ext_lang_colorize): New function. * extension-priv.h (struct extension_language_ops) : New member. * cli/cli-style.c (_initialize_cli_style): Update help text. 2020-01-21 Luis Machado * aarch64-tdep.c (struct aarch64_displaced_step_closure) : Change type to bool. (aarch64_displaced_step_b_cond): Update cond to use bool type. (aarch64_displaced_step_cb): Likewise. (aarch64_displaced_step_tb): Likewise. 2020-01-21 Luis Machado * aarch64-tdep.c (aarch64_displaced_step_fixup): Add more debugging output. 2020-01-21 Luis Machado * aarch64-tdep.c (struct aarch64_displaced_step_closure ) : Adjust the documentation. (aarch64_displaced_step_fixup): Check if PC really moved before adjusting it. 2020-01-19 Tom Tromey * disasm.c (~gdb_disassembler): New destructor. (gdb_buffered_insn_length): Call disassemble_free_target. * disasm.h (class gdb_disassembler): Declare destructor. Use DISABLE_COPY_AND_ASSIGN. 2020-01-19 Tom Tromey * dwarf2read.c (abbrev_table_up): Move typedef earlier. (die_reader_func_ftype): Remove. (cutu_reader): New class. (dw2_get_file_names_reader): Remove "data" parameter. (dw2_get_file_names): Use cutu_reader. (create_debug_type_hash_table): Update. (read_cutu_die_from_dwo): Update comment. (lookup_dwo_unit): Add dwo_name parameter. (cutu_reader::init_tu_and_read_dwo_dies): Now a method. Remove die_reader_func_ftype and data parameters. (cutu_reader::cutu_reader): Rename from init_cutu_and_read_dies. Remove die_reader_func_ftype and data parameters. (~cutu_reader): New; from init_cutu_and_read_dies. (cutu_reader::cutu_reader): Rename from init_cutu_and_read_dies_no_follow. Remove die_reader_func_ftype and data parameters. (init_cutu_and_read_dies_simple): Remove. (struct process_psymtab_comp_unit_data): Remove. (process_psymtab_comp_unit_reader): Remove data parameter; add want_partial_unit and pretend_language parameters. (process_psymtab_comp_unit): Use cutu_reader. (build_type_psymtabs_reader): Remove data parameter. (build_type_psymtabs_1): Use cutu_reader. (process_skeletonless_type_unit): Likewise. (load_partial_comp_unit_reader): Remove. (load_partial_comp_unit): Use cutu_reader. (load_full_comp_unit_reader): Remove. (load_full_comp_unit): Use cutu_reader. (struct create_dwo_cu_data): Remove. (create_dwo_cu_reader): Remove datap parameter; add dwo_file and dwo_unit parameters. (create_cus_hash_table): Use cutu_reader. (struct dwarf2_read_addr_index_data): Remove. (dwarf2_read_addr_index_reader): Remove. (dwarf2_read_addr_index): Use cutu_reader. (read_signatured_type_reader): Remove. (read_signatured_type): Use cutu_reader. 2020-01-19 Tom Tromey * tui/tui.c (tui_show_assembly): Use tui_suppress_output. * tui/tui-wingeneral.h (class tui_suppress_output): New. (tui_wrefresh): Declare. * tui/tui-wingeneral.c (suppress_output): New global. (tui_suppress_output, ~tui_suppress_output): New constructor and destructor. (tui_wrefresh): New function. (tui_gen_win_info::refresh_window): Use tui_wrefresh. (tui_gen_win_info::make_window): Call wnoutrefresh when needed. * tui/tui-regs.h (struct tui_data_window) : Declare method. * tui/tui-regs.c (tui_data_window::erase_data_content): Call tui_wrefresh. (tui_data_window::no_refresh): New method. (tui_data_item_window::refresh_window): Call tui_wrefresh. (tui_reg_command): Use tui_suppress_output * tui/tui-layout.c (tui_set_layout): Use tui_suppress_output. * tui/tui-data.h (struct tui_gen_win_info) : New method. * tui/tui-command.c (tui_refresh_cmd_win): Call tui_wrefresh. 2020-01-19 Tom Tromey * tui/tui-winsource.c (tui_update_source_windows_with_line): Handle case where symtab is null. 2020-01-19 Simon Marchi * linux-fork.c (one_fork_p): Simplify. 2020-01-17 Simon Marchi * top.c (struct qt_args): Remove. (kill_or_detach): Change return type to void, replace `void *` parameter with a proper one. (print_inferior_quit_action): Likewise. (quit_confirm): Use range-based for loop to iterate over inferiors. (quit_force): Likewise. 2020-01-17 Simon Marchi * mi/mi-main.c (run_one_inferior): Change return type to void, replace `void *` parameter with proper parameters. (mi_cmd_exec_run): Use range-based loop to iterate over inferiors. (print_one_inferior): Change return type to void, replace `void *` parameter with proper parameters. (mi_cmd_list_thread_groups): Use range-based loop to iterate over inferiors. (get_other_inferior): Remove. (mi_cmd_remove_inferior): Use range-based loop to iterate over inferiors. 2020-01-17 Simon Marchi * mi/mi-interp.c (report_initial_inferior): Remove. (mi_interp::init): Use range-based for to iterate over inferiors. 2020-01-17 Simon Marchi * python/py-inferior.c (build_inferior_list): Remove. (gdbpy_ref): Use range-based for loop to iterate over inferiors. 2020-01-16 Christian Biesinger * btrace.c (btrace_compute_ftrace_1): Fix spelling error (Unkown). (btrace_stitch_trace): Likewise. * charset.c (intermediate_encoding): Likewise (vaild). * nat/linux-btrace.c (linux_read_pt): Likewise (Unkown). * python/py-record-btrace.c (struct PyMethodDef): Likewise (occurences). * record-btrace.c (record_btrace_print_conf): Likewise (unkown). 2020-01-16 Hannes Domani * windows-tdep.c (windows_get_tlb_type): Add rtl_user_process_parameters type. 2020-01-16 Pedro Alves Norbert Lange PR build/24805 * gdbsupport/gdb_proc_service.h (PS_EXPORT): New. (ps_get_thread_area, ps_getpid, ps_lcontinue, ps_lgetfpregs) (ps_lgetregs, ps_lsetfpregs, ps_lsetregs, ps_lstop, ps_pcontinue) (ps_pdread, ps_pdwrite, ps_pglobal_lookup, ps_pstop, ps_ptread) (ps_ptwrite, ps_lgetxregs, ps_lgetxregsize, ps_lsetxregs) (ps_plog): Redeclare exported functions with default visibility. 2020-01-16 Nitika Achra * dwarf2loc.c (decode_debug_loclists_addresses): Handle DW_LLE_base_addressx, DW_LLE_startx_length, DW_LLE_start_length. 2020-01-15 Simon Marchi * infcmd.c (post_create_inferior): Use get_thread_regcache instead of get_current_regcache. 2020-01-14 Tom Tromey PR symtab/12535: * python/python.c (gdbpy_decode_line): Treat empty string the same as no argument. 2020-01-14 Tom Tromey * Makefile.in (CLIBS): Remove second use of $(LIBIBERTY). 2020-01-14 Tom Tromey * nat/linux-btrace.c: Don't include . * nat/linux-ptrace.c: Don't include . * nat/x86-linux-dregs.c: Don't include . 2020-01-14 Tom Tromey * configure: Rebuild. * configure.ac: Move many checks to ../gdbsupport/common.m4. 2020-01-14 Tom Tromey * nat/x86-linux-dregs.c: Include configh.h. * nat/linux-ptrace.c: Include configh.h. * nat/linux-btrace.c: Include configh.h. * defs.h: Include config.h, bfd.h. * configure.ac: Don't source common.host. (CONFIG_OBS, CONFIG_SRCS): Remove gdbsupport files. * configure: Rebuild. * acinclude.m4: Update path. * Makefile.in (SUPPORT, LIBSUPPORT, INCSUPPORT): New variables. (CONFIG_SRC_SUBDIR): Remove gdbsupport. (INTERNAL_CFLAGS_BASE): Add INCSUPPORT. (CLIBS): Add LIBSUPPORT. (CDEPS): Likewise. (COMMON_SFILES): Remove gdbsupport files. (HFILES_NO_SRCDIR): Likewise. (stamp-version): Update path to create-version.sh. (ALLDEPFILES): Remove gdbsupport files. 2020-01-14 Tom Tromey * gdbsupport/common.m4 (GDB_AC_COMMON): Define WIN32APILIBS and USE_WIN32API when needed. * configure.ac (USE_WIN32API): Don't define. (WIN32LIBS): Use WIN32APILIBS. * configure: Rebuild. 2020-01-14 Tom Tromey * configure: Rebuild. * gdbsupport/common.m4 (GDB_AC_COMMON): Fix indentation. 2020-01-14 Bernd Edlinger * skip.c (skip_function_command): Make skip w/o arguments use the name of the inlined function if pc is inside any inlined function. 2020-01-14 Luis Machado * inf-ptrace.c (inf_ptrace_target::resume): Update comments. * infrun.c (resume_1): Likewise. (handle_inferior_event): Remove stale comment. * linux-nat.c (linux_nat_target::resume): Update comments. (save_stop_reason): Likewise. (linux_nat_filter_event): Likewise. * linux-nat.h (struct lwp_info) , : Likewise. 2020-01-13 Andrew Burgess * elfread.c (record_minimal_symbol): Set section index to 0 for non-allocatable sections. 2020-01-13 Ali Tamur * dwarf2read.c (dwarf2_debug_sections): Add debug_str_offsets sections. (dwarf2_cu): Add str_offsets_base field. Change the type of addr_base to gdb::optional. Update comments. (dwo_file): Update comments. (read_attribute): Update API to take an additional out parameter, need_reprocess. This is used to mark attributes that need other attributes (e.g. str_offsets_base) for correct computation which may not have been read yet. (read_attribute_reprocess): New function declaration. (read_addr_index): Likewise. (read_dwo_str_index): Likewise. (read_stub_str_index): Likewise. (dwarf2_per_objfile::locate_sections): Handle debug_str_offsets section. (lookup_addr_base): New function definition. (lookup_ranges_base): Likewise. (read_cutu_die_from_dwo): Use the new functions: lookup_addr_base, lookup_ranges_base. (init_cutu_and_read_dies): Update comments. (init_cutu_and_read_dies_no_follow): Change API to take parent compile unit. This is used to inherit parent's str_offsets_base and addr_base. Update comments. (init_cutu_and_read_dies_simple): Reflect API changes. (skip_one_die): Reflect API changes. Handle DW_FORM_rnglistx. (create_cus_hash_table): Change API to take parent compile unit. Reflect API changes. (open_and_init_dwo_file): Reflect API changes. (dwarf2_get_pc_bounds): Update comments. (dwarf2_record_block_ranges): Likewise. (read_full_die_1): Change implementation to reprocess attributes that need str_offsets_base and addr_base. (partial_die_info::read): Likewise. (read_attribute_reprocess): New function definition. (read_attribute_value): Change API to take an additional out parameter, need_reprocess. Handle DW_FORM_rnglistx. No longer trigger an error when a non-dwo compile unit has index based attributes. (read_attribute): Reflect API changes. (read_addr_index_1): Reflect API changes. Update comments. (dwarf2_read_addr_index_data): Reflect API changes. (dwarf2_read_addr_index): Likewise. (read_str_index): Change API and implementation. This becomes a helper to be used by the new string index related methods. Update error message and comments. (read_dwo_str_index): New function definition. (read_stub_str_index): Likewise. * dwarf2read.h (dwarf2_per_objfile): Add str_offsets field. * symfile.h (dwarf2_debug_sections): Likewise. * xcoffread.c (dwarf2_debug_sections): Likewise. 2020-01-13 Simon Marchi * gdbcore.h (struct core_fns) : Change core_reg_sect type to gdb_byte *. * arm-nbsd-nat.c (fetch_elfcore_registers): Likewise. * cris-tdep.c (fetch_core_registers): Likewise. * corelow.c (core_target::get_core_register_section): Change type of `contents` to gdb::byte_vector. 2020-01-13 Andrew Burgess * tui/tui-wingeneral.c (box_win): Position the title in the center of the border. 2020-01-13 Simon Marchi * corelow.c (core_target::get_core_register_section): Use std::vector instead of alloca. 2020-01-13 Simon Marchi * warning.m4: Add -Wmissing-declarations to build_warnings. * configure: Re-generate. 2020-01-13 Simon Marchi * python/python.c (init__gdb_module): Add declaration. 2020-01-13 Simon Marchi * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Add declaration. * aarch64-fbsd-tdep.c (_initialize_aarch64_fbsd_tdep): Add declaration. * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Add declaration. * aarch64-linux-tdep.c (_initialize_aarch64_linux_tdep): Add declaration. * aarch64-newlib-tdep.c (_initialize_aarch64_newlib_tdep): Add declaration. * aarch64-tdep.c (_initialize_aarch64_tdep): Add declaration. * ada-exp.y (_initialize_ada_exp): Add declaration. * ada-lang.c (_initialize_ada_language): Add declaration. * ada-tasks.c (_initialize_tasks): Add declaration. * agent.c (_initialize_agent): Add declaration. * aix-thread.c (_initialize_aix_thread): Add declaration. * alpha-bsd-nat.c (_initialize_alphabsd_nat): Add declaration. * alpha-linux-nat.c (_initialize_alpha_linux_nat): Add declaration. * alpha-linux-tdep.c (_initialize_alpha_linux_tdep): Add declaration. * alpha-nbsd-tdep.c (_initialize_alphanbsd_tdep): Add declaration. * alpha-obsd-tdep.c (_initialize_alphaobsd_tdep): Add declaration. * alpha-tdep.c (_initialize_alpha_tdep): Add declaration. * amd64-darwin-tdep.c (_initialize_amd64_darwin_tdep): Add declaration. * amd64-dicos-tdep.c (_initialize_amd64_dicos_tdep): Add declaration. * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Add declaration. * amd64-fbsd-tdep.c (_initialize_amd64fbsd_tdep): Add declaration. * amd64-linux-nat.c (_initialize_amd64_linux_nat): Add declaration. * amd64-linux-tdep.c (_initialize_amd64_linux_tdep): Add declaration. * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Add declaration. * amd64-nbsd-tdep.c (_initialize_amd64nbsd_tdep): Add declaration. * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Add declaration. * amd64-obsd-tdep.c (_initialize_amd64obsd_tdep): Add declaration. * amd64-sol2-tdep.c (_initialize_amd64_sol2_tdep): Add declaration. * amd64-tdep.c (_initialize_amd64_tdep): Add declaration. * amd64-windows-nat.c (_initialize_amd64_windows_nat): Add declaration. * amd64-windows-tdep.c (_initialize_amd64_windows_tdep): Add declaration. * annotate.c (_initialize_annotate): Add declaration. * arc-newlib-tdep.c (_initialize_arc_newlib_tdep): Add declaration. * arc-tdep.c (_initialize_arc_tdep): Add declaration. * arch-utils.c (_initialize_gdbarch_utils): Add declaration. * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Add declaration. * arm-fbsd-tdep.c (_initialize_arm_fbsd_tdep): Add declaration. * arm-linux-nat.c (_initialize_arm_linux_nat): Add declaration. * arm-linux-tdep.c (_initialize_arm_linux_tdep): Add declaration. * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Add declaration. * arm-nbsd-tdep.c (_initialize_arm_netbsd_tdep): Add declaration. * arm-obsd-tdep.c (_initialize_armobsd_tdep): Add declaration. * arm-pikeos-tdep.c (_initialize_arm_pikeos_tdep): Add declaration. * arm-symbian-tdep.c (_initialize_arm_symbian_tdep): Add declaration. * arm-tdep.c (_initialize_arm_tdep): Add declaration. * arm-wince-tdep.c (_initialize_arm_wince_tdep): Add declaration. * auto-load.c (_initialize_auto_load): Add declaration. * auxv.c (_initialize_auxv): Add declaration. * avr-tdep.c (_initialize_avr_tdep): Add declaration. * ax-gdb.c (_initialize_ax_gdb): Add declaration. * bfin-linux-tdep.c (_initialize_bfin_linux_tdep): Add declaration. * bfin-tdep.c (_initialize_bfin_tdep): Add declaration. * break-catch-sig.c (_initialize_break_catch_sig): Add declaration. * break-catch-syscall.c (_initialize_break_catch_syscall): Add declaration. * break-catch-throw.c (_initialize_break_catch_throw): Add declaration. * breakpoint.c (_initialize_breakpoint): Add declaration. * bsd-uthread.c (_initialize_bsd_uthread): Add declaration. * btrace.c (_initialize_btrace): Add declaration. * charset.c (_initialize_charset): Add declaration. * cli/cli-cmds.c (_initialize_cli_cmds): Add declaration. * cli/cli-dump.c (_initialize_cli_dump): Add declaration. * cli/cli-interp.c (_initialize_cli_interp): Add declaration. * cli/cli-logging.c (_initialize_cli_logging): Add declaration. * cli/cli-script.c (_initialize_cli_script): Add declaration. * cli/cli-style.c (_initialize_cli_style): Add declaration. * coff-pe-read.c (_initialize_coff_pe_read): Add declaration. * coffread.c (_initialize_coffread): Add declaration. * compile/compile-cplus-types.c (_initialize_compile_cplus_types): Add declaration. * compile/compile.c (_initialize_compile): Add declaration. * complaints.c (_initialize_complaints): Add declaration. * completer.c (_initialize_completer): Add declaration. * copying.c (_initialize_copying): Add declaration. * corefile.c (_initialize_core): Add declaration. * corelow.c (_initialize_corelow): Add declaration. * cp-abi.c (_initialize_cp_abi): Add declaration. * cp-namespace.c (_initialize_cp_namespace): Add declaration. * cp-support.c (_initialize_cp_support): Add declaration. * cp-valprint.c (_initialize_cp_valprint): Add declaration. * cris-linux-tdep.c (_initialize_cris_linux_tdep): Add declaration. * cris-tdep.c (_initialize_cris_tdep): Add declaration. * csky-linux-tdep.c (_initialize_csky_linux_tdep): Add declaration. * csky-tdep.c (_initialize_csky_tdep): Add declaration. * ctfread.c (_initialize_ctfread): Add declaration. * d-lang.c (_initialize_d_language): Add declaration. * darwin-nat-info.c (_initialize_darwin_info_commands): Add declaration. * darwin-nat.c (_initialize_darwin_nat): Add declaration. * dbxread.c (_initialize_dbxread): Add declaration. * dcache.c (_initialize_dcache): Add declaration. * disasm-selftests.c (_initialize_disasm_selftests): Add declaration. * disasm.c (_initialize_disasm): Add declaration. * dtrace-probe.c (_initialize_dtrace_probe): Add declaration. * dummy-frame.c (_initialize_dummy_frame): Add declaration. * dwarf-index-cache.c (_initialize_index_cache): Add declaration. * dwarf-index-write.c (_initialize_dwarf_index_write): Add declaration. * dwarf2-frame-tailcall.c (_initialize_tailcall_frame): Add declaration. * dwarf2-frame.c (_initialize_dwarf2_frame): Add declaration. * dwarf2expr.c (_initialize_dwarf2expr): Add declaration. * dwarf2loc.c (_initialize_dwarf2loc): Add declaration. * dwarf2read.c (_initialize_dwarf2_read): Add declaration. * elfread.c (_initialize_elfread): Add declaration. * exec.c (_initialize_exec): Add declaration. * extension.c (_initialize_extension): Add declaration. * f-lang.c (_initialize_f_language): Add declaration. * f-valprint.c (_initialize_f_valprint): Add declaration. * fbsd-nat.c (_initialize_fbsd_nat): Add declaration. * fbsd-tdep.c (_initialize_fbsd_tdep): Add declaration. * filesystem.c (_initialize_filesystem): Add declaration. * findcmd.c (_initialize_mem_search): Add declaration. * findvar.c (_initialize_findvar): Add declaration. * fork-child.c (_initialize_fork_child): Add declaration. * frame-base.c (_initialize_frame_base): Add declaration. * frame-unwind.c (_initialize_frame_unwind): Add declaration. * frame.c (_initialize_frame): Add declaration. * frv-linux-tdep.c (_initialize_frv_linux_tdep): Add declaration. * frv-tdep.c (_initialize_frv_tdep): Add declaration. * ft32-tdep.c (_initialize_ft32_tdep): Add declaration. * gcore.c (_initialize_gcore): Add declaration. * gdb-demangle.c (_initialize_gdb_demangle): Add declaration. * gdb_bfd.c (_initialize_gdb_bfd): Add declaration. * gdbarch-selftests.c (_initialize_gdbarch_selftests): Add declaration. * gdbarch.c (_initialize_gdbarch): Add declaration. * gdbtypes.c (_initialize_gdbtypes): Add declaration. * gnu-nat.c (_initialize_gnu_nat): Add declaration. * gnu-v2-abi.c (_initialize_gnu_v2_abi): Add declaration. * gnu-v3-abi.c (_initialize_gnu_v3_abi): Add declaration. * go-lang.c (_initialize_go_language): Add declaration. * go32-nat.c (_initialize_go32_nat): Add declaration. * guile/guile.c (_initialize_guile): Add declaration. * h8300-tdep.c (_initialize_h8300_tdep): Add declaration. * hppa-linux-nat.c (_initialize_hppa_linux_nat): Add declaration. * hppa-linux-tdep.c (_initialize_hppa_linux_tdep): Add declaration. * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Add declaration. * hppa-nbsd-tdep.c (_initialize_hppanbsd_tdep): Add declaration. * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Add declaration. * hppa-obsd-tdep.c (_initialize_hppabsd_tdep): Add declaration. * hppa-tdep.c (_initialize_hppa_tdep): Add declaration. * i386-bsd-nat.c (_initialize_i386bsd_nat): Add declaration. * i386-cygwin-tdep.c (_initialize_i386_cygwin_tdep): Add declaration. * i386-darwin-nat.c (_initialize_i386_darwin_nat): Add declaration. * i386-darwin-tdep.c (_initialize_i386_darwin_tdep): Add declaration. * i386-dicos-tdep.c (_initialize_i386_dicos_tdep): Add declaration. * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Add declaration. * i386-fbsd-tdep.c (_initialize_i386fbsd_tdep): Add declaration. * i386-gnu-nat.c (_initialize_i386gnu_nat): Add declaration. * i386-gnu-tdep.c (_initialize_i386gnu_tdep): Add declaration. * i386-go32-tdep.c (_initialize_i386_go32_tdep): Add declaration. * i386-linux-nat.c (_initialize_i386_linux_nat): Add declaration. * i386-linux-tdep.c (_initialize_i386_linux_tdep): Add declaration. * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Add declaration. * i386-nbsd-tdep.c (_initialize_i386nbsd_tdep): Add declaration. * i386-nto-tdep.c (_initialize_i386nto_tdep): Add declaration. * i386-obsd-nat.c (_initialize_i386obsd_nat): Add declaration. * i386-obsd-tdep.c (_initialize_i386obsd_tdep): Add declaration. * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Add declaration. * i386-sol2-tdep.c (_initialize_i386_sol2_tdep): Add declaration. * i386-tdep.c (_initialize_i386_tdep): Add declaration. * i386-windows-nat.c (_initialize_i386_windows_nat): Add declaration. * ia64-libunwind-tdep.c (_initialize_libunwind_frame): Add declaration. * ia64-linux-nat.c (_initialize_ia64_linux_nat): Add declaration. * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Add declaration. * ia64-tdep.c (_initialize_ia64_tdep): Add declaration. * ia64-vms-tdep.c (_initialize_ia64_vms_tdep): Add declaration. * infcall.c (_initialize_infcall): Add declaration. * infcmd.c (_initialize_infcmd): Add declaration. * inflow.c (_initialize_inflow): Add declaration. * infrun.c (_initialize_infrun): Add declaration. * interps.c (_initialize_interpreter): Add declaration. * iq2000-tdep.c (_initialize_iq2000_tdep): Add declaration. * jit.c (_initialize_jit): Add declaration. * language.c (_initialize_language): Add declaration. * linux-fork.c (_initialize_linux_fork): Add declaration. * linux-nat.c (_initialize_linux_nat): Add declaration. * linux-tdep.c (_initialize_linux_tdep): Add declaration. * linux-thread-db.c (_initialize_thread_db): Add declaration. * lm32-tdep.c (_initialize_lm32_tdep): Add declaration. * m2-lang.c (_initialize_m2_language): Add declaration. * m32c-tdep.c (_initialize_m32c_tdep): Add declaration. * m32r-linux-nat.c (_initialize_m32r_linux_nat): Add declaration. * m32r-linux-tdep.c (_initialize_m32r_linux_tdep): Add declaration. * m32r-tdep.c (_initialize_m32r_tdep): Add declaration. * m68hc11-tdep.c (_initialize_m68hc11_tdep): Add declaration. * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Add declaration. * m68k-bsd-tdep.c (_initialize_m68kbsd_tdep): Add declaration. * m68k-linux-nat.c (_initialize_m68k_linux_nat): Add declaration. * m68k-linux-tdep.c (_initialize_m68k_linux_tdep): Add declaration. * m68k-tdep.c (_initialize_m68k_tdep): Add declaration. * machoread.c (_initialize_machoread): Add declaration. * macrocmd.c (_initialize_macrocmd): Add declaration. * macroscope.c (_initialize_macroscope): Add declaration. * maint-test-options.c (_initialize_maint_test_options): Add declaration. * maint-test-settings.c (_initialize_maint_test_settings): Add declaration. * maint.c (_initialize_maint_cmds): Add declaration. * mdebugread.c (_initialize_mdebugread): Add declaration. * memattr.c (_initialize_mem): Add declaration. * mep-tdep.c (_initialize_mep_tdep): Add declaration. * mi/mi-cmd-env.c (_initialize_mi_cmd_env): Add declaration. * mi/mi-cmds.c (_initialize_mi_cmds): Add declaration. * mi/mi-interp.c (_initialize_mi_interp): Add declaration. * mi/mi-main.c (_initialize_mi_main): Add declaration. * microblaze-linux-tdep.c (_initialize_microblaze_linux_tdep): Add declaration. * microblaze-tdep.c (_initialize_microblaze_tdep): Add declaration. * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Add declaration. * mips-fbsd-tdep.c (_initialize_mips_fbsd_tdep): Add declaration. * mips-linux-nat.c (_initialize_mips_linux_nat): Add declaration. * mips-linux-tdep.c (_initialize_mips_linux_tdep): Add declaration. * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Add declaration. * mips-nbsd-tdep.c (_initialize_mipsnbsd_tdep): Add declaration. * mips-sde-tdep.c (_initialize_mips_sde_tdep): Add declaration. * mips-tdep.c (_initialize_mips_tdep): Add declaration. * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Add declaration. * mips64-obsd-tdep.c (_initialize_mips64obsd_tdep): Add declaration. * mipsread.c (_initialize_mipsread): Add declaration. * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Add declaration. * mn10300-tdep.c (_initialize_mn10300_tdep): Add declaration. * moxie-tdep.c (_initialize_moxie_tdep): Add declaration. * msp430-tdep.c (_initialize_msp430_tdep): Add declaration. * nds32-tdep.c (_initialize_nds32_tdep): Add declaration. * nios2-linux-tdep.c (_initialize_nios2_linux_tdep): Add declaration. * nios2-tdep.c (_initialize_nios2_tdep): Add declaration. * nto-procfs.c (_initialize_procfs): Add declaration. * objc-lang.c (_initialize_objc_language): Add declaration. * observable.c (_initialize_observer): Add declaration. * opencl-lang.c (_initialize_opencl_language): Add declaration. * or1k-linux-tdep.c (_initialize_or1k_linux_tdep): Add declaration. * or1k-tdep.c (_initialize_or1k_tdep): Add declaration. * osabi.c (_initialize_gdb_osabi): Add declaration. * osdata.c (_initialize_osdata): Add declaration. * p-valprint.c (_initialize_pascal_valprint): Add declaration. * parse.c (_initialize_parse): Add declaration. * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Add declaration. * ppc-fbsd-tdep.c (_initialize_ppcfbsd_tdep): Add declaration. * ppc-linux-nat.c (_initialize_ppc_linux_nat): Add declaration. * ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Add declaration. * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Add declaration. * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Add declaration. * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Add declaration. * ppc-obsd-tdep.c (_initialize_ppcobsd_tdep): Add declaration. * printcmd.c (_initialize_printcmd): Add declaration. * probe.c (_initialize_probe): Add declaration. * proc-api.c (_initialize_proc_api): Add declaration. * proc-events.c (_initialize_proc_events): Add declaration. * proc-service.c (_initialize_proc_service): Add declaration. * procfs.c (_initialize_procfs): Add declaration. * producer.c (_initialize_producer): Add declaration. * psymtab.c (_initialize_psymtab): Add declaration. * python/python.c (_initialize_python): Add declaration. * ravenscar-thread.c (_initialize_ravenscar): Add declaration. * record-btrace.c (_initialize_record_btrace): Add declaration. * record-full.c (_initialize_record_full): Add declaration. * record.c (_initialize_record): Add declaration. * regcache-dump.c (_initialize_regcache_dump): Add declaration. * regcache.c (_initialize_regcache): Add declaration. * reggroups.c (_initialize_reggroup): Add declaration. * remote-notif.c (_initialize_notif): Add declaration. * remote-sim.c (_initialize_remote_sim): Add declaration. * remote.c (_initialize_remote): Add declaration. * reverse.c (_initialize_reverse): Add declaration. * riscv-fbsd-nat.c (_initialize_riscv_fbsd_nat): Add declaration. * riscv-fbsd-tdep.c (_initialize_riscv_fbsd_tdep): Add declaration. * riscv-linux-nat.c (_initialize_riscv_linux_nat): Add declaration. * riscv-linux-tdep.c (_initialize_riscv_linux_tdep): Add declaration. * riscv-tdep.c (_initialize_riscv_tdep): Add declaration. * rl78-tdep.c (_initialize_rl78_tdep): Add declaration. * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Add declaration. * rs6000-lynx178-tdep.c (_initialize_rs6000_lynx178_tdep): Add declaration. * rs6000-nat.c (_initialize_rs6000_nat): Add declaration. * rs6000-tdep.c (_initialize_rs6000_tdep): Add declaration. * run-on-main-thread.c (_initialize_run_on_main_thread): Add declaration. * rust-exp.y (_initialize_rust_exp): Add declaration. * rx-tdep.c (_initialize_rx_tdep): Add declaration. * s12z-tdep.c (_initialize_s12z_tdep): Add declaration. * s390-linux-nat.c (_initialize_s390_nat): Add declaration. * s390-linux-tdep.c (_initialize_s390_linux_tdep): Add declaration. * s390-tdep.c (_initialize_s390_tdep): Add declaration. * score-tdep.c (_initialize_score_tdep): Add declaration. * ser-go32.c (_initialize_ser_dos): Add declaration. * ser-mingw.c (_initialize_ser_windows): Add declaration. * ser-pipe.c (_initialize_ser_pipe): Add declaration. * ser-tcp.c (_initialize_ser_tcp): Add declaration. * ser-uds.c (_initialize_ser_socket): Add declaration. * ser-unix.c (_initialize_ser_hardwire): Add declaration. * serial.c (_initialize_serial): Add declaration. * sh-linux-tdep.c (_initialize_sh_linux_tdep): Add declaration. * sh-nbsd-nat.c (_initialize_shnbsd_nat): Add declaration. * sh-nbsd-tdep.c (_initialize_shnbsd_tdep): Add declaration. * sh-tdep.c (_initialize_sh_tdep): Add declaration. * skip.c (_initialize_step_skip): Add declaration. * sol-thread.c (_initialize_sol_thread): Add declaration. * solib-aix.c (_initialize_solib_aix): Add declaration. * solib-darwin.c (_initialize_darwin_solib): Add declaration. * solib-dsbt.c (_initialize_dsbt_solib): Add declaration. * solib-frv.c (_initialize_frv_solib): Add declaration. * solib-svr4.c (_initialize_svr4_solib): Add declaration. * solib-target.c (_initialize_solib_target): Add declaration. * solib.c (_initialize_solib): Add declaration. * source-cache.c (_initialize_source_cache): Add declaration. * source.c (_initialize_source): Add declaration. * sparc-linux-nat.c (_initialize_sparc_linux_nat): Add declaration. * sparc-linux-tdep.c (_initialize_sparc_linux_tdep): Add declaration. * sparc-nat.c (_initialize_sparc_nat): Add declaration. * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Add declaration. * sparc-nbsd-tdep.c (_initialize_sparcnbsd_tdep): Add declaration. * sparc-obsd-tdep.c (_initialize_sparc32obsd_tdep): Add declaration. * sparc-sol2-tdep.c (_initialize_sparc_sol2_tdep): Add declaration. * sparc-tdep.c (_initialize_sparc_tdep): Add declaration. * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Add declaration. * sparc64-fbsd-tdep.c (_initialize_sparc64fbsd_tdep): Add declaration. * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Add declaration. * sparc64-linux-tdep.c (_initialize_sparc64_linux_tdep): Add declaration. * sparc64-nat.c (_initialize_sparc64_nat): Add declaration. * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Add declaration. * sparc64-nbsd-tdep.c (_initialize_sparc64nbsd_tdep): Add declaration. * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Add declaration. * sparc64-obsd-tdep.c (_initialize_sparc64obsd_tdep): Add declaration. * sparc64-sol2-tdep.c (_initialize_sparc64_sol2_tdep): Add declaration. * sparc64-tdep.c (_initialize_sparc64_adi_tdep): Add declaration. * stabsread.c (_initialize_stabsread): Add declaration. * stack.c (_initialize_stack): Add declaration. * stap-probe.c (_initialize_stap_probe): Add declaration. * std-regs.c (_initialize_frame_reg): Add declaration. * symfile-debug.c (_initialize_symfile_debug): Add declaration. * symfile-mem.c (_initialize_symfile_mem): Add declaration. * symfile.c (_initialize_symfile): Add declaration. * symmisc.c (_initialize_symmisc): Add declaration. * symtab.c (_initialize_symtab): Add declaration. * target.c (_initialize_target): Add declaration. * target-connection.c (_initialize_target_connection): Add declaration. * target-dcache.c (_initialize_target_dcache): Add declaration. * target-descriptions.c (_initialize_target_descriptions): Add declaration. * thread.c (_initialize_thread): Add declaration. * tic6x-linux-tdep.c (_initialize_tic6x_linux_tdep): Add declaration. * tic6x-tdep.c (_initialize_tic6x_tdep): Add declaration. * tilegx-linux-nat.c (_initialize_tile_linux_nat): Add declaration. * tilegx-linux-tdep.c (_initialize_tilegx_linux_tdep): Add declaration. * tilegx-tdep.c (_initialize_tilegx_tdep): Add declaration. * tracectf.c (_initialize_ctf): Add declaration. * tracefile-tfile.c (_initialize_tracefile_tfile): Add declaration. * tracefile.c (_initialize_tracefile): Add declaration. * tracepoint.c (_initialize_tracepoint): Add declaration. * tui/tui-hooks.c (_initialize_tui_hooks): Add declaration. * tui/tui-interp.c (_initialize_tui_interp): Add declaration. * tui/tui-layout.c (_initialize_tui_layout): Add declaration. * tui/tui-regs.c (_initialize_tui_regs): Add declaration. * tui/tui-stack.c (_initialize_tui_stack): Add declaration. * tui/tui-win.c (_initialize_tui_win): Add declaration. * tui/tui.c (_initialize_tui): Add declaration. * typeprint.c (_initialize_typeprint): Add declaration. * ui-style.c (_initialize_ui_style): Add declaration. * unittests/array-view-selftests.c (_initialize_array_view_selftests): Add declaration. * unittests/child-path-selftests.c (_initialize_child_path_selftests): Add declaration. * unittests/cli-utils-selftests.c (_initialize_cli_utils_selftests): Add declaration. * unittests/common-utils-selftests.c (_initialize_common_utils_selftests): Add declaration. * unittests/copy_bitwise-selftests.c (_initialize_copy_bitwise_utils_selftests): Add declaration. * unittests/environ-selftests.c (_initialize_environ_selftests): Add declaration. * unittests/filtered_iterator-selftests.c (_initialize_filtered_iterator_selftests): Add declaration. * unittests/format_pieces-selftests.c (_initialize_format_pieces_selftests): Add declaration. * unittests/function-view-selftests.c (_initialize_function_view_selftests): Add declaration. * unittests/help-doc-selftests.c (_initialize_help_doc_selftests): Add declaration. * unittests/lookup_name_info-selftests.c (_initialize_lookup_name_info_selftests): Add declaration. * unittests/main-thread-selftests.c (_initialize_main_thread_selftests): Add declaration. * unittests/memory-map-selftests.c (_initialize_memory_map_selftests): Add declaration. * unittests/memrange-selftests.c (_initialize_memrange_selftests): Add declaration. * unittests/mkdir-recursive-selftests.c (_initialize_mkdir_recursive_selftests): Add declaration. * unittests/observable-selftests.c (_initialize_observer_selftest): Add declaration. * unittests/offset-type-selftests.c (_initialize_offset_type_selftests): Add declaration. * unittests/optional-selftests.c (_initialize_optional_selftests): Add declaration. * unittests/parse-connection-spec-selftests.c (_initialize_parse_connection_spec_selftests): Add declaration. * unittests/rsp-low-selftests.c (_initialize_rsp_low_selftests): Add declaration. * unittests/scoped_fd-selftests.c (_initialize_scoped_fd_selftests): Add declaration. * unittests/scoped_mmap-selftests.c (_initialize_scoped_mmap_selftests): Add declaration. * unittests/scoped_restore-selftests.c (_initialize_scoped_restore_selftests): Add declaration. * unittests/string_view-selftests.c (_initialize_string_view_selftests): Add declaration. * unittests/style-selftests.c (_initialize_style_selftest): Add declaration. * unittests/tracepoint-selftests.c (_initialize_tracepoint_selftests): Add declaration. * unittests/tui-selftests.c (_initialize_tui_selftest): Add declaration. * unittests/unpack-selftests.c (_initialize_unpack_selftests): Add declaration. * unittests/utils-selftests.c (_initialize_utils_selftests): Add declaration. * unittests/vec-utils-selftests.c (_initialize_vec_utils_selftests): Add declaration. * unittests/xml-utils-selftests.c (_initialize_xml_utils): Add declaration. * user-regs.c (_initialize_user_regs): Add declaration. * utils.c (_initialize_utils): Add declaration. * v850-tdep.c (_initialize_v850_tdep): Add declaration. * valops.c (_initialize_valops): Add declaration. * valprint.c (_initialize_valprint): Add declaration. * value.c (_initialize_values): Add declaration. * varobj.c (_initialize_varobj): Add declaration. * vax-bsd-nat.c (_initialize_vaxbsd_nat): Add declaration. * vax-nbsd-tdep.c (_initialize_vaxnbsd_tdep): Add declaration. * vax-tdep.c (_initialize_vax_tdep): Add declaration. * windows-nat.c (_initialize_windows_nat): Add declaration. (_initialize_check_for_gdb_ini): Add declaration. (_initialize_loadable): Add declaration. * windows-tdep.c (_initialize_windows_tdep): Add declaration. * x86-bsd-nat.c (_initialize_x86_bsd_nat): Add declaration. * x86-linux-nat.c (_initialize_x86_linux_nat): Add declaration. * xcoffread.c (_initialize_xcoffread): Add declaration. * xml-support.c (_initialize_xml_support): Add declaration. * xstormy16-tdep.c (_initialize_xstormy16_tdep): Add declaration. * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Add declaration. * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Add declaration. * xtensa-tdep.c (_initialize_xtensa_tdep): Add declaration. 2020-01-13 Simon Marchi * regformats/regdat.sh: Generate declaration for init function. 2020-01-13 Simon Marchi * remote-sim.c (next_pid, INITIAL_PID, sim_inferior_data): Move up. (gdbsim_target) : New methods. (get_sim_inferior_data_by_ptid): Move to gdbsim_target, pass down target to find_inferior_pid. (gdbsim_target::fetch_registers, gdbsim_target::store_registers): Pass down target to find_inferior_ptid. (gdbsim_target::create_inferior): Pass down target to add_thread_silent. (gdbsim_close_inferior): Move to gdbsim_close_inferior, pass target down to find_inferior_ptid and switch_to_thread. (gdbsim_target::close): Update to call close_one_inferior. (struct resume_data): Remove. (gdbsim_resume_inferior): Move to gdbsim_target. Take arguments directly, rather than through a void pointer. (gdbsim_target::resume): Update to call resume_one_inferior. 2020-01-12 Simon Marchi * gdbsupport/gdb_wait.c: Include gdb_wait.h. 2020-01-12 Pedro Alves * bsd-kvm.c (bsd_kvm_target::close): Call exit_inferior_silent directly for the current inferior instead of discard_all_inferiors. (discard_all_inferiors): Delete. 2020-01-11 Tom Tromey * tui/tui-wingeneral.c (box_win): Check cli_styling. * tui/tui-winsource.c (tui_source_window_base::refill): Use deprecated_safe_get_selected_frame. 2020-01-10 Tankut Baris Aktemur * inferior.c (print_inferior): Switch inferior before printing it. 2020-01-10 Aleksandar Paunovic Pedro Alves * progspace-and-thread.c (switch_to_program_space_and_thread): Assert there's an inferior for PSPACE. Use switch_to_inferior_no_thread to switch the inferior too. * progspace.c (program_space::~program_space): Call clear_symtab_users here, with SYMFILE_DEFER_BP_RESET. (program_space::free_all_objfiles): Don't call clear_symtab_users here. * symfile.c (symbol_file_clear): Call clear_symtab_users here. 2020-01-10 Pedro Alves * NEWS: Mention multi-target debugging, "info connections", and "add-inferior -no-connection". 2020-01-10 Pedro Alves * infrun.c: Include "target-connection.h". (check_multi_target_resumption): New. (proceed): Call it. * target-connection.c (make_target_connection_string): Make extern. * target-connection.h (make_target_connection_string): Declare. 2020-01-10 Pedro Alves * Makefile.in (COMMON_SFILES): Add target-connection.c. * inferior.c (uiout_field_connection): New function. (print_inferior): Add new "connection-id" column. (add_inferior_command): Show connection number/string of added inferior. * process-stratum-target.h (process_stratum_target::connection_string): New virtual method. (process_stratum_target::connection_number): New field. * remote.c (remote_target::connection_string): New override. * target-connection.c: New file. * target-connection.h: New file. * target.c (decref_target): Remove process_stratum targets from the connection list. (target_stack::push): Add process_stratum targets to the connection list. 2020-01-10 Pedro Alves Revert: 2016-04-12 Pedro Alves * serial.c (serial_open, serial_fdopen_ops, do_serial_close): Remove references to name. * serial.h (struct serial) : Delete. 2020-01-10 Pedro Alves * gdbarch-selftests.c (register_to_value_test): Remove "target already pushed" check. 2020-01-10 Pedro Alves John Baldwin * aarch64-linux-nat.c (aarch64_linux_nat_target::thread_architecture): Adjust. * ada-tasks.c (print_ada_task_info): Adjust find_thread_ptid call. (task_command_1): Likewise. * aix-thread.c (sync_threadlists, aix_thread_target::resume) (aix_thread_target::wait, aix_thread_target::fetch_registers) (aix_thread_target::store_registers) (aix_thread_target::thread_alive): Adjust. * amd64-fbsd-tdep.c: Include "inferior.h". (amd64fbsd_get_thread_local_address): Pass down target. * amd64-linux-nat.c (ps_get_thread_area): Use ps_prochandle thread's gdbarch instead of target_gdbarch. * break-catch-sig.c (signal_catchpoint_print_it): Adjust call to get_last_target_status. * break-catch-syscall.c (print_it_catch_syscall): Likewise. * breakpoint.c (breakpoints_should_be_inserted_now): Consider all inferiors. (update_inserted_breakpoint_locations): Skip if inferiors with no execution. (update_global_location_list): When handling moribund locations, find representative inferior for location's pspace, and use thread count of its process_stratum target. * bsd-kvm.c (bsd_kvm_target_open): Pass target down. * bsd-uthread.c (bsd_uthread_target::wait): Use as_process_stratum_target and adjust thread_change_ptid and add_thread calls. (bsd_uthread_target::update_thread_list): Use as_process_stratum_target and adjust find_thread_ptid, thread_change_ptid and add_thread calls. * btrace.c (maint_btrace_packet_history_cmd): Adjust find_thread_ptid call. * corelow.c (add_to_thread_list): Adjust add_thread call. (core_target_open): Adjust add_thread_silent and thread_count calls. (core_target::pid_to_str): Adjust find_inferior_ptid call. * ctf.c (ctf_target_open): Adjust add_thread_silent call. * event-top.c (async_disconnect): Pop targets from all inferiors. * exec.c (add_target_sections): Push exec target on all inferiors sharing the program space. (remove_target_sections): Remove the exec target from all inferiors sharing the program space. (exec_on_vfork): New. * exec.h (exec_on_vfork): Declare. * fbsd-nat.c (fbsd_add_threads): Add fbsd_nat_target parameter. Pass it down. (fbsd_nat_target::update_thread_list): Adjust. (fbsd_nat_target::resume): Adjust. (fbsd_handle_debug_trap): Add fbsd_nat_target parameter. Pass it down. (fbsd_nat_target::wait, fbsd_nat_target::post_attach): Adjust. * fbsd-tdep.c (fbsd_corefile_thread): Adjust get_thread_arch_regcache call. * fork-child.c (gdb_startup_inferior): Pass target down to startup_inferior and set_executing. * gdbthread.h (struct process_stratum_target): Forward declare. (add_thread, add_thread_silent, add_thread_with_info) (in_thread_list): Add process_stratum_target parameter. (find_thread_ptid(inferior*, ptid_t)): New overload. (find_thread_ptid, thread_change_ptid): Add process_stratum_target parameter. (all_threads()): Delete overload. (all_threads, all_non_exited_threads): Add process_stratum_target parameter. (all_threads_safe): Use brace initialization. (thread_count): Add process_stratum_target parameter. (set_resumed, set_running, set_stop_requested, set_executing) (threads_are_executing, finish_thread_state): Add process_stratum_target parameter. (switch_to_thread): Use is_current_thread. * i386-fbsd-tdep.c: Include "inferior.h". (i386fbsd_get_thread_local_address): Pass down target. * i386-linux-nat.c (i386_linux_nat_target::low_resume): Adjust. * inf-child.c (inf_child_target::maybe_unpush_target): Remove have_inferiors check. * inf-ptrace.c (inf_ptrace_target::create_inferior) (inf_ptrace_target::attach): Adjust. * infcall.c (run_inferior_call): Adjust. * infcmd.c (run_command_1): Pass target to scoped_finish_thread_state. (proceed_thread_callback): Skip inferiors with no execution. (continue_command): Rename 'all_threads' local to avoid hiding 'all_threads' function. Adjust get_last_target_status call. (prepare_one_step): Adjust set_running call. (signal_command): Use user_visible_resume_target. Compare thread pointers instead of inferior_ptid. (info_program_command): Adjust to pass down target. (attach_command): Mark target's 'thread_executing' flag. (stop_current_target_threads_ns): New, factored out from ... (interrupt_target_1): ... this. Switch inferior before making target calls. * inferior-iter.h (struct all_inferiors_iterator, struct all_inferiors_range) (struct all_inferiors_safe_range) (struct all_non_exited_inferiors_range): Filter on process_stratum_target too. Remove explicit. * inferior.c (inferior::inferior): Push dummy target on target stack. (find_inferior_pid, find_inferior_ptid, number_of_live_inferiors): Add process_stratum_target parameter, and pass it down. (have_live_inferiors): Adjust. (switch_to_inferior_and_push_target): New. (add_inferior_command, clone_inferior_command): Handle "-no-connection" parameter. Use switch_to_inferior_and_push_target. (_initialize_inferior): Mention "-no-connection" option in the help of "add-inferior" and "clone-inferior" commands. * inferior.h: Include "process-stratum-target.h". (interrupt_target_1): Use bool. (struct inferior) : New. (discard_all_inferiors): Delete. (find_inferior_pid, find_inferior_ptid, number_of_live_inferiors) (all_inferiors, all_non_exited_inferiors): Add process_stratum_target parameter. * infrun.c: Include "gdb_select.h" and . (target_last_proc_target): New global. (follow_fork_inferior): Push target on new inferior. Pass target to add_thread_silent. Call exec_on_vfork. Handle target's reference count. (follow_fork): Adjust get_last_target_status call. Also consider target. (follow_exec): Push target on new inferior. (struct execution_control_state) : New field. (user_visible_resume_target): New. (do_target_resume): Call target_async. (resume_1): Set target's threads_executing flag. Consider resume target. (commit_resume_all_targets): New. (proceed): Also consider resume target. Skip threads of inferiors with no execution. Commit resumtion in all targets. (start_remote): Pass current inferior to wait_for_inferior. (infrun_thread_stop_requested): Consider target as well. Pass thread_info pointer to clear_inline_frame_state instead of ptid. (infrun_thread_thread_exit): Consider target as well. (random_pending_event_thread): New inferior parameter. Use it. (do_target_wait): Rename to ... (do_target_wait_1): ... this. Add inferior parameter, and pass it down. (threads_are_resumed_pending_p, do_target_wait): New. (prepare_for_detach): Adjust calls. (wait_for_inferior): New inferior parameter. Handle it. Use do_target_wait_1 instead of do_target_wait. (fetch_inferior_event): Adjust. Switch to representative inferior. Pass target down. (set_last_target_status): Add process_stratum_target parameter. Save target in global. (get_last_target_status): Add process_stratum_target parameter and handle it. (nullify_last_target_wait_ptid): Clear 'target_last_proc_target'. (context_switch): Check inferior_ptid == null_ptid before calling inferior_thread(). (get_inferior_stop_soon): Pass down target. (wait_one): Rename to ... (poll_one_curr_target): ... this. (struct wait_one_event): New. (wait_one): New. (stop_all_threads): Adjust. (handle_no_resumed, handle_inferior_event): Adjust to consider the event's target. (switch_back_to_stepped_thread): Also consider target. (print_stop_event): Update. (normal_stop): Update. Also consider the resume target. * infrun.h (wait_for_inferior): Remove declaration. (user_visible_resume_target): New declaration. (get_last_target_status, set_last_target_status): New process_stratum_target parameter. * inline-frame.c (clear_inline_frame_state(ptid_t)): Add process_stratum_target parameter, and use it. (clear_inline_frame_state (thread_info*)): New. * inline-frame.c (clear_inline_frame_state(ptid_t)): Add process_stratum_target parameter. (clear_inline_frame_state (thread_info*)): Declare. * linux-fork.c (delete_checkpoint_command): Pass target down to find_thread_ptid. (checkpoint_command): Adjust. * linux-nat.c (linux_nat_target::follow_fork): Switch to thread instead of just tweaking inferior_ptid. (linux_nat_switch_fork): Pass target down to thread_change_ptid. (exit_lwp): Pass target down to find_thread_ptid. (attach_proc_task_lwp_callback): Pass target down to add_thread/set_running/set_executing. (linux_nat_target::attach): Pass target down to thread_change_ptid. (get_detach_signal): Pass target down to find_thread_ptid. Consider last target status's target. (linux_resume_one_lwp_throw, resume_lwp) (linux_handle_syscall_trap, linux_handle_extended_wait, wait_lwp) (stop_wait_callback, save_stop_reason, linux_nat_filter_event) (linux_nat_wait_1, resume_stopped_resumed_lwps): Pass target down. (linux_nat_target::async_wait_fd): New. (linux_nat_stop_lwp, linux_nat_target::thread_address_space): Pass target down. * linux-nat.h (linux_nat_target::async_wait_fd): Declare. * linux-tdep.c (get_thread_arch_regcache): Pass target down. * linux-thread-db.c (struct thread_db_info::process_target): New field. (add_thread_db_info): Save target. (get_thread_db_info): New process_stratum_target parameter. Also match target. (delete_thread_db_info): New process_stratum_target parameter. Also match target. (thread_from_lwp): Adjust to pass down target. (thread_db_notice_clone): Pass down target. (check_thread_db_callback): Pass down target. (try_thread_db_load_1): Always push the thread_db target. (try_thread_db_load, record_thread): Pass target down. (thread_db_target::detach): Pass target down. Always unpush the thread_db target. (thread_db_target::wait, thread_db_target::mourn_inferior): Pass target down. Always unpush the thread_db target. (find_new_threads_callback, thread_db_find_new_threads_2) (thread_db_target::update_thread_list): Pass target down. (thread_db_target::pid_to_str): Pass current inferior down. (thread_db_target::get_thread_local_address): Pass target down. (thread_db_target::resume, maintenance_check_libthread_db): Pass target down. * nto-procfs.c (nto_procfs_target::update_thread_list): Adjust. * procfs.c (procfs_target::procfs_init_inferior): Declare. (proc_set_current_signal, do_attach, procfs_target::wait): Adjust. (procfs_init_inferior): Rename to ... (procfs_target::procfs_init_inferior): ... this and adjust. (procfs_target::create_inferior, procfs_notice_thread) (procfs_do_thread_registers): Adjust. * ppc-fbsd-tdep.c: Include "inferior.h". (ppcfbsd_get_thread_local_address): Pass down target. * proc-service.c (ps_xfer_memory): Switch current inferior and program space as well. (get_ps_regcache): Pass target down. * process-stratum-target.c (process_stratum_target::thread_address_space) (process_stratum_target::thread_architecture): Pass target down. * process-stratum-target.h (process_stratum_target::threads_executing): New field. (as_process_stratum_target): New. * ravenscar-thread.c (ravenscar_thread_target::update_inferior_ptid): Pass target down. (ravenscar_thread_target::wait, ravenscar_add_thread): Pass target down. * record-btrace.c (record_btrace_target::info_record): Adjust. (record_btrace_target::record_method) (record_btrace_target::record_is_replaying) (record_btrace_target::fetch_registers) (get_thread_current_frame_id, record_btrace_target::resume) (record_btrace_target::wait, record_btrace_target::stop): Pass target down. * record-full.c (record_full_wait_1): Switch to event thread. Pass target down. * regcache.c (regcache::regcache) (get_thread_arch_aspace_regcache, get_thread_arch_regcache): Add process_stratum_target parameter and handle it. (current_thread_target): New global. (get_thread_regcache): Add process_stratum_target parameter and handle it. Switch inferior before calling target method. (get_thread_regcache): Pass target down. (get_thread_regcache_for_ptid): Pass target down. (registers_changed_ptid): Add process_stratum_target parameter and handle it. (registers_changed_thread, registers_changed): Pass target down. (test_get_thread_arch_aspace_regcache): New. (current_regcache_test): Define a couple local test_target_ops instances and use them for testing. (readwrite_regcache): Pass process_stratum_target parameter. (cooked_read_test, cooked_write_test): Pass mock_target down. * regcache.h (get_thread_regcache, get_thread_arch_regcache) (get_thread_arch_aspace_regcache): Add process_stratum_target parameter. (regcache::target): New method. (regcache::regcache, regcache::get_thread_arch_aspace_regcache) (regcache::registers_changed_ptid): Add process_stratum_target parameter. (regcache::m_target): New field. (registers_changed_ptid): Add process_stratum_target parameter. * remote.c (remote_state::supports_vCont_probed): New field. (remote_target::async_wait_fd): New method. (remote_unpush_and_throw): Add remote_target parameter. (get_current_remote_target): Adjust. (remote_target::remote_add_inferior): Push target. (remote_target::remote_add_thread) (remote_target::remote_notice_new_inferior) (get_remote_thread_info): Pass target down. (remote_target::update_thread_list): Skip threads of inferiors bound to other targets. (remote_target::close): Don't discard inferiors. (remote_target::add_current_inferior_and_thread) (remote_target::process_initial_stop_replies) (remote_target::start_remote) (remote_target::remote_serial_quit_handler): Pass down target. (remote_target::remote_unpush_target): New remote_target parameter. Unpush the target from all inferiors. (remote_target::remote_unpush_and_throw): New remote_target parameter. Pass it down. (remote_target::open_1): Check whether the current inferior has execution instead of checking whether any inferior is live. Pass target down. (remote_target::remote_detach_1): Pass down target. Use remote_unpush_target. (extended_remote_target::attach): Pass down target. (remote_target::remote_vcont_probe): Set supports_vCont_probed. (remote_target::append_resumption): Pass down target. (remote_target::append_pending_thread_resumptions) (remote_target::remote_resume_with_hc, remote_target::resume) (remote_target::commit_resume): Pass down target. (remote_target::remote_stop_ns): Check supports_vCont_probed. (remote_target::interrupt_query) (remote_target::remove_new_fork_children) (remote_target::check_pending_events_prevent_wildcard_vcont) (remote_target::remote_parse_stop_reply) (remote_target::process_stop_reply): Pass down target. (first_remote_resumed_thread): New remote_target parameter. Pass it down. (remote_target::wait_as): Pass down target. (unpush_and_perror): New remote_target parameter. Pass it down. (remote_target::readchar, remote_target::remote_serial_write) (remote_target::getpkt_or_notif_sane_1) (remote_target::kill_new_fork_children, remote_target::kill): Pass down target. (remote_target::mourn_inferior): Pass down target. Use remote_unpush_target. (remote_target::core_of_thread) (remote_target::remote_btrace_maybe_reopen): Pass down target. (remote_target::pid_to_exec_file) (remote_target::thread_handle_to_thread_info): Pass down target. (remote_target::async_wait_fd): New. * riscv-fbsd-tdep.c: Include "inferior.h". (riscv_fbsd_get_thread_local_address): Pass down target. * sol2-tdep.c (sol2_core_pid_to_str): Pass down target. * sol-thread.c (sol_thread_target::wait, ps_lgetregs, ps_lsetregs) (ps_lgetfpregs, ps_lsetfpregs, sol_update_thread_list_callback): Adjust. * solib-spu.c (spu_skip_standalone_loader): Pass down target. * solib-svr4.c (enable_break): Pass down target. * spu-multiarch.c (parse_spufs_run): Pass down target. * spu-tdep.c (spu2ppu_sniffer): Pass down target. * target-delegates.c: Regenerate. * target.c (g_target_stack): Delete. (current_top_target): Return the current inferior's top target. (target_has_execution_1): Refer to the passed-in inferior's top target. (target_supports_terminal_ours): Check whether the initial inferior was already created. (decref_target): New. (target_stack::push): Incref/decref the target. (push_target, push_target, unpush_target): Adjust. (target_stack::unpush): Defref target. (target_is_pushed): Return bool. Adjust to refer to the current inferior's target stack. (dispose_inferior): Delete, and inline parts ... (target_preopen): ... here. Only dispose of the current inferior. (target_detach): Hold strong target reference while detaching. Pass target down. (target_thread_name): Add assertion. (target_resume): Pass down target. (target_ops::beneath, find_target_at): Adjust to refer to the current inferior's target stack. (get_dummy_target): New. (target_pass_ctrlc): Pass the Ctrl-C to the first inferior that has a thread running. (initialize_targets): Rename to ... (_initialize_target): ... this. * target.h: Include "gdbsupport/refcounted-object.h". (struct target_ops): Inherit refcounted_object. (target_ops::shortname, target_ops::longname): Make const. (target_ops::async_wait_fd): New method. (decref_target): Declare. (struct target_ops_ref_policy): New. (target_ops_ref): New typedef. (get_dummy_target): Declare function. (target_is_pushed): Return bool. * thread-iter.c (all_matching_threads_iterator::m_inf_matches) (all_matching_threads_iterator::all_matching_threads_iterator): Handle filter target. * thread-iter.h (struct all_matching_threads_iterator, struct all_matching_threads_range, class all_non_exited_threads_range): Filter by target too. Remove explicit. * thread.c (threads_executing): Delete. (inferior_thread): Pass down current inferior. (clear_thread_inferior_resources): Pass down thread pointer instead of ptid_t. (add_thread_silent, add_thread_with_info, add_thread): Add process_stratum_target parameter. Use it for thread and inferior searches. (is_current_thread): New. (thread_info::deletable): Use it. (find_thread_ptid, thread_count, in_thread_list) (thread_change_ptid, set_resumed, set_running): New process_stratum_target parameter. Pass it down. (set_executing): New process_stratum_target parameter. Pass it down. Adjust reference to 'threads_executing'. (threads_are_executing): New process_stratum_target parameter. Adjust reference to 'threads_executing'. (set_stop_requested, finish_thread_state): New process_stratum_target parameter. Pass it down. (switch_to_thread): Also match inferior. (switch_to_thread): New process_stratum_target parameter. Pass it down. (update_threads_executing): Reimplement. * top.c (quit_force): Pop targets from all inferior. (gdb_init): Don't call initialize_targets. * windows-nat.c (windows_nat_target) : Declare. (windows_add_thread, windows_delete_thread): Adjust. (get_windows_debug_event): Rename to ... (windows_nat_target::get_windows_debug_event): ... this. Adjust. * tracefile-tfile.c (tfile_target_open): Pass down target. * gdbsupport/common-gdbthread.h (struct process_stratum_target): Forward declare. (switch_to_thread): Add process_stratum_target parameter. * mi/mi-interp.c (mi_on_resume_1): Add process_stratum_target parameter. Use it. (mi_on_resume): Pass target down. * nat/fork-inferior.c (startup_inferior): Add process_stratum_target parameter. Pass it down. * nat/fork-inferior.h (startup_inferior): Add process_stratum_target parameter. * python/py-threadevent.c (py_get_event_thread): Pass target down. 2020-01-10 Pedro Alves * remote.c (remote_target::start_remote): Don't set inferior_ptid directly. Instead find the first thread in the thread list and use switch_to_thread. 2020-01-10 Pedro Alves * remote.c (remote_target::remote_add_inferior): Don't bind a process to the current inferior if the current inferior is already bound to a process. 2020-01-10 Tankut Baris Aktemur Pedro Alves * remote.c (remote_target::remote_parse_stop_reply) : If no process is specified, return null_ptid instead of inferior_ptid. (remote_target::wait_as): Handle TARGET_WAITKIND_EXITED / TARGET_WAITKIND_SIGNALLED with no pid. 2020-01-10 Pedro Alves * remote.c (first_remote_resumed_thread): New. (remote_target::wait_as): Use it as default event_ptid instead of inferior_ptid. 2020-01-10 Pedro Alves * infrun.c (handle_no_resumed): Use all_non_exited_inferiors. 2020-01-10 Pedro Alves * tracefile-tfile.c (tfile_target::close): Assert that trace_fd is not -1. 2020-01-10 Pedro Alves * break-catch-sig.c (signal_catchpoint_print_it): Don't pass a ptid to get_last_target_status. * break-catch-syscall.c (print_it_catch_syscall): Don't pass a ptid to get_last_target_status. * infcmd.c (continue_command): Don't pass a target_waitstatus to get_last_target_status. (info_program_command): Don't pass a target_waitstatus to get_last_target_status. * infrun.c (init_wait_for_inferior): Use nullify_last_target_wait_ptid. (get_last_target_status): Handle nullptr arguments. (nullify_last_target_wait_ptid): Clear target_last_waitstatus. (print_stop_event): Don't pass a ptid to get_last_target_status. (normal_stop): Don't pass a ptid to get_last_target_status. * infrun.h (get_last_target_status, set_last_target_status): Move comments here and update. (nullify_last_target_wait_ptid): Declare. * linux-fork.c (fork_load_infrun_state): Remove local extern declaration of nullify_last_target_wait_ptid. * linux-nat.c (get_detach_signal): Don't pass a target_waitstatus to get_last_target_status. 2020-01-10 Pedro Alves * gdbthread.h (scoped_restore_current_thread) : Declare. * thread.c (thread_alive): Add assertion. Return bool. (switch_to_thread_if_alive): New. (prune_threads): Switch inferior/thread. (print_thread_info_1): Switch thread before calling target methods. (scoped_restore_current_thread::restore): New, factored out from ... (scoped_restore_current_thread::~scoped_restore_current_thread): ... this. (scoped_restore_current_thread::scoped_restore_current_thread): Add assertion. (thread_apply_all_command, thread_select): Use switch_to_thread_if_alive. * infrun.c (proceed, restart_threads, handle_signal_stop) (switch_back_to_stepped_thread): Switch current thread before calling target methods. 2020-01-10 Pedro Alves * inferior.c (switch_to_inferior_no_thread): New function, factored out from ... (inferior_command): ... here. * inferior.h (switch_to_inferior_no_thread): Declare. * mi/mi-main.c (run_one_inferior): Use switch_to_inferior_no_thread. 2020-01-10 Pedro Alves * infcmd.c (kill_command): Remove dead code. 2020-01-10 Pedro Alves * remote.c (remote_target::mourn_inferior): No longer check whether the target is running. 2020-01-10 Pedro Alves * corelow.c (core_target::has_execution): Change parameter type to inferior pointer. * inferior.c (number_of_live_inferiors): Use inferior::has_execution instead of target_has_execution_1. * inferior.h (inferior::has_execution): New. * linux-thread-db.c (thread_db_target::update_thread_list): Use inferior::has_execution instead of target_has_execution_1. * process-stratum-target.c (process_stratum_target::has_execution): Change parameter type to inferior pointer. Check the inferior's PID instead of inferior_ptid. * process-stratum-target.h (process_stratum_target::has_execution): Change parameter type to inferior pointer. * record-full.c (record_full_core_target::has_execution): Change parameter type to inferior pointer. * target.c (target_has_execution_1): Change parameter type to inferior pointer. (target_has_execution_current): Adjust. * target.h (target_ops::has_execution): Change parameter type to inferior pointer. (target_has_execution_1): Change parameter type to inferior pointer. Change return type to bool. * tracefile.h (tracefile_target::has_execution): Change parameter type to inferior pointer. 2020-01-10 Pedro Alves * exceptions.c (print_flush): Remove current_top_target() check. 2020-01-10 Pedro Alves * remote.c (show_remote_exec_file): Show the current inferior's exec-file instead of the command variable's value. 2020-01-10 Pedro Alves * record-full.c (record_full_resume_ptid): New global. (record_full_target::resume): Set it. (record_full_wait_1): Use record_full_resume_ptid instead of inferior_ptid. 2020-01-10 Pedro Alves * gdbthread.h (scoped_restore_current_thread) : Declare. * thread.c (thread_alive): Add assertion. Return bool. (switch_to_thread_if_alive): New. (prune_threads): Switch inferior/thread. (print_thread_info_1): Switch thread before calling target methods. (scoped_restore_current_thread::restore): New, factored out from ... (scoped_restore_current_thread::~scoped_restore_current_thread): ... this. (scoped_restore_current_thread::scoped_restore_current_thread): Add assertion. (thread_apply_all_command, thread_select): Use switch_to_thread_if_alive. 2020-01-10 George Barrett * stap-probe.c (stap_modify_semaphore): Don't check for null semaphores. (stap_probe::set_semaphore, stap_probe::clear_semaphore): Check for null semaphores. 2020-01-09 Andrew Burgess * tui/tui-source.c (tui_source_window::do_scroll_vertical): Update all source windows, and maintain horizontal scroll status while doing so. 2020-01-09 Tom Tromey PR tui/18932: * tui/tui-source.c (tui_source_window::do_scroll_vertical): Call update_source_window, not print_source_lines. 2020-01-09 Andrew Burgess * tui/tui.c (tui_enable): Register tui hooks after calling tui_display_main. 2020-01-09 Christian Biesinger * gdbsupport/common-defs.h: Don't define _FORTIFY_SOURCE on MinGW. 2020-01-08 Simon Marchi * thread.c (print_thread_info_1): Fix indentation. 2020-01-09 Christian Biesinger * symtab.c (general_symbol_info::compute_and_set_names): Move the unique_xmalloc_ptr outside the if to always free the demangled name. 2020-01-08 Tom Tromey * xcoffread.c (enter_line_range, read_xcoff_symtab) (process_xcoff_symbol, xcoff_symfile_offsets): Update. * symtab.h (MSYMBOL_VALUE_ADDRESS): Update. (struct section_offsets, ANOFFSET, SIZEOF_N_SECTION_OFFSETS): Remove. (section_offsets): New typedef. * symtab.c (fixup_section, get_msymbol_address): Update. * symmisc.c (dump_msymbols): Update. * symfile.h (relative_addr_info_to_section_offsets) (symfile_map_offsets_to_segments): Update. * symfile.c (build_section_addr_info_from_objfile) (init_objfile_sect_indices): Update. (struct place_section_arg): Change type of "offsets". (place_section): Update. (relative_addr_info_to_section_offsets): Change type of "section_offsets". Remove "num_sections" parameter. (default_symfile_offsets, syms_from_objfile_1) (set_objfile_default_section_offset): Update. (reread_symbols): No need to preserve section offsets by hand. (symfile_map_offsets_to_segments): Change type of "offsets". * stap-probe.c (relocate_address): Update. * stabsread.h (process_one_symbol): Update. * solib-target.c (struct lm_info_target) : Change type. (solib_target_relocate_section_addresses): Update. * solib-svr4.c (enable_break, svr4_relocate_main_executable): Update. * solib-frv.c (frv_relocate_main_executable): Update. * solib-dsbt.c (dsbt_relocate_main_executable): Update. * solib-aix.c (solib_aix_get_section_offsets): Change return type. (solib_aix_solib_create_inferior_hook): Update. * remote.c (remote_target::get_offsets): Update. * psymtab.c (find_pc_sect_psymtab): Update. * psympriv.h (struct partial_symbol) : Update. * objfiles.h (obj_section_offset): Update. (struct objfile) : Change type. : Remove. (objfile_relocate): Update. * objfiles.c (entry_point_address_query): Update (relocate_one_symbol): Change type of "section_offsets". (objfile_relocate1, objfile_relocate1): Change type of "new_offsets". (objfile_rebase1): Update. * mipsread.c (mipscoff_symfile_read): Update. (read_alphacoff_dynamic_symtab): Remove "section_offsets" parameter. * mdebugread.c (parse_symbol): Change type of "section_offsets". (parse_external, psymtab_to_symtab_1): Update. * machoread.c (macho_symfile_offsets): Update. * ia64-tdep.c (ia64_find_unwind_table): Update. * hppa-tdep.c (read_unwind_info): Update. * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Update. * dwarf2read.c (create_addrmap_from_index) (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab) (process_psymtab_comp_unit_reader, add_partial_symbol) (add_partial_subprogram, process_full_comp_unit) (read_file_scope, read_func_scope, read_lexical_block_scope) (read_call_site_scope, dwarf2_rnglists_process) (dwarf2_ranges_process, dwarf2_ranges_read) (dwarf_decode_lines_1, var_decode_location, new_symbol) (dwarf2_fetch_die_loc_sect_off, dwarf2_per_cu_text_offset): Update. * dwarf2-frame.c (execute_cfa_program, dwarf2_frame_find_fde): Update. * dtrace-probe.c (dtrace_probe::get_relocated_address): Update. * dbxread.c (read_dbx_symtab, read_ofile_symtab): Update. (process_one_symbol): Change type of "section_offsets". * ctfread.c (get_objfile_text_range): Update. * coffread.c (coff_symtab_read, enter_linenos) (process_coff_symbol): Update. * coff-pe-read.c (add_pe_forwarded_sym): Update. * amd64-windows-tdep.c (amd64_windows_find_unwind_info): Update. 2020-01-08 Tom Tromey * dwarf2read.c (parse_macro_definition): Use std::string. (parse_macro_definition): Likewise. 2020-01-08 Tom Tromey * dwarf2read.c (abbrev_table_read_table): Use std::vector. (ATTR_ALLOC_CHUNK): Remove. 2020-01-08 Tom Tromey * dwarf2read.c (fixup_go_packaging): Use unique_xmalloc_ptr. 2020-01-08 Tom Tromey * dwarf2read.c (add_partial_symbol): Use unique_xmalloc_ptr. (dwarf2_compute_name, open_dwo_file): Likewise. (process_enumeration_scope): Use std::vector. (guess_partial_die_structure_name): Use unique_xmalloc_ptr. (partial_die_info::fixup, dwarf2_start_subfile) (guess_full_die_structure_name, dwarf2_name): Likewise. (determine_prefix): Update. (guess_full_die_structure_name): Make return type const. (partial_die_full_name): Return unique_xmalloc_ptr. (DW_FIELD_ALLOC_CHUNK): Remove. 2020-01-07 Tom Tromey PR build/24937: * stap-probe.c (class stap_static_probe_ops): Add constructor. 2020-01-02 Jon Turney * cli/cli-style.c: Set cli_styling to 'true' in the Cygwin build. 2020-01-06 Andrew Burgess * stack.c (print_frame_info): Move disassemble_next_line code inside source_print block. 2020-01-06 Eli Zaretskii * gdbsupport/gdb_wait.c: Include instead of gdb/signals.h, as we are now using native signal symbols. 2020-01-06 Shahab Vahedi * tui/tui-disasm.c (tui_disasm_window::addr_is_displayed): Avoid overflow by an early check of content vs threshold. * tui/tui-source.c (tui_source_window::line_is_displayed): Likewise. 2020-01-06 Eli Zaretskii * NEWS: Mention the recent fix of $_exitsignal on MS-Windows. 2020-01-02 Jon Turney * coff-pe-read.c (read_pe_exported_syms): Don't try to read the export table if no section contains it's RVA. 2020-01-06 Eli Zaretskii * windows-tdep.c: Fix a typo in WINDOWS_SIGABRT. 2020-01-06 Hannes Domani * source.c (print_source_lines_base): Set last_line_listed. 2020-01-06 Shahab Vahedi * tui/tui-disasm.c: Remove trailing spaces. 2020-01-06 Eli Zaretskii Pedro Alves * Makefile.in (COMMON_SFILES): Add gdbsupport/gdb_wait.c. * windows-tdep.c: New enumeration of WINDOWS_SIG* signals. (windows_gdb_signal_to_target): New function, uses the above enumeration to convert GDB internal signal codes to equivalent Windows codes. (windows_init_abi): Call set_gdbarch_gdb_signal_to_target. * windows-nat.c: Include "gdb_wait.h". (get_windows_debug_event): Extract the fatal exception from the exit status and convert to the equivalent Posix signal number. * cli/cli-cmds.c (exit_status_set_internal_vars): Account for the possibility that WTERMSIG returns GDB_SIGNAL_UNKNOWN. * gdbsupport/gdb_wait.c: New file, implements windows_status_to_termsig. * gdbsupport/gdb_wait.h (WIFEXITED, WIFSIGNALED, WEXITSTATUS) (WTERMSIG) [__MINGW32__]: Separate definitions for MinGW. 2020-01-05 Andrew Burgess * tui/tui-layout.c (tui_add_win_to_layout): Use tui_set_layout not show_layout. 2020-01-05 Luis Machado * aarch64-linux-nat.c (aarch64_linux_nat_target::thread_architecture): Use bfd_arch_aarch64 and bfd_mach_aarch64. 2020-01-03 Philippe Waroquiers * ui-file.c (stdio_file::can_emit_style_escape) (tee_file::can_emit_style_escape): Ensure style is used also on gdb_stderr when gdb_stderr is a tty supporting styling, similarly to gdb_stdout. * main.c (set_gdb_data_directory): Use file style to output the warning that the given pathname is not a directory. * top.c (show_history_filename, gdb_safe_append_history) (show_gdb_datadir): Use file style. 2020-01-03 Hannes Domani * solib-target.c (struct lm_info_target): Change offsets to be a unique_xmalloc_ptr. (solib_target_relocate_section_addresses): Update. 2020-01-03 Hannes Domani * windows-nat.c (windows_clear_solib): Free so_list linked list. 2020-01-03 Bernd Edlinger * MAINTAINERS (Write After Approval): Add myself. 2020-01-02 Luis Machado * proc-service.c (get_ps_regcache): Remove reference to obsolete Cell BE architecture. * target.h (struct target_ops) : Likewise. 2020-01-01 Hannes Domani * Makefile.in: Use INSTALL_PROGRAM_ENV. 2020-01-01 Hannes Domani * MAINTAINERS (Write After Approval): Add myself. 2020-01-01 Joel Brobecker * gdbarch.sh: Update copyright year range of generated files. 2020-01-01 Joel Brobecker Update copyright year range in all GDB files. 2020-01-01 Joel Brobecker * copyright.py: Convert to Python 3. 2020-01-01 Joel Brobecker * copyright.py: Adapt after move of gnulib directory from gdb directory to toplevel directory. 2020-01-01 Joel Brobecker * copyright.py (main): Exit if run from the wrong directory. 2020-01-01 Joel Brobecker * top.c (print_gdb_version): Change copyright year to 2020. 2020-01-01 Joel Brobecker * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2019. For older changes see ChangeLog-2019. Local Variables: mode: change-log left-margin: 8 fill-column: 74 version-control: never coding: utf-8 End: