76#ifndef LLVM_SUPPORT_TIMEPROFILER_H
77#define LLVM_SUPPORT_TIMEPROFILER_H
84class raw_pwrite_stream;
86struct TimeTraceProfiler;
117 StringRef FallbackFileName);
StringRef - Represent a constant reference to a string, i.e.
An efficient, type-erasing, non-owning reference to a callable.
This is an optimization pass for GlobalISel generic memory operations.
void timeTraceProfilerInitialize(unsigned TimeTraceGranularity, StringRef ProcName)
Initialize the time trace profiler.
TimeTraceProfiler * getTimeTraceProfilerInstance()
void timeTraceProfilerFinishThread()
Finish a time trace profiler running on a worker thread.
void timeTraceProfilerBegin(StringRef Name, StringRef Detail)
Manually begin a time section, with the given Name and Detail.
bool timeTraceProfilerEnabled()
Is the time trace profiler enabled, i.e. initialized?
void timeTraceProfilerEnd()
Manually end the last time section.
void timeTraceProfilerCleanup()
Cleanup the time trace profiler, if it was initialized.
void timeTraceProfilerWrite(raw_pwrite_stream &OS)
Write profiling data to output stream.
The TimeTraceScope is a helper class to call the begin and end functions of the time trace profiler.
TimeTraceScope(StringRef Name, StringRef Detail)
TimeTraceScope(const TimeTraceScope &)=delete
TimeTraceScope(StringRef Name)
TimeTraceScope & operator=(TimeTraceScope &&)=delete
TimeTraceScope(TimeTraceScope &&)=delete
TimeTraceScope(StringRef Name, llvm::function_ref< std::string()> Detail)
TimeTraceScope & operator=(const TimeTraceScope &)=delete