[all-commits] [llvm/llvm-project] 8ee7c7: [Debugify] Make the debugify aware of the original...

Djordje Todorovic via All-commits all-commits at lists.llvm.org
Thu Feb 18 01:52:58 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8ee7c7e02953fbaf946964c4ddce3962156508b5
      https://github.com/llvm/llvm-project/commit/8ee7c7e02953fbaf946964c4ddce3962156508b5
  Author: Djordje Todorovic <djordje.todorovic at syrmia.com>
  Date:   2021-02-18 (Thu, 18 Feb 2021)

  Changed paths:
    M llvm/docs/HowToUpdateDebugInfo.rst
    M llvm/include/llvm/Transforms/Utils/Debugify.h
    M llvm/lib/Transforms/Utils/Debugify.cpp
    A llvm/test/DebugInfo/debugify-original-no-dbg-info.ll
    M llvm/tools/opt/opt.cpp
    M llvm/unittests/Transforms/Utils/CMakeLists.txt
    A llvm/unittests/Transforms/Utils/DebugifyTest.cpp

  Log Message:
  -----------
  [Debugify] Make the debugify aware of the original (-g) Debug Info

As discussed on the RFC [0], I am sharing the set of patches that
enables checking of original Debug Info metadata preservation in
optimizations. The proof-of-concept/proposal can be found at [1].

The implementation from the [1] was full of duplicated code,
so this set of patches tries to merge this approach into the existing
debugify utility.

For example, the utility pass in the original-debuginfo-check
mode could be invoked as follows:

  $ opt -verify-debuginfo-preserve -pass-to-test sample.ll

Since this is very initial stage of the implementation,
there is a space for improvements such as:
  - Add support for the new pass manager
  - Add support for metadata other than DILocations and DISubprograms

[0] https://groups.google.com/forum/#!msg/llvm-dev/QOyF-38YPlE/G213uiuwCAAJ
[1] https://github.com/djolertrk/llvm-di-checker

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




More information about the All-commits mailing list