[all-commits] [llvm/llvm-project] aceaea: [Inliner] Mark inlinings stopped with inlining his...

aeubanks via All-commits all-commits at lists.llvm.org
Thu May 25 09:56:13 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: aceaea67848efa666a11f329926e8654b4826051
      https://github.com/llvm/llvm-project/commit/aceaea67848efa666a11f329926e8654b4826051
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2023-05-25 (Thu, 25 May 2023)

  Changed paths:
    M llvm/lib/Transforms/IPO/Inliner.cpp
    A llvm/test/Transforms/Inline/inline-history-noinline.ll

  Log Message:
  -----------
  [Inliner] Mark inlinings stopped with inlining history as noinline

The inline history makes sure that we don't keep inlining due to mutual devirtualization. But this gets forgotten between inliner invocations.

So mark the inlined calls as noinline so we respect previous inline history decisions.

This overlaps with D121084, but they're not redundant since we may not inline completely through a child SCC, but we still want a cost multiplier when that happens.

See discussions in D145516.

Reviewed By: jmorse

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




More information about the All-commits mailing list