================
@@ -1363,9 +1375,51 @@ Status ProcessGDBRemote::DoResume() {
}
}
+ if (direction == RunDirection::eRunReverse && continue_packet_error) {
+ if (num_continue_C_tids > 0 || num_continue_S_tids > 0) {
+ LLDB_LOGF(log,
+ "ProcessGDBRemote::DoResumeReverse: Signals not supported");
+ return Status::FromErrorString(
+ "can't deliver signals while running in reverse");
+ }
+
+ if (num_continue_s_tids > 0) {
+ if (num_continue_s_tids > 1) {
+ LLDB_LOGF(
+ log,
+ "ProcessGDBRemote::DoResumeReverse: can't step multiple
threads");
+ return Status::FromErrorString(
+ "can't step multiple threads while reverse-stepping");
+ }
+
+ if (!m_gdb_comm.GetReverseStepSupported()) {
----------------
rocallahan wrote:
These aren't the same check. Reverse-step and reverse-continue are, strictly
speaking, separate features, although I don't know of any implementations that
support one but not the other.
https://github.com/llvm/llvm-project/pull/112079
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits