1 //===- EnumTables.h - Enum to string conversion tables ----------*- C++ -*-===// 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 #ifndef LLVM_DEBUGINFO_CODEVIEW_ENUMTABLES_H 11 #define LLVM_DEBUGINFO_CODEVIEW_ENUMTABLES_H 12 13 #include "llvm/ADT/ArrayRef.h" 14 #include "llvm/BinaryFormat/COFF.h" 15 #include "llvm/DebugInfo/CodeView/CodeView.h" 16 #include "llvm/Support/ScopedPrinter.h" 17 #include <cstdint> 18 19 namespace llvm { 20 namespace codeview { 21 22 ArrayRef<EnumEntry<SymbolKind>> getSymbolTypeNames(); 23 ArrayRef<EnumEntry<TypeLeafKind>> getTypeLeafNames(); 24 ArrayRef<EnumEntry<uint16_t>> getRegisterNames(); 25 ArrayRef<EnumEntry<uint32_t>> getPublicSymFlagNames(); 26 ArrayRef<EnumEntry<uint8_t>> getProcSymFlagNames(); 27 ArrayRef<EnumEntry<uint16_t>> getLocalFlagNames(); 28 ArrayRef<EnumEntry<uint8_t>> getFrameCookieKindNames(); 29 ArrayRef<EnumEntry<SourceLanguage>> getSourceLanguageNames(); 30 ArrayRef<EnumEntry<uint32_t>> getCompileSym2FlagNames(); 31 ArrayRef<EnumEntry<uint32_t>> getCompileSym3FlagNames(); 32 ArrayRef<EnumEntry<uint32_t>> getFileChecksumNames(); 33 ArrayRef<EnumEntry<unsigned>> getCPUTypeNames(); 34 ArrayRef<EnumEntry<uint32_t>> getFrameProcSymFlagNames(); 35 ArrayRef<EnumEntry<uint16_t>> getExportSymFlagNames(); 36 ArrayRef<EnumEntry<uint32_t>> getModuleSubstreamKindNames(); 37 ArrayRef<EnumEntry<uint8_t>> getThunkOrdinalNames(); 38 ArrayRef<EnumEntry<uint16_t>> getTrampolineNames(); 39 ArrayRef<EnumEntry<COFF::SectionCharacteristics>> 40 getImageSectionCharacteristicNames(); 41 42 } // end namespace codeview 43 } // end namespace llvm 44 45 #endif // LLVM_DEBUGINFO_CODEVIEW_ENUMTABLES_H 46