[PATCH] D81216: [Inlining] Set -enable-npm-pgo-inline-deferral to false.

Kazu Hirata via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 4 20:24:06 PDT 2020


kazu created this revision.
kazu added a reviewer: davidxl.
Herald added subscribers: dexonsmith, hiraditya.
Herald added a project: LLVM.

This patch turns off inline deferral by default during PGO builds
except in the pre-inlining phase.

Although this patch improves the performance of an internal benchmark,
the SPEC performance remains unchanged -- 38.1 vs 38.1.

PGO+ThinLTO bootstrapped clang becomes slightly smaller.

Section              Base        Exp     Diff
---------------------------------------------

.text.hot         5974666    5932938   -0.70%
.text             7075401    7065513   -0.14%
.text.unlikely   35931984   35931376   -0.00%

.text.startup      734704     732304   -0.33%
---------------------------------------------

Top2             13050067   12998451   -0.40%
Total            49716755   49662131   -0.11%


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D81216

Files:
  llvm/lib/Passes/PassBuilder.cpp


Index: llvm/lib/Passes/PassBuilder.cpp
===================================================================
--- llvm/lib/Passes/PassBuilder.cpp
+++ llvm/lib/Passes/PassBuilder.cpp
@@ -256,7 +256,7 @@
 
 /// Flag to enable inline deferral during PGO.
 static cl::opt<bool>
-    EnablePGOInlineDeferral("enable-npm-pgo-inline-deferral", cl::init(true),
+    EnablePGOInlineDeferral("enable-npm-pgo-inline-deferral", cl::init(false),
                             cl::Hidden,
                             cl::desc("Enable inline deferral during PGO"));
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D81216.268648.patch
Type: text/x-patch
Size: 550 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200605/d9eae930/attachment-0001.bin>


More information about the llvm-commits mailing list