Ensure proc-service symbols have default visibility (PR build/24805)
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index fb7b93f6eee47c5b54835d3690d95bea9b2e85df..fe8972e47f0f33af50e046967a6df62ada76f953 100644 (file)
+2020-01-16  Pedro Alves  <palves@redhat.com>
+            Norbert Lange  <nolange79@gmail.com>
+
+       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  <Nitika.Achra@amd.com>
+
+       * dwarf2loc.c (decode_debug_loclists_addresses): Handle
+       DW_LLE_base_addressx, DW_LLE_startx_length, DW_LLE_start_length.
+
+2020-01-15  Simon Marchi  <simon.marchi@efficios.com>
+
+       * infcmd.c (post_create_inferior): Use get_thread_regcache
+       instead of get_current_regcache.
+
+2020-01-14  Tom Tromey  <tom@tromey.com>
+
+       PR symtab/12535:
+       * python/python.c (gdbpy_decode_line): Treat empty string the same
+       as no argument.
+
+2020-01-14  Tom Tromey  <tom@tromey.com>
+
+       * Makefile.in (CLIBS): Remove second use of $(LIBIBERTY).
+
+2020-01-14  Tom Tromey  <tom@tromey.com>
+
+       * nat/linux-btrace.c: Don't include <config.h>.
+       * nat/linux-ptrace.c: Don't include <config.h>.
+       * nat/x86-linux-dregs.c: Don't include <config.h>.
+
+2020-01-14  Tom Tromey  <tom@tromey.com>
+
+       * configure: Rebuild.
+       * configure.ac: Move many checks to ../gdbsupport/common.m4.
+
+2020-01-14  Tom Tromey  <tom@tromey.com>
+
+       * 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  <tom@tromey.com>
+
+       * 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  <tom@tromey.com>
+
+       * configure: Rebuild.
+       * gdbsupport/common.m4 (GDB_AC_COMMON): Fix indentation.
+
+2020-01-14  Bernd Edlinger  <bernd.edlinger@hotmail.de>
+
+       * 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  <luis.machado@linaro.org>
+
+       * 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) <stop_pc>, <stop_reason>: Likewise.
+
+2020-01-13  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * elfread.c (record_minimal_symbol): Set section index to 0 for
+       non-allocatable sections.
+
+
+2020-01-13  Ali Tamur <tamur@google.com>
+
+       * 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  <simon.marchi@efficios.com>
+
+       * gdbcore.h (struct core_fns) <core_read_registers>: 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  <andrew.burgess@embecosm.com>
+
+       * tui/tui-wingeneral.c (box_win): Position the title in the center
+       of the border.
+
+2020-01-13  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * corelow.c (core_target::get_core_register_section): Use
+         std::vector instead of alloca.
+
+2020-01-13  Simon Marchi  <simon.marchi@efficios.com>
+
+       * warning.m4: Add -Wmissing-declarations to build_warnings.
+       * configure: Re-generate.
+
+2020-01-13  Simon Marchi  <simon.marchi@efficios.com>
+
+       * python/python.c (init__gdb_module): Add declaration.
+
+2020-01-13  Simon Marchi  <simon.marchi@efficios.com>
+
+       * 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  <simon.marchi@polymtl.ca>
+
+       * regformats/regdat.sh: Generate declaration for init function.
+
+2020-01-13  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * remote-sim.c (next_pid, INITIAL_PID, sim_inferior_data): Move
+       up.
+       (gdbsim_target) <get_inferior_data_by_ptid, resume_one_inferior,
+       close_one_inferior>: 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  <simon.marchi@polymtl.ca>
+
+       * gdbsupport/gdb_wait.c: Include gdb_wait.h.
+
+2020-01-12  Pedro Alves  <palves@redhat.com>
+
+       * 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  <tom@tromey.com>
+
+       * 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  <tankut.baris.aktemur@intel.com>
+
+       * inferior.c (print_inferior): Switch inferior before printing it.
+
+2020-01-10  Aleksandar Paunovic  <aleksandar.paunovic@intel.com>
+           Pedro Alves  <palves@redhat.com>
+
+       * 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  <palves@redhat.com>
+
+       * NEWS: Mention multi-target debugging, "info connections", and
+       "add-inferior -no-connection".
+
+2020-01-10  Pedro Alves  <palves@redhat.com>
+
+       * 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  <palves@redhat.com>
+
+       * 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  <palves@redhat.com>
+
+       Revert:
+       2016-04-12  Pedro Alves  <palves@redhat.com>
+       * serial.c (serial_open, serial_fdopen_ops, do_serial_close):
+       Remove references to name.
+       * serial.h (struct serial) <name>: Delete.
+
+2020-01-10  Pedro Alves  <palves@redhat.com>
+
+       * gdbarch-selftests.c (register_to_value_test): Remove "target
+       already pushed" check.
+
+2020-01-10  Pedro Alves  <palves@redhat.com>
+           John Baldwin  <jhb@FreeBSD.org>
+
+       * 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) <push_target, unpush_target, target_is_pushed,
+       find_target_beneath, top_target, process_target, target_at,
+       m_stack>: 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 <unordered_map>.
+       (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) <target>: 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) <get_windows_debug_event>:
+       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  <palves@redhat.com>
+
+       * 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  <palves@redhat.com>
+
+       * 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  <tankut.baris.aktemur@intel.com>
+           Pedro Alves  <palves@redhat.com>
+
+       * remote.c (remote_target::remote_parse_stop_reply) <W/X packets>:
+       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  <palves@redhat.com>
+
+       * 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  <palves@redhat.com>
 
        * infrun.c (handle_no_resumed): Use all_non_exited_inferiors.
This page took 0.033729 seconds and 4 git commands to generate.