LLVM  11.0.0git
Classes | Typedefs | Variables
TimeProfiler.cpp File Reference
#include "llvm/Support/TimeProfiler.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/JSON.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/Process.h"
#include "llvm/Support/Threading.h"
#include <algorithm>
#include <cassert>
#include <chrono>
#include <mutex>
#include <string>
#include <vector>
Include dependency graph for TimeProfiler.cpp:

Go to the source code of this file.

Classes

struct  llvm::TimeTraceProfiler
 

Typedefs

typedef duration< steady_clock::rep, steady_clock::period > DurationType
 
typedef time_point< steady_clock > TimePointType
 
typedef std::pair< size_t, DurationTypeCountAndDurationType
 
typedef std::pair< std::string, CountAndDurationTypeNameAndCountAndDurationType
 

Variables

static std::mutex Mu
 
static std::vector< TimeTraceProfiler * > ThreadTimeTraceProfilerInstances
 
static LLVM_THREAD_LOCAL TimeTraceProfilerTimeTraceProfilerInstance = nullptr
 

Typedef Documentation

◆ CountAndDurationType

typedef std::pair<size_t, DurationType> CountAndDurationType

Definition at line 44 of file TimeProfiler.cpp.

◆ DurationType

typedef duration<steady_clock::rep, steady_clock::period> DurationType

Definition at line 42 of file TimeProfiler.cpp.

◆ NameAndCountAndDurationType

typedef std::pair<std::string, CountAndDurationType> NameAndCountAndDurationType

Definition at line 46 of file TimeProfiler.cpp.

◆ TimePointType

typedef time_point<steady_clock> TimePointType

Definition at line 43 of file TimeProfiler.cpp.

Variable Documentation

◆ Mu

std::mutex Mu
static

◆ ThreadTimeTraceProfilerInstances

std::vector<TimeTraceProfiler *> ThreadTimeTraceProfilerInstances
static

◆ TimeTraceProfilerInstance

LLVM_THREAD_LOCAL TimeTraceProfiler* TimeTraceProfilerInstance = nullptr
static