summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp')
-rw-r--r--llvm/tools/llvm-pdbdump/YAMLOutputStyle.cpp16
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();
}
OpenPOWER on IntegriCloud