From bf9f21a28be171dc500cc68b4cb1fcd3fc33f229 Mon Sep 17 00:00:00 2001 From: Walter Erquinigo Date: Tue, 1 Jun 2021 15:34:06 -0700 Subject: [trace][intel-pt] Create basic SB API This adds a basic SB API for creating and stopping traces. Note: This doesn't add any APIs for inspecting individual instructions. That'd be a more complicated change and it might be better to enhande the dump functionality to output the data in binary format. I'll leave that for a later diff. This also enhances the existing tests so that they test the same flow using both the command interface and the SB API. I also did some cleanup of legacy code. Differential Revision: https://reviews.llvm.org/D103500 --- lldb/source/Commands/CommandObjectThread.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'lldb/source/Commands/CommandObjectThread.cpp') diff --git a/lldb/source/Commands/CommandObjectThread.cpp b/lldb/source/Commands/CommandObjectThread.cpp index 98ace0c7aa11..809dce3c4355 100644 --- a/lldb/source/Commands/CommandObjectThread.cpp +++ b/lldb/source/Commands/CommandObjectThread.cpp @@ -1868,11 +1868,11 @@ public: bool DoExecute(Args &args, CommandReturnObject &result) override { Process *process = m_exe_ctx.GetProcessPtr(); - + if (args.GetArgumentCount() == 0) { process->PruneThreadPlans(); result.SetStatus(eReturnStatusSuccessFinishNoResult); - return true; + return true; } const size_t num_args = args.GetArgumentCount(); @@ -1960,12 +1960,12 @@ public: ~CommandObjectTraceStop() override = default; bool DoExecuteOnThreads(Args &command, CommandReturnObject &result, - const std::vector &tids) override { + llvm::ArrayRef tids) override { ProcessSP process_sp = m_exe_ctx.GetProcessSP(); TraceSP trace_sp = process_sp->GetTarget().GetTrace(); - if (llvm::Error err = trace_sp->StopThreads(tids)) + if (llvm::Error err = trace_sp->Stop(tids)) result.SetError(toString(std::move(err))); else result.SetStatus(eReturnStatusSuccessFinishResult); -- cgit v1.2.3