[all-commits] [llvm/llvm-project] 34f61c: [DebugInfo][RemoveDIs] Instrument MergeFunctions f...

Jeremy Morse via All-commits all-commits at lists.llvm.org
Wed Feb 7 10:19:51 PST 2024


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

  Changed paths:
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/test/Transforms/MergeFunc/mergefunc-preserve-debug-info.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Instrument MergeFunctions for DPValues (#80974)

The MergeFunctions pass has a "preserve some debug-info" mode that tries
to preserve parameter values. This patch generalises its decision-making
so that it applies to both debug-info stored in intrinsics, and
debug-info stored in DPValue objects. For the most part this involves
using a generic lambda and applying it to each type of object.

(Normally we avoid debug-info affecting the code generated, but this is
hidden behind a command line switch, so won't usually be encountered by
users).

Note that this diff is messy, but that's because I'm hoisting some code
into lambdas. The actual decision making processes here are identical.




More information about the All-commits mailing list