+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's thread_name and thread_handle ops
+ into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ (target_thread_name): Update the macro.
+ (target_thread_handle): Update the macro.
+ * target.cc (process_target::thread_name): Define.
+ (process_target::thread_handle): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::thread_name): Define.
+ (linux_process_target::thread_handle): Define.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's breakpoint_kind_from_pc,
+ sw_breakpoint_from_kind, and breakpoint_kind_from_current_state
+ ops into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_breakpoint_kind_from_pc): Update the macro.
+ (target_breakpoint_kind_from_current_state): Update the macro.
+ (default_breakpoint_kind_from_pc): Remove declaration.
+ * target.cc (default_breakpoint_kind_from_pc): Turn into ...
+ (process_target::breakpoint_kind_from_pc): ... this.
+ (process_target::breakpoint_kind_from_current_state): Define.
+
+ Update the derived classes and callers below.
+
+ * mem-break.cc (bp_size): Update.
+ (bp_opcode): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_wait_1): Update.
+ (linux_breakpoint_kind_from_pc): Turn into ...
+ (linux_process_target::breakpoint_kind_from_pc): ... this.
+ (linux_sw_breakpoint_from_kind): Turn into ...
+ (linux_process_target::sw_breakpoint_from_kind): ... this.
+ (linux_breakpoint_kind_from_current_state): Turn into ...
+ (linux_process_target::breakpoint_kind_from_current_state): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ (lynx_process_target::sw_breakpoint_from_kind): Define.
+ * lynx-low.h (class lynx_process_target): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_sw_breakpoint_from_kind): Turn into ...
+ (nto_process_target::sw_breakpoint_from_kind): ... this.
+ * nto-low.h (class nto_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_sw_breakpoint_from_kind): Turn into ...
+ (win32_process_target::sw_breakpoint_from_kind): ... this.
+ * win32-low.h (class win32_process_target): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's multifs_open, multifs_readlink,
+ multifs_unlink ops into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops. Also add
+ 'supports_multifs'.
+ * target.cc: Include "fcntl.h", "unistd.h", "sys/types.h", and
+ "sys/stat.h".
+ (process_target::supports_multifs): Define.
+ (process_target::multifs_open): Define.
+ (process_target::multifs_readlink): Define.
+ (process_target::multifs_unlink): Define.
+
+ Update the derived classes and callers below.
+
+ * hostio.cc (handle_setfs): Update.
+ (handle_open): Update.
+ (handle_unlink): Update.
+ (handle_readlink): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_multifs): Define.
+ (linux_process_target::multifs_open): Define.
+ (linux_process_target::multifs_readlink): Define.
+ (linux_process_target::multifs_unlink): Define.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's pid_to_exec_file op into a method
+ of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_pid_to_exec_file'.
+ * target.cc (process_target::pid_to_exec_file): Define.
+ (process_target::supports_pid_to_exec_file): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_qxfer_exec_file): Update.
+ (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_pid_to_exec_file): Define.
+ (linux_process_target::pid_to_exec_file): Define.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_range_stepping op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_supports_range_stepping): Update the macro.
+ * target.cc (process_target::supports_range_stepping): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_range_stepping): Turn into ...
+ (linux_process_target::supports_range_stepping): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's btrace-related ops (enable_btrace,
+ disable_btrace, read_btrace, read_btrace_conf) into methods of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ (target_enable_btrace): Update.
+ (target_disable_btrace): Update.
+ (target_read_btrace): Update.
+ (target_read_btrace_conf): Update.
+ * target.cc (process_target::enable_btrace): Define.
+ (process_target::disable_btrace): Define.
+ (process_target::read_btrace): Define.
+ (process_target::read_btrace_conf): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target:enable_btrace): Define as a wrapper around
+ linux_enable_btrace.
+ (linux_low_disable_btrace): Turn into ...
+ (linux_process_target::disable_btrace): ... this.
+ (linux_low_read_btrace): Turn into ...
+ (linux_process_target::read_btrace): ... this.
+ (linux_low_btrace_conf): Turn into ...
+ (linux_process_target::read_btrace_conf): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_agent op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_supports_agent): Update the macro.
+ * target.cc (process_target::supports_agent): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_agent): Turn into ...
+ (linux_process_target::supports_agent): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's qxfer_libraries_svr4 op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_qxfer_libraries_svr4'.
+ * target.cc (process_target::qxfer_libraries_svr4): Define.
+ (process_target::supports_qxfer_libraries_svr4): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_qxfer_libraries_svr4): Update.
+ (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_qxfer_libraries_svr4): Define.
+ (linux_qxfer_libraries_svr4): Turn into ...
+ (linux_process_target::qxfer_libraries_svr4): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_disable_randomization op
+ into a method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_supports_disable_randomization): Update the macro.
+ * target.cc (process_target::supports_disable_randomization): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_disable_randomization): Turn into ...
+ (linux_process_target::supports_disable_randomization): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's emit_ops op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_emit_ops): Update the macro.
+ * target.cc (process_target::emit_ops): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_emit_ops): Turn into ...
+ (linux_process_target::emit_ops): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's install_fast_tracepoint_jump_pad
+ and get_min_fast_tracepoint_insn_len ops into methods of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops. Also add
+ 'supports_fast_tracepoints'.
+ (target_supports_fast_tracepoints): Update the macro.
+ (target_get_min_fast_tracepoint_insn_len): Update the macro.
+ (install_fast_tracepoint_jump_pad): Update and rename the macro
+ to ...
+ (target_install_fast_tracepoint_jump_pad): ... this.
+ * target.cc (process_target::supports_fast_tracepoints): Define.
+ (process_target::install_fast_tracepoint_jump_pad): Define.
+ (process_target::get_min_fast_tracepoint_insn_len): Define.
+
+ Update the derived classes and callers below.
+
+ * tracepoint.cc (install_fast_tracepoint): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_fast_tracepoints): Define.
+ (linux_install_fast_tracepoint_jump_pad): Turn into ...
+ (linux_process_target::install_fast_tracepoint_jump_pad): ... this.
+ (linux_get_min_fast_tracepoint_insn_len): Turn into ...
+ (linux_process_target::get_min_fast_tracepoint_insn_len): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's stabilize_threads op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_stabilize_threads): Update the macro.
+ * target.cc (process_target::stabilize_threads): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_status): Update.
+ * tracepoint.cc (cmd_qtdp): Update.
+ (cmd_qtstart): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_stabilize_threads): Turn into ...
+ (linux_process_target::stabilize_threads): ... this.
+ (linux_wait_1): Update.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's pause_all and unpause_all ops
+ into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ (pause_all): Update the macro and rename to...
+ (target_pause_all): ... this.
+ (unpause_all): Update the macro and rename to...
+ (target_unpause_all): ... this.
+ * target.cc (process_target::pause_all): Define.
+ (process_target::unpause_all): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_status): Update.
+ * tracepoint.cc (clear_installed_tracepoints): Update.
+ (cmd_qtdp): Update.
+ (cmd_qtstart): Update.
+ (stop_tracing): Update.
+ (cmd_qtstatus): Update.
+ (upload_fast_traceframes): Update.
+ (run_inferior_command): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_pause_all): Turn into ...
+ (linux_process_target::pause_all): ... this.
+ (linux_unpause_all): Turn into ...
+ (linux_process_target::unpause_all): ... this.
+ (linux_process_target::prepare_to_access_memory): Update.
+ (linux_process_target::done_accessing_memory): Update.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's get_tib_address op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_get_tib_address'.
+ * target.cc (process_target::get_tib_address): Define.
+ (process_target::supports_get_tib_address): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_query): Update.
+ * linux-low.cc (win32_target_ops): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_process_target::supports_get_tib_address): Define.
+ (win32_get_tib_address): Turn into ...
+ (win32_process_target::get_tib_address): ... this.
+ * win32-low.h (class win32_process_target): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's thread_stopped op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_thread_stopped'.
+ (target_thread_stopped): Update the macro.
+ * target.cc (process_target::thread_stopped): Define.
+ (process_target::supports_thread_stopped): Define.
+ (prepare_to_access_memory): Update.
+
+ Update the derived classes and callers below.
+
+ * server.cc (queue_stop_reply_callback): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_thread_stopped): Define.
+ (linux_thread_stopped): Turn into ...
+ (linux_process_target::thread_stopped): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's read_pc and write_pc ops into
+ methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ * target.cc (process_target::read_pc): Define.
+ (process_target::write_pc): Define.
+
+ Update the derived classes and callers below.
+
+ * regcache.cc (regcache_read_pc): Update.
+ (regcache_write_pc): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_read_pc): Turn into ...
+ (linux_process_target::read_pc): ... this.
+ (linux_write_pc): Turn into ...
+ (linux_process_target::write_pc): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_tracepoints op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_supports_tracepoints): Update the macro.
+ * target.cc (process_target::supports_tracepoints): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_tracepoints): Turn into ...
+ (linux_process_target::supports_tracepoints): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's process_qsupported op into a method
+ of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_process_qsupported): Update the macro.
+ * target.cc (process_target::process_qsupported): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_qsupported): Turn into ...
+ (linux_process_target::process_qsupported): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's read_loadmap op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_read_loadmap'.
+ * target.cc (process_target::read_loadmap): Define.
+ (process_target::supports_read_loadmap): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_qxfer_fdpic): Update.
+ (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_read_loadmap): Define.
+ (linux_read_loadmap): Turn into ...
+ (linux_process_target::read_loadmap): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's core_of_thread op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_core_of_thread): Update the macro.
+ * target.cc (process_target::core_of_thread): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::core_of_thread): Define.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's handle_monitor_command op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_handle_monitor_command): Update the macro.
+ * target.cc (process_target::handle_monitor_command): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::handle_monitor_command): Define.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's handle_new_gdb_connection op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_handle_new_gdb_connection): Update the macro.
+ * target.cc (process_target::handle_new_gdb_connection): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_handle_new_gdb_connection): Turn into ...
+ (linux_process_target::handle_new_gdb_connection): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_fork_events,
+ supports_vfork_events, and supports_exec_events ops into methods
+ of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ (target_supports_fork_events): Update the macro.
+ (target_supports_vfork_events): Update the macro.
+ (target_supports_exec_events): Update the macro.
+ * target.cc (process_target::supports_fork_events): Define.
+ (process_target::supports_vfork_events): Define.
+ (process_target::supports_exec_events): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_fork_events): Turn into ...
+ (linux_process_target::supports_fork_events): ... this.
+ (linux_supports_vfork_events): Turn into ...
+ (linux_process_target::supports_vfork_events): ... this.
+ (linux_supports_exec_events): Turn into ...
+ (linux_process_target::supports_exec_events): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_multi_process op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ * target.cc (process_target::supports_multi_process): Define.
+ (target_supports_multi_process): Update.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_multi_process): Turn into ...
+ (linux_process_target::supports_multi_process): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_non_stop, async, and
+ start_non_stop ops into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ (target_supports_non_stop): Update the macro.
+ (target_async): Update the macro.
+ (start_non_stop): Remove declaration.
+ * target.cc (process_target::supports_non_stop): Define.
+ (process_target::async): Define.
+ (process_target::start_non_stop): Define.
+ (start_non_stop): Remove.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_qxfer_siginfo): Update.
+ (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_non_stop): Turn into ...
+ (linux_process_target::supports_non_stop): ... this.
+ (linux_async): Turn into ...
+ (linux_process_target::async): ... this.
+ (linux_start_non_stop): Turn into ...
+ (linux_process_target::start_non_stop): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_supports_non_stop): Remove; rely on the default behavior
+ instead.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's qxfer_siginfo op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_qxfer_siginfo'.
+ * target.cc (process_target::qxfer_siginfo): Define.
+ (process_target::supports_qxfer_siginfo): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_qxfer_siginfo): Update.
+ (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_qxfer_siginfo): Define.
+ (linux_xfer_siginfo): Turn into ...
+ (linux_process_target::qxfer_siginfo): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's qxfer_osdata op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_qxfer_osdata'.
+ * target.cc (process_target::qxfer_osdata): Define.
+ (process_target::supports_qxfer_osdata): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_qxfer_osdata): Update.
+ (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_qxfer_osdata): Define.
+ (linux_qxfer_osdata): Turn into ...
+ (linux_process_target::qxfer_osdata): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's hostio_last_error op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ * target.cc: Add "hostio.h" to includes.
+ (process_target::hostio_last_error): Define.
+
+ Update the derived classes and callers below.
+
+ * hostio.cc (hostio_error): Update.
+ * linux-low.cc: Remove "hostio.h" from includes.
+ (linux_target_ops): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.h (class win32_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (wince_hostio_last_error): Turn into ...
+ (win32_process_target::hostio_last_error): ... this.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's get_tls_address op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_get_tls_address'.
+ * target.cc (process_target::get_tls_address): Define.
+ (process_target::supports_get_tls_address): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_get_tls_address): Define.
+ (linux_process_target::get_tls_address): Define.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's read_offsets op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op. Also add
+ 'supports_read_offsets'.
+ * target.cc (process_target::read_offsets): Define.
+ (process_target::supports_read_offsets): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_query): Update.
+ * linux-low.cc (SUPPORTS_READ_OFFSETS): New #define directive.
+ (linux_target_ops): Update.
+ (linux_process_target::supports_read_offsets): Define.
+ (linux_read_offsets): Turn into ...
+ (linux_process_target::read_offsets): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's stopped_by_watchpoint and
+ stopped_data_address ops into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ * target.cc (process_target::stopped_by_watchpoint): Define.
+ (process_target::stopped_data_address): Define.
+
+ Update the derived classes and callers below.
+
+ * remote-utils.cc (prepare_resume_reply): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_stopped_by_watchpoint): Turn into ...
+ (linux_process_target::stopped_by_watchpoint): ... this.
+ (linux_stopped_data_address): Turn into ...
+ (linux_process_target::stopped_data_address): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_stopped_by_watchpoint): Turn into ...
+ (nto_process_target::stopped_by_watchpoint): ... this.
+ (nto_stopped_data_address): Turn into ...
+ (nto_process_target::stopped_data_address): ... this.
+ * nto-low.h (class nto_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_stopped_by_watchpoint): Turn into ...
+ (win32_process_target::stopped_by_watchpoint): ... this.
+ (win32_stopped_data_address): Turn into ...
+ (win32_process_target::stopped_data_address): ... this.
+ * win32-low.h (class win32_process_target): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_hardware_single_step op into
+ a method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ (target_supports_hardware_single_step): Update the macro.
+ (target_can_do_hardware_single_step): Remove declaration.
+ * target.cc (process_target::supports_hardware_single_step): Define.
+ (target_can_do_hardware_single_step): Remove.
+
+ Update the derived classes and callers below.
+
+ * linux-low.h (class linux_process_target): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_hardware_single_step): Turn into ...
+ (linux_process_target::supports_hardware_single_step): ... this.
+ * lynx-low.h (class lynx_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ (lynx_process_target::supports_hardware_single_step): Define.
+ * nto-low.h (class nto_process_target): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_process_target::supports_hardware_single_step): Define.
+ * win32-low.h (class win32_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_process_target::supports_hardware_single_step): Define.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's {supports_}stopped_by_hw_breakpoint
+ ops into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ (target_stopped_by_hw_breakpoint): Update the macro.
+ (target_supports_stopped_by_hw_breakpoint): Update the macro.
+ * target.cc (process_target::stopped_by_hw_breakpoint): Define.
+ (process_target::supports_stopped_by_hw_breakpoint): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_stopped_by_hw_breakpoint): Turn into ...
+ (linux_process_target::stopped_by_hw_breakpoint): ... this.
+ (linux_supports_stopped_by_hw_breakpoint): Turn into ...
+ (linux_process_target::supports_stopped_by_hw_breakpoint): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's {supports_}stopped_by_sw_breakpoint
+ ops into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ (target_stopped_by_sw_breakpoint): Update the macro.
+ (target_supports_stopped_by_sw_breakpoint): Update the macro.
+ * target.cc (process_target::stopped_by_sw_breakpoint): Define.
+ (process_target::supports_stopped_by_sw_breakpoint): Define.
+
+ Update the derived classes and callers below.
+
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_stopped_by_sw_breakpoint): Turn into ...
+ (linux_process_target::stopped_by_sw_breakpoint): ... this.
+ (linux_supports_stopped_by_sw_breakpoint): Turn into ...
+ (linux_process_target::supports_stopped_by_sw_breakpoint): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's insert_point and remove_point ops
+ into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+ * target.cc (process_target::insert_point): Define.
+ (process_target::remove_point): Define.
+
+ Update the derived classes and callers below.
+
+ * mem-break.cc (set_raw_breakpoint_at): Update.
+ (delete_raw_breakpoint): Update.
+ (uninsert_raw_breakpoint): Update.
+ (reinsert_raw_breakpoint): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_insert_point): Turn into ...
+ (linux_process_target::insert_point): ... this.
+ (linux_remove_point): Turn into ...
+ (linux_process_target::remove_point): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_insert_point): Turn into ...
+ (nto_process_target::insert_point): ... this.
+ (nto_remove_point): Turn into ...
+ (nto_process_target::remove_point): ... this.
+ * nto-low.h (class nto_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_insert_point): Turn into ...
+ (win32_process_target::insert_point): ... this.
+ (win32_remove_point): Turn into ...
+ (win32_process_target::remove_point): ... this.
+ * win32-low.h (class win32_process_target): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's supports_z_point_type op into a
+ method of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ * target.cc (process_target::supports_z_point_type): Define.
+
+ Update the derived classes and callers below.
+
+ * mem-break.cc (z_type_supported): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_supports_z_point_type): Turn into ...
+ (linux_process_target::supports_z_point_type): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_supports_z_point_type): Turn into ...
+ (nto_process_target::supports_z_point_type): ... this.
+ * nto-low.h (class nto_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_supports_z_point_type): Turn into ...
+ (win32_process_target::supports_z_point_type): ... this.
+ * win32-low.h (class win32_process_target): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's read_auxv op into a method of
+ process_target.
+
+ * target.h (class process_stratum_target): Remove the target op.
+ (struct process_target): Add the target op. Also add
+ 'supports_read_auxv'.
+ * target.cc (process_target::read_auxv): Define.
+ (process_target::supports_read_auxv): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_qxfer_auxv): Update.
+ (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_process_target::supports_read_auxv): Define.
+ (linux_read_auxv): Turn into ...
+ (linux_process_target::read_auxv): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_process_target::supports_read_auxv): Define.
+ (nto_read_auxv): Turn into ...
+ (nto_process_target::read_auxv): ... this.
+ * nto-low.h (class nto_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's request_interrupt op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+
+ Update the derived classes and callers below.
+
+ * remote-utils.cc (putpkt_binary_1): Update.
+ (input_interrupt): Update.
+ (getpkt): Update.
+ * server.cc (handle_v_requests): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_request_interrupt): Turn into ...
+ (linux_process_target::request_interrupt): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ (lynx_request_interrupt): Turn into ...
+ (lynx_process_target::request_interrupt): ... this.
+ * lynx-low.h (class lynx_process_target): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_request_interrupt): Turn into ...
+ (nto_process_target::request_interrupt): ... this.
+ * nto-low.h (class nto_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_request_interrupt): Turn into ...
+ (win32_process_target::request_interrupt): ... this.
+ * win32-low.h (class win32_process_target): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's look_up_symbols op into a method of
+ process_target.
+
+ * target.h (struct process_stratum_target): Remove the target op.
+ (class process_target): Add the target op.
+ * target.cc (process_target::look_up_symbols): Define.
+
+ Update the derived classes and callers below.
+
+ * server.cc (handle_query): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_look_up_symbols): Turn into ...
+ (linux_process_target::look_up_symbols): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ * win32-low.cc (win32_target_ops): Update.
+
+2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ Turn process_stratum_target's read_memory and write_memory
+ ops into methods of process_target.
+
+ * target.h (struct process_stratum_target): Remove the target ops.
+ (class process_target): Add the target ops.
+
+ Update the derived classes and callers below.
+
+ * linux-aarch32-low.cc (arm_breakpoint_at): Update.
+ * linux-aarch64-low.cc (aarch64_breakpoint_at): Update.
+ * linux-arm-low.cc (arm_sigreturn_next_pc): Update.
+ (arm_get_syscall_trapinfo): Update.
+ * linux-cris-low.cc (cris_breakpoint_at): Update.
+ * linux-crisv32-low.cc (cris_breakpoint_at): Update.
+ * linux-m32r-low.cc (m32r_breakpoint_at): Update.
+ * linux-mips-low.cc (mips_breakpoint_at): Update.
+ * linux-nios2-low.cc (nios2_breakpoint_at): Update.
+ * linux-ppc-low.cc (ppc_breakpoint_at): Update.
+ * linux-sh-low.cc (sh_breakpoint_at): Update.
+ * linux-sparc-low.cc (sparc_fill_gregset_to_stack): Update.
+ (sparc_store_gregset_from_stack): Update.
+ (sparc_breakpoint_at): Update.
+ * linux-tic6x-low.cc (tic6x_breakpoint_at): Update.
+ * linux-tile-low.cc (tile_breakpoint_at): Update.
+ * linux-x86-low.cc (x86_breakpoint_at): Update.
+ * linux-xtensa-low.cc (xtensa_breakpoint_at): Update.
+ * mem-brea.cc (insert_memory_breakpoint): Update.
+ (validate_inserted_breakpoint): Update.
+ * target.cc (read_inferior_memory): Update.
+ (target_write_memory): Update.
+ * linux-low.cc (linux_target_ops): Update.
+ (linux_read_memory): Make a wrapper around the read_memory target
+ op call.
+ (linux_process_target::read_memory): Rename from linux_read_memory.
+ (linux_write_memory): Turn into ...
+ (linux_process_target::write_memory): ... this.
+ * linux-low.h (class linux_process_target): Update.
+ * lynx-low.cc (lynx_target_ops): Update.
+ (lynx_read_memory): Turn into ...
+ (lynx_process_target::read_memory): ... this.
+ (lynx_write_memory): Turn into ...
+ (lynx_process_target::write_memory): ... this.
+ * lynx-low.h (class lynx_process_target): Update.
+ * nto-low.cc (nto_target_ops): Update.
+ (nto_read_memory): Turn into ...
+ (nto_process_target::read_memory): ... this.
+ (nto_write_memory): Turn into ...
+ (nto_process_target::write_memory): ... this.
+ * nto-low.h (class nto_process_target): Update.
+ * win32-low.cc (win32_target_ops): Update.
+ (win32_read_inferior_memory): Turn into ...
+ (win32_process_target::read_memory): ... this.
+ (win32_write_inferior_memory): Turn into ...
+ (win32_process_target::write_memory): ... this.
+ * win32-low.h (class win32_process_target): Update.
+
2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
Turn process_stratum_target's prepare_to_access_memory and