summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-pdbutil/llvm-pdbutil.h
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/llvm-pdbutil/llvm-pdbutil.h')
-rw-r--r--llvm/tools/llvm-pdbutil/llvm-pdbutil.h45
1 files changed, 29 insertions, 16 deletions
diff --git a/llvm/tools/llvm-pdbutil/llvm-pdbutil.h b/llvm/tools/llvm-pdbutil/llvm-pdbutil.h
index 37c4ca3ee5d..f1699d0bb55 100644
--- a/llvm/tools/llvm-pdbutil/llvm-pdbutil.h
+++ b/llvm/tools/llvm-pdbutil/llvm-pdbutil.h
@@ -27,8 +27,6 @@ uint32_t getTypeLength(const PDBSymbolData &Symbol);
namespace opts {
-enum class DumpLevel { None, Basic, Verbose };
-
enum class ModuleSubsection {
Unknown,
Lines,
@@ -43,6 +41,15 @@ enum class ModuleSubsection {
All
};
+bool checkModuleSubsection(ModuleSubsection Kind);
+
+template <typename... Ts>
+bool checkModuleSubsection(ModuleSubsection K1, ModuleSubsection K2,
+ Ts &&... Rest) {
+ return checkModuleSubsection(K1) ||
+ checkModuleSubsection(K2, std::forward<Ts>(Rest)...);
+}
+
namespace pretty {
enum class ClassDefinitionFormat { None, Layout, All };
@@ -98,24 +105,27 @@ struct BlockRange {
llvm::Optional<uint32_t> Max;
};
-extern llvm::cl::opt<bool> DumpSummary;
-extern llvm::cl::opt<bool> DumpStreams;
extern llvm::Optional<BlockRange> DumpBlockRange;
extern llvm::cl::list<std::string> DumpStreamData;
-extern llvm::cl::opt<bool> DumpStringTable;
-extern llvm::cl::opt<bool> DumpTypes;
-extern llvm::cl::opt<bool> DumpTypeData;
-extern llvm::cl::opt<bool> DumpTypeHashes;
-extern llvm::cl::opt<bool> DumpIds;
-extern llvm::cl::opt<bool> DumpIdData;
-extern llvm::cl::opt<bool> DumpSymbols;
-extern llvm::cl::opt<bool> DumpSymRecordBytes;
+
+extern llvm::cl::opt<bool> CompactRecords;
+extern llvm::cl::opt<bool> DumpGlobals;
+extern llvm::cl::opt<bool> DumpHeaders;
+extern llvm::cl::opt<bool> DumpStreamBlocks;
+extern llvm::cl::opt<bool> DumpStreamSummary;
+extern llvm::cl::opt<bool> DumpPageStats;
+extern llvm::cl::opt<bool> DumpTpiHash;
+extern llvm::cl::opt<bool> DumpTpiRecordBytes;
+extern llvm::cl::opt<bool> DumpTpiRecords;
+extern llvm::cl::opt<bool> DumpIpiRecords;
+extern llvm::cl::opt<bool> DumpIpiRecordBytes;
extern llvm::cl::opt<bool> DumpPublics;
extern llvm::cl::opt<bool> DumpSectionContribs;
extern llvm::cl::opt<bool> DumpSectionMap;
-extern llvm::cl::opt<bool> DumpModules;
-extern llvm::cl::opt<bool> DumpModuleFiles;
-extern llvm::cl::opt<bool> RawAll;
+extern llvm::cl::opt<bool> DumpSymRecordBytes;
+extern llvm::cl::opt<bool> DumpSectionHeaders;
+extern llvm::cl::opt<bool> DumpFpo;
+extern llvm::cl::opt<bool> DumpStringTable;
}
namespace diff {
@@ -134,11 +144,14 @@ extern llvm::cl::opt<bool> DbiStream;
extern llvm::cl::opt<bool> TpiStream;
extern llvm::cl::opt<bool> IpiStream;
extern llvm::cl::list<std::string> InputFilename;
+}
+
+namespace shared {
extern llvm::cl::opt<bool> DumpModules;
extern llvm::cl::opt<bool> DumpModuleFiles;
extern llvm::cl::list<ModuleSubsection> DumpModuleSubsections;
extern llvm::cl::opt<bool> DumpModuleSyms;
-} // namespace pdb2yaml
+} // namespace shared
}
#endif
OpenPOWER on IntegriCloud