OSDN Git Service

[PDB] Add native reading support for UDT / class types.
authorZachary Turner <zturner@google.com>
Fri, 21 Sep 2018 22:36:04 +0000 (22:36 +0000)
committerZachary Turner <zturner@google.com>
Fri, 21 Sep 2018 22:36:04 +0000 (22:36 +0000)
commit9b6c494a00c6a5ed43410ed3377506ab5933b949
treed4f8f60d6d3eee8c2673ddebd405751bad93d991
parent8e283f9f96a2c64d0d9460e9eed4d2410b7b2e0d
[PDB] Add native reading support for UDT / class types.

This allows the native reader to find records of class/struct/
union type and dump them.  This behavior is tested by using the
diadump subcommand against golden output produced by actual DIA
SDK on the same PDB file, and again using pretty -native to
confirm that we actually dump the classes.  We don't find class
members or anything like that yet, for now it's just the class
itself.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@342779 91177308-0d34-0410-b5e6-96231b3b80d8
19 files changed:
include/llvm/DebugInfo/CodeView/TypeRecord.h
include/llvm/DebugInfo/CodeView/TypeRecordHelpers.h [new file with mode: 0644]
include/llvm/DebugInfo/PDB/IPDBEnumChildren.h
include/llvm/DebugInfo/PDB/Native/NativeEnumTypes.h
include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h
include/llvm/DebugInfo/PDB/Native/NativeTypeUDT.h [new file with mode: 0644]
include/llvm/DebugInfo/PDB/Native/SymbolCache.h
lib/DebugInfo/CodeView/CMakeLists.txt
lib/DebugInfo/CodeView/TypeRecordHelpers.cpp [new file with mode: 0644]
lib/DebugInfo/PDB/CMakeLists.txt
lib/DebugInfo/PDB/Native/NativeEnumTypes.cpp
lib/DebugInfo/PDB/Native/NativeExeSymbol.cpp
lib/DebugInfo/PDB/Native/NativeRawSymbol.cpp
lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp
lib/DebugInfo/PDB/Native/NativeTypeUDT.cpp [new file with mode: 0644]
lib/DebugInfo/PDB/Native/SymbolCache.cpp
lib/DebugInfo/PDB/Native/TpiStream.cpp
test/DebugInfo/PDB/Native/pdb-native-udts.test [new file with mode: 0644]
tools/llvm-pdbutil/llvm-pdbutil.cpp