1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/test
Reid Kleckner b3d6ecbb12 [PDB] Use two DBs when dumping the IPI stream
Summary:
When dumping these records from an object file section, we should use
only one type database. However, when dumping from a PDB, we should use
two: one for the type stream and one for the IPI stream.

Certain type records that normally live in the .debug$T object file
section get moved over to the IPI stream of the PDB file and they get
new indices.

So far, I've noticed that the MSVC linker always moves these records
into IPI:
- LF_FUNC_ID
- LF_MFUNC_ID
- LF_STRING_ID
- LF_SUBSTR_LIST
- LF_BUILDINFO
- LF_UDT_MOD_SRC_LINE

These records have index fields that can point into TPI or IPI. In
particular, LF_SUBSTR_LIST and LF_BUILDINFO point to LF_STRING_ID
records to describe compilation command lines.

I've modified the dumper to have an optional pointer to the item DB, and
to do type name lookup of these fields in that DB. See printItemIndex.
The result is that our pdbdump-headers.test is more faithful to the PDB
contents and the output is less confusing.

Reviewers: ruiu

Subscribers: amccarth, zturner, llvm-commits

Differential Revision: https://reviews.llvm.org/D31309

llvm-svn: 298649
2017-03-23 21:36:25 +00:00
..
Analysis Model ashr(shl(x, n), m) as mul(x, 2^(n-m)) when n > m 2017-03-23 18:06:09 +00:00
Assembler Let llvm.objectsize be conservative with null pointers 2017-03-21 20:08:59 +00:00
Bindings
Bitcode Use ProfileSummary:getProfileCount to get ScaledCount for ModuleSummary 2017-03-21 17:22:35 +00:00
BugPoint
CodeGen [X86] Fix Stale SDNode use in X86ISelDAGtoDAG 2017-03-23 18:25:17 +00:00
DebugInfo [PDB] Use two DBs when dumping the IPI stream 2017-03-23 21:36:25 +00:00
Examples
ExecutionEngine
Feature
FileCheck
Instrumentation
Integer
JitListener
LibDriver
Linker
LTO
MC [Mips] Fix for decoding DINS instruction - disassembler 2017-03-23 13:19:04 +00:00
Object
ObjectYAML
Other
SymbolRewriter
TableGen
ThinLTO/X86 [ThinLTO] Add support for emitting minimized bitcode for thin link 2017-03-23 19:47:39 +00:00
tools [ThinLTO] Add support for emitting minimized bitcode for thin link 2017-03-23 19:47:39 +00:00
Transforms [LV] Add regression test for r297610 2017-03-23 20:02:23 +00:00
Unit
Verifier
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg
lit.site.cfg.in
TestRunner.sh