]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm/lib/XRay/FDRRecords.cpp
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
[FreeBSD/FreeBSD.git] / contrib / llvm / lib / XRay / FDRRecords.cpp
1 //===- FDRRecords.cpp -  XRay Flight Data Recorder Mode Records -----------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // Define types and operations on these types that represent the different kinds
11 // of records we encounter in XRay flight data recorder mode traces.
12 //
13 //===----------------------------------------------------------------------===//
14 #include "llvm/XRay/FDRRecords.h"
15
16 namespace llvm {
17 namespace xray {
18
19 Error BufferExtents::apply(RecordVisitor &V) { return V.visit(*this); }
20 Error WallclockRecord::apply(RecordVisitor &V) { return V.visit(*this); }
21 Error NewCPUIDRecord::apply(RecordVisitor &V) { return V.visit(*this); }
22 Error TSCWrapRecord::apply(RecordVisitor &V) { return V.visit(*this); }
23 Error CustomEventRecord::apply(RecordVisitor &V) { return V.visit(*this); }
24 Error CallArgRecord::apply(RecordVisitor &V) { return V.visit(*this); }
25 Error PIDRecord::apply(RecordVisitor &V) { return V.visit(*this); }
26 Error NewBufferRecord::apply(RecordVisitor &V) { return V.visit(*this); }
27 Error EndBufferRecord::apply(RecordVisitor &V) { return V.visit(*this); }
28 Error FunctionRecord::apply(RecordVisitor &V) { return V.visit(*this); }
29 Error CustomEventRecordV5::apply(RecordVisitor &V) { return V.visit(*this); }
30 Error TypedEventRecord::apply(RecordVisitor &V) { return V.visit(*this); }
31
32 StringRef Record::kindToString(RecordKind K) {
33   switch (K) {
34   case RecordKind::RK_Metadata:
35     return "Metadata";
36   case RecordKind::RK_Metadata_BufferExtents:
37     return "Metadata:BufferExtents";
38   case RecordKind::RK_Metadata_WallClockTime:
39     return "Metadata:WallClockTime";
40   case RecordKind::RK_Metadata_NewCPUId:
41     return "Metadata:NewCPUId";
42   case RecordKind::RK_Metadata_TSCWrap:
43     return "Metadata:TSCWrap";
44   case RecordKind::RK_Metadata_CustomEvent:
45     return "Metadata:CustomEvent";
46   case RecordKind::RK_Metadata_CustomEventV5:
47     return "Metadata:CustomEventV5";
48   case RecordKind::RK_Metadata_CallArg:
49     return "Metadata:CallArg";
50   case RecordKind::RK_Metadata_PIDEntry:
51     return "Metadata:PIDEntry";
52   case RecordKind::RK_Metadata_NewBuffer:
53     return "Metadata:NewBuffer";
54   case RecordKind::RK_Metadata_EndOfBuffer:
55     return "Metadata:EndOfBuffer";
56   case RecordKind::RK_Metadata_TypedEvent:
57     return "Metadata:TypedEvent";
58   case RecordKind::RK_Metadata_LastMetadata:
59     return "Metadata:LastMetadata";
60   case RecordKind::RK_Function:
61     return "Function";
62   }
63   return "Unknown";
64 }
65
66 } // namespace xray
67 } // namespace llvm