aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
diff options
context:
space:
mode:
authorJim Ingham <jingham@apple.com>2023-07-11 12:29:22 -0700
committerJim Ingham <jingham@apple.com>2023-07-11 12:33:22 -0700
commit8402ad23104b6b20f07596738b02a4ab101a8af9 (patch)
tree148781a12ff5e9884d3c86f0f77d7c285ee4820d /lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
parent18e13739b8c02e0b82e3e587c33e8731c8a46b0a (diff)
downloadllvm-8402ad23104b6b20f07596738b02a4ab101a8af9.zip
llvm-8402ad23104b6b20f07596738b02a4ab101a8af9.tar.gz
llvm-8402ad23104b6b20f07596738b02a4ab101a8af9.tar.bz2
Add a generic Process method to dump plugin history.
I need to call this to figure out why the assert in StopInfoMachException::CreateStopReasonWithMachException is triggering, but it isn't appropriate to directly access the GDBRemoteCommunication there. And dumping whatever history the process plugin has collected during the run isn't gdb-remote specific... Differential Revision: https://reviews.llvm.org/D154992
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
index 522dee9..b6f146f 100644
--- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
@@ -113,7 +113,7 @@ void DumpProcessGDBRemotePacketHistory(void *p, const char *path) {
return;
}
StreamFile stream(std::move(file.get()));
- ((ProcessGDBRemote *)p)->GetGDBRemote().DumpHistory(stream);
+ ((Process *)p)->DumpPluginHistory(stream);
}
} // namespace lldb
@@ -205,6 +205,11 @@ lldb::ProcessSP ProcessGDBRemote::CreateInstance(
return process_sp;
}
+void ProcessGDBRemote::DumpPluginHistory(Stream &s) {
+ GDBRemoteCommunicationClient &gdb_comm(GetGDBRemote());
+ gdb_comm.DumpHistory(s);
+}
+
std::chrono::seconds ProcessGDBRemote::GetPacketTimeout() {
return std::chrono::seconds(GetGlobalPluginProperties().GetPacketTimeout());
}
@@ -5217,7 +5222,7 @@ public:
ProcessGDBRemote *process =
(ProcessGDBRemote *)m_interpreter.GetExecutionContext().GetProcessPtr();
if (process) {
- process->GetGDBRemote().DumpHistory(result.GetOutputStream());
+ process->DumpPluginHistory(result.GetOutputStream());
result.SetStatus(eReturnStatusSuccessFinishResult);
return true;
}