Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/DebugInfo/CodeView/EnumTables.cpp
Line
Count
Source (jump to first uncovered line)
1
//===- EnumTables.cpp - Enum to string conversion tables ------------------===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
9
#include "llvm/DebugInfo/CodeView/EnumTables.h"
10
#include "llvm/Support/ScopedPrinter.h"
11
#include <type_traits>
12
13
using namespace llvm;
14
using namespace codeview;
15
16
#define CV_ENUM_CLASS_ENT(enum_class, enum)                                    \
17
  { #enum, std::underlying_type < enum_class > ::type(enum_class::enum) }
18
19
#define CV_ENUM_ENT(ns, enum)                                                  \
20
  { #enum, ns::enum }
21
22
static const EnumEntry<SymbolKind> SymbolTypeNames[] = {
23
#define CV_SYMBOL(enum, val) {#enum, enum},
24
#include "llvm/DebugInfo/CodeView/CodeViewSymbols.def"
25
#undef CV_SYMBOL
26
};
27
28
static const EnumEntry<TypeLeafKind> TypeLeafNames[] = {
29
#define CV_TYPE(name, val) {#name, name},
30
#include "llvm/DebugInfo/CodeView/CodeViewTypes.def"
31
#undef CV_TYPE
32
};
33
34
static const EnumEntry<uint16_t> RegisterNames_X86[] = {
35
#define CV_REGISTERS_X86
36
#define CV_REGISTER(name, val) CV_ENUM_CLASS_ENT(RegisterId, name),
37
#include "llvm/DebugInfo/CodeView/CodeViewRegisters.def"
38
#undef CV_REGISTER
39
#undef CV_REGISTERS_X86
40
};
41
42
static const EnumEntry<uint16_t> RegisterNames_ARM64[] = {
43
#define CV_REGISTERS_ARM64
44
#define CV_REGISTER(name, val) CV_ENUM_CLASS_ENT(RegisterId, name),
45
#include "llvm/DebugInfo/CodeView/CodeViewRegisters.def"
46
#undef CV_REGISTER
47
#undef CV_REGISTERS_ARM64
48
};
49
50
static const EnumEntry<uint32_t> PublicSymFlagNames[] = {
51
    CV_ENUM_CLASS_ENT(PublicSymFlags, Code),
52
    CV_ENUM_CLASS_ENT(PublicSymFlags, Function),
53
    CV_ENUM_CLASS_ENT(PublicSymFlags, Managed),
54
    CV_ENUM_CLASS_ENT(PublicSymFlags, MSIL),
55
};
56
57
static const EnumEntry<uint8_t> ProcSymFlagNames[] = {
58
    CV_ENUM_CLASS_ENT(ProcSymFlags, HasFP),
59
    CV_ENUM_CLASS_ENT(ProcSymFlags, HasIRET),
60
    CV_ENUM_CLASS_ENT(ProcSymFlags, HasFRET),
61
    CV_ENUM_CLASS_ENT(ProcSymFlags, IsNoReturn),
62
    CV_ENUM_CLASS_ENT(ProcSymFlags, IsUnreachable),
63
    CV_ENUM_CLASS_ENT(ProcSymFlags, HasCustomCallingConv),
64
    CV_ENUM_CLASS_ENT(ProcSymFlags, IsNoInline),
65
    CV_ENUM_CLASS_ENT(ProcSymFlags, HasOptimizedDebugInfo),
66
};
67
68
static const EnumEntry<uint16_t> LocalFlags[] = {
69
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsParameter),
70
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsAddressTaken),
71
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsCompilerGenerated),
72
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsAggregate),
73
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsAggregated),
74
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsAliased),
75
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsAlias),
76
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsReturnValue),
77
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsOptimizedOut),
78
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsEnregisteredGlobal),
79
    CV_ENUM_CLASS_ENT(LocalSymFlags, IsEnregisteredStatic),
80
};
81
82
static const EnumEntry<uint8_t> FrameCookieKinds[] = {
83
    CV_ENUM_CLASS_ENT(FrameCookieKind, Copy),
84
    CV_ENUM_CLASS_ENT(FrameCookieKind, XorStackPointer),
85
    CV_ENUM_CLASS_ENT(FrameCookieKind, XorFramePointer),
86
    CV_ENUM_CLASS_ENT(FrameCookieKind, XorR13),
87
};
88
89
static const EnumEntry<codeview::SourceLanguage> SourceLanguages[] = {
90
    CV_ENUM_ENT(SourceLanguage, C),       CV_ENUM_ENT(SourceLanguage, Cpp),
91
    CV_ENUM_ENT(SourceLanguage, Fortran), CV_ENUM_ENT(SourceLanguage, Masm),
92
    CV_ENUM_ENT(SourceLanguage, Pascal),  CV_ENUM_ENT(SourceLanguage, Basic),
93
    CV_ENUM_ENT(SourceLanguage, Cobol),   CV_ENUM_ENT(SourceLanguage, Link),
94
    CV_ENUM_ENT(SourceLanguage, Cvtres),  CV_ENUM_ENT(SourceLanguage, Cvtpgd),
95
    CV_ENUM_ENT(SourceLanguage, CSharp),  CV_ENUM_ENT(SourceLanguage, VB),
96
    CV_ENUM_ENT(SourceLanguage, ILAsm),   CV_ENUM_ENT(SourceLanguage, Java),
97
    CV_ENUM_ENT(SourceLanguage, JScript), CV_ENUM_ENT(SourceLanguage, MSIL),
98
    CV_ENUM_ENT(SourceLanguage, HLSL),    CV_ENUM_ENT(SourceLanguage, D),
99
    CV_ENUM_ENT(SourceLanguage, Swift),
100
};
101
102
static const EnumEntry<uint32_t> CompileSym2FlagNames[] = {
103
    CV_ENUM_CLASS_ENT(CompileSym2Flags, EC),
104
    CV_ENUM_CLASS_ENT(CompileSym2Flags, NoDbgInfo),
105
    CV_ENUM_CLASS_ENT(CompileSym2Flags, LTCG),
106
    CV_ENUM_CLASS_ENT(CompileSym2Flags, NoDataAlign),
107
    CV_ENUM_CLASS_ENT(CompileSym2Flags, ManagedPresent),
108
    CV_ENUM_CLASS_ENT(CompileSym2Flags, SecurityChecks),
109
    CV_ENUM_CLASS_ENT(CompileSym2Flags, HotPatch),
110
    CV_ENUM_CLASS_ENT(CompileSym2Flags, CVTCIL),
111
    CV_ENUM_CLASS_ENT(CompileSym2Flags, MSILModule),
112
};
113
114
static const EnumEntry<uint32_t> CompileSym3FlagNames[] = {
115
    CV_ENUM_CLASS_ENT(CompileSym3Flags, EC),
116
    CV_ENUM_CLASS_ENT(CompileSym3Flags, NoDbgInfo),
117
    CV_ENUM_CLASS_ENT(CompileSym3Flags, LTCG),
118
    CV_ENUM_CLASS_ENT(CompileSym3Flags, NoDataAlign),
119
    CV_ENUM_CLASS_ENT(CompileSym3Flags, ManagedPresent),
120
    CV_ENUM_CLASS_ENT(CompileSym3Flags, SecurityChecks),
121
    CV_ENUM_CLASS_ENT(CompileSym3Flags, HotPatch),
122
    CV_ENUM_CLASS_ENT(CompileSym3Flags, CVTCIL),
123
    CV_ENUM_CLASS_ENT(CompileSym3Flags, MSILModule),
124
    CV_ENUM_CLASS_ENT(CompileSym3Flags, Sdl),
125
    CV_ENUM_CLASS_ENT(CompileSym3Flags, PGO),
126
    CV_ENUM_CLASS_ENT(CompileSym3Flags, Exp),
127
};
128
129
static const EnumEntry<uint32_t> FileChecksumNames[] = {
130
    CV_ENUM_CLASS_ENT(FileChecksumKind, None),
131
    CV_ENUM_CLASS_ENT(FileChecksumKind, MD5),
132
    CV_ENUM_CLASS_ENT(FileChecksumKind, SHA1),
133
    CV_ENUM_CLASS_ENT(FileChecksumKind, SHA256),
134
};
135
136
static const EnumEntry<unsigned> CPUTypeNames[] = {
137
    CV_ENUM_CLASS_ENT(CPUType, Intel8080),
138
    CV_ENUM_CLASS_ENT(CPUType, Intel8086),
139
    CV_ENUM_CLASS_ENT(CPUType, Intel80286),
140
    CV_ENUM_CLASS_ENT(CPUType, Intel80386),
141
    CV_ENUM_CLASS_ENT(CPUType, Intel80486),
142
    CV_ENUM_CLASS_ENT(CPUType, Pentium),
143
    CV_ENUM_CLASS_ENT(CPUType, PentiumPro),
144
    CV_ENUM_CLASS_ENT(CPUType, Pentium3),
145
    CV_ENUM_CLASS_ENT(CPUType, MIPS),
146
    CV_ENUM_CLASS_ENT(CPUType, MIPS16),
147
    CV_ENUM_CLASS_ENT(CPUType, MIPS32),
148
    CV_ENUM_CLASS_ENT(CPUType, MIPS64),
149
    CV_ENUM_CLASS_ENT(CPUType, MIPSI),
150
    CV_ENUM_CLASS_ENT(CPUType, MIPSII),
151
    CV_ENUM_CLASS_ENT(CPUType, MIPSIII),
152
    CV_ENUM_CLASS_ENT(CPUType, MIPSIV),
153
    CV_ENUM_CLASS_ENT(CPUType, MIPSV),
154
    CV_ENUM_CLASS_ENT(CPUType, M68000),
155
    CV_ENUM_CLASS_ENT(CPUType, M68010),
156
    CV_ENUM_CLASS_ENT(CPUType, M68020),
157
    CV_ENUM_CLASS_ENT(CPUType, M68030),
158
    CV_ENUM_CLASS_ENT(CPUType, M68040),
159
    CV_ENUM_CLASS_ENT(CPUType, Alpha),
160
    CV_ENUM_CLASS_ENT(CPUType, Alpha21164),
161
    CV_ENUM_CLASS_ENT(CPUType, Alpha21164A),
162
    CV_ENUM_CLASS_ENT(CPUType, Alpha21264),
163
    CV_ENUM_CLASS_ENT(CPUType, Alpha21364),
164
    CV_ENUM_CLASS_ENT(CPUType, PPC601),
165
    CV_ENUM_CLASS_ENT(CPUType, PPC603),
166
    CV_ENUM_CLASS_ENT(CPUType, PPC604),
167
    CV_ENUM_CLASS_ENT(CPUType, PPC620),
168
    CV_ENUM_CLASS_ENT(CPUType, PPCFP),
169
    CV_ENUM_CLASS_ENT(CPUType, PPCBE),
170
    CV_ENUM_CLASS_ENT(CPUType, SH3),
171
    CV_ENUM_CLASS_ENT(CPUType, SH3E),
172
    CV_ENUM_CLASS_ENT(CPUType, SH3DSP),
173
    CV_ENUM_CLASS_ENT(CPUType, SH4),
174
    CV_ENUM_CLASS_ENT(CPUType, SHMedia),
175
    CV_ENUM_CLASS_ENT(CPUType, ARM3),
176
    CV_ENUM_CLASS_ENT(CPUType, ARM4),
177
    CV_ENUM_CLASS_ENT(CPUType, ARM4T),
178
    CV_ENUM_CLASS_ENT(CPUType, ARM5),
179
    CV_ENUM_CLASS_ENT(CPUType, ARM5T),
180
    CV_ENUM_CLASS_ENT(CPUType, ARM6),
181
    CV_ENUM_CLASS_ENT(CPUType, ARM_XMAC),
182
    CV_ENUM_CLASS_ENT(CPUType, ARM_WMMX),
183
    CV_ENUM_CLASS_ENT(CPUType, ARM7),
184
    CV_ENUM_CLASS_ENT(CPUType, ARM64),
185
    CV_ENUM_CLASS_ENT(CPUType, Omni),
186
    CV_ENUM_CLASS_ENT(CPUType, Ia64),
187
    CV_ENUM_CLASS_ENT(CPUType, Ia64_2),
188
    CV_ENUM_CLASS_ENT(CPUType, CEE),
189
    CV_ENUM_CLASS_ENT(CPUType, AM33),
190
    CV_ENUM_CLASS_ENT(CPUType, M32R),
191
    CV_ENUM_CLASS_ENT(CPUType, TriCore),
192
    CV_ENUM_CLASS_ENT(CPUType, X64),
193
    CV_ENUM_CLASS_ENT(CPUType, EBC),
194
    CV_ENUM_CLASS_ENT(CPUType, Thumb),
195
    CV_ENUM_CLASS_ENT(CPUType, ARMNT),
196
    CV_ENUM_CLASS_ENT(CPUType, D3D11_Shader),
197
};
198
199
static const EnumEntry<uint32_t> FrameProcSymFlagNames[] = {
200
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, HasAlloca),
201
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, HasSetJmp),
202
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, HasLongJmp),
203
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, HasInlineAssembly),
204
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, HasExceptionHandling),
205
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, MarkedInline),
206
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, HasStructuredExceptionHandling),
207
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, Naked),
208
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, SecurityChecks),
209
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, AsynchronousExceptionHandling),
210
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, NoStackOrderingForSecurityChecks),
211
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, Inlined),
212
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, StrictSecurityChecks),
213
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, SafeBuffers),
214
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, EncodedLocalBasePointerMask),
215
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, EncodedParamBasePointerMask),
216
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, ProfileGuidedOptimization),
217
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, ValidProfileCounts),
218
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, OptimizedForSpeed),
219
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, GuardCfg),
220
    CV_ENUM_CLASS_ENT(FrameProcedureOptions, GuardCfw),
221
};
222
223
static const EnumEntry<uint32_t> ModuleSubstreamKindNames[] = {
224
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, None),
225
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, Symbols),
226
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, Lines),
227
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, StringTable),
228
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, FileChecksums),
229
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, FrameData),
230
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, InlineeLines),
231
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, CrossScopeImports),
232
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, CrossScopeExports),
233
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, ILLines),
234
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, FuncMDTokenMap),
235
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, TypeMDTokenMap),
236
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, MergedAssemblyInput),
237
    CV_ENUM_CLASS_ENT(DebugSubsectionKind, CoffSymbolRVA),
238
};
239
240
static const EnumEntry<uint16_t> ExportSymFlagNames[] = {
241
    CV_ENUM_CLASS_ENT(ExportFlags, IsConstant),
242
    CV_ENUM_CLASS_ENT(ExportFlags, IsData),
243
    CV_ENUM_CLASS_ENT(ExportFlags, IsPrivate),
244
    CV_ENUM_CLASS_ENT(ExportFlags, HasNoName),
245
    CV_ENUM_CLASS_ENT(ExportFlags, HasExplicitOrdinal),
246
    CV_ENUM_CLASS_ENT(ExportFlags, IsForwarder),
247
};
248
249
static const EnumEntry<uint8_t> ThunkOrdinalNames[] = {
250
    CV_ENUM_CLASS_ENT(ThunkOrdinal, Standard),
251
    CV_ENUM_CLASS_ENT(ThunkOrdinal, ThisAdjustor),
252
    CV_ENUM_CLASS_ENT(ThunkOrdinal, Vcall),
253
    CV_ENUM_CLASS_ENT(ThunkOrdinal, Pcode),
254
    CV_ENUM_CLASS_ENT(ThunkOrdinal, UnknownLoad),
255
    CV_ENUM_CLASS_ENT(ThunkOrdinal, TrampIncremental),
256
    CV_ENUM_CLASS_ENT(ThunkOrdinal, BranchIsland),
257
};
258
259
static const EnumEntry<uint16_t> TrampolineNames[] = {
260
    CV_ENUM_CLASS_ENT(TrampolineType, TrampIncremental),
261
    CV_ENUM_CLASS_ENT(TrampolineType, BranchIsland),
262
};
263
264
static const EnumEntry<COFF::SectionCharacteristics>
265
    ImageSectionCharacteristicNames[] = {
266
        CV_ENUM_ENT(COFF, IMAGE_SCN_TYPE_NOLOAD),
267
        CV_ENUM_ENT(COFF, IMAGE_SCN_TYPE_NO_PAD),
268
        CV_ENUM_ENT(COFF, IMAGE_SCN_CNT_CODE),
269
        CV_ENUM_ENT(COFF, IMAGE_SCN_CNT_INITIALIZED_DATA),
270
        CV_ENUM_ENT(COFF, IMAGE_SCN_CNT_UNINITIALIZED_DATA),
271
        CV_ENUM_ENT(COFF, IMAGE_SCN_LNK_OTHER),
272
        CV_ENUM_ENT(COFF, IMAGE_SCN_LNK_INFO),
273
        CV_ENUM_ENT(COFF, IMAGE_SCN_LNK_REMOVE),
274
        CV_ENUM_ENT(COFF, IMAGE_SCN_LNK_COMDAT),
275
        CV_ENUM_ENT(COFF, IMAGE_SCN_GPREL),
276
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_PURGEABLE),
277
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_16BIT),
278
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_LOCKED),
279
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_PRELOAD),
280
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_1BYTES),
281
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_2BYTES),
282
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_4BYTES),
283
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_8BYTES),
284
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_16BYTES),
285
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_32BYTES),
286
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_64BYTES),
287
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_128BYTES),
288
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_256BYTES),
289
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_512BYTES),
290
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_1024BYTES),
291
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_2048BYTES),
292
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_4096BYTES),
293
        CV_ENUM_ENT(COFF, IMAGE_SCN_ALIGN_8192BYTES),
294
        CV_ENUM_ENT(COFF, IMAGE_SCN_LNK_NRELOC_OVFL),
295
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_DISCARDABLE),
296
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_NOT_CACHED),
297
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_NOT_PAGED),
298
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_SHARED),
299
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_EXECUTE),
300
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_READ),
301
        CV_ENUM_ENT(COFF, IMAGE_SCN_MEM_WRITE)};
302
303
namespace llvm {
304
namespace codeview {
305
306
4.84k
ArrayRef<EnumEntry<SymbolKind>> getSymbolTypeNames() {
307
4.84k
  return makeArrayRef(SymbolTypeNames);
308
4.84k
}
309
310
1.65k
ArrayRef<EnumEntry<TypeLeafKind>> getTypeLeafNames() {
311
1.65k
  return makeArrayRef(TypeLeafNames);
312
1.65k
}
313
314
650
ArrayRef<EnumEntry<uint16_t>> getRegisterNames(CPUType Cpu) {
315
650
  if (Cpu == CPUType::ARM64) {
316
12
    return makeArrayRef(RegisterNames_ARM64);
317
12
  }
318
638
  return makeArrayRef(RegisterNames_X86);
319
638
}
320
321
0
ArrayRef<EnumEntry<uint32_t>> getPublicSymFlagNames() {
322
0
  return makeArrayRef(PublicSymFlagNames);
323
0
}
324
325
374
ArrayRef<EnumEntry<uint8_t>> getProcSymFlagNames() {
326
374
  return makeArrayRef(ProcSymFlagNames);
327
374
}
328
329
365
ArrayRef<EnumEntry<uint16_t>> getLocalFlagNames() {
330
365
  return makeArrayRef(LocalFlags);
331
365
}
332
333
0
ArrayRef<EnumEntry<uint8_t>> getFrameCookieKindNames() {
334
0
  return makeArrayRef(FrameCookieKinds);
335
0
}
336
337
145
ArrayRef<EnumEntry<SourceLanguage>> getSourceLanguageNames() {
338
145
  return makeArrayRef(SourceLanguages);
339
145
}
340
341
0
ArrayRef<EnumEntry<uint32_t>> getCompileSym2FlagNames() {
342
0
  return makeArrayRef(CompileSym2FlagNames);
343
0
}
344
345
210
ArrayRef<EnumEntry<uint32_t>> getCompileSym3FlagNames() {
346
210
  return makeArrayRef(CompileSym3FlagNames);
347
210
}
348
349
0
ArrayRef<EnumEntry<uint32_t>> getFileChecksumNames() {
350
0
  return makeArrayRef(FileChecksumNames);
351
0
}
352
353
210
ArrayRef<EnumEntry<unsigned>> getCPUTypeNames() {
354
210
  return makeArrayRef(CPUTypeNames);
355
210
}
356
357
346
ArrayRef<EnumEntry<uint32_t>> getFrameProcSymFlagNames() {
358
346
  return makeArrayRef(FrameProcSymFlagNames);
359
346
}
360
361
0
ArrayRef<EnumEntry<uint16_t>> getExportSymFlagNames() {
362
0
  return makeArrayRef(ExportSymFlagNames);
363
0
}
364
365
0
ArrayRef<EnumEntry<uint32_t>> getModuleSubstreamKindNames() {
366
0
  return makeArrayRef(ModuleSubstreamKindNames);
367
0
}
368
369
3
ArrayRef<EnumEntry<uint8_t>> getThunkOrdinalNames() {
370
3
  return makeArrayRef(ThunkOrdinalNames);
371
3
}
372
373
5
ArrayRef<EnumEntry<uint16_t>> getTrampolineNames() {
374
5
  return makeArrayRef(TrampolineNames);
375
5
}
376
377
ArrayRef<EnumEntry<COFF::SectionCharacteristics>>
378
0
getImageSectionCharacteristicNames() {
379
0
  return makeArrayRef(ImageSectionCharacteristicNames);
380
0
}
381
382
} // end namespace codeview
383
} // end namespace llvm