https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92264

--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I guess we can consider lowering the default value of the param and/or having
separate param for var-tracking vs. for normal RTL optimizations.
But before doing that I think we want to gather some statistics to help us
decide on which value we want, like:
--- gcc/alias.c 2020-03-09 13:38:04.534284063 +0100
+++ gcc/alias.c 2020-03-18 14:20:03.669278109 +0100
@@ -2116,6 +2116,14 @@ find_base_term (rtx x)
   rtx res = find_base_term (x, visited_vals);
   for (unsigned i = 0; i < visited_vals.length (); ++i)
     visited_vals[i].first->locs = visited_vals[i].second;
+  if (visited_vals.length () > 100)
+    {
+      FILE *f = fopen ("/tmp/fbt", "a");
+      fprintf (f, "%d %s %s %d %d\n", (int) BITS_PER_WORD,
+              main_input_filename ? main_input_filename : "-",
+              current_function_name (), visited_vals.length (), res !=
NULL_RTX);
+      fclose (f);
+    }
   return res;
 }

and use it on both x86_64-linux and i686-linux bootstrap/regtest (perhaps other
targets too) and perhaps on some other packages too (firefox, libreoffice,
...).

Reply via email to