================ @@ -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 lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits