Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Regions.def
Line
Count
Source (jump to first uncovered line)
1
//===-- Regions.def - Metadata about MemRegion kinds ------------*- C++ -*-===//
2
//
3
// 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
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// The list of regions (MemRegion sub-classes) used in the Static Analyzer.
10
// In order to use this information, users of this file must define one or more
11
// of the three macros:
12
//
13
// REGION(Id, Parent) - for specific MemRegion sub-classes, reserving
14
// enum value IdKind for their kind.
15
//
16
// ABSTRACT_REGION(Id, Parent) - for abstract region classes,
17
//
18
// REGION_RANGE(Id, First, Last) - for ranges of kind-enums,
19
// allowing to determine abstract class of a region
20
// based on the kind-enum value.
21
//
22
//===----------------------------------------------------------------------===//
23
24
#ifndef REGION
25
#define REGION(Id, Parent)
26
#endif
27
28
#ifndef ABSTRACT_REGION
29
#define ABSTRACT_REGION(Id, Parent)
30
#endif
31
32
#ifndef REGION_RANGE
33
#define REGION_RANGE(Id, First, Last)
34
#endif
35
36
ABSTRACT_REGION(MemSpaceRegion, MemRegion)
37
0
  REGION(CodeSpaceRegion, MemSpaceRegion)
38
0
  ABSTRACT_REGION(GlobalsSpaceRegion, MemSpaceRegion)
39
0
    ABSTRACT_REGION(NonStaticGlobalSpaceRegion, GlobalsSpaceRegion)
40
0
      REGION(GlobalImmutableSpaceRegion, NonStaticGlobalSpaceRegion)
41
0
      REGION(GlobalInternalSpaceRegion, NonStaticGlobalSpaceRegion)
42
0
      REGION(GlobalSystemSpaceRegion, NonStaticGlobalSpaceRegion)
43
0
      REGION_RANGE(NON_STATIC_GLOBAL_MEMSPACES, GlobalImmutableSpaceRegionKind,
44
0
                                                GlobalSystemSpaceRegionKind)
45
0
    REGION(StaticGlobalSpaceRegion, MemSpaceRegion)
46
0
    REGION_RANGE(GLOBAL_MEMSPACES, GlobalImmutableSpaceRegionKind,
47
0
                                   StaticGlobalSpaceRegionKind)
48
0
  REGION(HeapSpaceRegion, MemSpaceRegion)
49
0
  ABSTRACT_REGION(StackSpaceRegion, MemSpaceRegion)
50
0
    REGION(StackArgumentsSpaceRegion, StackSpaceRegion)
51
0
    REGION(StackLocalsSpaceRegion, StackSpaceRegion)
52
0
    REGION_RANGE(STACK_MEMSPACES, StackArgumentsSpaceRegionKind,
53
0
                                  StackLocalsSpaceRegionKind)
54
0
  REGION(UnknownSpaceRegion, MemSpaceRegion)
55
0
  REGION_RANGE(MEMSPACES, CodeSpaceRegionKind,
56
0
                          UnknownSpaceRegionKind)
57
0
ABSTRACT_REGION(SubRegion, MemRegion)
58
1
  REGION(AllocaRegion, SubRegion)
59
7
  REGION(SymbolicRegion, SubRegion)
60
7
  ABSTRACT_REGION(TypedRegion, SubRegion)
61
7
    
REGION0
(BlockDataRegion, TypedRegion)
62
0
    ABSTRACT_REGION(CodeTextRegion, TypedRegion)
63
0
      REGION(BlockCodeRegion, CodeTextRegion)
64
0
      REGION(FunctionCodeRegion, CodeTextRegion)
65
0
      REGION_RANGE(CODE_TEXT_REGIONS, BlockCodeRegionKind,
66
0
                                      FunctionCodeRegionKind)
67
0
    ABSTRACT_REGION(TypedValueRegion, TypedRegion)
68
0
      REGION(CompoundLiteralRegion, TypedValueRegion)
69
1
      REGION(CXXBaseObjectRegion, TypedValueRegion)
70
1
      
REGION0
(CXXDerivedObjectRegion, TypedValueRegion)
71
3
      REGION(CXXTempObjectRegion, TypedValueRegion)
72
3
      
REGION0
(CXXThisRegion, TypedValueRegion)
73
0
      ABSTRACT_REGION(DeclRegion, TypedValueRegion)
74
6
        REGION(FieldRegion, DeclRegion)
75
6
        
REGION2
(ObjCIvarRegion, DeclRegion)
76
16
        REGION(VarRegion, DeclRegion)
77
16
        REGION_RANGE(DECL_REGIONS, FieldRegionKind,
78
16
                                   VarRegionKind)
79
16
      
REGION6
(ElementRegion, TypedValueRegion)
80
6
      
REGION0
(ObjCStringRegion, TypedValueRegion)
81
1
      REGION(StringRegion, TypedValueRegion)
82
      REGION_RANGE(TYPED_VALUE_REGIONS, CompoundLiteralRegionKind,
83
                                        StringRegionKind)
84
    REGION_RANGE(TYPED_REGIONS, BlockDataRegionKind,
85
                                StringRegionKind)
86
87
#undef REGION_RANGE
88
#undef ABSTRACT_REGION
89
#undef REGION