[PATCH] D30908: [llvm-pdbdump] Add the beginning of PDB diffing support

Zachary Turner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 13 14:35:09 PDT 2017


zturner added a comment.

In https://reviews.llvm.org/D30908#699783, @ruiu wrote:

> Compared to dumping two files using pdb2yaml and diffing them, what is the advantage of this tool?


Well, as an extreme (but obviously hypothetical) example, consider the case where pdb2yaml outputs a constant yaml file no matter what input it gets.  The diff would always be the same, but the underlying pdbs could be entirely unrelated.

This is obviously contrived, but the point is that if there are bugs in tool X, it doesn't make sense to use the output of tool X to verify that tool X is working correctly.

Beyond that though, pdb2yaml is only intended to give you a textual representation of the contents.  It's useful to be able to understand how 2 PDB files differ at the byte level.  It's entirely possible that two PDBs which differ in subtle ways could produce the same YAML.  Also, even with a 50MB pdb, pdb2yaml takes an extremely long time to run.  If we wanted to do it on something the order of chrome.dll.pdb which is maybe 1GB, it would be impractical.


https://reviews.llvm.org/D30908





More information about the llvm-commits mailing list