Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
llvm::TimeTraceProfiler Struct Reference

Public Member Functions

 TimeTraceProfiler (unsigned TimeTraceGranularity=0, StringRef ProcName="", bool TimeTraceVerbose=false)
TimeTraceProfilerEntrybegin (std::string Name, llvm::function_ref< std::string()> Detail, TimeTraceEventType EventType=TimeTraceEventType::CompleteEvent)
TimeTraceProfilerEntrybegin (std::string Name, llvm::function_ref< TimeTraceMetadata()> Metadata, TimeTraceEventType EventType=TimeTraceEventType::CompleteEvent)
void insert (std::string Name, llvm::function_ref< std::string()> Detail)
void end ()
void end (TimeTraceProfilerEntry &E)
void write (raw_pwrite_stream &OS)

Public Attributes

SmallVector< std::unique_ptr< InProgressEntry >, 16 > Stack
SmallVector< TimeTraceProfilerEntry, 128 > Entries
StringMap< CountAndDurationType > CountAndTotalPerName
const time_point< system_clock > BeginningOfTime
const TimePointType StartTime
const std::string ProcName
const sys::Process::Pid Pid
SmallString< 0 > ThreadName
const uint64_t Tid
const unsigned TimeTraceGranularity
const bool TimeTraceVerbose

Detailed Description

Definition at line 127 of file TimeProfiler.cpp.

Constructor & Destructor Documentation

◆ TimeTraceProfiler()

llvm::TimeTraceProfiler::TimeTraceProfiler ( unsigned TimeTraceGranularity = 0,
StringRef ProcName = "",
bool TimeTraceVerbose = false )
inline

Member Function Documentation

◆ begin() [1/2]

TimeTraceProfilerEntry * llvm::TimeTraceProfiler::begin ( std::string Name,
llvm::function_ref< std::string()> Detail,
TimeTraceEventType EventType = TimeTraceEventType::CompleteEvent )
inline

Definition at line 138 of file TimeProfiler.cpp.

References assert(), llvm::CompleteEvent, llvm::InstantEvent, and Stack.

◆ begin() [2/2]

TimeTraceProfilerEntry * llvm::TimeTraceProfiler::begin ( std::string Name,
llvm::function_ref< TimeTraceMetadata()> Metadata,
TimeTraceEventType EventType = TimeTraceEventType::CompleteEvent )
inline

Definition at line 149 of file TimeProfiler.cpp.

References assert(), llvm::CompleteEvent, llvm::InstantEvent, Metadata, and Stack.

◆ end() [1/2]

void llvm::TimeTraceProfiler::end ( )
inline

Definition at line 168 of file TimeProfiler.cpp.

References assert(), end(), and Stack.

Referenced by end().

◆ end() [2/2]

◆ insert()

void llvm::TimeTraceProfiler::insert ( std::string Name,
llvm::function_ref< std::string()> Detail )
inline

Definition at line 159 of file TimeProfiler.cpp.

References llvm::InstantEvent, and Stack.

◆ write()

Member Data Documentation

◆ BeginningOfTime

const time_point<system_clock> llvm::TimeTraceProfiler::BeginningOfTime

Definition at line 370 of file TimeProfiler.cpp.

Referenced by TimeTraceProfiler(), and write().

◆ CountAndTotalPerName

StringMap<CountAndDurationType> llvm::TimeTraceProfiler::CountAndTotalPerName

Definition at line 368 of file TimeProfiler.cpp.

Referenced by end(), and write().

◆ Entries

SmallVector<TimeTraceProfilerEntry, 128> llvm::TimeTraceProfiler::Entries

Definition at line 367 of file TimeProfiler.cpp.

Referenced by end(), and write().

◆ Pid

const sys::Process::Pid llvm::TimeTraceProfiler::Pid

Definition at line 374 of file TimeProfiler.cpp.

Referenced by TimeTraceProfiler(), and write().

◆ ProcName

const std::string llvm::TimeTraceProfiler::ProcName

Definition at line 373 of file TimeProfiler.cpp.

Referenced by TimeTraceProfiler(), and write().

◆ Stack

SmallVector<std::unique_ptr<InProgressEntry>, 16> llvm::TimeTraceProfiler::Stack

Definition at line 366 of file TimeProfiler.cpp.

Referenced by begin(), begin(), end(), end(), insert(), and write().

◆ StartTime

const TimePointType llvm::TimeTraceProfiler::StartTime

Definition at line 372 of file TimeProfiler.cpp.

Referenced by TimeTraceProfiler(), and write().

◆ ThreadName

SmallString<0> llvm::TimeTraceProfiler::ThreadName

Definition at line 375 of file TimeProfiler.cpp.

Referenced by TimeTraceProfiler(), and write().

◆ Tid

const uint64_t llvm::TimeTraceProfiler::Tid

Definition at line 376 of file TimeProfiler.cpp.

Referenced by TimeTraceProfiler(), and write().

◆ TimeTraceGranularity

const unsigned llvm::TimeTraceProfiler::TimeTraceGranularity

Definition at line 379 of file TimeProfiler.cpp.

Referenced by end(), and TimeTraceProfiler().

◆ TimeTraceVerbose

const bool llvm::TimeTraceProfiler::TimeTraceVerbose

Definition at line 383 of file TimeProfiler.cpp.

Referenced by llvm::isTimeTraceVerbose(), and TimeTraceProfiler().


The documentation for this struct was generated from the following file: