1 //===- llvm-pdbdump.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_TOOLS_LLVMPDBDUMP_LLVMPDBDUMP_H 11 #define LLVM_TOOLS_LLVMPDBDUMP_LLVMPDBDUMP_H 12 13 #include "llvm/Support/CommandLine.h" 14 #include "llvm/Support/raw_ostream.h" 15 16 namespace opts { 17 18 namespace pretty { 19 extern llvm::cl::opt<bool> Compilands; 20 extern llvm::cl::opt<bool> Symbols; 21 extern llvm::cl::opt<bool> Globals; 22 extern llvm::cl::opt<bool> Types; 23 extern llvm::cl::opt<bool> All; 24 extern llvm::cl::opt<bool> ExcludeCompilerGenerated; 25 26 extern llvm::cl::opt<bool> NoClassDefs; 27 extern llvm::cl::opt<bool> NoEnumDefs; 28 extern llvm::cl::list<std::string> ExcludeTypes; 29 extern llvm::cl::list<std::string> ExcludeSymbols; 30 extern llvm::cl::list<std::string> ExcludeCompilands; 31 extern llvm::cl::list<std::string> IncludeTypes; 32 extern llvm::cl::list<std::string> IncludeSymbols; 33 extern llvm::cl::list<std::string> IncludeCompilands; 34 } 35 36 namespace raw { 37 extern llvm::cl::opt<bool> DumpHeaders; 38 extern llvm::cl::opt<bool> DumpStreamBlocks; 39 extern llvm::cl::opt<bool> DumpStreamSummary; 40 extern llvm::cl::opt<bool> DumpTpiHash; 41 extern llvm::cl::opt<bool> DumpTpiRecordBytes; 42 extern llvm::cl::opt<bool> DumpTpiRecords; 43 extern llvm::cl::opt<bool> DumpIpiRecords; 44 extern llvm::cl::opt<bool> DumpIpiRecordBytes; 45 extern llvm::cl::opt<std::string> DumpStreamDataIdx; 46 extern llvm::cl::opt<std::string> DumpStreamDataName; 47 extern llvm::cl::opt<bool> DumpModules; 48 extern llvm::cl::opt<bool> DumpModuleFiles; 49 extern llvm::cl::opt<bool> DumpModuleSyms; 50 extern llvm::cl::opt<bool> DumpPublics; 51 extern llvm::cl::opt<bool> DumpSectionContribs; 52 extern llvm::cl::opt<bool> DumpLineInfo; 53 extern llvm::cl::opt<bool> DumpSectionMap; 54 extern llvm::cl::opt<bool> DumpSymRecordBytes; 55 extern llvm::cl::opt<bool> DumpSectionHeaders; 56 extern llvm::cl::opt<bool> DumpFpo; 57 } 58 59 namespace pdb2yaml { 60 extern llvm::cl::opt<bool> NoFileHeaders; 61 extern llvm::cl::opt<bool> StreamMetadata; 62 extern llvm::cl::opt<bool> StreamDirectory; 63 extern llvm::cl::opt<bool> PdbStream; 64 extern llvm::cl::opt<bool> DbiStream; 65 extern llvm::cl::list<std::string> InputFilename; 66 } 67 } 68 69 #endif 70