OSDN Git Service

[llvm-pdbutil] Print detailed S_UDT stats.
authorZachary Turner <zturner@google.com>
Thu, 31 Aug 2017 20:43:22 +0000 (20:43 +0000)
committerZachary Turner <zturner@google.com>
Thu, 31 Aug 2017 20:43:22 +0000 (20:43 +0000)
commitae734ae0eada22cb4fcef3d18035a9725f5532da
tree8ec59a2aadd57cc03e3efa27bc9cbce1be8788b0
parent75475a867458c4103b89a06dd7dc6a98e13febbf
[llvm-pdbutil] Print detailed S_UDT stats.

This adds a new command line option, -udt-stats, which breaks
down the stats of S_UDT records.  These are one of the biggest
contributors to the size of /DEBUG:FASTLINK PDBs, so they need
some additional tools to be able to analyze their usage.  This
option will dig into each S_UDT record and determine what kind
of record it points to, and then break down the statistics by
the target type.  The goal here is to identify how our object
files differ from MSVC object files in S_UDT records, so that
we can output fewer of them and reach size parity.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@312276 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/DebugInfo/PDB/Native/SymbolStream.h
lib/DebugInfo/PDB/Native/SymbolStream.cpp
test/DebugInfo/PDB/module-stats.test
test/DebugInfo/PDB/udt-stats.test [new file with mode: 0644]
tools/llvm-pdbutil/DumpOutputStyle.cpp
tools/llvm-pdbutil/DumpOutputStyle.h
tools/llvm-pdbutil/FormatUtil.cpp
tools/llvm-pdbutil/FormatUtil.h
tools/llvm-pdbutil/MinimalTypeDumper.cpp
tools/llvm-pdbutil/llvm-pdbutil.cpp
tools/llvm-pdbutil/llvm-pdbutil.h