LLVM: llvm::TimerGroup Class Reference (original) (raw)

The TimerGroup class is used to group together related timers into a single report that is printed when the TimerGroup is destroyed. More...

#include "[llvm/Support/Timer.h](Timer%5F8h%5Fsource.html)"

Public Member Functions
TimerGroup (StringRef Name, StringRef Description)
TimerGroup (StringRef Name, StringRef Description, const StringMap< TimeRecord > &Records)
~TimerGroup ()
void setName (StringRef NewName, StringRef NewDescription)
void print (raw_ostream &OS, bool ResetAfterPrint=false)
Print any started timers in this group, optionally resetting timers after printing them.
void clear ()
Clear all timers in this group.
const char * printJSONValues (raw_ostream &OS, const char *delim)
Static Public Member Functions
static void printAll (raw_ostream &OS)
This static method prints all timers.
static void clearAll ()
Clear out all timers.
static const char * printAllJSONValues (raw_ostream &OS, const char *delim)
Prints all timers as JSON key/value pairs.
static void constructForStatistics ()
Ensure global objects required for statistics printing are initialized.
static void * acquireTimerGlobals ()
This makes the timer globals unmanaged, and lets the user manage the lifetime.
Friends
class TimerGlobals
class Timer
void PrintStatisticsJSON (raw_ostream &OS)
Print statistics in JSON format.

The TimerGroup class is used to group together related timers into a single report that is printed when the TimerGroup is destroyed.

It is illegal to destroy a TimerGroup object before all of the Timers in it are gone. A TimerGroup can be specified for a newly created timer in its constructor.

Definition at line 178 of file Timer.h.

TimerGroup() [2/2]

~TimerGroup()

TimerGroup::~TimerGroup ( )

acquireTimerGlobals()

void * TimerGroup::acquireTimerGlobals ( ) static

clear()

void TimerGroup::clear ( )

clearAll()

void TimerGroup::clearAll ( ) static

Clear out all timers.

This is mostly used to disable automatic printing on shutdown, when timers have already been printed explicitly using printAll or printJSONValues.

Definition at line 423 of file Timer.cpp.

References TimerGroupList, and timerLock().

constructForStatistics()

void TimerGroup::constructForStatistics ( ) static

Ensure global objects required for statistics printing are initialized.

This function is used by the Statistic code to ensure correct order of global constructors and destructors.

Definition at line 546 of file Timer.cpp.

References ManagedTimerGlobals.

print()

printAll()

printAllJSONValues()

printJSONValues()

setName()

PrintStatisticsJSON

Print statistics in JSON format.

This does include all global timers (

See also

Timer, TimerGroup). Note that the timers are cleared after printing and will not be printed in human readable form or in a second call of PrintStatisticsJSON().

Timer

TimerGlobals


The documentation for this class was generated from the following files: