OSDN Git Service

Add a FIXME explaining the move to a single indirect call bonus per function
authorEric Christopher <echristo@apple.com>
Sat, 22 Jan 2011 21:56:53 +0000 (21:56 +0000)
committerEric Christopher <echristo@apple.com>
Sat, 22 Jan 2011 21:56:53 +0000 (21:56 +0000)
that we can change from indirect to direct.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124045 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/InlineCost.cpp

index 6e251aa..86f98c6 100644 (file)
@@ -189,6 +189,11 @@ unsigned CodeMetrics::CountBonusForConstant(Value *V) {
     }
   }
   
+  // FIXME: The only reason we're applying the bonus once is while it's great
+  // to devirtualize calls the magnitude of the bonus x number of call sites
+  // can lead to a huge code explosion when we prefer to inline 1000 instruction
+  // functions that have 10 call sites. This should be made a function of the
+  // estimated inline penalty/benefit + the indirect call bonus.
   if (indirectCallBonus) Bonus += InlineConstants::IndirectCallBonus;
   
   return Bonus;