[llvm-pdbdump] Rewrite dumper using visitor pattern.
authorZachary Turner <zturner@google.com>
Sun, 22 Feb 2015 22:03:38 +0000 (22:03 +0000)
committerZachary Turner <zturner@google.com>
Sun, 22 Feb 2015 22:03:38 +0000 (22:03 +0000)
commit9a818ad193d19ef2f560e6da4b0fcf6748979fdb
treedc22e1c7f49c2326e9ec39be74c601925dc9b133
parent87f4c90a5c0b38d497e975e8e2c54bbd6f4050a5
[llvm-pdbdump] Rewrite dumper using visitor pattern.

This increases the flexibility of how to dump different
symbol types -- necessary for context-sensitive formatting of
symbol types -- and also improves the modularity by allowing
the dumping to be implemented in the actual dumper, as opposed
to in the PDB library.

llvm-svn: 230184
82 files changed:
llvm/include/llvm/DebugInfo/PDB/PDBExtras.h
llvm/include/llvm/DebugInfo/PDB/PDBSymDumper.h [new file with mode: 0644]
llvm/include/llvm/DebugInfo/PDB/PDBSymbol.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolExe.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h
llvm/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h
llvm/include/llvm/DebugInfo/PDB/PDBTypes.h
llvm/lib/DebugInfo/PDB/CMakeLists.txt
llvm/lib/DebugInfo/PDB/PDBExtras.cpp
llvm/lib/DebugInfo/PDB/PDBSymDumper.cpp [new file with mode: 0644]
llvm/lib/DebugInfo/PDB/PDBSymbol.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolBlock.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolData.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolExe.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolLabel.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolThunk.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp
llvm/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp
llvm/test/DebugInfo/PDB/pdbdump-symbol-format.test
llvm/tools/llvm-pdbdump/CMakeLists.txt
llvm/tools/llvm-pdbdump/CompilandDumper.cpp [new file with mode: 0644]
llvm/tools/llvm-pdbdump/CompilandDumper.h [new file with mode: 0644]
llvm/tools/llvm-pdbdump/FunctionDumper.cpp [new file with mode: 0644]
llvm/tools/llvm-pdbdump/FunctionDumper.h [new file with mode: 0644]
llvm/tools/llvm-pdbdump/TypeDumper.cpp [new file with mode: 0644]
llvm/tools/llvm-pdbdump/TypeDumper.h [new file with mode: 0644]
llvm/tools/llvm-pdbdump/TypedefDumper.cpp [new file with mode: 0644]
llvm/tools/llvm-pdbdump/TypedefDumper.h [new file with mode: 0644]
llvm/tools/llvm-pdbdump/llvm-pdbdump.cpp
llvm/tools/llvm-pdbdump/llvm-pdbdump.h [new file with mode: 0644]