[all-commits] [llvm/llvm-project] 3bf72b: [DebugInfo][RemoveDIs] Extract DPValues in CodeExt...

Jeremy Morse via All-commits all-commits at lists.llvm.org
Wed Nov 29 08:21:28 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3bf72bf427f15521111df4e35c868005ceb0013b
      https://github.com/llvm/llvm-project/commit/3bf72bf427f15521111df4e35c868005ceb0013b
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2023-11-29 (Wed, 29 Nov 2023)

  Changed paths:
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Extract DPValues in CodeExtractor like dbg.values (#73252)

CodeExtractor shifts dbg.value intrinsics out of the region being
extracted and updates them to be appropriate in the extracted function.
With new non-intrinsic variable locations, we need to manually do this
too, with DPValues.

Most of this patch shifts and refactors some utilities in
fixupDebugInfoPostExtraction so that we can add a single extra helper
lambda that iterates over DPValues and applies update-utilities. We also
have to assign the IsNewDbgInfoFormat flag in a bunch of places -- this
normally gets set the moment you insert a block into a function (or
function into a module), however a few blocks are constructed here
before being inserted, thus we have to do some manual setup.

Tested via LoopExtractor_alloca.ll, which invokes debugify.




More information about the All-commits mailing list