[PATCH] D140637: [InlineOrder] Plugin Inline Order

IBricchi via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 23 14:25:17 PST 2022


IBricchi created this revision.
Herald added subscribers: mtrofin, ormris, hiraditya.
Herald added a project: All.
IBricchi abandoned this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
IBricchi reclaimed this revision.
IBricchi updated this revision to Diff 485157.
IBricchi updated this revision to Diff 485158.
IBricchi added reviewers: mtrofin, kazu.
IBricchi added a subscriber: ttheodor.
IBricchi published this revision for review.
IBricchi added a comment.

This patch builds off https://reviews.llvm.org/D139644 to add plugin support for inline order. This should allow for full fine grained control of the inliner using plugins.


Adds the ability to load a plugin to control the inline order.
This allows developing and distributing inlining heuristics
outside of tree. And together with the inline advisor plugins
allows for fine grained control of the inliner.

The PluginInlineOrderAnalysis class serves as the entry point
for dynamic advisors. Plugins must register instances of this
class to provide their own InlineOrder.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D140637

Files:
  llvm/include/llvm/Analysis/InlineAdvisor.h
  llvm/include/llvm/Analysis/InlineOrder.h
  llvm/lib/Analysis/InlineOrder.cpp
  llvm/lib/Transforms/IPO/ModuleInliner.cpp
  llvm/unittests/Analysis/CMakeLists.txt
  llvm/unittests/Analysis/InlineOrderPlugin/CMakeLists.txt
  llvm/unittests/Analysis/InlineOrderPlugin/InlineOrderPlugin.cpp
  llvm/unittests/Analysis/PluginInlineAdvisorAnalysisTest.cpp
  llvm/unittests/Analysis/PluginInlineOrderAnalysisTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D140637.485158.patch
Type: text/x-patch
Size: 19981 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221223/3bd0c45d/attachment.bin>


More information about the llvm-commits mailing list