LCOV - code coverage report
Current view: top level - include/llvm/IR - DebugInfoFlags.def (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 29 29 100.0 %
Date: 2018-02-21 17:27:13 Functions: 0 0 -
Legend: Lines: hit not hit

          Line data    Source code
       1             : //===- llvm/IR/DebugInfoFlags.def - Debug info flag definitions -*- 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             : // Macros for running through debug info flags.
      11             : //
      12             : //===----------------------------------------------------------------------===//
      13             : 
      14             : // TODO: Add other DW-based macros.
      15             : #ifndef HANDLE_DI_FLAG
      16             : #error "Missing macro definition of HANDLE_DI_FLAG"
      17             : #endif
      18             : 
      19        6350 : HANDLE_DI_FLAG(0, Zero) // Use it as zero value.
      20             :                         // For example: void foo(DIFlags Flags = FlagZero).
      21       12945 : HANDLE_DI_FLAG(1, Private)
      22       12963 : HANDLE_DI_FLAG(2, Protected)
      23       13254 : HANDLE_DI_FLAG(3, Public)
      24       13175 : HANDLE_DI_FLAG((1 << 2), FwdDecl)
      25       12931 : HANDLE_DI_FLAG((1 << 3), AppleBlock)
      26       12912 : HANDLE_DI_FLAG((1 << 4), BlockByrefStruct)
      27       12918 : HANDLE_DI_FLAG((1 << 5), Virtual)
      28       15528 : HANDLE_DI_FLAG((1 << 6), Artificial)
      29       12907 : HANDLE_DI_FLAG((1 << 7), Explicit)
      30       15779 : HANDLE_DI_FLAG((1 << 8), Prototyped)
      31       12948 : HANDLE_DI_FLAG((1 << 9), ObjcClassComplete)
      32       14018 : HANDLE_DI_FLAG((1 << 10), ObjectPointer)
      33       12921 : HANDLE_DI_FLAG((1 << 11), Vector)
      34       13007 : HANDLE_DI_FLAG((1 << 12), StaticMember)
      35       12914 : HANDLE_DI_FLAG((1 << 13), LValueReference)
      36       12909 : HANDLE_DI_FLAG((1 << 14), RValueReference)
      37             : // 15 was formerly ExternalTypeRef, but this was never used.
      38       12906 : HANDLE_DI_FLAG((1 << 15), Reserved)
      39       12912 : HANDLE_DI_FLAG((1 << 16), SingleInheritance)
      40       12908 : HANDLE_DI_FLAG((2 << 16), MultipleInheritance)
      41       12908 : HANDLE_DI_FLAG((3 << 16), VirtualInheritance)
      42       12915 : HANDLE_DI_FLAG((1 << 18), IntroducedVirtual)
      43       12920 : HANDLE_DI_FLAG((1 << 19), BitField)
      44       12912 : HANDLE_DI_FLAG((1 << 20), NoReturn)
      45       12906 : HANDLE_DI_FLAG((1 << 21), MainSubprogram)
      46       13299 : HANDLE_DI_FLAG((1 << 22), TypePassByValue)
      47       13006 : HANDLE_DI_FLAG((1 << 23), TypePassByReference)
      48       12932 : HANDLE_DI_FLAG((1 << 24), FixedEnum)
      49             : 
      50             : // To avoid needing a dedicated value for IndirectVirtualBase, we use
      51             : // the bitwise or of Virtual and FwdDecl, which does not otherwise
      52             : // make sense for inheritance.
      53       12907 : HANDLE_DI_FLAG((1 << 2) | (1 << 5), IndirectVirtualBase)
      54             : 
      55             : #ifdef DI_FLAG_LARGEST_NEEDED
      56             : // intended to be used with ADT/BitmaskEnum.h
      57             : // NOTE: always must be equal to largest flag, check this when adding new flag
      58             : HANDLE_DI_FLAG((1 << 24), Largest)
      59             : #undef DI_FLAG_LARGEST_NEEDED
      60             : #endif
      61             : 
      62             : #undef HANDLE_DI_FLAG

Generated by: LCOV version 1.13