gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / gdbserver / ChangeLog
index d6d5eee856eff2f5a30c9a1b94aa717de463e6b5..678689530faff75d0722943f00787e7f5acd7d73 100644 (file)
+2020-05-27  Hannes Domani  <ssbssa@yahoo.de>
+
+       * win32-low.cc (do_initial_child_stuff): Set open_process_used.
+       (win32_clear_inferiors): Use open_process_used.
+       (get_child_debug_event): Likewise.
+
+2020-05-25  Michael Weghorn  <m.weghorn@posteo.de>
+
+       PR gdbserver/25893
+       * linux-low.cc (linux_process_target::create_inferior),
+       lynx-low.cc (lynx_process_target::create_inferior),
+       win32-low.cc (win32_process_target::create_inferior): Use
+       construct_inferior_arguments instead of stringify_argv
+       to get string representation which properly escapes
+       special characters.
+       * server.cc (handle_v_run): Just pass empty program arg
+       as such, since any further processing is now handled via
+       construct_inferior_arguments.
+
+2020-05-25  Michael Weghorn  <m.weghorn@posteo.de>
+
+       * nto-low.cc (nto_process_target::create_inferior): Pass
+       argv to spawnp function as char **.
+
+2020-05-25  Michael Weghorn  <m.weghorn@posteo.de>
+
+       * server.cc (captured_main), (handle_v_run): No longer
+       insert extra NULL element to args vector.
+
+2020-05-23  Pedro Alves  <palves@redhat.com>
+
+       * gdb-safe-ctype.h: New.
+
+2020-05-16  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       * linux-ia64-low.cc (ia64_target::sw_breakpoint_from_kind):
+       Fix incorrect 'gdb_assert_no_reached' to 'gdb_assert_not_reached'.
+       (ia64_target::low_breakpoint_at): Ditto.
+
+2020-05-15  Hannes Domani  <ssbssa@yahoo.de>
+
+       * win32-i386-low.cc (i386_supports_z_point_type): Handle
+       Z_PACKET_HW_BP z_type.
+       (i386_insert_point): Handle raw_bkpt_type type.
+       (i386_remove_point): Likewise.
+
+2020-04-30  Hannes Domani  <ssbssa@yahoo.de>
+
+       * configure.srv <x86_64-*-mingw*, x86_64-*-cygwin*> (srv_tgtobj):
+       Add arch/i386.o.
+       * win32-arm-low.cc (arm_num_regs): New function.
+       (struct win32_target_ops): Use arm_num_regs.
+       * win32-i386-low.cc (win32_get_current_dr): Adapt for WOW64
+       processes.
+       (i386_get_thread_context): Likewise.
+       (i386_prepare_to_resume): Likewise.
+       (i386_thread_added): Likewise.
+       (i386_single_step): Likewise.
+       (i386_fetch_inferior_register): Likewise.
+       (i386_store_inferior_register): Likewise.
+       (i386_arch_setup): Likewise.
+       (i386_win32_num_regs): New function.
+       (struct win32_target_ops): Use i386_win32_num_regs.
+       * win32-low.cc (win32_get_thread_context): Adapt for WOW64
+       processes.
+       (win32_require_context): Likewise.
+       (child_add_thread): Likewise.
+       (do_initial_child_stuff): Likewise.
+       (continue_one_thread): Likewise.
+       (win32_process_target::resume): Likewise.
+       (load_psapi): Likewise.
+       (win32_add_all_dlls): Likewise.
+       (maybe_adjust_pc): Likewise.
+       (win32_process_target::qxfer_siginfo): Likewise.
+       (initialize_low): Likewise.
+       * win32-low.h (struct win32_target_ops): Change num_regs to
+       callback function.
+
+2020-04-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * configure.ac: Remove check for fs_base/gs_base in
+       user_regs_struct.
+       * configure: Re-generate.
+       * config.in: Re-generate.
+       * linux-x86-low.cc (x86_64_regmap, x86_fill_gregset,
+       x86_store_gregset): Adjust.
+
+2020-04-22  Hannes Domani  <ssbssa@yahoo.de>
+
+       * server.cc (handle_search_memory_1): Fix gdb_read_memory return value
+       comparison.
+
+2020-04-16  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.cc (windows_nat::handle_access_violation): New
+       function.
+
+2020-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * win32-low.cc (get_child_debug_event): Fix format string warning.
+
+2020-04-13  Tom Tromey  <tom@tromey.com>
+
+       * server.h (gdb_fildes_t): Remove typedef.
+       * remote-utils.c (remote_desc, list_desc): Now int.
+       (INVALID_DESCRIPTOR): Remove.
+       (gdb_connected, remote_close)
+       (check_remote_input_interrupt_request): Update.
+       * utils.h (pfildes): Don't declare.
+       * utils.c (pfildes): Remove.
+
+2020-04-13  Tom Tromey  <tom@tromey.com>
+
+       * server.h (handle_serial_event, handle_target_event): Update.
+       * server.c: Don't call initialize_event_loop.
+       (keep_processing_events): New global.
+       (handle_serial_event): Return void.  Set keep_processing_events.
+       (handle_target_event): Return void.
+       (start_event_loop): Move from event-loop.c.  Rewrite.
+       * remote-utils.c (handle_accept_event): Return void.
+       (reset_readchar): Use delete_timer.
+       (process_remaining): Return void.
+       (reschedule): Use create_timer.
+       * event-loop.h: Remove.
+       * event-loop.cc: Remove.
+       * Makefile.in (OBS): Use gdbsupport/event-loop.o, not event-loop.o.
+
+2020-04-13  Tom Tromey  <tom@tromey.com>
+
+       * server.c (invoke_async_signal_handlers)
+       (check_async_event_handlers, flush_streams, gdb_select): New
+       functions.
+
+2020-04-13  Tom Tromey  <tom@tromey.com>
+
+       * configure: Rebuild.
+       * config.in: Rebuild.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       PR gdb/22992
+       * win32-low.c (child_continue): Call matching_pending_stop.
+       (get_child_debug_event): Call fetch_pending_stop.  Push pending
+       stop when needed.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.h  (win32_process_target::stopped_by_sw_breakpoint)
+       (win32_process_target::supports_stopped_by_sw_breakpoint):
+       Declare.
+       * win32-low.c (win32_supports_z_point_type): Always handle
+       Z_PACKET_SW_BP.
+       (win32_insert_point): Call insert_memory_breakpoint when needed.
+       (win32_remove_point): Call remove_memory_breakpoint when needed.
+       (win32_process_target::stopped_by_sw_breakpoint)
+       (win32_process_target::supports_stopped_by_sw_breakpoint): New
+       methods.
+       (win32_target_ops): Update.
+       (maybe_adjust_pc): New function.
+       (win32_wait): Call maybe_adjust_pc.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.h (struct win32_target_ops) <decr_pc_after_break>: New
+       field.
+       * win32-i386-low.c (the_low_target): Update.
+       * win32-arm-low.c (the_low_target): Update.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.h (win32_process_target::read_pc)
+       (win32_process_target::write_pc): Declare.
+       * win32-low.c (win32_process_target::read_pc)
+       (win32_process_target::write_pc): New methods.
+       * win32-i386-low.c (i386_win32_get_pc, i386_win32_set_pc): New
+       functions.
+       (the_low_target): Update.
+       * win32-arm-low.c (arm_win32_get_pc, arm_win32_set_pc): New
+       functions.
+       (the_low_target): Update.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (win32_kill, get_child_debug_event): Use
+       wait_for_debug_event.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (child_continue): Call continue_last_debug_event.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (handle_exception): Remove.
+       (windows_nat::handle_ms_vc_exception): New function.
+       (get_child_debug_event): Add "continue_status" parameter.
+       Update.
+       (win32_wait): Update.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (windows_nat::handle_load_dll): Rename from
+       handle_load_dll.  No longer static.
+       (windows_nat::handle_unload_dll): Rename from handle_unload_dll.
+       No longer static.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (handle_output_debug_string): Add parameter.  Change
+       return type.
+       (win32_kill, get_child_debug_event): Update.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (current_process_handle, current_process_id)
+       (main_thread_id, last_sig, current_event, siginfo_er): Move to
+       nat/windows-nat.c.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (get_image_name): Remove.
+       (handle_load_dll): Update.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (windows_nat::thread_rec): Rename from thread_rec.
+       No longer static.  Change parameters.
+       (child_add_thread, child_fetch_inferior_registers)
+       (child_store_inferior_registers, win32_resume)
+       (win32_get_tib_address): Update.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.h (struct win32_target_ops): Use qualified names where
+       needed.
+       * win32-i386-low.c: Add "using namespace".
+       * win32-low.c: Add "using namespace".
+       * win32-arm-low.c: Add "using namespace".
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (delete_thread_info): Don't call CloseHandle.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (win32_require_context, suspend_one_thread): Use
+       windows_thread_info::suspend.
+       (continue_one_thread): Use windows_thread_info::resume.
+       * configure.srv (srv_tgtobj): Add windows-nat.o when needed.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-i386-low.c (update_debug_registers)
+       (i386_prepare_to_resume, i386_thread_added): Update.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.c (child_add_thread): Use new.
+       (delete_thread_info): Use delete.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.h (struct windows_thread_info): Remove.
+
+2020-04-08  Tom Tromey  <tromey@adacore.com>
+
+       * win32-low.h (struct windows_thread_info): Rename from
+       win32_thread_info.  Remove typedef.
+       (struct win32_target_ops, win32_require_context): Update.
+       * win32-low.c (win32_get_thread_context)
+       (win32_set_thread_context, win32_prepare_to_resume)
+       (win32_require_context, thread_rec, child_add_thread)
+       (delete_thread_info, continue_one_thread)
+       (child_fetch_inferior_registers, child_store_inferior_registers)
+       (win32_resume, suspend_one_thread, win32_get_tib_address):
+       Update.
+       * win32-i386-low.c (update_debug_registers)
+       (win32_get_current_dr, i386_get_thread_context)
+       (i386_prepare_to_resume, i386_thread_added, i386_single_step)
+       (i386_fetch_inferior_register, i386_store_inferior_register):
+       Update.
+       * win32-arm-low.c (arm_get_thread_context)
+       (arm_fetch_inferior_register, arm_store_inferior_register):
+       Update.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       * linux-low.h (struct linux_target_ops): Remove.
+       (the_low_target): Remove.
+       * linux-x86-low.cc (the_low_target): Remove.
+       * linux-aarch64-low.cc (the_low_target): Ditto.
+       * linux-arm-low.cc (the_low_target): Ditto.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-cris-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-ia64-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-mips-low.cc (the_low_target): Ditto.
+       * linux-nios2-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-riscv-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-sparc-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'get_ipa_tdesc_idx' linux target op and let a concrete
+       linux target define the op by overriding the declaration in
+       process_stratum_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <get_ipa_tdesc_idx>: Remove.
+       * linux-low.cc (linux_process_target::get_ipa_tdesc_idx): Remove.
+       * linux-x86-low.cc (class x86_target) <get_ipa_tdesc_idx>: Declare.
+       (x86_get_ipa_tdesc_idx): Turn into...
+       (x86_target::get_ipa_tdesc_idx): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (class ppc_target) <get_ipa_tdesc_idx>: Declare.
+       (ppc_get_ipa_tdesc_idx): Turn into...
+       (ppc_target::get_ipa_tdesc_idx): ...this.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (class s390_target) <get_ipa_tdesc_idx>: Declare.
+       (s390_get_ipa_tdesc_idx): Turn into...
+       (s390_target::get_ipa_tdesc_idx): ...this.
+       (the_low_target): Remove the op field.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'get_syscall_trapinfo' linux target op into a method
+       of process_stratum_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <get_syscall_trapinfo>
+       <gdb_catch_this_syscall>
+       <low_supports_catch_syscall>
+       <low_get_syscall_trapinfo>: Declare.
+       * linux-low.cc (get_syscall_trapinfo): Turn into...
+       (linux_process_target::get_syscall_trapinfo): ...this.
+       (linux_process_target::low_get_syscall_trapinfo): Define.
+       (gdb_catch_this_syscall_p): Turn into...
+       (linux_process_target::gdb_catch_this_syscall): ...this.
+       (linux_process_target::low_supports_catch_syscall): Define.
+
+       Update the callers below.
+
+       (linux_process_target::wait_1)
+       (linux_process_target::supports_catch_syscall)
+
+       * linux-x86-low.cc (class x86_target) <low_supports_catch_syscall>
+       <low_get_syscall_trapinfo>: Declare.
+       (x86_target::low_supports_catch_syscall): Define.
+       (x86_get_syscall_trapinfo): Turn into...
+       (x86_target::low_get_syscall_trapinfo): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <low_supports_catch_syscall>
+       <low_get_syscall_trapinfo>: Declare.
+       (aarch64_target::low_supports_catch_syscall): Define.
+       (aarch64_get_syscall_trapinfo): Turn into...
+       (aarch64_target::low_get_syscall_trapinfo): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (class arm_target) <low_supports_catch_syscall>
+       <low_get_syscall_trapinfo>: Declare.
+       (arm_target::low_supports_catch_syscall): Define.
+       (arm_get_syscall_trapinfo): Turn into...
+       (arm_target::low_get_syscall_trapinfo): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (the_low_target): Remove the op field.
+       * linux-s390-low.cc (the_low_target): Remove the op field.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'supports_hardware_single_step' linux target op and
+       override the process_stratum_target's op definition in
+       linux_process_target to return true.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <finish_step_over>
+       <maybe_hw_step>: Declare.
+       * linux-low.cc (can_hardware_single_step): Remove.
+       (maybe_hw_step): Turn into...
+       (linux_process_target::maybe_hw_step): ...this.
+       (finish_step_over): Turn into...
+       (linux_process_target::finish_step_over): ...this.
+       (linux_process_target::supports_hardware_single_step): Update
+       to return true.
+
+       Update the callers below.
+
+       (linux_process_target::single_step)
+       (linux_process_target::resume_one_lwp_throw)
+
+       * linux-arm-low.cc (class arm_target)
+       <supports_hardware_single_step>: Declare.
+       (arm_supports_hardware_single_step): Turn into...
+       (arm_target::supports_hardware_single_step): ...this.
+       (the_low_target): Remove the op field.
+       * linux-x86-low.cc (x86_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (aarch64_supports_hardware_single_step):
+       Remove.
+       (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (bfin_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-crisv32-low.cc (cris_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-m32r-low.cc (m32r_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-m68k-low.cc (m68k_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (ppc_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (s390_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-sh-low.cc (sh_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-tic6x-low.cc (tic6x_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-tile-low.cc (tile_supports_hardware_single_step): Remove.
+       (the_low_target): Remove the op field.
+       * linux-xtensa-low.cc (xtensa_supports_hardware_single_step):
+       Remove.
+       (the_low_target): Remove the op field.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'supports_range_stepping' linux target op into a method
+       of linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <low_supports_range_stepping>: Declare.
+       * linux-low.cc (linux_process_target::low_supports_range_stepping):
+       Define.
+       (linux_process_target::supports_range_stepping): Update the call
+       site.
+       * linux-x86-low.cc (class x86_target)
+       <low_supports_range_stepping>: Declare.
+       (x86_supports_range_stepping): Turn into...
+       (x86_target::low_supports_range_stepping): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <low_supports_range_stepping>: Declare.
+       (aarch64_supports_range_stepping): Turn into...
+       (aarch64_target::low_supports_range_stepping): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'emit_ops' linux target ops and let the concrete
+       linux target define the op by overriding the declaration of
+       process_stratum_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <emit_ops>: Remove.
+       * linux-low.cc (linux_process_target::emit_ops): Remove.
+       * linux-x86-low.cc (class x86_target) <emit_ops>: Declare.
+       (x86_emit_ops): Turn into...
+       (x86_target::emit_ops): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target) <emit_ops>: Declare.
+       (aarch64_emit_ops): Turn into...
+       (aarch64_target::emit_ops): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (class ppc_target) <emit_ops>: Declare.
+       (ppc_emit_ops): Turn into...
+       (ppc_target::emit_ops): ...this.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (class s390_target) <emit_ops>: Declare.
+       (s390_emit_ops): Turn into...
+       (s390_target::emit_ops): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'install_fast_tracepoint_jump_pad' and
+       'get_min_fast_tracepoint_insn_len' linux target ops to let the
+       concrete linux target define the ops by overriding the declarations
+       of process_stratum_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the ops.
+       (class linux_process_target) <supports_fast_tracepoints>
+       <install_fast_tracepoint_jump_pad>
+       <get_min_fast_tracepoint_insn_len>: Remove.
+       * linux-low.cc (linux_process_target::supports_fast_tracepoints)
+       (linux_process_target::install_fast_tracepoint_jump_pad)
+       (linux_process_target::get_min_fast_tracepoint_insn_len): Remove.
+       * linux-x86-low.cc (class x86_target) <supports_fast_tracepoints>
+       <install_fast_tracepoint_jump_pad>
+       <get_min_fast_tracepoint_insn_len>: Declare.
+       (x86_target::supports_fast_tracepoints): Define.
+       (x86_install_fast_tracepoint_jump_pad): Turn into...
+       (x86_target::install_fast_tracepoint_jump_pad): ...this.
+       (x86_get_min_fast_tracepoint_insn_len): Turn into...
+       (x86_target::get_min_fast_tracepoint_insn_len): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <supports_fast_tracepoints>
+       <install_fast_tracepoint_jump_pad>
+       <get_min_fast_tracepoint_insn_len>: Declare.
+       (aarch64_target::supports_fast_tracepoints): Define.
+       (aarch64_install_fast_tracepoint_jump_pad): Turn into...
+       (aarch64_target::install_fast_tracepoint_jump_pad): ...this.
+       (aarch64_get_min_fast_tracepoint_insn_len): Turn into...
+       (aarch64_target::get_min_fast_tracepoint_insn_len): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-ppc-low.cc (class ppc_target) <supports_fast_tracepoints>
+       <install_fast_tracepoint_jump_pad>
+       <get_min_fast_tracepoint_insn_len>: Declare.
+       (ppc_target::supports_fast_tracepoints): Define.
+       (ppc_install_fast_tracepoint_jump_pad): Turn into...
+       (ppc_target::install_fast_tracepoint_jump_pad): ...this.
+       (ppc_get_min_fast_tracepoint_insn_len): Turn into...
+       (ppc_target::get_min_fast_tracepoint_insn_len): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-s390-low.cc (class s390_target) <supports_fast_tracepoints>
+       <install_fast_tracepoint_jump_pad>
+       <get_min_fast_tracepoint_insn_len>: Declare.
+       (s390_target::supports_fast_tracepoints): Define.
+       (s390_install_fast_tracepoint_jump_pad): Turn into...
+       (s390_target::install_fast_tracepoint_jump_pad): ...this.
+       (s390_get_min_fast_tracepoint_insn_len): Turn into...
+       (s390_target::get_min_fast_tracepoint_insn_len): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-arm-low.cc (the_low_target): Remove the op fields.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'get_thread_area' linux target op into a method of
+       process_stratum_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <stuck_in_jump_pad>
+       <linux_fast_tracepoint_collecting>
+       <low_get_thread_area>: Declare.
+       * linux-low.cc (supports_fast_tracepoints): Remove.
+       (linux_fast_tracepoint_collecting): Turn into...
+       (linux_process_target::linux_fast_tracepoint_collecting): ...this.
+       (linux_process_target::low_get_thread_area): Define.
+       (stuck_in_jump_pad_callback): Turn into...
+       (linux_process_target::stuck_in_jump_pad): ...this.
+
+       Update the caller below.
+
+       (linux_process_target::stabilize_threads)
+
+       * linux-x86-low.cc (class x86_target) <low_get_thread_area>:
+       Declare.
+       (x86_get_thread_area): Turn into...
+       (x86_target::low_get_thread_area): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target) <low_get_thread_area>:
+       Declare.
+       (aarch64_get_thread_area): Turn into...
+       (aarch64_target::low_get_thread_area): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (class ppc_target) <low_get_thread_area>:
+       Declare.
+       (ppc_get_thread_area): Turn into...
+       (ppc_target::low_get_thread_area): ...this.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (class s390_target) <low_get_thread_area>:
+       Declare.
+       (s390_get_thread_area): Turn into...
+       (s390_target::low_get_thread_area): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remote the 'supports_tracepoints' linux target op and let the
+       concrete linux target define it by overriding the op declared in
+       process_stratum_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <supports_tracepoints>: Remove.
+       * linux-low.cc (linux_process_target::supports_tracepoints): Remove.
+       * linux-x86-low.cc (class x86_target) <supports_tracepoints>:
+       Declare.
+       (x86_supports_tracepoints): Turn into...
+       (x86_target::supports_tracepoints): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <supports_tracepoints>: Declare.
+       (aarch64_supports_tracepoints): Turn into...
+       (aarch64_target::supports_tracepoints): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (class ppc_target) <supports_tracepoints>:
+       Declare.
+       (ppc_supports_tracepoints): Turn into...
+       (ppc_target::supports_tracepoints): ...this.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (class s390_target) <supports_tracepoints>:
+       Declare.
+       (s390_supports_tracepoints): Turn into...
+       (s390_target::supports_tracepoints): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'process_qsupported' linux target op and let a concrete
+       linux target define the op by overriding the op declaration in
+       process_stratum_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <process_qsupported>: Remove.
+       * linux-low.cc (linux_process_target::process_qsupported): Remove.
+       * linux-x86-low.cc (class x86_target) <process_qsupported>: Declare.
+       (x86_linux_process_qsupported): Turn into...
+       (x86_target::process_qsupported): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (the_low_target): Remove the op
+       field.
+       * linux-arm-low.cc (the_low_target): Ditto.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'prepare_to_resume' linux target op into a method of
+       linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <low_prepare_to_resume>: Declare.
+       * linux-low.cc (linux_process_target::low_prepare_to_resume):
+       Define.
+
+       Update the callers below:
+
+       (linux_process_target::resume_one_lwp_throw)
+       (linux_process_target::low_prepare_to_resume)
+
+       * linux-x86-low.cc (class x86_target) <low_prepare_to_resume>:
+       Declare.
+       (x86_target::low_prepare_to_resume): Define.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <low_prepare_to_resume>: Declare.
+       (aarch64_target::low_prepare_to_resume): Define.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (class arm_target) <low_prepare_to_resume>:
+       Declare.
+       (arm_prepare_to_resume): Turn into...
+       (arm_target::low_prepare_to_resume): ...this.
+       (the_low_target): Remove the op field.
+       * linux-mips-low.cc (class mips_target) <low_prepare_to_resume>:
+       Declare.
+       (mips_linux_prepare_to_resume): Turn into...
+       (mips_target::low_prepare_to_resume): ...this.
+       (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (the_low_target): Remove the op field.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'new_process', 'delete_process', 'new_thread',
+       'delete_thread', and 'new_fork' linux target ops into methods
+       of linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the ops.
+       (class linux_process_target) <add_linux_process>
+       <add_lwp>
+       <delete_lwp>
+       <attach_lwp>
+       <detach_one_lwp>
+       <check_zombie_leaders>
+       <filter_exit_event>
+       <low_new_process>
+       <low_delete_process>
+       <low_new_thread>
+       <low_delete_thread>
+       <low_new_fork>: Declare.
+       * linux-low.cc (delete_lwp): Turn into...
+       (linux_process_target::delete_lwp): ...this.
+       (linux_process_target::low_delete_thread): Define.
+       (linux_add_process): Turn into...
+       (linux_process_target::add_linux_process): ...this.
+       (linux_process_target::low_new_process): Define.
+       (linux_process_target::low_delete_process): Define.
+       (linux_process_target::low_new_fork): Define.
+       (add_lwp): Turn into...
+       (linux_process_target::add_lwp): ...this.
+       (linux_process_target::low_new_thread): Define.
+       (linux_attach_lwp): Turn into...
+       (linux_process_target::attach_lwp): ...this.
+       (linux_detach_one_lwp): Turn into...
+       (linux_process_target::detach_one_lwp): ...this.
+       (linux_detach_lwp_callback): Remove and inline...
+       (linux_process_target::detach): ...here.
+       (check_zombie_leaders): Turn into...
+       (linux_process_target::check_zombie_leaders): ...this.
+       (filter_exit_event): Turn into...
+       (linux_process_target::filter_exit_event): ...this.
+
+       Update the callers below.
+
+       (linux_process_target::handle_extended_wait)
+       (linux_process_target::create_inferior)
+       (attach_proc_task_lwp_callback)
+       (linux_process_target::attach)
+       (linux_process_target::detach)
+       (linux_process_target::mourn)
+       * thread-db.cc (attach_thread)
+
+       * linux-x86-low.cc (class x86_target) <low_new_process>
+       <low_delete_process>
+       <low_new_thread>
+       <low_delete_thread>
+       <low_new_fork>: Declare.
+       (x86_linux_new_process): Turn into...
+       (x86_target::low_new_process): ...this.
+       (x86_linux_delete_process): Turn into...
+       (x86_target::low_delete_process): ...this.
+       (x86_target::low_new_thread): Define.
+       (x86_target::low_delete_thread): Define.
+       (x86_linux_new_fork): Turn into...
+       (x86_target::low_new_fork): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-aarch64-low.cc (class aarch64_target) <low_new_process>
+       <low_delete_process>
+       <low_new_thread>
+       <low_delete_thread>
+       <low_new_fork>: Declare.
+       (aarch64_linux_new_process): Turn into...
+       (aarch64_target::low_new_process): ...this.
+       (aarch64_linux_delete_process): Turn into...
+       (aarch64_target::low_delete_process): ...this.
+       (aarch64_target::low_new_thread): Define.
+       (aarch64_target::low_delete_thread): Define.
+       (aarch64_linux_new_fork): Turn into...
+       (aarch64_target::low_new_fork): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-arm-low.cc (class arm_target) <low_new_process>
+       <low_delete_process>
+       <low_new_thread>
+       <low_delete_thread>
+       <low_new_fork>: Declare.
+       (arm_new_process): Turn into...
+       (arm_target::low_new_process): ...this.
+       (arm_delete_process): Turn into...
+       (arm_target::low_delete_process): ...this.
+       (arm_new_thread): Turn into...
+       (arm_target::low_new_thread): ...this.
+       (arm_delete_thread): Turn into...
+       (arm_target::low_delete_thread): ...this.
+       (arm_new_fork): Turn into...
+       (arm_target::low_new_fork): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-mips-low.cc (class mips_target) <low_new_process>
+       <low_delete_process>
+       <low_new_thread>
+       <low_delete_thread>
+       <low_new_fork>: Declare.
+       (mips_linux_new_process): Turn into...
+       (mips_target::low_new_process): ...this.
+       (mips_linux_delete_process): Turn into...
+       (mips_target::low_delete_process): ...this.
+       (mips_linux_new_thread): Turn into...
+       (mips_target::low_new_thread): ...this.
+       (mips_linux_delete_thread): Turn into...
+       (mips_target::low_delete_thread): ...this.
+       (mips_linux_new_fork): Turn into...
+       (mips_target::low_new_fork): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-bfin-low.cc (the_low_target): Remove the op fields.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'siginfo_fixup' linux target op into a method of
+       linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <siginfo_fixup>
+       <low_siginfo_fixup>: Declare.
+       * linux-low.cc (siginfo_fixup): Turn into...
+       (linux_process_target::siginfo_fixup): ...this.
+       (linux_process_target::low_siginfo_fixup): Define.
+       * linux-x86-low.cc (class x86_target) <low_siginfo_fixup>: Declare.
+       (x86_siginfo_fixup): Turn into...
+       (x86_target::low_siginfo_fixup): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target):
+       <low_siginfo_fixup>: Declare.
+       (aarch64_linux_siginfo_fixup): Turn into...
+       (aarch64_target::low_siginfo_fixup): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-mips-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'collect_ptrace_register' and 'supply_ptrace_register'
+       linux target ops into methods of linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the ops.
+       (class linux_process_target) <low_collect_ptrace_register>
+       <low_store_ptrace_register>: Declare.
+       * linux-low.cc (linux_process_target::low_collect_ptrace_register)
+       (linux_process_target::low_supply_ptrace_register): Define.
+
+       Update the callers below.
+
+       (linux_process_target::fetch_register)
+       (linux_process_target::store_register)
+
+       * linux-x86-low.cc (the_low_target): Remove the op fields.
+       * linux-aarch64-low.cc (the_low_target): Ditto.
+       * linux-arm-low.cc (the_low_target): Ditto.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-sparc-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+       * linux-mips-low.cc (class mips_target)
+       <low_collect_ptrace_register>
+       <low_supply_ptrace_register>: Declare.
+       (mips_collect_ptrace_register): Turn into ...
+       (mips_target::low_collect_ptrace_register): ...this.
+       (mips_supply_ptrace_register): Turn into...
+       (mips_target::low_supply_ptrace_register): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-ppc-low.cc (class ppc_target)
+       <low_collect_ptrace_register>
+       <low_supply_ptrace_register>: Declare.
+       (ppc_collect_ptrace_register): Turn into ...
+       (ppc_target::low_collect_ptrace_register): ...this.
+       (ppc_supply_ptrace_register): Turn into ...
+       (ppc_target::low_supply_ptrace_register): ...this.
+       (ppc_fill_gregset): Update for the calls to
+       low_collect_ptrace_register.
+       (the_low_target): Remove the op fields.
+       * linux-s390-low.cc (class s390_target)
+       <low_collect_ptrace_register>
+       <low_supply_ptrace_register>: Declare.
+       (s390_collect_ptrace_register): Turn into ...
+       (s390_target::low_collect_ptrace_register): ...this.
+       (s390_supply_ptrace_register): Turn into ...
+       (s390_target::low_supply_ptrace_register): ...this.
+       (s390_fill_gregset): Update for the calls to
+       low_collect_ptrace_register.
+       (the_low_target): Remove the op fields.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'stopped_by_watchpoint' and 'stopped_data_address' linux
+       target ops into methods of linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the ops.
+       (class linux_process_target) <check_stopped_by_watchpoint>
+       <low_stopped_by_watchpoint>
+       <low_stopped_data_address>: Declare.
+       * linux-low.cc (check_stopped_by_watchpoint): Turn into...
+       (linux_process_target::check_stopped_by_watchpoint): ...this.
+       (linux_process_target::low_stopped_by_watchpoint): Define.
+       (linux_process_target::low_stopped_data_address): Define.
+       * linux-x86-low.cc (class x86_target) <low_stopped_by_watchpoint>
+       <low_stopped_data_address>: Declare.
+       (x86_stopped_by_watchpoint): Turn into...
+       (x86_target::low_stopped_by_watchpoint): ...this.
+       (x86_stopped_data_address): Turn into...
+       (x86_target::low_stopped_data_address): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <low_stopped_by_watchpoint>
+       <low_stopped_data_address>: Declare.
+       (aarch64_stopped_by_watchpoint): Turn into...
+       (aarch64_target::low_stopped_by_watchpoint): ...this.
+       (aarch64_stopped_data_address): Turn into...
+       (aarch64_target::low_stopped_data_address): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-arm-low.cc (class arm_target) <low_stopped_by_watchpoint>
+       <low_stopped_data_address>: Declare.
+       (arm_stopped_by_watchpoint): Turn into...
+       (arm_target::low_stopped_by_watchpoint): ...this.
+       (arm_stopped_data_address): Turn into...
+       (arm_target::low_stopped_data_address): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-crisv32-low.cc (class crisv32_target)
+       <low_stopped_by_watchpoint>
+       <low_stopped_data_address>: Declare.
+       (cris_stopped_by_watchpoint): Turn into...
+       (crisv32_target::low_stopped_by_watchpoint): ...this.
+       (cris_stopped_data_address): Turn into...
+       (crisv32_target::low_stopped_data_address): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-mips-low.cc (class mips_target) <low_stopped_by_watchpoint>
+       <low_stopped_data_address>: Declare.
+       (mips_stopped_by_watchpoint): Turn into...
+       (mips_target::low_stopped_by_watchpoint): ...this.
+       (mips_stopped_data_address): Turn into...
+       (mips_target::low_stopped_data_address): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-bfin-low.cc (the_low_target): Remove the op fields.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-sparc-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'insert_point' and 'remove_point' linux target ops into
+       methods of linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the ops.
+       (class linux_process_target) <low_insert_point>
+       <low_remove_point>: Declare.
+       * linux-low.cc (linux_process_target::low_insert_point)
+       (linux_process_target::low_remove_point): Define.
+       (linux_process_target::insert_point)
+       (linux_process_target::remove_point): Update for calls to
+       low_insert_point and low_remove_point.
+       * linux-x86-low.cc (class x86_target) <low_insert_point>
+       <low_remove_point>: Declare.
+       (x86_insert_point): Turn into...
+       (x86_target::low_insert_point): ...this.
+       (x86_remove_point): Turn into...
+       (x86_target::low_remove_point): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-aarch64-low.cc (class aarch64_target) <low_insert_point>
+       <low_remove_point>: Declare.
+       (aarch64_insert_point): Turn into...
+       (aarch64_target::low_insert_point): ...this.
+       (aarch64_remove_point): Turn into...
+       (aarch64_target::low_remove_point): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-arm-low.cc (class arm_target) <low_insert_point>
+       <low_remove_point>: Declare.
+       (arm_insert_point): Turn into...
+       (arm_target::low_insert_point): ...this.
+       (arm_remove_point): Turn into...
+       (arm_target::low_remove_point): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-crisv32-low.cc (class crisv32_target) <low_insert_point>
+       <low_remove_point>: Declare.
+       (crisv32_insert_point): Turn into...
+       (crisv32_target::low_insert_point): ...this.
+       (crisv32_remove_point): Turn into...
+       (crisv32_target::low_remove_point): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-mips-low.cc (class mips_target) <low_insert_point>
+       <low_remove_point>: Declare.
+       (mips_insert_point): Turn into...
+       (mips_target::low_insert_point): ...this.
+       (mips_remove_point): Turn into...
+       (mips_target::low_remove_point): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-ppc-low.cc (class ppc_target) <low_insert_point>
+       <low_remove_point>: Declare.
+       (ppc_insert_point): Turn into...
+       (ppc_target::low_insert_point): ...this.
+       (ppc_remove_point): Turn into...
+       (ppc_target::low_remove_point): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-bfin-low.cc (the_low_target): Remove the op fields.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-sparc-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'supports_z_point_type' linux target op and let the
+       concrete linux target define it by overriding the op declared in
+       process_stratum_target.
+
+       * linux-low.cc (linux_process_target::supports_z_point_type):
+       Remove.
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <supports_z_point_type>: Remove.
+       * linux-x86-low.cc (class x86_target) <supports_z_point_type>:
+       Declare.
+       (x86_supports_z_point_type): Turn into...
+       (x86_target::supports_z_point_type): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <supports_z_point_type>: Declare.
+       (aarch64_supports_z_point_type): Turn into...
+       (aarch64_target::supports_z_point_type): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (class arm_target) <supports_z_point_type>:
+       Declare.
+       (arm_supports_z_point_type): Turn into...
+       (arm_target::supports_z_point_type): ...this.
+       (the_low_target): Remove the op field.
+       * linux-crisv32-low.cc (class crisv32_target)
+       <supports_z_point_type>: Declare.
+       (cris_supports_z_point_type): Turn into...
+       (crisv32_target::supports_z_point_type): ...this.
+       (the_low_target): Remove the op field.
+       * linux-mips-low.cc (class mips_target) <supports_z_point_type>:
+       Declare.
+       (mips_supports_z_point_type): Turn into...
+       (mips_target::supports_z_point_type): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (class ppc_target) <supports_z_point_type>:
+       Declare.
+       (ppc_supports_z_point_type): Turn into...
+       (ppc_target::supports_z_point_type): ...this.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (class s390_target) <supports_z_point_type>:
+       Declare.
+       (s390_supports_z_point_type): Turn into...
+       (s390_target::supports_z_point_type): ...this.
+       (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (the_low_target): Remove the op field.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-sparc-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'breakpoint_at' linux target op into a method of
+       linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <low_breakpoint_at>: Declare.
+
+       Update the callers below:
+
+       * linux-low.cc (linux_process_target::save_stop_reason)
+       (linux_process_target::thread_still_has_status_pending)
+       (linux_process_target::wait_1)
+
+       * linux-x86-low.cc (class x86_target)
+       <low_breakpoint_at>: Declare.
+       (x86_breakpoint_at): Turn into...
+       (x86_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <low_breakpoint_at>: Declare.
+       (aarch64_breakpoint_at): Turn into...
+       (aarch64_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (class arm_target)
+       <low_breakpoint_at>: Declare.
+       (arm_target::low_breakpoint_at): Define.
+       (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (class bfin_target)
+       <low_breakpoint_at>: Declare.
+       (bfin_breakpoint_at): Turn into...
+       (bfin_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-cris-low.cc (class cris_target)
+       <low_breakpoint_at>: Declare.
+       (cris_breakpoint_at): Turn into...
+       (cris_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-crisv32-low.cc (class crisv32_target)
+       <low_breakpoint_at>: Declare.
+       (crisv32_breakpoint_at): Turn into...
+       (crisv32_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ia64-low.cc (class ia64_target)
+       <low_breakpoint_at>: Declare.
+       (ia64_target::low_breakpoint_at): Define.
+       * linux-m32r-low.cc (class m32r_target)
+       <low_breakpoint_at>: Declare.
+       (m32r_breakpoint_at): Turn into...
+       (m32r_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-m68k-low.cc (class m68k_target)
+       <low_breakpoint_at>: Declare.
+       (m68k_breakpoint_at): Turn into...
+       (m68k_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-mips-low.cc (class mips_target)
+       <low_breakpoint_at>: Declare.
+       (mips_breakpoint_at): Turn into...
+       (mips_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-nios2-low.cc (class nios2_target)
+       <low_breakpoint_at>: Declare.
+       (nios2_breakpoint_at): Turn into...
+       (nios2_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (class ppc_target)
+       <low_breakpoint_at>: Declare.
+       (ppc_breakpoint_at): Turn into...
+       (ppc_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-riscv-low.cc (class riscv_target)
+       <low_breakpoint_at>: Declare.
+       (riscv_breakpoint_at): Turn into...
+       (riscv_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (class s390_target)
+       <low_breakpoint_at>: Declare.
+       (s390_breakpoint_at): Turn into...
+       (s390_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-sh-low.cc (class sh_target)
+       <low_breakpoint_at>: Declare.
+       (sh_breakpoint_at): Turn into...
+       (sh_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-sparc-low.cc (class sparc_target)
+       <low_breakpoint_at>: Declare.
+       (sparc_breakpoint_at): Turn into...
+       (sparc_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-tic6x-low.cc (class tic6x_target)
+       <low_breakpoint_at>: Declare.
+       (tic6x_breakpoint_at): Turn into...
+       (tic6x_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-tile-low.cc (class tile_target)
+       <low_breakpoint_at>: Declare.
+       (tile_breakpoint_at): Turn into...
+       (tile_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+       * linux-xtensa-low.cc (class xtensa_target)
+       <low_breakpoint_at>: Declare.
+       (xtensa_breakpoint_at): Turn into...
+       (xtensa_target::low_breakpoint_at): ...this.
+       (the_low_target): Remove the op field.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'decr_pc_after_break' linux_target_ops field into
+       a method of linux_process_target.
+
+       * linux-low.h (struct linux_target_ops)
+       <decr_pc_after_break>: Remove.
+       (class linux_process_target) <low_decr_pc_after_break>: New method
+       declaration.
+       * linux-low.cc (linux_process_target::low_decr_pc_after_break):
+       New method implementation.
+
+       Update the users below.
+
+       (linux_process_target::save_stop_reason)
+       (linux_process_target::wait_1)
+       * linux-x86-low.cc (class x86_target) <low_decr_pc_after_break>:
+       New declaration.
+       (x86_target::low_decr_pc_after_break): New method implementation.
+       (the_low_target): Remove the field.
+       * linux-bfin-low.cc (class bfin_target) <low_decr_pc_after_break>:
+       New declaration.
+       (bfin_target::low_decr_pc_after_break): New method implementation.
+       (the_low_target): Remove the field.
+       * linux-m68k-low.cc (class m68k_target) <low_decr_pc_after_break>:
+       New declaration.
+       (m68k_target::low_decr_pc_after_break): New method implementation.
+       (the_low_target): Remove the field.
+       * linux-s390-low.cc (class s390_target) <low_decr_pc_after_break>:
+       New declaration.
+       (s390_target::low_decr_pc_after_break): New method implementation.
+       (the_low_target): Remove the field.
+       * linux-aarch64-low.cc (the_low_target): Remove the field.
+       * linux-arm-low.cc (the_low_target): Remove the field.
+       * linux-cris-low.cc (the_low_target): Remove the field.
+       * linux-crisv32-low.cc (the_low_target): Remove the field.
+       * linux-m32r-low.cc (the_low_target): Remove the field.
+       * linux-mips-low.cc (the_low_target): Remove the field.
+       * linux-nios2-low.cc (the_low_target): Remove the field.
+       * linux-ppc-low.cc (the_low_target): Remove the field.
+       * linux-riscv-low.cc (the_low_target): Remove the field.
+       * linux-sh-low.cc (the_low_target): Remove the field.
+       * linux-sparc-low.cc (the_low_target): Remove the field.
+       * linux-tic6x-low.cc (the_low_target): Remove the field.
+       * linux-tile-low.cc (the_low_target): Remove the field.
+       * linux-xtensa-low.cc (the_low_target): Remove the field.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'supports_software_single_step' linux target op and let
+       the concrete linux target define it by overriding the op in
+       process_stratum_target.
+       Turn the 'get_next_pcs' linux target op into a method of
+       linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the ops.
+       (class linux_process_target) <supports_software_single_step>:
+       Remove.
+       <low_get_next_pcs>: Declare.
+       * linux-low.cc (can_software_single_step): Remove.
+       (linux_process_target::low_get_next_pcs): Define.
+       (linux_process_target::supports_software_single_step): Remove.
+
+       Update the callers below.
+
+       (linux_process_target::handle_extended_wait)
+       (linux_process_target::wait_1)
+       (linux_process_target::install_software_single_step_breakpoints)
+       (linux_process_target::single_step)
+       (linux_process_target::thread_needs_step_over)
+       (linux_process_target::proceed_one_lwp)
+       (linux_process_target::supports_range_stepping)
+
+       * linux-x86-low.cc (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (the_low_target): Ditto.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-cris-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-mips-low.cc (the_low_target): Ditto.
+       * linux-nios2-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-riscv-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-sparc-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+       * linux-arm-low.cc (class arm_target) <low_get_next_pcs>
+       <supports_software_single_step>: Declare.
+       (arm_target::supports_software_single_step): Define.
+       (arm_gdbserver_get_next_pcs): Turn into...
+       (arm_target::low_get_next_pcs): ...this.
+       (the_low_target): Remove the op field.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'sw_breakpoint_from_kind' linux target op, and let
+       the concrete linux target define it by overriding the op
+       in process_stratum_target.
+
+       * linux-low.cc (linux_process_target::sw_breakpoint_from_kind):
+       Remove.
+       * linux-low.h (struct linux_target_ops): Remove the op.
+       (class linux_process_target) <sw_breakpoint_from_kind>: Remove.
+       * linux-x86-low.cc (class x86_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (x86_sw_breakpoint_from_kind): Turn into...
+       (x86_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <sw_breakpoint_from_kind>: Declare.
+       (aarch64_sw_breakpoint_from_kind): Turn into...
+       (aarch64_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-arm-low.cc (class arm_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (arm_target::sw_breakpoint_from_kind): Define.
+       (the_low_target): Remove the op field.
+       * linux-bfin-low.cc (class bfin_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (bfin_sw_breakpoint_from_kind): Turn into...
+       (bfin_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-cris-low.cc (class cris_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (cris_sw_breakpoint_from_kind): Turn into...
+       (cris_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-crisv32-low.cc (class crisv32_target)
+       <sw_breakpoint_from_kind>: Declare.
+       (cris_sw_breakpoint_from_kind): Turn into...
+       (crisv32_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ia64-low.cc (class ia64_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (ia64_target::sw_breakpoint_from_kind): Define.
+       * linux-m32r-low.cc (class m32r_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (m32r_sw_breakpoint_from_kind): Turn into...
+       (m32r_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-m68k-low.cc (class m68k_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (m68k_sw_breakpoint_from_kind): Turn into...
+       (m68k_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-mips-low.cc (class mips_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (mips_sw_breakpoint_from_kind): Turn into...
+       (mips_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-nios2-low.cc (class nios2_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (nios2_sw_breakpoint_from_kind): Turn into...
+       (nios2_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-ppc-low.cc (class ppc_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (ppc_sw_breakpoint_from_kind): Turn into...
+       (ppc_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-riscv-low.cc (class riscv_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (riscv_sw_breakpoint_from_kind): Turn into...
+       (riscv_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-s390-low.cc (class s390_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (s390_sw_breakpoint_from_kind): Turn into...
+       (s390_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-sh-low.cc (class sh_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (sh_sw_breakpoint_from_kind): Turn into...
+       (sh_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-sparc-low.cc (class sparc_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (sparc_sw_breakpoint_from_kind): Turn into...
+       (sparc_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-tic6x-low.cc (class tic6x_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (tic6x_sw_breakpoint_from_kind): Turn into...
+       (tic6x_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-tile-low.cc (class tile_target) <sw_breakpoint_from_kind>:
+       Declare.
+       (tile_sw_breakpoint_from_kind): Turn into...
+       (tile_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+       * linux-xtensa-low.cc (class xtensa_target)
+       <sw_breakpoint_from_kind>: Declare.
+       (xtensa_sw_breakpoint_from_kind): Turn into...
+       (xtensa_target::sw_breakpoint_from_kind): ...this.
+       (the_low_target): Remove the op field.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Remove the 'breakpoint_kind_from_pc' and
+       'breakpoint_kind_from_current_state' linux target ops, and let the
+       concrete linux target define them by overriding the ops of
+       process_stratum_target.
+
+       * linux-low.cc (linux_process_target::breakpoint_kind_from_pc):
+       Remove.
+       (linux_process_target::breakpoint_kind_from_current_state): Remove.
+       * linux-low.h (struct linux_target_ops): Remove ops.
+       (class linux_process_target) <breakpoint_kind_from_pc>: Remove.
+       <breakpoint_kind_from_current_state>: Remove.
+       * linux-x86-low.cc (the_low_target): Remove the op fields.
+       * linux-bfin-low.cc (the_low_target): Ditto.
+       * linux-cris-low.cc (the_low_target): Ditto.
+       * linux-crisv32-low.cc (the_low_target): Ditto.
+       * linux-m32r-low.cc (the_low_target): Ditto.
+       * linux-m68k-low.cc (the_low_target): Ditto.
+       * linux-mips-low.cc (the_low_target): Ditto.
+       * linux-nios2-low.cc (the_low_target): Ditto.
+       * linux-ppc-low.cc (the_low_target): Ditto.
+       * linux-s390-low.cc (the_low_target): Ditto.
+       * linux-sh-low.cc (the_low_target): Ditto.
+       * linux-sparc-low.cc (the_low_target): Ditto.
+       * linux-tic6x-low.cc (the_low_target): Ditto.
+       * linux-tile-low.cc (the_low_target): Ditto.
+       * linux-xtensa-low.cc (the_low_target): Ditto.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <breakpoint_kind_from_pc>
+       <breakpoint_kind_from_current_state>: Declare.
+       (aarch64_breakpoint_kind_from_pc): Turn into...
+       (aarch64_target::breakpoint_kind_from_pc): ...this.
+       (aarch64_breakpoint_kind_from_current_state): Turn into...
+       (aarch64_target::breakpoint_kind_from_current_state): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-arm-low.cc (class arm_target):
+       <breakpoint_kind_from_pc>
+       <breakpoint_kind_from_current_state>: Declare.
+       (arm_target::breakpoint_kind_from_pc): Define.
+       (arm_target::breakpoint_kind_from_current_state): Define.
+       (the_low_target): Remove the op fields.
+       * linux-riscv-low.cc (class riscv_target):
+       <breakpoint_kind_from_pc>: Declare.
+       (riscv_breakpoint_kind_from_pc): Turn into...
+       (riscv_target::breakpoint_kind_from_pc): ...this.
+       (the_low_target): Remove the op fields.
+
+2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
+
+       Turn the 'get_pc' and 'set_pc' linux target ops into methods
+       of linux_process_target.
+
+       * linux-low.h (struct linux_target_ops): Remove the ops.
+       (class linux_process_target) <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       * linux-low.cc (supports_breakpoints): Turn into...
+       (linux_process_target::low_supports_breakpoints): ...this.
+       (linux_process_target::low_get_pc): Define.
+       (linux_process_target::low_set_pc): Define.
+
+       Update the callers below.
+
+       (linux_process_target::get_pc)
+       (linux_process_target::save_stop_reason)
+       (linux_process_target::maybe_move_out_of_jump_pad)
+       (linux_process_target::wait_1)
+       (linux_process_target::resume_one_lwp_throw)
+       (linux_process_target::resume)
+       (linux_process_target::proceed_all_lwps)
+       (linux_process_target::read_pc)
+       (linux_process_target::write_pc)
+
+       * linux-x86-low.cc (class linux_process_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (x86_target::low_supports_breakpoints): Define.
+       (x86_get_pc): Turn into...
+       (x86_target::low_get_pc): ...this.
+       (x86_set_pc): Turn into...
+       (x86_target::low_set_pc): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-arm-low.cc (class arm_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (arm_target::low_supports_breakpoints)
+       (arm_target::low_get_pc)
+       (arm_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-bfin-low.cc (class bfin_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (bfin_target::low_supports_breakpoints)
+       (bfin_target::low_get_pc)
+       (bfin_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-cris-low.cc (class cris_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (cris_target::low_supports_breakpoints)
+       (cris_target::low_get_pc)
+       (cris_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-crisv32-low.cc (class crisv32_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (crisv32_target::low_supports_breakpoints)
+       (crisv32_target::low_get_pc)
+       (crisv32_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-m32r-low.cc (class m32r_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (m32r_target::low_supports_breakpoints)
+       (m32r_target::low_get_pc)
+       (m32r_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-m68k-low.cc (class m68k_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (m68k_target::low_supports_breakpoints)
+       (m68k_target::low_get_pc)
+       (m68k_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-nios2-low.cc (class nios2_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (nios2_target::low_supports_breakpoints)
+       (nios2_target::low_get_pc)
+       (nios2_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-sh-low.cc (class sh_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (sh_target::low_supports_breakpoints)
+       (sh_target::low_get_pc)
+       (sh_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-xtensa-low.cc (class xtensa_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (xtensa_target::low_supports_breakpoints)
+       (xtensa_target::low_get_pc)
+       (xtensa_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-sparc-low.cc (class sparc_target)
+       <low_supports_breakpoints>
+       <low_get_pc>: Declare.
+       (sparc_target::low_supports_breakpoints)
+       (sparc_target::low_get_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-tile-low.cc (class tile_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (tile_target::low_supports_breakpoints)
+       (tile_target::low_get_pc)
+       (tile_target::low_set_pc): Define.
+       (the_low_target): Remove the op fields.
+       * linux-aarch64-low.cc (class aarch64_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (aarch64_target::low_supports_breakpoints): Define.
+       (aarch64_get_pc): Turn into...
+       (aarch64_target::low_get_pc): ...this.
+       (aarch64_set_pc): Turn into...
+       (aarch64_target::low_set_pc): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-mips-low.cc (class mips_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (mips_target::low_supports_breakpoints): Define.
+       (mips_get_pc): Turn into...
+       (mips_target::low_get_pc): ...this.
+       (mips_set_pc): Turn into...
+       (mips_target::low_set_pc): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-ppc-low.cc (class ppc_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (ppc_target::low_supports_breakpoints): Define.
+       (ppc_get_pc): Turn into...
+       (ppc_target::low_get_pc): ...this.
+       (ppc_set_pc): Turn into...
+       (ppc_target::low_set_pc): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-riscv-low.cc (class riscv_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (riscv_target::low_supports_breakpoints): Define.
+       (riscv_get_pc): Turn into...
+       (riscv_target::low_get_pc): ...this.
+       (riscv_set_pc): Turn into...
+       (riscv_target::low_set_pc): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-s390-low.cc (class s390_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (s390_target::low_supports_breakpoints): Define.
+       (s390_get_pc): Turn into...
+       (s390_target::low_get_pc): ...this.
+       (s390_set_pc): Turn into...
+       (s390_target::low_set_pc): ...this.
+       (the_low_target): Remove the op fields.
+       * linux-tic6x-low.cc (class tic6x_target)
+       <low_supports_breakpoints>
+       <low_get_pc>
+       <low_set_pc>: Declare.
+       (tic6x_target::low_supports_breakpoints): Define.
+       (tic6x_get_pc): Turn into...
+       (tic6x_target::low_get_pc): ...this.
+       (tic6x_set_pc): Turn into...
+       (tic6x_target::low_set_pc): ...this.
+       (the_low_target): Remove the op fields.
+
 2020-04-02  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
 
        Turn some more static methods in linux-low into private methods
This page took 0.067897 seconds and 4 git commands to generate.