LLDB mainline
|
Class that handles the decoding of a thread and caches the result. More...
#include <ThreadDecoder.h>
Public Member Functions | |
ThreadDecoder (const lldb::ThreadSP &thread_sp, TraceIntelPT &trace) | |
llvm::Expected< DecodedThreadSP > | Decode () |
Decode the thread and store the result internally, to avoid recomputations. | |
llvm::Expected< std::optional< uint64_t > > | FindLowestTSC () |
ThreadDecoder (const ThreadDecoder &other)=delete | |
ThreadDecoder & | operator= (const ThreadDecoder &other)=delete |
Private Member Functions | |
llvm::Expected< DecodedThreadSP > | DoDecode () |
Private Attributes | |
lldb::ThreadSP | m_thread_sp |
TraceIntelPT & | m_trace |
std::optional< DecodedThreadSP > | m_decoded_thread |
Class that handles the decoding of a thread and caches the result.
Definition at line 23 of file ThreadDecoder.h.
ThreadDecoder::ThreadDecoder | ( | const lldb::ThreadSP & | thread_sp, |
TraceIntelPT & | trace | ||
) |
[in] | thread_sp | The thread whose intel pt trace buffer will be decoded. |
[in] | trace | The main Trace object who owns this decoder and its data. |
Definition at line 21 of file ThreadDecoder.cpp.
|
delete |
Expected< DecodedThreadSP > ThreadDecoder::Decode | ( | ) |
Decode the thread and store the result internally, to avoid recomputations.
Definition at line 40 of file ThreadDecoder.cpp.
References DoDecode(), and m_decoded_thread.
|
private |
Definition at line 51 of file ThreadDecoder.cpp.
References lldb_private::trace_intel_pt::TraceIntelPT::GetPerfZeroTscConversion(), lldb_private::trace_intel_pt::TraceIntelPT::GetThreadTimer(), m_thread_sp, m_trace, lldb_private::trace_intel_pt::TraceIntelPT::OnThreadBufferRead(), and lldb_private::trace_intel_pt::ScopedTaskTimer::TimeTask().
Referenced by Decode().
Expected< std::optional< uint64_t > > ThreadDecoder::FindLowestTSC | ( | ) |
Definition at line 24 of file ThreadDecoder.cpp.
References m_thread_sp, m_trace, and lldb_private::trace_intel_pt::TraceIntelPT::OnThreadBufferRead().
|
delete |
|
private |
Definition at line 53 of file ThreadDecoder.h.
Referenced by Decode().
|
private |
Definition at line 51 of file ThreadDecoder.h.
Referenced by DoDecode(), and FindLowestTSC().
|
private |
Definition at line 52 of file ThreadDecoder.h.
Referenced by DoDecode(), and FindLowestTSC().