Extern -param=max-predicted-iterations range.
authorJan Hubicka <jh@suse.cz>
Thu, 16 Jan 2020 23:50:22 +0000 (00:50 +0100)
committerJan Hubicka <jh@suse.cz>
Thu, 16 Jan 2020 23:50:22 +0000 (00:50 +0100)
* params.opt (-param=max-predicted-iterations): Increase range from 0.
* predict.c (estimate_loops): Add 1 to param_max_predicted_iterations.

gcc/ChangeLog
gcc/params.opt
gcc/predict.c

index 907d0f751abeae655d120b1ddf3cb9741b8c2505..febcd6fb31ff1f043641192cdb441855b093cdfd 100644 (file)
@@ -1,3 +1,8 @@
+2020-01-16  Jan Hubicka  <hubicka@ucw.cz>
+
+       * params.opt (-param=max-predicted-iterations): Increase range from 0.
+       * predict.c (estimate_loops): Add 1 to param_max_predicted_iterations.
+
 2020-01-16  Jan Hubicka  <hubicka@ucw.cz>
 
        * ipa-fnsummary.c (estimate_calls_size_and_time): Fix formating of
index f02c769d0e3541aa1965622081d64445bb451cf1..8e4217dbb84c462fea56219670df7efd78d5de19 100644 (file)
@@ -555,7 +555,7 @@ Common Joined UInteger Var(param_max_pow_sqrt_depth) Init(5) IntegerRange(1, 32)
 Maximum depth of sqrt chains to use when synthesizing exponentiation by a real constant.
 
 -param=max-predicted-iterations=
-Common Joined UInteger Var(param_max_predicted_iterations) Init(100) IntegerRange(1, 65536) Param Optimization
+Common Joined UInteger Var(param_max_predicted_iterations) Init(100) IntegerRange(0, 65536) Param Optimization
 The maximum number of loop iterations we predict statically.
 
 -param=max-reload-search-insns=
index c3aed9ed8543ca353580057cd8b734d59d3166a2..1b000581c8f5a7c3ea520c79f0987c0be58650dc 100644 (file)
@@ -3427,7 +3427,8 @@ estimate_loops (void)
 {
   auto_bitmap tovisit;
   basic_block bb;
-  sreal max_cyclic_prob = (sreal)1 - (sreal)1 / param_max_predicted_iterations;
+  sreal max_cyclic_prob = (sreal)1
+                          - (sreal)1 / (param_max_predicted_iterations + 1);
 
   /* Start by estimating the frequencies in the loops.  */
   if (number_of_loops (cfun) > 1)