[PATCH] D134100: [ModuleInliner] Move UseInlinePriority to InlineOrder.cpp (NFC)

Kazu Hirata via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Sep 17 11:41:45 PDT 2022


This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG5faf4bf19572: [ModuleInliner] Move UseInlinePriority to InlineOrder.cpp (NFC) (authored by kazu).

Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D134100

Files:
  llvm/include/llvm/Analysis/InlineOrder.h
  llvm/lib/Analysis/InlineOrder.cpp
  llvm/lib/Transforms/IPO/ModuleInliner.cpp


Index: llvm/lib/Transforms/IPO/ModuleInliner.cpp
===================================================================
--- llvm/lib/Transforms/IPO/ModuleInliner.cpp
+++ llvm/lib/Transforms/IPO/ModuleInliner.cpp
@@ -49,14 +49,6 @@
 STATISTIC(NumInlined, "Number of functions inlined");
 STATISTIC(NumDeleted, "Number of functions deleted because all callers found");
 
-static cl::opt<InlinePriorityMode> UseInlinePriority(
-    "inline-priority-mode", cl::init(InlinePriorityMode::Size), cl::Hidden,
-    cl::desc("Choose the priority mode to use in module inline"),
-    cl::values(clEnumValN(InlinePriorityMode::Size, "size",
-                          "Use callee size priority."),
-               clEnumValN(InlinePriorityMode::Cost, "cost",
-                          "Use inline cost priority.")));
-
 /// Return true if the specified inline history ID
 /// indicates an inline history that includes the specified function.
 static bool inlineHistoryIncludes(
@@ -147,7 +139,7 @@
   //
   // TODO: Here is a huge amount duplicate code between the module inliner and
   // the SCC inliner, which need some refactoring.
-  auto Calls = getInlineOrder(UseInlinePriority, FAM, Params);
+  auto Calls = getInlineOrder(FAM, Params);
   assert(Calls != nullptr && "Expected an initialized InlineOrder");
 
   // Populate the initial list of calls in this module.
Index: llvm/lib/Analysis/InlineOrder.cpp
===================================================================
--- llvm/lib/Analysis/InlineOrder.cpp
+++ llvm/lib/Analysis/InlineOrder.cpp
@@ -16,11 +16,22 @@
 #include "llvm/Analysis/ProfileSummaryInfo.h"
 #include "llvm/Analysis/TargetLibraryInfo.h"
 #include "llvm/Analysis/TargetTransformInfo.h"
+#include "llvm/Support/CommandLine.h"
 
 using namespace llvm;
 
 #define DEBUG_TYPE "inline-order"
 
+enum class InlinePriorityMode : int { Size, Cost, OptRatio };
+
+static cl::opt<InlinePriorityMode> UseInlinePriority(
+    "inline-priority-mode", cl::init(InlinePriorityMode::Size), cl::Hidden,
+    cl::desc("Choose the priority mode to use in module inline"),
+    cl::values(clEnumValN(InlinePriorityMode::Size, "size",
+                          "Use callee size priority."),
+               clEnumValN(InlinePriorityMode::Cost, "cost",
+                          "Use inline cost priority.")));
+
 namespace {
 
 class InlinePriority {
@@ -213,8 +224,7 @@
 }
 
 std::unique_ptr<InlineOrder<std::pair<CallBase *, int>>>
-llvm::getInlineOrder(InlinePriorityMode UseInlinePriority,
-                     FunctionAnalysisManager &FAM, const InlineParams &Params) {
+llvm::getInlineOrder(FunctionAnalysisManager &FAM, const InlineParams &Params) {
   switch (UseInlinePriority) {
   case InlinePriorityMode::Size:
     LLVM_DEBUG(dbgs() << "    Current used priority: Size priority ---- \n");
Index: llvm/include/llvm/Analysis/InlineOrder.h
===================================================================
--- llvm/include/llvm/Analysis/InlineOrder.h
+++ llvm/include/llvm/Analysis/InlineOrder.h
@@ -21,8 +21,6 @@
 class CallBase;
 class Function;
 
-enum class InlinePriorityMode : int { Size, Cost, OptRatio };
-
 template <typename T> class InlineOrder {
 public:
   using reference = T &;
@@ -44,8 +42,7 @@
 };
 
 std::unique_ptr<InlineOrder<std::pair<CallBase *, int>>>
-getInlineOrder(InlinePriorityMode UseInlinePriority,
-               FunctionAnalysisManager &FAM, const InlineParams &Params);
+getInlineOrder(FunctionAnalysisManager &FAM, const InlineParams &Params);
 
 } // namespace llvm
 #endif // LLVM_ANALYSIS_INLINEORDER_H


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D134100.461022.patch
Type: text/x-patch
Size: 3555 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220917/f8e80c7b/attachment.bin>


More information about the llvm-commits mailing list