aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
diff options
context:
space:
mode:
authorMichał Górny <mgorny@moritz.systems>2021-08-11 22:58:11 +0200
committerMichał Górny <mgorny@moritz.systems>2021-09-10 14:08:36 +0200
commit6ba3f7237dc750aad2ce1d6a7a15e3b78370221a (patch)
tree9d452ed09ae1b0c82f25072c2cc28a8227eb1238 /lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
parent501eaf88770d15de92fa0eb7435f0470a3b93b0a (diff)
downloadllvm-6ba3f7237dc750aad2ce1d6a7a15e3b78370221a.zip
llvm-6ba3f7237dc750aad2ce1d6a7a15e3b78370221a.tar.gz
llvm-6ba3f7237dc750aad2ce1d6a7a15e3b78370221a.tar.bz2
[lldb] [gdb-remote] Implement the vRun packet
Implement the simpler vRun packet and prefer it over the A packet. Unlike the latter, it tranmits command-line arguments without redundant indices and lengths. This also improves GDB compatibility since modern versions of gdbserver do not implement the A packet at all. Make qLaunchSuccess not obligatory when using vRun. It is not implemented by gdbserver, and since vRun returns the stop reason, we can assume it to be successful. Differential Revision: https://reviews.llvm.org/D107931
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
index fde5897..376adfe 100644
--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
+++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
@@ -588,7 +588,8 @@ protected:
m_supports_qSymbol : 1, m_qSymbol_requests_done : 1,
m_supports_qModuleInfo : 1, m_supports_jThreadsInfo : 1,
m_supports_jModulesInfo : 1, m_supports_vFileSize : 1,
- m_supports_vFileMode : 1, m_supports_vFileExists : 1;
+ m_supports_vFileMode : 1, m_supports_vFileExists : 1,
+ m_supports_vRun : 1;
/// Current gdb remote protocol process identifier for all other operations
lldb::pid_t m_curr_pid = LLDB_INVALID_PROCESS_ID;