aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
diff options
context:
space:
mode:
authorDavid Spickett <david.spickett@linaro.org>2025-01-31 15:56:33 +0000
committerGitHub <noreply@github.com>2025-01-31 15:56:33 +0000
commit7e66cf74fb4e6a103f923e34700a7b6f20ac2a9b (patch)
tree3f36172b709672dcfe7558bbdfd10b6c795d560f /lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
parent0d63a3d7572039095fabeadc7f1370da7dfa0d1b (diff)
downloadllvm-7e66cf74fb4e6a103f923e34700a7b6f20ac2a9b.zip
llvm-7e66cf74fb4e6a103f923e34700a7b6f20ac2a9b.tar.gz
llvm-7e66cf74fb4e6a103f923e34700a7b6f20ac2a9b.tar.bz2
Reland "[lldb] Implement basic support for reverse-continue" (#125242)
This reverts commit a774de807e56c1147d4630bfec3110c11d41776e. This is the same changes as last time, plus: * We load the binary into the target object so that on Windows, we can resolve the locations of the functions. * We now assert that each required breakpoint has at least 1 location, to prevent an issue like that in the future. * We are less strict about the unsupported error message, because it prints "error: windows" on Windows instead of "error: gdb-remote".
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h')
-rw-r--r--lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
index 1118a76..a765e95 100644
--- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
+++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
@@ -338,6 +338,10 @@ public:
bool GetMultiprocessSupported();
+ bool GetReverseContinueSupported();
+
+ bool GetReverseStepSupported();
+
LazyBool SupportsAllocDeallocMemory() // const
{
// Uncomment this to have lldb pretend the debug server doesn't respond to
@@ -568,6 +572,8 @@ protected:
LazyBool m_supports_qSaveCore = eLazyBoolCalculate;
LazyBool m_uses_native_signals = eLazyBoolCalculate;
std::optional<xPacketState> m_x_packet_state;
+ LazyBool m_supports_reverse_continue = eLazyBoolCalculate;
+ LazyBool m_supports_reverse_step = eLazyBoolCalculate;
bool m_supports_qProcessInfoPID : 1, m_supports_qfProcessInfo : 1,
m_supports_qUserName : 1, m_supports_qGroupName : 1,