================ @@ -32,6 +32,31 @@ class RegisterValue; class Stream; class Target; class UnwindPlan; +class EmulateInstruction; + +using BreakpointLocations = std::vector<lldb::addr_t>; + +class SingleStepBreakpointLocationsPredictor { +public: + SingleStepBreakpointLocationsPredictor( + std::unique_ptr<EmulateInstruction> emulator_up) + : m_emulator_up{std::move(emulator_up)} {} + + virtual BreakpointLocations GetBreakpointLocations(Status &status); + + virtual unsigned GetBreakpointSize(lldb::addr_t, Status &) { return 4; } + + virtual ~SingleStepBreakpointLocationsPredictor() = default; + +protected: + lldb::addr_t GetSequentiallyNextInstructionPC(Status &error); ---------------- dlav-sc wrote:
I mean next in the binary. I've added a comment about it. https://github.com/llvm/llvm-project/pull/127505 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits