brintos

brintos / llvm-project-archived public Read only

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