[all-commits] [llvm/llvm-project] 029946: [InlineAdvisor] New inliner advisor to replay inli...

WenleiHe via All-commits all-commits at lists.llvm.org
Fri Jul 17 13:31:15 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 029946b112684c27b27f7c2d7554f22b33ae1e0b
      https://github.com/llvm/llvm-project/commit/029946b112684c27b27f7c2d7554f22b33ae1e0b
  Author: Wenlei He <aktoon at gmail.com>
  Date:   2020-07-17 (Fri, 17 Jul 2020)

  Changed paths:
    M llvm/include/llvm/Analysis/InlineAdvisor.h
    A llvm/include/llvm/Analysis/ReplayInlineAdvisor.h
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/InlineAdvisor.cpp
    A llvm/lib/Analysis/ReplayInlineAdvisor.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    A llvm/test/Transforms/SampleProfile/Inputs/inline-replay.txt
    A llvm/test/Transforms/SampleProfile/inline-replay.ll

  Log Message:
  -----------
  [InlineAdvisor] New inliner advisor to replay inlining from optimization remarks

Summary:
This change added a new inline advisor that takes optimization remarks for previous inlining as input, and provide the decision as advice so current inlining can replay inline decision of a different compilation. Dwarf inline stack with line and discriminator is used as anchor for call sites. The change can be useful for Inliner tuning.
A switch -sample-profile-inline-replay=<inline_remarks_file> is added to hook up the new inliner advisor with SampleProfileLoader's inline decision for replay. The new inline advisor can also be used by regular CGSCC inliner later if needed.

Reviewers: davidxl, mtrofin, wmi, hoy

Subscribers: aprantl, hiraditya, llvm-commits

Tags: #llvm

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




More information about the All-commits mailing list