LCOV - code coverage report
Current view: top level - lib/DebugInfo/CodeView - EnumTables.cpp (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 37 55 67.3 %
Date: 2017-09-14 15:23:50 Functions: 11 20 55.0 %
Legend: Lines: hit not hit

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

Generated by: LCOV version 1.13