LLVM: include/llvm/ExecutionEngine/Orc/Shared/PerfSharedStructs.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_EXECUTIONENGINE_ORC_SHARED_PERFSHAREDSTRUCTS_H

14#define LLVM_EXECUTIONENGINE_ORC_SHARED_PERFSHAREDSTRUCTS_H

15

17

18namespace llvm {

19

20namespace orc {

21

22

23

33

49

56

59

61 std::vector Entries;

62};

63

77

78

85

86

87

89

91

92template <>

94public:

96 return SPSPerfJITRecordPrefix::AsArgList::size(

98 }

101 if (!SPSPerfJITRecordPrefix::AsArgList::deserialize(IB, Id, Val.TotalSize))

102 return false;

104 return true;

105 }

107 return SPSPerfJITRecordPrefix::AsArgList::serialize(

109 }

110};

111

115

116template <>

118public:

120 return SPSPerfJITCodeLoadRecord::AsArgList::size(

123 }

124

126 return SPSPerfJITCodeLoadRecord::AsArgList::deserialize(

129 }

130

132 return SPSPerfJITCodeLoadRecord::AsArgList::serialize(

135 }

136};

137

139

140template <>

142public:

144 return SPSPerfJITDebugEntry::AsArgList::size(Val.Addr, Val.Lineno,

146 }

147

149 return SPSPerfJITDebugEntry::AsArgList::deserialize(

151 }

152

154 return SPSPerfJITDebugEntry::AsArgList::serialize(OB, Val.Addr, Val.Lineno,

156 }

157};

158

161

162template <>

165public:

167 return SPSPerfJITDebugInfoRecord::AsArgList::size(Val.Prefix, Val.CodeAddr,

169 }

171 return SPSPerfJITDebugInfoRecord::AsArgList::deserialize(

173 }

176 return SPSPerfJITDebugInfoRecord::AsArgList::serialize(

178 }

179};

180

184template <>

187public:

189 return SPSPerfJITCodeUnwindingInfoRecord::AsArgList::size(

192 }

195 return SPSPerfJITCodeUnwindingInfoRecord::AsArgList::deserialize(

198 }

201 return SPSPerfJITCodeUnwindingInfoRecord::AsArgList::serialize(

204 }

205};

206

210template <>

212public:

214 return SPSPerfJITRecordBatch::AsArgList::size(

216 }

218 return SPSPerfJITRecordBatch::AsArgList::deserialize(

220 }

222 return SPSPerfJITRecordBatch::AsArgList::serialize(

224 }

225};

226

227}

228

229}

230

231}

232

233#endif

static size_t size(const PerfJITDebugEntry &Val)

Definition PerfSharedStructs.h:143

static bool deserialize(SPSInputBuffer &IB, PerfJITDebugEntry &Val)

Definition PerfSharedStructs.h:148

static bool serialize(SPSOutputBuffer &OB, const PerfJITDebugEntry &Val)

Definition PerfSharedStructs.h:153

PerfJITRecordType

Definition PerfSharedStructs.h:24

@ JIT_CODE_LOAD

Definition PerfSharedStructs.h:25

@ JIT_CODE_MOVE

Definition PerfSharedStructs.h:26

@ JIT_CODE_CLOSE

Definition PerfSharedStructs.h:28

@ JIT_CODE_UNWINDING_INFO

Definition PerfSharedStructs.h:29

@ JIT_CODE_MAX

Definition PerfSharedStructs.h:31

@ JIT_CODE_DEBUG_INFO

Definition PerfSharedStructs.h:27

This is an optimization pass for GlobalISel generic memory operations.

Definition PerfSharedStructs.h:38

PerfJITRecordPrefix Prefix

Definition PerfSharedStructs.h:39

uint64_t Vma

Definition PerfSharedStructs.h:43

uint64_t CodeIndex

Definition PerfSharedStructs.h:46

uint64_t CodeSize

Definition PerfSharedStructs.h:45

std::string Name

Definition PerfSharedStructs.h:47

uint64_t CodeAddr

Definition PerfSharedStructs.h:44

uint32_t Tid

Definition PerfSharedStructs.h:42

uint32_t Pid

Definition PerfSharedStructs.h:41

Definition PerfSharedStructs.h:64

uint64_t EHFrameHdrAddr

Definition PerfSharedStructs.h:71

uint64_t EHFrameHdrSize

Definition PerfSharedStructs.h:68

uint64_t UnwindDataSize

Definition PerfSharedStructs.h:67

uint64_t EHFrameAddr

Definition PerfSharedStructs.h:74

std::string EHFrameHdr

Definition PerfSharedStructs.h:72

uint64_t MappedSize

Definition PerfSharedStructs.h:69

PerfJITRecordPrefix Prefix

Definition PerfSharedStructs.h:65

Definition PerfSharedStructs.h:50

uint64_t Addr

Definition PerfSharedStructs.h:51

uint32_t Discrim

Definition PerfSharedStructs.h:53

std::string Name

Definition PerfSharedStructs.h:54

uint32_t Lineno

Definition PerfSharedStructs.h:52

Definition PerfSharedStructs.h:57

std::vector< PerfJITDebugEntry > Entries

Definition PerfSharedStructs.h:61

uint64_t CodeAddr

Definition PerfSharedStructs.h:60

PerfJITRecordPrefix Prefix

Definition PerfSharedStructs.h:58

Definition PerfSharedStructs.h:79

std::vector< PerfJITDebugInfoRecord > DebugInfoRecords

Definition PerfSharedStructs.h:80

PerfJITCodeUnwindingInfoRecord UnwindingRecord

Definition PerfSharedStructs.h:83

std::vector< PerfJITCodeLoadRecord > CodeLoadRecords

Definition PerfSharedStructs.h:81

Definition PerfSharedStructs.h:34

uint32_t TotalSize

Definition PerfSharedStructs.h:36

PerfJITRecordType Id

Definition PerfSharedStructs.h:35