LLVM
8.0.1
lib
DebugInfo
PDB
PDBSymDumper.cpp
Go to the documentation of this file.
1
//===- PDBSymDumper.cpp - ---------------------------------------*- 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
#include "
llvm/DebugInfo/PDB/PDBSymDumper.h
"
11
#include "
llvm/Support/ErrorHandling.h
"
12
13
using namespace
llvm
;
14
using namespace
llvm::pdb
;
15
16
#define PDB_SYMDUMP_UNREACHABLE(Type) \
17
if (RequireImpl) \
18
llvm_unreachable("Attempt to dump " #Type " with no dump implementation");
19
20
PDBSymDumper::PDBSymDumper
(
bool
ShouldRequireImpl)
21
: RequireImpl(ShouldRequireImpl) {}
22
23
PDBSymDumper::~PDBSymDumper
() =
default
;
24
25
void
PDBSymDumper::dump
(
const
PDBSymbolAnnotation
&
Symbol
) {
26
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolAnnotation
)
27
}
28
29
void
PDBSymDumper::dump
(
const
PDBSymbolBlock
&
Symbol
) {
30
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolBlock
)
31
}
32
33
void
PDBSymDumper::dump
(
const
PDBSymbolCompiland
&
Symbol
) {
34
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolCompiland
)
35
}
36
37
void
PDBSymDumper::dump
(
const
PDBSymbolCompilandDetails
&
Symbol
) {
38
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolCompilandDetails
)
39
}
40
41
void
PDBSymDumper::dump
(
const
PDBSymbolCompilandEnv
&
Symbol
) {
42
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolCompilandEnv
)
43
}
44
45
void
PDBSymDumper::dump
(
const
PDBSymbolCustom
&
Symbol
) {
46
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolCustom
)
47
}
48
49
void
PDBSymDumper::dump
(
const
PDBSymbolData
&
Symbol
) {
50
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolData
)
51
}
52
53
void
PDBSymDumper::dump
(
const
PDBSymbolExe
&
Symbol
) {
54
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolExe
)
55
}
56
57
void
PDBSymDumper::dump
(
const
PDBSymbolFunc
&
Symbol
) {
58
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolFunc
)
59
}
60
61
void
PDBSymDumper::dump
(
const
PDBSymbolFuncDebugEnd
&
Symbol
) {
62
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolFuncDebugEnd
)
63
}
64
65
void
PDBSymDumper::dump
(
const
PDBSymbolFuncDebugStart
&
Symbol
) {
66
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolFuncDebugStart
)
67
}
68
69
void
PDBSymDumper::dump
(
const
PDBSymbolLabel
&
Symbol
) {
70
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolLabel
)
71
}
72
73
void
PDBSymDumper::dump
(
const
PDBSymbolPublicSymbol
&
Symbol
) {
74
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolPublicSymbol
)
75
}
76
77
void
PDBSymDumper::dump
(
const
PDBSymbolThunk
&
Symbol
) {
78
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolThunk
)
79
}
80
81
void
PDBSymDumper::dump
(
const
PDBSymbolTypeArray
&
Symbol
) {
82
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeArray
)
83
}
84
85
void
PDBSymDumper::dump
(
const
PDBSymbolTypeBaseClass
&
Symbol
) {
86
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeBaseClass
)
87
}
88
89
void
PDBSymDumper::dump
(
const
PDBSymbolTypeBuiltin
&
Symbol
) {
90
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeBuiltin
)
91
}
92
93
void
PDBSymDumper::dump
(
const
PDBSymbolTypeCustom
&
Symbol
) {
94
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeCustom
)
95
}
96
97
void
PDBSymDumper::dump
(
const
PDBSymbolTypeDimension
&
Symbol
) {
98
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeDimension
)
99
}
100
101
void
PDBSymDumper::dump
(
const
PDBSymbolTypeEnum
&
Symbol
) {
102
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeEnum
)
103
}
104
105
void
PDBSymDumper::dump
(
const
PDBSymbolTypeFriend
&
Symbol
) {
106
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeFriend
)
107
}
108
109
void
PDBSymDumper::dump
(
const
PDBSymbolTypeFunctionArg
&
Symbol
) {
110
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeFunctionArg
)
111
}
112
113
void
PDBSymDumper::dump
(
const
PDBSymbolTypeFunctionSig
&
Symbol
) {
114
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeFunctionSig
)
115
}
116
117
void
PDBSymDumper::dump
(
const
PDBSymbolTypeManaged
&
Symbol
) {
118
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeManaged
)
119
}
120
121
void
PDBSymDumper::dump
(
const
PDBSymbolTypePointer
&
Symbol
) {
122
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypePointer
)
123
}
124
125
void
PDBSymDumper::dump
(
const
PDBSymbolTypeTypedef
&
Symbol
) {
126
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeTypedef
)
127
}
128
129
void
PDBSymDumper::dump
(
const
PDBSymbolTypeUDT
&
Symbol
) {
130
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeUDT
)
131
}
132
133
void
PDBSymDumper::dump
(
const
PDBSymbolTypeVTable
&
Symbol
) {
134
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeVTable
)
135
}
136
137
void
PDBSymDumper::dump
(
const
PDBSymbolTypeVTableShape
&
Symbol
) {
138
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolTypeVTableShape
)
139
}
140
141
void
PDBSymDumper::dump
(
const
PDBSymbolUnknown
&
Symbol
) {
142
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolUnknown
)
143
}
144
145
void
PDBSymDumper::dump
(
const
PDBSymbolUsingNamespace
&
Symbol
) {
146
PDB_SYMDUMP_UNREACHABLE
(
PDBSymbolUsingNamespace
)
147
}
PDB_SYMDUMP_UNREACHABLE
#define PDB_SYMDUMP_UNREACHABLE(Type)
Definition:
PDBSymDumper.cpp:16
llvm::ARMBuildAttrs::Symbol
Definition:
ARMBuildAttributes.h:77
llvm
This class represents lattice values for constants.
Definition:
AllocatorList.h:24
llvm::pdb::PDBSymbolFuncDebugEnd
Definition:
PDBSymbolFuncDebugEnd.h:22
llvm::pdb::PDBSymbolAnnotation
Definition:
PDBSymbolAnnotation.h:20
llvm::pdb::PDBSymDumper::~PDBSymDumper
virtual ~PDBSymDumper()
llvm::pdb::PDBSymbolTypeVTable
Definition:
PDBSymbolTypeVTable.h:21
llvm::pdb::PDBSymbolCustom
PDBSymbolCustom represents symbols that are compiler-specific and do not fit anywhere else in the lex...
Definition:
PDBSymbolCustom.h:25
llvm::pdb::PDBSymbolExe
Definition:
PDBSymbolExe.h:22
llvm::pdb::PDBSymbolCompilandEnv
Definition:
PDBSymbolCompilandEnv.h:20
llvm::pdb::PDBSymbolTypeManaged
Definition:
PDBSymbolTypeManaged.h:21
llvm::pdb::PDBSymbolTypeBaseClass
Definition:
PDBSymbolTypeBaseClass.h:24
llvm::pdb::PDBSymbolTypeFunctionArg
Definition:
PDBSymbolTypeFunctionArg.h:21
llvm::pdb::PDBSymbolUsingNamespace
Definition:
PDBSymbolUsingNamespace.h:21
PDBSymDumper.h
llvm::pdb::PDBSymbolData
Definition:
PDBSymbolData.h:23
llvm::pdb::PDBSymbolTypeVTableShape
Definition:
PDBSymbolTypeVTableShape.h:21
llvm::pdb::PDBSymbolTypeArray
Definition:
PDBSymbolTypeArray.h:21
llvm::pdb::PDBSymbolTypeFriend
Definition:
PDBSymbolTypeFriend.h:21
llvm::pdb::PDBSymbolBlock
Definition:
PDBSymbolBlock.h:21
llvm::pdb::PDBSymDumper::PDBSymDumper
PDBSymDumper(bool ShouldRequireImpl)
Definition:
PDBSymDumper.cpp:20
llvm::pdb::PDBSymbolTypeFunctionSig
Definition:
PDBSymbolTypeFunctionSig.h:21
llvm::pdb
Definition:
ConcreteSymbolEnumerator.h:21
llvm::pdb::PDBSymbolFuncDebugStart
Definition:
PDBSymbolFuncDebugStart.h:21
llvm::pdb::PDBSymbolThunk
Definition:
PDBSymbolThunk.h:21
llvm::pdb::PDBSymbolCompilandDetails
Definition:
PDBSymbolCompilandDetails.h:21
llvm::pdb::PDBSymbolTypeBuiltin
Definition:
PDBSymbolTypeBuiltin.h:21
llvm::pdb::PDBSymbolCompiland
Definition:
PDBSymbolCompiland.h:22
ErrorHandling.h
llvm::pdb::PDBSymbolTypeCustom
Definition:
PDBSymbolTypeCustom.h:21
llvm::pdb::PDBSymDumper::dump
virtual void dump(const PDBSymbolAnnotation &Symbol)
Definition:
PDBSymDumper.cpp:25
llvm::pdb::PDBSymbolTypeEnum
Definition:
PDBSymbolTypeEnum.h:23
llvm::pdb::PDBSymbolTypeUDT
Definition:
PDBSymbolTypeUDT.h:25
llvm::pdb::PDBSymbolTypeDimension
Definition:
PDBSymbolTypeDimension.h:21
llvm::pdb::PDBSymbolUnknown
Definition:
PDBSymbolUnknown.h:20
llvm::pdb::PDBSymbolTypeTypedef
Definition:
PDBSymbolTypeTypedef.h:21
llvm::pdb::PDBSymbolPublicSymbol
Definition:
PDBSymbolPublicSymbol.h:21
llvm::pdb::PDBSymbolTypePointer
Definition:
PDBSymbolTypePointer.h:21
llvm::pdb::PDBSymbolLabel
Definition:
PDBSymbolLabel.h:21
llvm::pdb::PDBSymbolFunc
Definition:
PDBSymbolFunc.h:24
Generated on Sun Dec 20 2020 13:55:11 for LLVM by
1.8.13