LLVM 22.0.0git
|
Public Member Functions | |
TimeTraceProfiler (unsigned TimeTraceGranularity=0, StringRef ProcName="", bool TimeTraceVerbose=false) | |
TimeTraceProfilerEntry * | begin (std::string Name, llvm::function_ref< std::string()> Detail, TimeTraceEventType EventType=TimeTraceEventType::CompleteEvent) |
TimeTraceProfilerEntry * | begin (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 |
Definition at line 127 of file TimeProfiler.cpp.
|
inline |
Definition at line 128 of file TimeProfiler.cpp.
References BeginningOfTime, llvm::get_thread_name(), llvm::get_threadid(), now(), Pid, ProcName, StartTime, ThreadName, Tid, TimeTraceGranularity, and TimeTraceVerbose.
Referenced by write().
|
inline |
Definition at line 138 of file TimeProfiler.cpp.
References assert(), llvm::CompleteEvent, llvm::InstantEvent, and Stack.
|
inline |
Definition at line 149 of file TimeProfiler.cpp.
References assert(), llvm::CompleteEvent, llvm::InstantEvent, Metadata, and Stack.
|
inline |
|
inline |
Definition at line 173 of file TimeProfiler.cpp.
References assert(), llvm::count(), CountAndTotalPerName, llvm::drop_begin(), Entries, llvm::find_if(), llvm::none_of(), llvm::reverse(), Stack, and TimeTraceGranularity.
|
inline |
Definition at line 159 of file TimeProfiler.cpp.
References llvm::InstantEvent, and Stack.
|
inline |
Definition at line 213 of file TimeProfiler.cpp.
References A(), llvm::all_of(), llvm::json::OStream::arrayBegin(), llvm::json::OStream::arrayEnd(), assert(), llvm::AsyncEvent, llvm::json::OStream::attribute(), llvm::json::OStream::attributeBegin(), llvm::json::OStream::attributeEnd(), llvm::json::OStream::attributeObject(), B(), BeginningOfTime, llvm::CompleteEvent, llvm::Count, llvm::count(), CountAndTotalPerName, Entries, llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs... >::Key, llvm::InstantEvent, llvm::json::OStream::object(), llvm::json::OStream::objectBegin(), llvm::json::OStream::objectEnd(), Pid, ProcName, llvm::StringMapImpl::size(), llvm::sort(), Stack, StartTime, ThreadName, Tid, TimeTraceProfiler(), and llvm::Total.
const time_point<system_clock> llvm::TimeTraceProfiler::BeginningOfTime |
Definition at line 370 of file TimeProfiler.cpp.
Referenced by TimeTraceProfiler(), and write().
StringMap<CountAndDurationType> llvm::TimeTraceProfiler::CountAndTotalPerName |
Definition at line 368 of file TimeProfiler.cpp.
SmallVector<TimeTraceProfilerEntry, 128> llvm::TimeTraceProfiler::Entries |
Definition at line 367 of file TimeProfiler.cpp.
const sys::Process::Pid llvm::TimeTraceProfiler::Pid |
Definition at line 374 of file TimeProfiler.cpp.
Referenced by TimeTraceProfiler(), and write().
const std::string llvm::TimeTraceProfiler::ProcName |
Definition at line 373 of file TimeProfiler.cpp.
Referenced by TimeTraceProfiler(), and write().
SmallVector<std::unique_ptr<InProgressEntry>, 16> llvm::TimeTraceProfiler::Stack |
const TimePointType llvm::TimeTraceProfiler::StartTime |
Definition at line 372 of file TimeProfiler.cpp.
Referenced by TimeTraceProfiler(), and write().
SmallString<0> llvm::TimeTraceProfiler::ThreadName |
Definition at line 375 of file TimeProfiler.cpp.
Referenced by TimeTraceProfiler(), and write().
Definition at line 376 of file TimeProfiler.cpp.
Referenced by TimeTraceProfiler(), and write().
Definition at line 379 of file TimeProfiler.cpp.
Referenced by end(), and TimeTraceProfiler().
Definition at line 383 of file TimeProfiler.cpp.
Referenced by llvm::isTimeTraceVerbose(), and TimeTraceProfiler().