Coverage Report

Created: 2018-07-19 03:59

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h
Line
Count
Source (jump to first uncovered line)
1
//===- TypeVisitorCallbackPipeline.h ----------------------------*- 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_TYPEVISITORCALLBACKPIPELINE_H
11
#define LLVM_DEBUGINFO_CODEVIEW_TYPEVISITORCALLBACKPIPELINE_H
12
13
#include "llvm/DebugInfo/CodeView/CodeView.h"
14
#include "llvm/DebugInfo/CodeView/TypeRecord.h"
15
#include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
16
#include "llvm/Support/Error.h"
17
#include <vector>
18
19
namespace llvm {
20
namespace codeview {
21
22
class TypeVisitorCallbackPipeline : public TypeVisitorCallbacks {
23
public:
24
4.53k
  TypeVisitorCallbackPipeline() = default;
25
26
0
  Error visitUnknownType(CVRecord<TypeLeafKind> &Record) override {
27
0
    for (auto Visitor : Pipeline) {
28
0
      if (auto EC = Visitor->visitUnknownType(Record))
29
0
        return EC;
30
0
    }
31
0
    return Error::success();
32
0
  }
33
34
0
  Error visitUnknownMember(CVMemberRecord &Record) override {
35
0
    for (auto Visitor : Pipeline) {
36
0
      if (auto EC = Visitor->visitUnknownMember(Record))
37
0
        return EC;
38
0
    }
39
0
    return Error::success();
40
0
  }
41
42
18
  Error visitTypeBegin(CVType &Record) override {
43
36
    for (auto Visitor : Pipeline) {
44
36
      if (auto EC = Visitor->visitTypeBegin(Record))
45
0
        return EC;
46
36
    }
47
18
    return Error::success();
48
18
  }
49
50
8.12k
  Error visitTypeBegin(CVType &Record, TypeIndex Index) override {
51
16.2k
    for (auto Visitor : Pipeline) {
52
16.2k
      if (auto EC = Visitor->visitTypeBegin(Record, Index))
53
0
        return EC;
54
16.2k
    }
55
8.12k
    return Error::success();
56
8.12k
  }
57
58
8.14k
  Error visitTypeEnd(CVType &Record) override {
59
16.2k
    for (auto Visitor : Pipeline) {
60
16.2k
      if (auto EC = Visitor->visitTypeEnd(Record))
61
0
        return EC;
62
16.2k
    }
63
8.14k
    return Error::success();
64
8.14k
  }
65
66
8.84k
  Error visitMemberBegin(CVMemberRecord &Record) override {
67
17.6k
    for (auto Visitor : Pipeline) {
68
17.6k
      if (auto EC = Visitor->visitMemberBegin(Record))
69
0
        return EC;
70
17.6k
    }
71
8.84k
    return Error::success();
72
8.84k
  }
73
74
8.84k
  Error visitMemberEnd(CVMemberRecord &Record) override {
75
17.6k
    for (auto Visitor : Pipeline) {
76
17.6k
      if (auto EC = Visitor->visitMemberEnd(Record))
77
0
        return EC;
78
17.6k
    }
79
8.84k
    return Error::success();
80
8.84k
  }
81
82
9.07k
  void addCallbackToPipeline(TypeVisitorCallbacks &Callbacks) {
83
9.07k
    Pipeline.push_back(&Callbacks);
84
9.07k
  }
85
86
#define TYPE_RECORD(EnumName, EnumVal, Name)                                   \
87
8.14k
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
8.14k
    return visitKnownRecordImpl(CVR, Record);                                  \
89
8.14k
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::PointerRecord&)
Line
Count
Source
87
1.02k
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
1.02k
    return visitKnownRecordImpl(CVR, Record);                                  \
89
1.02k
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ModifierRecord&)
Line
Count
Source
87
181
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
181
    return visitKnownRecordImpl(CVR, Record);                                  \
89
181
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ProcedureRecord&)
Line
Count
Source
87
402
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
402
    return visitKnownRecordImpl(CVR, Record);                                  \
89
402
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::MemberFunctionRecord&)
Line
Count
Source
87
1.07k
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
1.07k
    return visitKnownRecordImpl(CVR, Record);                                  \
89
1.07k
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::LabelRecord&)
Line
Count
Source
87
1
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
1
    return visitKnownRecordImpl(CVR, Record);                                  \
89
1
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ArgListRecord&)
Line
Count
Source
87
683
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
683
    return visitKnownRecordImpl(CVR, Record);                                  \
89
683
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::FieldListRecord&)
Line
Count
Source
87
959
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
959
    return visitKnownRecordImpl(CVR, Record);                                  \
89
959
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ArrayRecord&)
Line
Count
Source
87
82
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
82
    return visitKnownRecordImpl(CVR, Record);                                  \
89
82
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ClassRecord&)
Line
Count
Source
87
1.57k
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
1.57k
    return visitKnownRecordImpl(CVR, Record);                                  \
89
1.57k
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::UnionRecord&)
Line
Count
Source
87
24
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
24
    return visitKnownRecordImpl(CVR, Record);                                  \
89
24
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::EnumRecord&)
Line
Count
Source
87
204
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
204
    return visitKnownRecordImpl(CVR, Record);                                  \
89
204
  }
Unexecuted instantiation: llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::TypeServer2Record&)
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::VFTableRecord&)
Line
Count
Source
87
11
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
11
    return visitKnownRecordImpl(CVR, Record);                                  \
89
11
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::VFTableShapeRecord&)
Line
Count
Source
87
38
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
38
    return visitKnownRecordImpl(CVR, Record);                                  \
89
38
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::BitFieldRecord&)
Line
Count
Source
87
18
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
18
    return visitKnownRecordImpl(CVR, Record);                                  \
89
18
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::FuncIdRecord&)
Line
Count
Source
87
422
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
422
    return visitKnownRecordImpl(CVR, Record);                                  \
89
422
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::MemberFuncIdRecord&)
Line
Count
Source
87
106
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
106
    return visitKnownRecordImpl(CVR, Record);                                  \
89
106
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::BuildInfoRecord&)
Line
Count
Source
87
48
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
48
    return visitKnownRecordImpl(CVR, Record);                                  \
89
48
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::StringListRecord&)
Line
Count
Source
87
47
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
47
    return visitKnownRecordImpl(CVR, Record);                                  \
89
47
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::StringIdRecord&)
Line
Count
Source
87
471
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
471
    return visitKnownRecordImpl(CVR, Record);                                  \
89
471
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::UdtSourceLineRecord&)
Line
Count
Source
87
524
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
524
    return visitKnownRecordImpl(CVR, Record);                                  \
89
524
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::UdtModSourceLineRecord&)
Line
Count
Source
87
8
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
8
    return visitKnownRecordImpl(CVR, Record);                                  \
89
8
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::MethodOverloadListRecord&)
Line
Count
Source
87
239
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
239
    return visitKnownRecordImpl(CVR, Record);                                  \
89
239
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::PrecompRecord&)
Line
Count
Source
87
2
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
2
    return visitKnownRecordImpl(CVR, Record);                                  \
89
2
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecord(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::EndPrecompRecord&)
Line
Count
Source
87
2
  Error visitKnownRecord(CVType &CVR, Name##Record &Record) override {         \
88
2
    return visitKnownRecordImpl(CVR, Record);                                  \
89
2
  }
90
#define MEMBER_RECORD(EnumName, EnumVal, Name)                                 \
91
  Error visitKnownMember(CVMemberRecord &CVMR, Name##Record &Record)           \
92
8.84k
      override {                                                               \
93
8.84k
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
8.84k
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::BaseClassRecord&)
Line
Count
Source
92
26
      override {                                                               \
93
26
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
26
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::VirtualBaseClassRecord&)
Line
Count
Source
92
21
      override {                                                               \
93
21
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
21
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::VFPtrRecord&)
Line
Count
Source
92
19
      override {                                                               \
93
19
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
19
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::StaticDataMemberRecord&)
Line
Count
Source
92
119
      override {                                                               \
93
119
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
119
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::OverloadedMethodRecord&)
Line
Count
Source
92
226
      override {                                                               \
93
226
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
226
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::DataMemberRecord&)
Line
Count
Source
92
1.15k
      override {                                                               \
93
1.15k
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
1.15k
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::NestedTypeRecord&)
Line
Count
Source
92
162
      override {                                                               \
93
162
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
162
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::OneMethodRecord&)
Line
Count
Source
92
408
      override {                                                               \
93
408
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
408
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::EnumeratorRecord&)
Line
Count
Source
92
6.69k
      override {                                                               \
93
6.69k
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
6.69k
  }
llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMember(llvm::codeview::CVMemberRecord&, llvm::codeview::ListContinuationRecord&)
Line
Count
Source
92
4
      override {                                                               \
93
4
    return visitKnownMemberImpl(CVMR, Record);                                 \
94
4
  }
95
#define TYPE_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
96
#define MEMBER_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
97
#include "llvm/DebugInfo/CodeView/CodeViewTypes.def"
98
99
private:
100
8.14k
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
16.2k
    for (auto Visitor : Pipeline) {
102
16.2k
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
16.2k
    }
105
8.14k
    return Error::success();
106
8.14k
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::PointerRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::PointerRecord&)
Line
Count
Source
100
1.02k
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
2.05k
    for (auto Visitor : Pipeline) {
102
2.05k
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
2.05k
    }
105
1.02k
    return Error::success();
106
1.02k
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::ModifierRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ModifierRecord&)
Line
Count
Source
100
181
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
362
    for (auto Visitor : Pipeline) {
102
362
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
362
    }
105
181
    return Error::success();
106
181
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::ProcedureRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ProcedureRecord&)
Line
Count
Source
100
402
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
804
    for (auto Visitor : Pipeline) {
102
804
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
804
    }
105
402
    return Error::success();
106
402
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::MemberFunctionRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::MemberFunctionRecord&)
Line
Count
Source
100
1.07k
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
2.15k
    for (auto Visitor : Pipeline) {
102
2.15k
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
2.15k
    }
105
1.07k
    return Error::success();
106
1.07k
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::LabelRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::LabelRecord&)
Line
Count
Source
100
1
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
2
    for (auto Visitor : Pipeline) {
102
2
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
2
    }
105
1
    return Error::success();
106
1
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::ArgListRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ArgListRecord&)
Line
Count
Source
100
683
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
1.36k
    for (auto Visitor : Pipeline) {
102
1.36k
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
1.36k
    }
105
683
    return Error::success();
106
683
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::FieldListRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::FieldListRecord&)
Line
Count
Source
100
959
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
1.91k
    for (auto Visitor : Pipeline) {
102
1.91k
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
1.91k
    }
105
959
    return Error::success();
106
959
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::ArrayRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ArrayRecord&)
Line
Count
Source
100
82
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
164
    for (auto Visitor : Pipeline) {
102
164
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
164
    }
105
82
    return Error::success();
106
82
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::ClassRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::ClassRecord&)
Line
Count
Source
100
1.57k
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
3.14k
    for (auto Visitor : Pipeline) {
102
3.14k
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
3.14k
    }
105
1.57k
    return Error::success();
106
1.57k
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::UnionRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::UnionRecord&)
Line
Count
Source
100
24
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
48
    for (auto Visitor : Pipeline) {
102
48
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
48
    }
105
24
    return Error::success();
106
24
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::EnumRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::EnumRecord&)
Line
Count
Source
100
204
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
408
    for (auto Visitor : Pipeline) {
102
408
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
408
    }
105
204
    return Error::success();
106
204
  }
Unexecuted instantiation: llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::TypeServer2Record>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::TypeServer2Record&)
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::VFTableRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::VFTableRecord&)
Line
Count
Source
100
11
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
22
    for (auto Visitor : Pipeline) {
102
22
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
22
    }
105
11
    return Error::success();
106
11
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::VFTableShapeRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::VFTableShapeRecord&)
Line
Count
Source
100
38
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
76
    for (auto Visitor : Pipeline) {
102
76
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
76
    }
105
38
    return Error::success();
106
38
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::BitFieldRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::BitFieldRecord&)
Line
Count
Source
100
18
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
36
    for (auto Visitor : Pipeline) {
102
36
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
36
    }
105
18
    return Error::success();
106
18
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::FuncIdRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::FuncIdRecord&)
Line
Count
Source
100
422
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
844
    for (auto Visitor : Pipeline) {
102
844
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
844
    }
105
422
    return Error::success();
106
422
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::MemberFuncIdRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::MemberFuncIdRecord&)
Line
Count
Source
100
106
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
212
    for (auto Visitor : Pipeline) {
102
212
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
212
    }
105
106
    return Error::success();
106
106
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::BuildInfoRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::BuildInfoRecord&)
Line
Count
Source
100
48
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
96
    for (auto Visitor : Pipeline) {
102
96
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
96
    }
105
48
    return Error::success();
106
48
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::StringListRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::StringListRecord&)
Line
Count
Source
100
47
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
94
    for (auto Visitor : Pipeline) {
102
94
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
94
    }
105
47
    return Error::success();
106
47
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::StringIdRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::StringIdRecord&)
Line
Count
Source
100
471
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
942
    for (auto Visitor : Pipeline) {
102
942
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
942
    }
105
471
    return Error::success();
106
471
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::UdtSourceLineRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::UdtSourceLineRecord&)
Line
Count
Source
100
524
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
1.04k
    for (auto Visitor : Pipeline) {
102
1.04k
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
1.04k
    }
105
524
    return Error::success();
106
524
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::UdtModSourceLineRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::UdtModSourceLineRecord&)
Line
Count
Source
100
8
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
16
    for (auto Visitor : Pipeline) {
102
16
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
16
    }
105
8
    return Error::success();
106
8
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::MethodOverloadListRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::MethodOverloadListRecord&)
Line
Count
Source
100
239
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
478
    for (auto Visitor : Pipeline) {
102
478
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
478
    }
105
239
    return Error::success();
106
239
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::PrecompRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::PrecompRecord&)
Line
Count
Source
100
2
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
4
    for (auto Visitor : Pipeline) {
102
4
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
4
    }
105
2
    return Error::success();
106
2
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownRecordImpl<llvm::codeview::EndPrecompRecord>(llvm::codeview::CVRecord<llvm::codeview::TypeLeafKind>&, llvm::codeview::EndPrecompRecord&)
Line
Count
Source
100
2
  template <typename T> Error visitKnownRecordImpl(CVType &CVR, T &Record) {
101
4
    for (auto Visitor : Pipeline) {
102
4
      if (auto EC = Visitor->visitKnownRecord(CVR, Record))
103
0
        return EC;
104
4
    }
105
2
    return Error::success();
106
2
  }
107
108
  template <typename T>
109
8.84k
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
17.6k
    for (auto Visitor : Pipeline) {
111
17.6k
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
17.6k
    }
114
8.84k
    return Error::success();
115
8.84k
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::BaseClassRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::BaseClassRecord&)
Line
Count
Source
109
26
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
52
    for (auto Visitor : Pipeline) {
111
52
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
52
    }
114
26
    return Error::success();
115
26
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::VirtualBaseClassRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::VirtualBaseClassRecord&)
Line
Count
Source
109
21
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
42
    for (auto Visitor : Pipeline) {
111
42
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
42
    }
114
21
    return Error::success();
115
21
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::VFPtrRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::VFPtrRecord&)
Line
Count
Source
109
19
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
38
    for (auto Visitor : Pipeline) {
111
38
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
38
    }
114
19
    return Error::success();
115
19
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::StaticDataMemberRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::StaticDataMemberRecord&)
Line
Count
Source
109
119
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
238
    for (auto Visitor : Pipeline) {
111
238
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
238
    }
114
119
    return Error::success();
115
119
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::OverloadedMethodRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::OverloadedMethodRecord&)
Line
Count
Source
109
226
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
452
    for (auto Visitor : Pipeline) {
111
452
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
452
    }
114
226
    return Error::success();
115
226
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::DataMemberRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::DataMemberRecord&)
Line
Count
Source
109
1.15k
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
2.31k
    for (auto Visitor : Pipeline) {
111
2.31k
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
2.31k
    }
114
1.15k
    return Error::success();
115
1.15k
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::NestedTypeRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::NestedTypeRecord&)
Line
Count
Source
109
162
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
324
    for (auto Visitor : Pipeline) {
111
324
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
324
    }
114
162
    return Error::success();
115
162
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::OneMethodRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::OneMethodRecord&)
Line
Count
Source
109
408
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
816
    for (auto Visitor : Pipeline) {
111
816
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
816
    }
114
408
    return Error::success();
115
408
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::EnumeratorRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::EnumeratorRecord&)
Line
Count
Source
109
6.69k
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
13.3k
    for (auto Visitor : Pipeline) {
111
13.3k
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
13.3k
    }
114
6.69k
    return Error::success();
115
6.69k
  }
llvm::Error llvm::codeview::TypeVisitorCallbackPipeline::visitKnownMemberImpl<llvm::codeview::ListContinuationRecord>(llvm::codeview::CVMemberRecord&, llvm::codeview::ListContinuationRecord&)
Line
Count
Source
109
4
  Error visitKnownMemberImpl(CVMemberRecord &CVMR, T &Record) {
110
8
    for (auto Visitor : Pipeline) {
111
8
      if (auto EC = Visitor->visitKnownMember(CVMR, Record))
112
0
        return EC;
113
8
    }
114
4
    return Error::success();
115
4
  }
116
  std::vector<TypeVisitorCallbacks *> Pipeline;
117
};
118
119
} // end namespace codeview
120
} // end namespace llvm
121
122
#endif // LLVM_DEBUGINFO_CODEVIEW_TYPEVISITORCALLBACKPIPELINE_H