LLVM: include/llvm/ExecutionEngine/Orc/Shared/VTuneSharedStructs.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13#ifndef LLVM_EXECUTIONENGINE_ORC_SHARED_VTUNESHAREDSTRUCTS_H
14#define LLVM_EXECUTIONENGINE_ORC_SHARED_VTUNESHAREDSTRUCTS_H
15
17#include
18#include
19
20namespace llvm {
21namespace orc {
22
23using VTuneLineTable = std::vector<std::pair<unsigned, unsigned>>;
24
25
26
27
28
29
30
41
44
49
51
53
62
64public:
66 return SPSVTuneMethodInfo::AsArgList::size(
67 MI.LineTable, MI.LoadAddr, MI.LoadSize, MI.MethodID, MI.NameSI,
68 MI.ClassFileSI, MI.SourceFileSI, MI.ParentMI);
69 }
70
72 return SPSVTuneMethodInfo::AsArgList::deserialize(
73 IB, MI.LineTable, MI.LoadAddr, MI.LoadSize, MI.MethodID, MI.NameSI,
74 MI.ClassFileSI, MI.SourceFileSI, MI.ParentMI);
75 }
76
78 return SPSVTuneMethodInfo::AsArgList::serialize(
79 OB, MI.LineTable, MI.LoadAddr, MI.LoadSize, MI.MethodID, MI.NameSI,
80 MI.ClassFileSI, MI.SourceFileSI, MI.ParentMI);
81 }
82};
83
84template <>
86public:
88 return SPSVTuneMethodBatch::AsArgList::size(MB.Methods, MB.Strings);
89 }
90
92 return SPSVTuneMethodBatch::AsArgList::deserialize(IB, MB.Methods,
94 }
95
97 return SPSVTuneMethodBatch::AsArgList::serialize(OB, MB.Methods,
99 }
100};
101
102}
103}
104}
105
106#endif
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
Represents an address in the executor process.
SmallVector< std::pair< uint64_t, uint64_t > > VTuneUnloadedMethodIDs
Definition VTuneSharedStructs.h:50
std::vector< VTuneMethodInfo > VTuneMethodTable
Definition VTuneSharedStructs.h:42
std::vector< std::string > VTuneStringTable
Definition VTuneSharedStructs.h:43
std::vector< std::pair< unsigned, unsigned > > VTuneLineTable
Definition VTuneSharedStructs.h:23
This is an optimization pass for GlobalISel generic memory operations.
VTuneMethodTable Methods
Definition VTuneSharedStructs.h:46
VTuneStringTable Strings
Definition VTuneSharedStructs.h:47
uint32_t SourceFileSI
Definition VTuneSharedStructs.h:38
uint32_t ClassFileSI
Definition VTuneSharedStructs.h:37
VTuneLineTable LineTable
Definition VTuneSharedStructs.h:32
uint32_t ParentMI
Definition VTuneSharedStructs.h:39
uint64_t LoadSize
Definition VTuneSharedStructs.h:34
uint64_t MethodID
Definition VTuneSharedStructs.h:35
ExecutorAddr LoadAddr
Definition VTuneSharedStructs.h:33
uint32_t NameSI
Definition VTuneSharedStructs.h:36