LLDB
mainline
|
#include <DecodedThread.h>
Public Member Functions | |
bool | InRange (size_t insn_index) const |
Check if this TSC range includes the given instruction index. More... | |
llvm::Optional< TscRange > | Next () const |
Get the next range chronologically. More... | |
llvm::Optional< TscRange > | Prev () const |
Get the previous range chronologically. More... | |
size_t | GetTsc () const |
Get the TSC value. More... | |
size_t | GetStartInstructionIndex () const |
Get the smallest instruction index that has this TSC. More... | |
size_t | GetEndInstructionIndex () const |
Get the largest instruction index that has this TSC. More... | |
Private Member Functions | |
TscRange (std::map< size_t, uint64_t >::const_iterator it, const DecodedThread &decoded_thread) | |
Private Attributes | |
std::map< size_t, uint64_t >::const_iterator | m_it |
The iterator pointing to the beginning of the range. More... | |
size_t | m_end_index |
The largest instruction index that has this TSC. More... | |
const DecodedThread * | m_decoded_thread |
Friends | |
class | DecodedThread |
Class that represents the trace range associated with a given TSC. It provides efficient iteration to the previous or next TSC range in the decoded trace.
TSC timestamps are emitted by the decoder infrequently, which means that each TSC covers a range of instruction indices, which can be used to speed up TSC lookups.
Definition at line 82 of file DecodedThread.h.
|
private |
Definition at line 184 of file DecodedThread.cpp.
References m_decoded_thread, m_end_index, m_it, and lldb_private::trace_intel_pt::DecodedThread::m_timestamps.
size_t DecodedThread::TscRange::GetEndInstructionIndex | ( | ) | const |
Get the largest instruction index that has this TSC.
Definition at line 200 of file DecodedThread.cpp.
size_t DecodedThread::TscRange::GetStartInstructionIndex | ( | ) | const |
Get the smallest instruction index that has this TSC.
Definition at line 196 of file DecodedThread.cpp.
size_t DecodedThread::TscRange::GetTsc | ( | ) | const |
Get the TSC value.
Definition at line 194 of file DecodedThread.cpp.
bool DecodedThread::TscRange::InRange | ( | size_t | insn_index | ) | const |
Check if this TSC range includes the given instruction index.
Definition at line 204 of file DecodedThread.cpp.
Optional< DecodedThread::TscRange > DecodedThread::TscRange::Next | ( | ) | const |
Get the next range chronologically.
Definition at line 209 of file DecodedThread.cpp.
Optional< DecodedThread::TscRange > DecodedThread::TscRange::Prev | ( | ) | const |
Get the previous range chronologically.
Definition at line 217 of file DecodedThread.cpp.
|
friend |
Definition at line 101 of file DecodedThread.h.
|
private |
Definition at line 111 of file DecodedThread.h.
Referenced by TscRange().
|
private |
The largest instruction index that has this TSC.
Definition at line 109 of file DecodedThread.h.
Referenced by TscRange().
|
private |
The iterator pointing to the beginning of the range.
Definition at line 107 of file DecodedThread.h.
Referenced by TscRange().