[all-commits] [llvm/llvm-project] 751121: [llvm-pdbutil] Move InputFile/FormatUtil/LinePrint...

Carlos Alberto Enciso via All-commits all-commits at lists.llvm.org
Fri Mar 25 00:28:04 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 75112133b83e5d27128dc1d6d2a282b297952f59
      https://github.com/llvm/llvm-project/commit/75112133b83e5d27128dc1d6d2a282b297952f59
  Author: Carlos Alberto Enciso <carlos.alberto.enciso at gmail.com>
  Date:   2022-03-25 (Fri, 25 Mar 2022)

  Changed paths:
    A llvm/include/llvm/DebugInfo/PDB/Native/FormatUtil.h
    A llvm/include/llvm/DebugInfo/PDB/Native/InputFile.h
    A llvm/include/llvm/DebugInfo/PDB/Native/LinePrinter.h
    M llvm/lib/DebugInfo/PDB/CMakeLists.txt
    A llvm/lib/DebugInfo/PDB/Native/FormatUtil.cpp
    A llvm/lib/DebugInfo/PDB/Native/InputFile.cpp
    A llvm/lib/DebugInfo/PDB/Native/LinePrinter.cpp
    M llvm/tools/llvm-pdbutil/BytesOutputStyle.cpp
    M llvm/tools/llvm-pdbutil/BytesOutputStyle.h
    M llvm/tools/llvm-pdbutil/CMakeLists.txt
    M llvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
    M llvm/tools/llvm-pdbutil/DumpOutputStyle.h
    M llvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp
    M llvm/tools/llvm-pdbutil/ExplainOutputStyle.h
    R llvm/tools/llvm-pdbutil/FormatUtil.cpp
    R llvm/tools/llvm-pdbutil/FormatUtil.h
    R llvm/tools/llvm-pdbutil/InputFile.cpp
    R llvm/tools/llvm-pdbutil/InputFile.h
    R llvm/tools/llvm-pdbutil/LinePrinter.cpp
    R llvm/tools/llvm-pdbutil/LinePrinter.h
    M llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp
    M llvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyBuiltinDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyClassLayoutGraphicalDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyCompilandDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyEnumDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyExternalSymbolDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyFunctionDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyTypedefDumper.cpp
    M llvm/tools/llvm-pdbutil/PrettyVariableDumper.cpp
    M llvm/tools/llvm-pdbutil/StreamUtil.cpp
    M llvm/tools/llvm-pdbutil/TypeReferenceTracker.cpp
    M llvm/tools/llvm-pdbutil/TypeReferenceTracker.h
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h

  Log Message:
  -----------
  [llvm-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.

Reviewed By: aganea, dblaikie, rnk

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




More information about the All-commits mailing list