From de53aaf13249dcbd6f3d4fd3b28898c77fa074c8 Mon Sep 17 00:00:00 2001 From: Zachary Turner Date: Mon, 19 Mar 2018 19:53:51 +0000 Subject: Support embedding natvis files in PDBs. Natvis is a debug language supported by Visual Studio for specifying custom visualizers. The /NATVIS option is an undocumented link.exe flag which will take a .natvis file and "inject" it into the PDB. This way, you can ship the debug visualizers for a program along with the PDB, which is very useful for postmortem debugging. This is implemented by adding a new "named stream" to the PDB with a special name of /src/files/ and simply copying the contents of the xml into this file. Additionally, we need to emit a single stream named /src/headerblock which contains a hash table of embedded files to records describing them. This patch adds this functionality, including the /NATVIS option to lld-link. Differential Revision: https://reviews.llvm.org/D44328 llvm-svn: 327895 --- llvm/tools/llvm-pdbutil/DumpOutputStyle.h | 1 + 1 file changed, 1 insertion(+) (limited to 'llvm/tools/llvm-pdbutil/DumpOutputStyle.h') diff --git a/llvm/tools/llvm-pdbutil/DumpOutputStyle.h b/llvm/tools/llvm-pdbutil/DumpOutputStyle.h index fad304c470c..36d8b13bde0 100644 --- a/llvm/tools/llvm-pdbutil/DumpOutputStyle.h +++ b/llvm/tools/llvm-pdbutil/DumpOutputStyle.h @@ -74,6 +74,7 @@ private: Error dumpStreamSummary(); Error dumpSymbolStats(); Error dumpUdtStats(); + Error dumpNamedStreams(); Error dumpStringTable(); Error dumpStringTableFromPdb(); Error dumpStringTableFromObj(); -- cgit v1.2.3