================
@@ -115,8 +148,23 @@ Status
NativeProcessSoftwareSingleStep::SetupSoftwareSingleStepping(
emulator_up->SetWriteMemCallback(&WriteMemoryCallback);
emulator_up->SetWriteRegCallback(&WriteRegisterCallback);
- if (!emulator_up->ReadInstruction())
- return Status("Read instruction failed!");
+ if (!emulator_up->ReadInstruction()) {
+ // try to get at least the size of next instruction to set breakpoint.
+ auto instrSizeOpt = emulator_up->GetLastInstrSize();
+ if (!instrSizeOpt)
+ return Status("Read instruction failed!");
----------------
ita-sc wrote:
Well, in this MR this is a common code, and every other architecture now not
implemented `GetLastInstrSize`, so it will fail with the same error, as it was
before. For RISC-V we will generate the same error if we can not get the size
of instruction (if we can not read memory or if an instruction is bigger than
expected)
https://github.com/llvm/llvm-project/pull/90075
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits