OSDN Git Service

pdbdump: print out symbol names referred by publics stream.
authorRui Ueyama <ruiu@google.com>
Fri, 20 May 2016 19:55:17 +0000 (19:55 +0000)
committerRui Ueyama <ruiu@google.com>
Fri, 20 May 2016 19:55:17 +0000 (19:55 +0000)
commit59427f6dc74f369a4c191b47c848ff329b600253
tree4e7a1210a0ff0fa4082d8d0ec27810f8c92b170a
parent7192e937607a980d67697ef788483f3aa3240cab
pdbdump: print out symbol names referred by publics stream.

DBI stream contains a stream number of the symbol record stream.
Symbol record streams is an array of length-type-value members.
Each member represents one symbol.

Publics stream contains offsets to the symbol record stream.
This patch is to print out all symbols that are referenced by
the publics stream.

Note that even with this patch, llvm-pdbdump cannot dump all the
information in a publics stream since it contains more information
than symbol names. I'll improve it in followup patches.

Differential Revision: http://reviews.llvm.org/D20480

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@270262 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/DebugInfo/PDB/Raw/PDBFile.h
include/llvm/DebugInfo/PDB/Raw/PublicsStream.h
include/llvm/DebugInfo/PDB/Raw/SymbolStream.h [new file with mode: 0644]
lib/DebugInfo/PDB/CMakeLists.txt
lib/DebugInfo/PDB/Raw/PDBFile.cpp
lib/DebugInfo/PDB/Raw/PublicsStream.cpp
lib/DebugInfo/PDB/Raw/SymbolStream.cpp [new file with mode: 0644]
test/DebugInfo/PDB/pdbdump-headers.test
tools/llvm-pdbdump/llvm-pdbdump.cpp