xref: /aosp_15_r20/external/llvm/lib/DebugInfo/PDB/PDBSymDumper.cpp (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker //===- PDBSymDumper.cpp - ---------------------------------------*- C++ -*-===//
2*9880d681SAndroid Build Coastguard Worker //
3*9880d681SAndroid Build Coastguard Worker //                     The LLVM Compiler Infrastructure
4*9880d681SAndroid Build Coastguard Worker //
5*9880d681SAndroid Build Coastguard Worker // This file is distributed under the University of Illinois Open Source
6*9880d681SAndroid Build Coastguard Worker // License. See LICENSE.TXT for details.
7*9880d681SAndroid Build Coastguard Worker //
8*9880d681SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===//
9*9880d681SAndroid Build Coastguard Worker 
10*9880d681SAndroid Build Coastguard Worker #include "llvm/DebugInfo/PDB/PDBSymDumper.h"
11*9880d681SAndroid Build Coastguard Worker #include "llvm/Support/ErrorHandling.h"
12*9880d681SAndroid Build Coastguard Worker 
13*9880d681SAndroid Build Coastguard Worker using namespace llvm;
14*9880d681SAndroid Build Coastguard Worker using namespace llvm::pdb;
15*9880d681SAndroid Build Coastguard Worker 
16*9880d681SAndroid Build Coastguard Worker #define PDB_SYMDUMP_UNREACHABLE(Type)                                          \
17*9880d681SAndroid Build Coastguard Worker   if (RequireImpl)                                                             \
18*9880d681SAndroid Build Coastguard Worker     llvm_unreachable("Attempt to dump " #Type " with no dump implementation");
19*9880d681SAndroid Build Coastguard Worker 
PDBSymDumper(bool ShouldRequireImpl)20*9880d681SAndroid Build Coastguard Worker PDBSymDumper::PDBSymDumper(bool ShouldRequireImpl)
21*9880d681SAndroid Build Coastguard Worker     : RequireImpl(ShouldRequireImpl) {}
22*9880d681SAndroid Build Coastguard Worker 
~PDBSymDumper()23*9880d681SAndroid Build Coastguard Worker PDBSymDumper::~PDBSymDumper() {}
24*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolAnnotation & Symbol)25*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolAnnotation &Symbol) {
26*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolAnnotation)
27*9880d681SAndroid Build Coastguard Worker }
28*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolBlock & Symbol)29*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolBlock &Symbol) {
30*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolBlock)
31*9880d681SAndroid Build Coastguard Worker }
32*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolCompiland & Symbol)33*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolCompiland &Symbol) {
34*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolCompiland)
35*9880d681SAndroid Build Coastguard Worker }
36*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolCompilandDetails & Symbol)37*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolCompilandDetails &Symbol) {
38*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolCompilandDetails)
39*9880d681SAndroid Build Coastguard Worker }
40*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolCompilandEnv & Symbol)41*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolCompilandEnv &Symbol) {
42*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolCompilandEnv)
43*9880d681SAndroid Build Coastguard Worker }
44*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolCustom & Symbol)45*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolCustom &Symbol) {
46*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolCustom)
47*9880d681SAndroid Build Coastguard Worker }
48*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolData & Symbol)49*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolData &Symbol) {
50*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolData)
51*9880d681SAndroid Build Coastguard Worker }
52*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolExe & Symbol)53*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolExe &Symbol) {
54*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolExe)
55*9880d681SAndroid Build Coastguard Worker }
56*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolFunc & Symbol)57*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolFunc &Symbol) {
58*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolFunc)
59*9880d681SAndroid Build Coastguard Worker }
60*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolFuncDebugEnd & Symbol)61*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolFuncDebugEnd &Symbol) {
62*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolFuncDebugEnd)
63*9880d681SAndroid Build Coastguard Worker }
64*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolFuncDebugStart & Symbol)65*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolFuncDebugStart &Symbol) {
66*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolFuncDebugStart)
67*9880d681SAndroid Build Coastguard Worker }
68*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolLabel & Symbol)69*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolLabel &Symbol) {
70*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolLabel)
71*9880d681SAndroid Build Coastguard Worker }
72*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolPublicSymbol & Symbol)73*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolPublicSymbol &Symbol) {
74*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolPublicSymbol)
75*9880d681SAndroid Build Coastguard Worker }
76*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolThunk & Symbol)77*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolThunk &Symbol) {
78*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolThunk)
79*9880d681SAndroid Build Coastguard Worker }
80*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeArray & Symbol)81*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeArray &Symbol) {
82*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeArray)
83*9880d681SAndroid Build Coastguard Worker }
84*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeBaseClass & Symbol)85*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeBaseClass &Symbol) {
86*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeBaseClass)
87*9880d681SAndroid Build Coastguard Worker }
88*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeBuiltin & Symbol)89*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeBuiltin &Symbol) {
90*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeBuiltin)
91*9880d681SAndroid Build Coastguard Worker }
92*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeCustom & Symbol)93*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeCustom &Symbol) {
94*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeCustom)
95*9880d681SAndroid Build Coastguard Worker }
96*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeDimension & Symbol)97*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeDimension &Symbol) {
98*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeDimension)
99*9880d681SAndroid Build Coastguard Worker }
100*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeEnum & Symbol)101*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeEnum &Symbol) {
102*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeEnum)
103*9880d681SAndroid Build Coastguard Worker }
104*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeFriend & Symbol)105*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeFriend &Symbol) {
106*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeFriend)
107*9880d681SAndroid Build Coastguard Worker }
108*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeFunctionArg & Symbol)109*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeFunctionArg &Symbol) {
110*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeFunctionArg)
111*9880d681SAndroid Build Coastguard Worker }
112*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeFunctionSig & Symbol)113*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeFunctionSig &Symbol) {
114*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeFunctionSig)
115*9880d681SAndroid Build Coastguard Worker }
116*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeManaged & Symbol)117*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeManaged &Symbol) {
118*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeManaged)
119*9880d681SAndroid Build Coastguard Worker }
120*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypePointer & Symbol)121*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypePointer &Symbol) {
122*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypePointer)
123*9880d681SAndroid Build Coastguard Worker }
124*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeTypedef & Symbol)125*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeTypedef &Symbol) {
126*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeTypedef)
127*9880d681SAndroid Build Coastguard Worker }
128*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeUDT & Symbol)129*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeUDT &Symbol) {
130*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeUDT)
131*9880d681SAndroid Build Coastguard Worker }
132*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeVTable & Symbol)133*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeVTable &Symbol) {
134*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeVTable)
135*9880d681SAndroid Build Coastguard Worker }
136*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolTypeVTableShape & Symbol)137*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolTypeVTableShape &Symbol) {
138*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolTypeVTableShape)
139*9880d681SAndroid Build Coastguard Worker }
140*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolUnknown & Symbol)141*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolUnknown &Symbol) {
142*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolUnknown)
143*9880d681SAndroid Build Coastguard Worker }
144*9880d681SAndroid Build Coastguard Worker 
dump(const PDBSymbolUsingNamespace & Symbol)145*9880d681SAndroid Build Coastguard Worker void PDBSymDumper::dump(const PDBSymbolUsingNamespace &Symbol) {
146*9880d681SAndroid Build Coastguard Worker   PDB_SYMDUMP_UNREACHABLE(PDBSymbolUsingNamespace)
147*9880d681SAndroid Build Coastguard Worker }
148