LLVM 20.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, bool AsyncEvent=false) |
TimeTraceProfilerEntry * | begin (std::string Name, llvm::function_ref< TimeTraceMetadata()> Metadata, bool AsyncEvent=false) |
void | end () |
void | end (TimeTraceProfilerEntry &E) |
void | write (raw_pwrite_stream &OS) |
Public Attributes | |
SmallVector< std::unique_ptr< TimeTraceProfilerEntry >, 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 107 of file TimeProfiler.cpp.
|
inline |
Definition at line 108 of file TimeProfiler.cpp.
References llvm::get_thread_name(), and ThreadName.
|
inline |
Definition at line 117 of file TimeProfiler.cpp.
Referenced by llvm::timeTraceAsyncProfilerBegin(), and llvm::timeTraceProfilerBegin().
|
inline |
Definition at line 127 of file TimeProfiler.cpp.
|
inline |
Definition at line 135 of file TimeProfiler.cpp.
References assert(), end(), and Stack.
Referenced by end(), and llvm::timeTraceProfilerEnd().
|
inline |
Definition at line 140 of file TimeProfiler.cpp.
References assert(), llvm::count(), CountAndTotalPerName, llvm::drop_begin(), llvm::TimeTraceProfilerEntry::End, Entries, llvm::erase_if(), llvm::TimeTraceProfilerEntry::Name, llvm::none_of(), llvm::reverse(), Stack, llvm::TimeTraceProfilerEntry::Start, and TimeTraceGranularity.
|
inline |
Definition at line 173 of file TimeProfiler.cpp.
References A, llvm::all_of(), llvm::json::OStream::arrayBegin(), llvm::json::OStream::arrayEnd(), assert(), llvm::json::OStream::attribute(), llvm::json::OStream::attributeBegin(), llvm::json::OStream::attributeEnd(), llvm::json::OStream::attributeObject(), B, BeginningOfTime, llvm::count(), CountAndTotalPerName, Entries, if(), Name, llvm::json::OStream::object(), llvm::json::OStream::objectBegin(), llvm::json::OStream::objectEnd(), OS, Pid, ProcName, llvm::StringMapImpl::size(), llvm::sort(), Stack, StartTime, ThreadName, Tid, and llvm::Total.
Referenced by llvm::timeTraceProfilerWrite().
const time_point<system_clock> llvm::TimeTraceProfiler::BeginningOfTime |
Definition at line 326 of file TimeProfiler.cpp.
Referenced by write().
StringMap<CountAndDurationType> llvm::TimeTraceProfiler::CountAndTotalPerName |
Definition at line 324 of file TimeProfiler.cpp.
SmallVector<TimeTraceProfilerEntry, 128> llvm::TimeTraceProfiler::Entries |
Definition at line 323 of file TimeProfiler.cpp.
const sys::Process::Pid llvm::TimeTraceProfiler::Pid |
Definition at line 330 of file TimeProfiler.cpp.
Referenced by write().
const std::string llvm::TimeTraceProfiler::ProcName |
Definition at line 329 of file TimeProfiler.cpp.
Referenced by write().
SmallVector<std::unique_ptr<TimeTraceProfilerEntry>, 16> llvm::TimeTraceProfiler::Stack |
Definition at line 322 of file TimeProfiler.cpp.
const TimePointType llvm::TimeTraceProfiler::StartTime |
Definition at line 328 of file TimeProfiler.cpp.
Referenced by write().
SmallString<0> llvm::TimeTraceProfiler::ThreadName |
Definition at line 331 of file TimeProfiler.cpp.
Referenced by TimeTraceProfiler(), and write().
Definition at line 332 of file TimeProfiler.cpp.
Referenced by write().
Definition at line 335 of file TimeProfiler.cpp.
Referenced by end().
Definition at line 339 of file TimeProfiler.cpp.
Referenced by llvm::isTimeTraceVerbose().