From 83c5dbf28091daf5af0efef11de265673e98d932 Mon Sep 17 00:00:00 2001 From: Bob Haarman Date: Fri, 26 May 2017 23:46:20 +0000 Subject: [PATCH] [llvm-pdbdump] pdb2yaml: add an -all option to dump everything we can Reviewers: amccarth, rnk, zturner Reviewed By: zturner Subscribers: fhahn, llvm-commits Differential Revision: https://reviews.llvm.org/D33613 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@304047 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/llvm-pdbdump/YAMLOutputStyle.cpp | 14 ++++++++++++++ tools/llvm-pdbdump/llvm-pdbdump.cpp | 3 +++ tools/llvm-pdbdump/llvm-pdbdump.h | 1 + 3 files changed, 18 insertions(+) diff --git a/tools/llvm-pdbdump/YAMLOutputStyle.cpp b/tools/llvm-pdbdump/YAMLOutputStyle.cpp index 0573b23cdc7..652182e8e9b 100644 --- a/tools/llvm-pdbdump/YAMLOutputStyle.cpp +++ b/tools/llvm-pdbdump/YAMLOutputStyle.cpp @@ -39,6 +39,20 @@ YAMLOutputStyle::YAMLOutputStyle(PDBFile &File) } Error YAMLOutputStyle::dump() { + if (opts::pdb2yaml::All) { + opts::pdb2yaml::StreamMetadata = true; + opts::pdb2yaml::StreamDirectory = true; + opts::pdb2yaml::PdbStream = true; + opts::pdb2yaml::StringTable = true; + opts::pdb2yaml::DbiStream = true; + opts::pdb2yaml::DbiModuleInfo = true; + opts::pdb2yaml::DbiModuleSyms = true; + opts::pdb2yaml::DbiModuleSourceFileInfo = true; + opts::pdb2yaml::DbiModuleSourceLineInfo = true; + opts::pdb2yaml::TpiStream = true; + opts::pdb2yaml::IpiStream = true; + } + if (opts::pdb2yaml::StreamDirectory) opts::pdb2yaml::StreamMetadata = true; if (opts::pdb2yaml::DbiModuleSyms) diff --git a/tools/llvm-pdbdump/llvm-pdbdump.cpp b/tools/llvm-pdbdump/llvm-pdbdump.cpp index b095cab246f..ff14c39cbaa 100644 --- a/tools/llvm-pdbdump/llvm-pdbdump.cpp +++ b/tools/llvm-pdbdump/llvm-pdbdump.cpp @@ -378,6 +378,9 @@ cl::opt InputFilename(cl::Positional, } namespace pdb2yaml { +cl::opt All("all", + cl::desc("Dump everything we know how to dump."), + cl::sub(PdbToYamlSubcommand), cl::init(false)); cl::opt NoFileHeaders("no-file-headers", cl::desc("Do not dump MSF file headers (you will not be able " diff --git a/tools/llvm-pdbdump/llvm-pdbdump.h b/tools/llvm-pdbdump/llvm-pdbdump.h index e38b32c6a34..b344129d217 100644 --- a/tools/llvm-pdbdump/llvm-pdbdump.h +++ b/tools/llvm-pdbdump/llvm-pdbdump.h @@ -115,6 +115,7 @@ extern llvm::cl::opt Pedantic; } namespace pdb2yaml { +extern llvm::cl::opt All; extern llvm::cl::opt NoFileHeaders; extern llvm::cl::opt Minimal; extern llvm::cl::opt StreamMetadata; -- 2.40.0