[all-commits] [llvm/llvm-project] 26d861: [trace] Scaffold "thread trace dump instructions"

walter erquinigo via All-commits all-commits at lists.llvm.org
Mon Oct 12 12:08:38 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 26d861cbbd5f40182b3b7f0ac7ed0e58e0e8feaa
      https://github.com/llvm/llvm-project/commit/26d861cbbd5f40182b3b7f0ac7ed0e58e0e8feaa
  Author: Walter Erquinigo <wallace at fb.com>
  Date:   2020-10-12 (Mon, 12 Oct 2020)

  Changed paths:
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/include/lldb/Target/Trace.h
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Plugins/Process/CMakeLists.txt
    A lldb/source/Plugins/Process/Trace/CMakeLists.txt
    A lldb/source/Plugins/Process/Trace/ProcessTrace.cpp
    A lldb/source/Plugins/Process/Trace/ProcessTrace.h
    M lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.cpp
    M lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h
    M lldb/source/Plugins/Trace/intel-pt/TraceIntelPTSessionFileParser.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/Trace.cpp
    A lldb/test/API/commands/trace/TestTraceDumpInstructions.py
    M lldb/test/API/commands/trace/TestTraceLoad.py
    A lldb/test/API/commands/trace/intelpt-trace/trace_2threads.json

  Log Message:
  -----------
  [trace] Scaffold "thread trace dump instructions"

Depends on D88841

As per the discussion in the RFC, we'll implement both

  thread trace dump [instructions | functions]

This is the first step in implementing the "instructions" dumping command.

It includes:

- A minimal ProcessTrace plugin for representing processes from a trace file. I noticed that it was a required step to mimic how core-based processes are initialized, e.g. ProcessElfCore and ProcessMinidump. I haven't had the need to create ThreadTrace yet, though. So far HistoryThread seems good enough.
- The command handling itself in CommandObjectThread, which outputs a placeholder text instead of the actual instructions. I'll do that part in the next diff.
- Tests

{F13132325}

Differential Revision: https://reviews.llvm.org/D88769




More information about the All-commits mailing list