LLDB  mainline
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::TraceDumper Class Reference

Class used to dump the instructions of a TraceCursor using its current state and granularity. More...

#include <TraceDumper.h>

Collaboration diagram for lldb_private::TraceDumper:
Collaboration graph
[legend]

Classes

class  OutputWriter
 Interface used to abstract away the format in which the instruction information will be dumped. More...
 
struct  SymbolInfo
 Helper struct that holds symbol, disassembly and address information of an instruction. More...
 
struct  TraceItem
 Helper struct that holds all the information we know about a trace item. More...
 

Public Member Functions

 TraceDumper (lldb::TraceCursorUP &&cursor_up, Stream &s, const TraceDumperOptions &options)
 Create a instruction dumper for the cursor. More...
 
llvm::Optional< lldb::user_id_tDumpInstructions (size_t count)
 Dump count instructions of the thread trace starting at the current cursor position. More...
 

Private Member Functions

TraceItem CreatRawTraceItem ()
 Create a trace item for the current position without symbol information. More...
 

Private Attributes

lldb::TraceCursorUP m_cursor_up
 
TraceDumperOptions m_options
 
std::unique_ptr< OutputWriterm_writer_up
 

Detailed Description

Class used to dump the instructions of a TraceCursor using its current state and granularity.

Definition at line 48 of file TraceDumper.h.

Constructor & Destructor Documentation

◆ TraceDumper()

TraceDumper::TraceDumper ( lldb::TraceCursorUP &&  cursor_up,
Stream s,
const TraceDumperOptions options 
)

Create a instruction dumper for the cursor.

Parameters
[in]cursorThe cursor whose instructions will be dumped.
[in]sThe stream where to dump the instructions to.
[in]optionsAdditional options for configuring the dumping.

Definition at line 268 of file TraceDumper.cpp.

References lldb_private::TraceCursor::Beginning, lldb_private::TraceCursor::Current, lldb_private::TraceCursor::End, lldb_private::TraceDumperOptions::forwards, lldb_private::TraceDumperOptions::id, m_cursor_up, m_options, and lldb_private::TraceDumperOptions::skip.

Member Function Documentation

◆ CreatRawTraceItem()

TraceDumper::TraceItem TraceDumper::CreatRawTraceItem ( )
private

Create a trace item for the current position without symbol information.

Definition at line 288 of file TraceDumper.cpp.

References lldb::eTraceCounterTSC, lldb_private::TraceDumper::TraceItem::id, m_cursor_up, m_options, lldb_private::TraceDumperOptions::show_tsc, and lldb_private::TraceDumper::TraceItem::tsc.

Referenced by DumpInstructions().

◆ DumpInstructions()

Optional< lldb::user_id_t > TraceDumper::DumpInstructions ( size_t  count)

Member Data Documentation

◆ m_cursor_up

lldb::TraceCursorUP lldb_private::TraceDumper::m_cursor_up
private

Definition at line 116 of file TraceDumper.h.

Referenced by CreatRawTraceItem(), DumpInstructions(), and TraceDumper().

◆ m_options

TraceDumperOptions lldb_private::TraceDumper::m_options
private

Definition at line 117 of file TraceDumper.h.

Referenced by CreatRawTraceItem(), DumpInstructions(), and TraceDumper().

◆ m_writer_up

std::unique_ptr<OutputWriter> lldb_private::TraceDumper::m_writer_up
private

Definition at line 118 of file TraceDumper.h.

Referenced by DumpInstructions().


The documentation for this class was generated from the following files: