aboutsummaryrefslogtreecommitdiff
path: root/gdb/linux-tdep.c
diff options
context:
space:
mode:
authorPedro Alves <pedro@palves.net>2021-06-22 15:42:51 +0100
committerPedro Alves <pedro@palves.net>2023-03-27 17:17:20 +0100
commit58c010877e77ad9dd4e14272f9500d40b75e7429 (patch)
tree14d9819aa812ac37a985946f408ad4bfe0de8f10 /gdb/linux-tdep.c
parent1e77fa23a02f54be87a79a4931c8ee1d696b3981 (diff)
downloadfsf-binutils-gdb-58c010877e77ad9dd4e14272f9500d40b75e7429.zip
fsf-binutils-gdb-58c010877e77ad9dd4e14272f9500d40b75e7429.tar.gz
fsf-binutils-gdb-58c010877e77ad9dd4e14272f9500d40b75e7429.tar.bz2
displaced step: pass down target_waitstatus instead of gdb_signal
This commit tweaks displaced_step_finish & friends to pass down a target_waitstatus instead of a gdb_signal. This is needed because a patch later in the step-over-{thread-exit,clone] series will want to make displaced_step_buffers::finish handle TARGET_WAITKIND_THREAD_EXITED. It also helps with the TARGET_WAITKIND_THREAD_CLONED patch later in that same series. It's also a bit more logical this way, as we don't have to pass down signals when the thread didn't actually stop for a signal. So we can also think of it as a clean up. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=27338 Change-Id: I4c5d338647b028071bc498c4e47063795a2db4c0 Approved-By: Andrew Burgess <aburgess@redhat.com>
Diffstat (limited to 'gdb/linux-tdep.c')
-rw-r--r--gdb/linux-tdep.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/linux-tdep.c b/gdb/linux-tdep.c
index d0bda5a..1fc9cb6 100644
--- a/gdb/linux-tdep.c
+++ b/gdb/linux-tdep.c
@@ -2626,13 +2626,14 @@ linux_displaced_step_prepare (gdbarch *arch, thread_info *thread,
/* See linux-tdep.h. */
displaced_step_finish_status
-linux_displaced_step_finish (gdbarch *arch, thread_info *thread, gdb_signal sig)
+linux_displaced_step_finish (gdbarch *arch, thread_info *thread,
+ const target_waitstatus &status)
{
linux_info *per_inferior = get_linux_inferior_data (thread->inf);
gdb_assert (per_inferior->disp_step_bufs.has_value ());
- return per_inferior->disp_step_bufs->finish (arch, thread, sig);
+ return per_inferior->disp_step_bufs->finish (arch, thread, status);
}
/* See linux-tdep.h. */