LLVM: include/llvm/Support/TimeProfiler.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76#ifndef LLVM_SUPPORT_TIMEPROFILER_H
77#define LLVM_SUPPORT_TIMEPROFILER_H
78
82
83namespace llvm {
84
86
87
99
108
109struct TimeTraceProfiler;
111
113
114struct TimeTraceProfilerEntry;
115
116
117
118
120 StringRef ProcName,
121 bool TimeTraceVerbose = false);
122
123
125
126
128
129
133
134
135
136
138
139
140
141
142
143
145 StringRef FallbackFileName);
146
147
148
149
150
152 StringRef Detail);
153LLVM_ABI TimeTraceProfilerEntry *
156
157LLVM_ABI TimeTraceProfilerEntry *
160
161
162
163
164
165
167 StringRef Detail);
168
169
173
174
177
178
179
180
181
183public:
189
203
204private:
206};
207
208}
209
210#endif
static GCRegistry::Add< CoreCLRGC > E("coreclr", "CoreCLR-compatible GC")
StringRef - Represent a constant reference to a string, i.e.
TimeTraceScope(StringRef Name, StringRef Detail)
Definition TimeProfiler.h:192
TimeTraceScope(const TimeTraceScope &)=delete
TimeTraceScope(StringRef Name)
Definition TimeProfiler.h:190
TimeTraceScope & operator=(TimeTraceScope &&)=delete
~TimeTraceScope()
Definition TimeProfiler.h:199
TimeTraceScope(TimeTraceScope &&)=delete
TimeTraceScope(StringRef Name, llvm::function_ref< TimeTraceMetadata()> Metadata)
Definition TimeProfiler.h:196
TimeTraceScope(StringRef Name, llvm::function_ref< std::string()> Detail)
Definition TimeProfiler.h:194
TimeTraceScope & operator=(const TimeTraceScope &)=delete
An efficient, type-erasing, non-owning reference to a callable.
An abstract base class for streams implementations that also support a pwrite operation.
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI TimeTraceProfiler * getTimeTraceProfilerInstance()
LLVM_ABI void timeTraceProfilerInitialize(unsigned TimeTraceGranularity, StringRef ProcName, bool TimeTraceVerbose=false)
Initialize the time trace profiler.
LLVM_ABI void timeTraceProfilerFinishThread()
Finish a time trace profiler running on a worker thread.
bool timeTraceProfilerEnabled()
Is the time trace profiler enabled, i.e. initialized?
Definition TimeProfiler.h:130
LLVM_ABI void timeTraceProfilerEnd()
Manually end the last time section.
LLVM_ABI void timeTraceAddInstantEvent(StringRef Name, llvm::function_ref< std::string()> Detail)
LLVM_ABI TimeTraceProfilerEntry * timeTraceAsyncProfilerBegin(StringRef Name, StringRef Detail)
Manually begin a time section, with the given Name and Detail.
LLVM_ABI bool isTimeTraceVerbose()
TimeTraceEventType
Definition TimeProfiler.h:88
@ CompleteEvent
Definition TimeProfiler.h:91
@ InstantEvent
Definition TimeProfiler.h:94
@ AsyncEvent
Definition TimeProfiler.h:97
LLVM_ABI void timeTraceProfilerCleanup()
Cleanup the time trace profiler, if it was initialized.
LLVM_ABI void timeTraceProfilerWrite(raw_pwrite_stream &OS)
Write profiling data to output stream.
LLVM_ABI TimeTraceProfilerEntry * timeTraceProfilerBegin(StringRef Name, StringRef Detail)
Manually begin a time section, with the given Name and Detail.
Represents an open or completed time section entry to be captured.