r203673 - Don't recompute inlining threshold - use new overload provided by LLVM

Eli Bendersky eliben at google.com
Wed Mar 12 09:30:34 PDT 2014


Author: eliben
Date: Wed Mar 12 11:30:34 2014
New Revision: 203673

URL: http://llvm.org/viewvc/llvm-project?rev=203673&view=rev
Log:
Don't recompute inlining threshold - use new overload provided by LLVM

Follow-up on LLVM r203669

Modified:
    cfe/trunk/lib/CodeGen/BackendUtil.cpp

Modified: cfe/trunk/lib/CodeGen/BackendUtil.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/BackendUtil.cpp?rev=203673&r1=203672&r2=203673&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/BackendUtil.cpp (original)
+++ cfe/trunk/lib/CodeGen/BackendUtil.cpp Wed Mar 12 11:30:34 2014
@@ -308,19 +308,12 @@ void EmitAssemblyHelper::CreatePasses()
   PMBuilder.LibraryInfo = new TargetLibraryInfo(TargetTriple);
   if (!CodeGenOpts.SimplifyLibCalls)
     PMBuilder.LibraryInfo->disableAllFunctions();
-  
+
   switch (Inlining) {
   case CodeGenOptions::NoInlining: break;
   case CodeGenOptions::NormalInlining: {
-    // FIXME: Derive these constants in a principled fashion.
-    unsigned Threshold = 225;
-    if (CodeGenOpts.OptimizeSize == 1)      // -Os
-      Threshold = 75;
-    else if (CodeGenOpts.OptimizeSize == 2) // -Oz
-      Threshold = 25;
-    else if (OptLevel > 2)
-      Threshold = 275;
-    PMBuilder.Inliner = createFunctionInliningPass(Threshold);
+    PMBuilder.Inliner =
+        createFunctionInliningPass(OptLevel, CodeGenOpts.OptimizeSize);
     break;
   }
   case CodeGenOptions::OnlyAlwaysInlining:





More information about the cfe-commits mailing list