+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