[all-commits] [llvm/llvm-project] a643ab: [DebugInfo][RemoveDIs] Final omnibus test fixing f...

Jeremy Morse via All-commits all-commits at lists.llvm.org
Thu Feb 8 03:49:17 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a643ab852a63a14dba86e031247734c5e3d5adb9
      https://github.com/llvm/llvm-project/commit/a643ab852a63a14dba86e031247734c5e3d5adb9
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-02-08 (Thu, 08 Feb 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/DebugInfo/Generic/assignment-tracking/codegenprepare/sunk-addr.ll
    M llvm/test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll
    M llvm/test/Transforms/SROA/vector-promotion.ll
    M llvm/unittests/IR/BasicBlockDbgInfoTest.cpp

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Final omnibus test fixing for RemoveDIs (#81125)

With this, I get a clean test suite running under RemoveDIs, the
non-intrinsic representation of debug-info, including under asan. We've
previously established that we generate identical binaries for some
large projects, so this i just edge-case cleanup. The changes:
* CodeGenPrepare fixups need to apply to dbg.assigns as well as
dbg.values (a dbg.assign is a dbg.value).
* Pin a test for constant-deletion to intrinsic debug-info: this very
rare scenario uses a different kill-location sigil in dbg.value mode to
RemoveDIs mode, which generates spurious test differences.
* Suppress a memory leak in a unit test: the code for dealing with
trailing debug-info in a block is necessarily fiddly, leading to this
leak when testing it. Developer-facing interfaces for moving
instructions around always deal with this behind the scenes.
* SROA, when replacing some vector-loads, needs to insert the
replacement loads ahead of any debug-info records so that their values
remain dominated by a definition. Set the head-bit indicating our
insertion should come before debug-info.




More information about the All-commits mailing list