[Lldb-commits] [PATCH] D85705: Add a "Trace" plug-in to LLDB to add process trace support in stages.

walter erquinigo via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Fri Aug 21 12:18:11 PDT 2020


wallace updated this revision to Diff 287079.
wallace added a comment.

- Added libipt as a dependency to build the new intel pt plugin. It's merely a

copy paste of what the old intel pt plugin does.

- Added a test with a sample trace.json definition file. It includes a simple

a.out object file, the source and an intel pt trace that goes from main to the
final return 0. The test checks that the plugin does the parsing of the
structured data correctly and creates the target, process and modules correctly.

- Added the necessary parsing functionalities in Trace.cpp to make sense of the

structured data.

- Added a simple parsing of the intel pt-specific information in the structured

data.

I didn't implement Dump nor Decoding, as in this case the test is quite
comprehensive regarding Load and I want to keep the diff small. I'll implement
the other features later.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D85705/new/

https://reviews.llvm.org/D85705

Files:
  lldb/include/lldb/Core/PluginManager.h
  lldb/include/lldb/Target/Trace.h
  lldb/include/lldb/lldb-forward.h
  lldb/include/lldb/lldb-private-interfaces.h
  lldb/source/Commands/CMakeLists.txt
  lldb/source/Commands/CommandObjectTrace.cpp
  lldb/source/Commands/CommandObjectTrace.h
  lldb/source/Commands/Options.td
  lldb/source/Core/PluginManager.cpp
  lldb/source/Interpreter/CommandInterpreter.cpp
  lldb/source/Plugins/CMakeLists.txt
  lldb/source/Plugins/Trace/CMakeLists.txt
  lldb/source/Plugins/Trace/intel-pt/CMakeLists.txt
  lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.cpp
  lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h
  lldb/source/Target/CMakeLists.txt
  lldb/source/Target/Trace.cpp
  lldb/source/Utility/StructuredData.cpp
  lldb/test/API/commands/trace/TestTraceLoad.py
  lldb/test/API/commands/trace/intelpt-trace/3842849.trace
  lldb/test/API/commands/trace/intelpt-trace/a.out
  lldb/test/API/commands/trace/intelpt-trace/main.cpp
  lldb/test/API/commands/trace/intelpt-trace/trace.json

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D85705.287079.patch
Type: text/x-patch
Size: 40074 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20200821/1f996e72/attachment-0001.bin>


More information about the lldb-commits mailing list