[PATCH] D122226: [llmv-pdbutil] Move InputFile/FormatUtil/LinePrinter to the PDB library.
Carlos Alberto Enciso via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 22 06:27:51 PDT 2022
CarlosAlbertoEnciso created this revision.
CarlosAlbertoEnciso added reviewers: aganea, dblaikie, rnk, probinson.
CarlosAlbertoEnciso added a project: LLVM.
Herald added subscribers: hiraditya, mgorny.
Herald added a project: All.
CarlosAlbertoEnciso requested review of this revision.
Herald added a subscriber: llvm-commits.
[llmv-pdbutil] Move InputFile/FormatUtil/LinePrinter to PDB library.
At Sony we are developing llvm-dva
https://lists.llvm.org/pipermail/llvm-dev/2020-August/144174.html
For its PDB support, it requires functionality already present in llvm-pdbutil.
We intend to move that functionaly into the PDB library to be shared by both tools. That change will be done in 2 steps, that
will be submitted as 2 patches:
(1) Replace 'ExitOnError' with explicit error handling.
(2) Move the intended shared code to the PDB library.
Patch for step (1): https://reviews.llvm.org/D121801
This patch is for step (2).
Move InputFile.cpp[h], FormatUtil.cpp[h] and LinePrinter.cpp[h] files to the debug PDB library.
It exposes the following functionality that can be used by tools:
- Open a PDB file.
- Get module debug stream.
- Traverse module sections.
- Traverse module subsections.
Most of the needed functionality is in InputFile, but there are dependencies from LinePrinter and FormatUtil.
Some other functionality is in the following functions in DumpOutputStyle.cpp file:
- iterateModuleSubsections
- getModuleDebugStream
- iterateOneModule
- iterateSymbolGroups
- iterateModuleSubsections
Only these specific functions from DumpOutputStyle are moved to the PDB library.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D122226
Files:
llvm/include/llvm/DebugInfo/PDB/Native/FormatUtil.h
llvm/include/llvm/DebugInfo/PDB/Native/InputFile.h
llvm/include/llvm/DebugInfo/PDB/Native/LinePrinter.h
llvm/lib/DebugInfo/PDB/CMakeLists.txt
llvm/lib/DebugInfo/PDB/Native/FormatUtil.cpp
llvm/lib/DebugInfo/PDB/Native/InputFile.cpp
llvm/lib/DebugInfo/PDB/Native/LinePrinter.cpp
llvm/tools/llvm-pdbutil/BytesOutputStyle.cpp
llvm/tools/llvm-pdbutil/BytesOutputStyle.h
llvm/tools/llvm-pdbutil/CMakeLists.txt
llvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
llvm/tools/llvm-pdbutil/DumpOutputStyle.h
llvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp
llvm/tools/llvm-pdbutil/ExplainOutputStyle.h
llvm/tools/llvm-pdbutil/FormatUtil.cpp
llvm/tools/llvm-pdbutil/FormatUtil.h
llvm/tools/llvm-pdbutil/InputFile.cpp
llvm/tools/llvm-pdbutil/InputFile.h
llvm/tools/llvm-pdbutil/LinePrinter.cpp
llvm/tools/llvm-pdbutil/LinePrinter.h
llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp
llvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp
llvm/tools/llvm-pdbutil/PrettyBuiltinDumper.cpp
llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.cpp
llvm/tools/llvm-pdbutil/PrettyClassLayoutGraphicalDumper.cpp
llvm/tools/llvm-pdbutil/PrettyCompilandDumper.cpp
llvm/tools/llvm-pdbutil/PrettyEnumDumper.cpp
llvm/tools/llvm-pdbutil/PrettyExternalSymbolDumper.cpp
llvm/tools/llvm-pdbutil/PrettyFunctionDumper.cpp
llvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp
llvm/tools/llvm-pdbutil/PrettyTypedefDumper.cpp
llvm/tools/llvm-pdbutil/PrettyVariableDumper.cpp
llvm/tools/llvm-pdbutil/StreamUtil.cpp
llvm/tools/llvm-pdbutil/TypeReferenceTracker.cpp
llvm/tools/llvm-pdbutil/TypeReferenceTracker.h
llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
llvm/tools/llvm-pdbutil/llvm-pdbutil.h
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D122226.417242.patch
Type: text/x-patch
Size: 39711 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220322/4d04589c/attachment.bin>
More information about the llvm-commits
mailing list