1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/lib
Zachary Turner 17645664c0 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/<natvis file name>
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
2018-03-19 19:53:51 +00:00
..
Analysis [SCEV] Factor out isKnownViaInduction. NFC. 2018-03-19 08:32:09 +00:00
AsmParser
BinaryFormat
Bitcode
CodeGen Revert [MachineLICM] This reverts commit rL327856 2018-03-19 16:19:44 +00:00
DebugInfo Support embedding natvis files in PDBs. 2018-03-19 19:53:51 +00:00
Demangle [demangler] Recopy the demangler from libcxxabi. 2018-03-19 15:18:23 +00:00
ExecutionEngine
Fuzzer
FuzzMutate
IR Make ConstantDataArray::get constructor templated. Will support signed integers. 2018-03-19 19:49:28 +00:00
IRReader
LineEditor
Linker
LTO
MC
Object
ObjectYAML
Option
Passes
ProfileData
Support Changed createTemporaryFile without FD to actually create a file. 2018-03-19 14:19:58 +00:00
TableGen TableGen: Explicitly forbid self-references to field members 2018-03-19 14:14:28 +00:00
Target [Power9]Legalize and emit code for quad-precision copySign/abs/nabs/neg/sqrt 2018-03-19 19:22:52 +00:00
Testing
ToolDrivers
Transforms [InstCombine] canonicalize fcmp+select to fabs 2018-03-19 15:14:30 +00:00
WindowsManifest
XRay
CMakeLists.txt
LLVMBuild.txt