================
@@ -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()) {
----------------
jimingham wrote:
I think this should be checked first. It's kind of goofy if you try to do a
"reverse step with signal" and get told that "can't deliver signals while
running in reverse", so then you say "okay just do the reverse step" and get
told that the target doesn't in fact support reverse continue at all...
https://github.com/llvm/llvm-project/pull/112079
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits