Hi,
after some testing on firefox, SPEC and C++ benchmark I decided to bump up
early-inlining-insns somewhat because I find inliner decisions to be 
considerably
more robust this way allowing me to reduce inline-unit-growth.

There are several reasons for increasing early-inliner's activity. First it 
helps to
shift work from LTO to compilation stage. Also C++ abstraction penalty is on 
rise
with current coding standards. Finally since last tunning early inliner trottles
itself down more for non-leaf functions.

Bootstrapped/regtested x86_64-linux, comitted.  I will follow with update of
inline-unit-growth once testers pick this change up.

Honza

Index: doc/invoke.texi
===================================================================
--- doc/invoke.texi     (revision 219700)
+++ doc/invoke.texi     (working copy)
@@ -10078,7 +10078,7 @@ The default value is 10.
 @item early-inlining-insns
 Specify growth that the early inliner can make.  In effect it increases
 the amount of inlining for code having a large abstraction penalty.
-The default value is 10.
+The default value is 14.
 
 @item max-early-inliner-iterations
 Limit of iterations of the early inliner.  This basically bounds
Index: params.def
===================================================================
--- params.def  (revision 219700)
+++ params.def  (working copy)
@@ -198,7 +198,7 @@ DEFPARAM(PARAM_IPCP_UNIT_GROWTH,
 DEFPARAM(PARAM_EARLY_INLINING_INSNS,
         "early-inlining-insns",
         "Maximal estimated growth of function body caused by early inlining of 
single call",
-        11, 0, 0)
+        14, 0, 0)
 DEFPARAM(PARAM_LARGE_STACK_FRAME,
         "large-stack-frame",
         "The size of stack frame to be considered large",

Reply via email to