LCOV - code coverage report
Current view: top level - include/llvm/IR - DebugInfoFlags.def (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 26 26 100.0 %
Date: 2017-09-14 15:23:50 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       18172 : HANDLE_DI_FLAG(0, Zero) // Use it as zero value.
      20             :                         // For example: void foo(DIFlags Flags = FlagZero).
      21       18212 : HANDLE_DI_FLAG(1, Private)
      22       18227 : HANDLE_DI_FLAG(2, Protected)
      23       18504 : HANDLE_DI_FLAG(3, Public)
      24       18701 : HANDLE_DI_FLAG((1 << 2), FwdDecl)
      25       18222 : HANDLE_DI_FLAG((1 << 3), AppleBlock)
      26       18184 : HANDLE_DI_FLAG((1 << 4), BlockByrefStruct)
      27       18196 : HANDLE_DI_FLAG((1 << 5), Virtual)
      28       22564 : HANDLE_DI_FLAG((1 << 6), Artificial)
      29       18174 : HANDLE_DI_FLAG((1 << 7), Explicit)
      30       23052 : HANDLE_DI_FLAG((1 << 8), Prototyped)
      31       18258 : HANDLE_DI_FLAG((1 << 9), ObjcClassComplete)
      32       20184 : HANDLE_DI_FLAG((1 << 10), ObjectPointer)
      33       18203 : HANDLE_DI_FLAG((1 << 11), Vector)
      34       18322 : HANDLE_DI_FLAG((1 << 12), StaticMember)
      35       18188 : HANDLE_DI_FLAG((1 << 13), LValueReference)
      36       18178 : HANDLE_DI_FLAG((1 << 14), RValueReference)
      37             : // 15 was formerly ExternalTypeRef, but this was never used.
      38       18172 : HANDLE_DI_FLAG((1 << 15), Reserved)
      39       18178 : HANDLE_DI_FLAG((1 << 16), SingleInheritance)
      40       18174 : HANDLE_DI_FLAG((2 << 16), MultipleInheritance)
      41       18174 : HANDLE_DI_FLAG((3 << 16), VirtualInheritance)
      42       18190 : HANDLE_DI_FLAG((1 << 18), IntroducedVirtual)
      43       18200 : HANDLE_DI_FLAG((1 << 19), BitField)
      44       18184 : HANDLE_DI_FLAG((1 << 20), NoReturn)
      45       18172 : HANDLE_DI_FLAG((1 << 21), MainSubprogram)
      46             : 
      47             : // To avoid needing a dedicated value for IndirectVirtualBase, we use
      48             : // the bitwise or of Virtual and FwdDecl, which does not otherwise
      49             : // make sense for inheritance.
      50       18173 : HANDLE_DI_FLAG((1 << 2) | (1 << 5), IndirectVirtualBase)
      51             : 
      52             : #ifdef DI_FLAG_LARGEST_NEEDED
      53             : // intended to be used with ADT/BitmaskEnum.h
      54             : // NOTE: always must be equal to largest flag, check this when adding new flag
      55             : HANDLE_DI_FLAG((1 << 21), Largest)
      56             : #undef DI_FLAG_LARGEST_NEEDED
      57             : #endif
      58             : 
      59             : #undef HANDLE_DI_FLAG

Generated by: LCOV version 1.13