[PATCH] D121084: [NewPM][Inliner] Make inlined calls to functions in same SCC as callee exponentially expensive

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 7 13:21:16 PST 2022


nikic added a comment.

In D121084#3365187 <https://reviews.llvm.org/D121084#3365187>, @aeubanks wrote:

> I did see a consistent 0.75-1% regression on an important internal benchmark with the other approach (which I believe we actually care about), although some benchmarks are sensitive to alignment.

And the regressions is not present with this variant? If so, yeah, let's go with this.



================
Comment at: llvm/lib/Transforms/IPO/Inliner.cpp:971
+                  CalleeSCC == CG.lookupSCC(CG.get(*NewCallee))) {
+                Attribute NewCBCostMult = Attribute::get(
+                    M.getContext(),
----------------
Should we also fetch the previous multiplier of ICB here and multiply it in? Not sure if it's really relevant in practice, but currently we're only preserving the existing multiplier from CB, but not ICB.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D121084/new/

https://reviews.llvm.org/D121084



More information about the llvm-commits mailing list