diff options
author | Zachary Turner <zturner@google.com> | 2016-06-06 20:37:17 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2016-06-06 20:37:17 +0000 |
commit | 25e8b05d031f2e1fd2c9420a7cdafdcdbf1563ff (patch) | |
tree | 8c19eb17774e027654cc4d9480fdcf25518de07e /llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp | |
parent | 7120a478fafa6157cadcfae68e87ae4cafbc125e (diff) | |
download | bcm5719-llvm-25e8b05d031f2e1fd2c9420a7cdafdcdbf1563ff.tar.gz bcm5719-llvm-25e8b05d031f2e1fd2c9420a7cdafdcdbf1563ff.zip |
[llvm-pdbdump] Dump stream sizes and stream blocks to yaml.
llvm-svn: 271940
Diffstat (limited to 'llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp')
-rw-r--r-- | llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp b/llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp index a06a22d93ed..d60ccd7ebbd 100644 --- a/llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp +++ b/llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp @@ -45,6 +45,13 @@ Error YAMLOutputStyle::dumpStreamSummary() { if (!opts::DumpStreamSummary) return Error::success(); + std::vector<yaml::StreamSizeEntry> Sizes; + for (uint32_t I = 0; I < File.getNumStreams(); ++I) { + yaml::StreamSizeEntry Entry; + Entry.Size = File.getStreamByteSize(I); + Sizes.push_back(Entry); + } + Obj.StreamSizes.emplace(Sizes); return Error::success(); } @@ -52,6 +59,15 @@ Error YAMLOutputStyle::dumpStreamBlocks() { if (!opts::DumpStreamBlocks) return Error::success(); + std::vector<yaml::StreamMapEntry> Blocks; + for (uint32_t I = 0; I < File.getNumStreams(); ++I) { + yaml::StreamMapEntry Entry; + auto BlockList = File.getStreamBlockList(I); + Entry.Blocks.assign(BlockList.begin(), BlockList.end()); + Blocks.push_back(Entry); + } + Obj.StreamMap.emplace(Blocks); + return Error::success(); } |