aboutsummaryrefslogtreecommitdiff
path: root/gdbserver/linux-low.cc
diff options
context:
space:
mode:
authorTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2020-02-17 16:11:51 +0100
committerTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2020-02-20 17:35:03 +0100
commit8adb37b9c039168ed8805c5edffc34e12d84ff04 (patch)
tree3181f40acbefa53c823444bdb8280d0eaedd2f54 /gdbserver/linux-low.cc
parent9061c9cfb3a0d4105873dbd5b411d75f475e0bf1 (diff)
downloadgdb-8adb37b9c039168ed8805c5edffc34e12d84ff04.zip
gdb-8adb37b9c039168ed8805c5edffc34e12d84ff04.tar.gz
gdb-8adb37b9c039168ed8805c5edffc34e12d84ff04.tar.bz2
gdbserver: turn target op 'mourn' into a method
gdbserver/ChangeLog: 2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com> Turn process_stratum_target's mourn 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. * target.cc (target_mourn_inferior): Update. * linux-low.cc (linux_target_ops): Update. (linux_mourn): Turn into ... (linux_process_target::mourn): ... this. (handle_extended_wait): Update. (linux_process_target::kill): Update. (linux_process_target::detach): Update. * linux-low.h (class linux_process_target): Update. * lynx-low.cc (lynx_target_ops): Update. (lynx_mourn): Turn into ... (lynx_process_target::mourn): ... this. * lynx-low.h (class lynx_process_target): Update. * nto-low.cc (nto_target_ops): Update. (nto_mourn): Turn into ... (nto_process_target::mourn): ... this. * nto-low.h (class nto_process_target): Update. * win32-low.cc (win32_target_ops): Update. (win32_mourn): Turn into ... (win32_process_target::mourn): ... this. * win32-low.h (class win32_process_target): Update.
Diffstat (limited to 'gdbserver/linux-low.cc')
-rw-r--r--gdbserver/linux-low.cc12
1 files changed, 5 insertions, 7 deletions
diff --git a/gdbserver/linux-low.cc b/gdbserver/linux-low.cc
index 1feb7d9..66790ee 100644
--- a/gdbserver/linux-low.cc
+++ b/gdbserver/linux-low.cc
@@ -270,7 +270,6 @@ static int linux_wait_for_event_filtered (ptid_t wait_ptid, ptid_t filter_ptid,
int *wstat, int options);
static int linux_wait_for_event (ptid_t ptid, int *wstat, int options);
static struct lwp_info *add_lwp (ptid_t ptid);
-static void linux_mourn (struct process_info *process);
static int linux_stopped_by_watchpoint (void);
static void mark_lwp_dead (struct lwp_info *lwp, int wstat);
static int lwp_is_marked_dead (struct lwp_info *lwp);
@@ -707,7 +706,7 @@ handle_extended_wait (struct lwp_info **orig_event_lwp, int wstat)
syscalls_to_catch = std::move (proc->syscalls_to_catch);
/* Delete the execing process and all its threads. */
- linux_mourn (proc);
+ the_target->pt->mourn (proc);
current_thread = NULL;
/* Create a new process/lwp/thread. */
@@ -1413,7 +1412,7 @@ linux_process_target::kill (process_info *process)
else
kill_wait_lwp (lwp);
- the_target->mourn (process);
+ mourn (process);
/* Since we presently can only stop all lwps of all processes, we
need to unstop lwps of other processes. */
@@ -1634,7 +1633,7 @@ linux_process_target::detach (process_info *process)
main_lwp = find_lwp_pid (ptid_t (process->pid));
linux_detach_one_lwp (main_lwp);
- the_target->mourn (process);
+ mourn (process);
/* Since we presently can only stop all lwps of all processes, we
need to unstop lwps of other processes. */
@@ -1644,8 +1643,8 @@ linux_process_target::detach (process_info *process)
/* Remove all LWPs that belong to process PROC from the lwp list. */
-static void
-linux_mourn (struct process_info *process)
+void
+linux_process_target::mourn (process_info *process)
{
struct process_info_private *priv;
@@ -7359,7 +7358,6 @@ linux_get_hwcap2 (int wordsize)
static linux_process_target the_linux_target;
static process_stratum_target linux_target_ops = {
- linux_mourn,
linux_join,
linux_thread_alive,
linux_resume,