blob: 270cd4b8330c316c2a1070189bc3aea4d1ea6c1e [file] [log] [blame]
Andrew Scull5e1ddfa2018-08-14 10:06:54 +01001//===- EnumTables.h - Enum to string conversion tables ----------*- C++ -*-===//
2//
Andrew Walbran16937d02019-10-22 13:54:20 +01003// 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
Andrew Scull5e1ddfa2018-08-14 10:06:54 +01006//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLVM_DEBUGINFO_CODEVIEW_ENUMTABLES_H
10#define LLVM_DEBUGINFO_CODEVIEW_ENUMTABLES_H
11
12#include "llvm/ADT/ArrayRef.h"
13#include "llvm/BinaryFormat/COFF.h"
14#include "llvm/DebugInfo/CodeView/CodeView.h"
15#include "llvm/Support/ScopedPrinter.h"
16#include <cstdint>
17
18namespace llvm {
19namespace codeview {
20
21ArrayRef<EnumEntry<SymbolKind>> getSymbolTypeNames();
22ArrayRef<EnumEntry<TypeLeafKind>> getTypeLeafNames();
Andrew Walbran3d2c1972020-04-07 12:24:26 +010023ArrayRef<EnumEntry<uint16_t>> getRegisterNames(CPUType Cpu);
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010024ArrayRef<EnumEntry<uint32_t>> getPublicSymFlagNames();
25ArrayRef<EnumEntry<uint8_t>> getProcSymFlagNames();
26ArrayRef<EnumEntry<uint16_t>> getLocalFlagNames();
27ArrayRef<EnumEntry<uint8_t>> getFrameCookieKindNames();
28ArrayRef<EnumEntry<SourceLanguage>> getSourceLanguageNames();
29ArrayRef<EnumEntry<uint32_t>> getCompileSym2FlagNames();
30ArrayRef<EnumEntry<uint32_t>> getCompileSym3FlagNames();
31ArrayRef<EnumEntry<uint32_t>> getFileChecksumNames();
32ArrayRef<EnumEntry<unsigned>> getCPUTypeNames();
33ArrayRef<EnumEntry<uint32_t>> getFrameProcSymFlagNames();
34ArrayRef<EnumEntry<uint16_t>> getExportSymFlagNames();
35ArrayRef<EnumEntry<uint32_t>> getModuleSubstreamKindNames();
36ArrayRef<EnumEntry<uint8_t>> getThunkOrdinalNames();
37ArrayRef<EnumEntry<uint16_t>> getTrampolineNames();
38ArrayRef<EnumEntry<COFF::SectionCharacteristics>>
39getImageSectionCharacteristicNames();
Olivier Deprezf4ef2d02021-04-20 13:36:24 +020040ArrayRef<EnumEntry<uint16_t>> getClassOptionNames();
41ArrayRef<EnumEntry<uint8_t>> getMemberAccessNames();
42ArrayRef<EnumEntry<uint16_t>> getMethodOptionNames();
43ArrayRef<EnumEntry<uint16_t>> getMemberKindNames();
44ArrayRef<EnumEntry<uint8_t>> getPtrKindNames();
45ArrayRef<EnumEntry<uint8_t>> getPtrModeNames();
46ArrayRef<EnumEntry<uint16_t>> getPtrMemberRepNames();
47ArrayRef<EnumEntry<uint16_t>> getTypeModifierNames();
48ArrayRef<EnumEntry<uint8_t>> getCallingConventions();
49ArrayRef<EnumEntry<uint8_t>> getFunctionOptionEnum();
50ArrayRef<EnumEntry<uint16_t>> getLabelTypeEnum();
Andrew Scull5e1ddfa2018-08-14 10:06:54 +010051
52} // end namespace codeview
53} // end namespace llvm
54
55#endif // LLVM_DEBUGINFO_CODEVIEW_ENUMTABLES_H