]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Avoid printing range table header alone.
authorMartin Sebor <msebor@redhat.com>
Wed, 25 Aug 2021 20:36:13 +0000 (14:36 -0600)
committerMartin Sebor <msebor@redhat.com>
Wed, 25 Aug 2021 20:37:43 +0000 (14:37 -0600)
gcc/ChangeLog:
* gimple-range-cache.cc (ssa_global_cache::dump): Avoid printing
range table header alone.
* gimple-range.cc (gimple_ranger::export_global_ranges): Same.

gcc/gimple-range-cache.cc
gcc/gimple-range.cc

index 4138d0556c678b5baacd8a7d83338cba7b7591b2..facf981c15dba80e3ee532cd94667e1c7f0b1b45 100644 (file)
@@ -628,20 +628,32 @@ ssa_global_cache::clear ()
 void
 ssa_global_cache::dump (FILE *f)
 {
-  unsigned x;
-  int_range_max r;
-  fprintf (f, "Non-varying global ranges:\n");
-  fprintf (f, "=========================:\n");
-  for ( x = 1; x < num_ssa_names; x++)
-    if (gimple_range_ssa_p (ssa_name (x)) &&
-       get_global_range (r, ssa_name (x))  && !r.varying_p ())
-      {
-       print_generic_expr (f, ssa_name (x), TDF_NONE);
-       fprintf (f, "  : ");
-       r.dump (f);
-       fprintf (f, "\n");
-      }
-  fputc ('\n', f);
+  /* Cleared after the table header has been printed.  */
+  bool print_header = true;
+  for (unsigned x = 1; x < num_ssa_names; x++)
+    {
+      int_range_max r;
+      if (gimple_range_ssa_p (ssa_name (x)) &&
+         get_global_range (r, ssa_name (x))  && !r.varying_p ())
+       {
+         if (print_header)
+           {
+             /* Print the header only when there's something else
+                to print below.  */
+             fprintf (f, "Non-varying global ranges:\n");
+             fprintf (f, "=========================:\n");
+             print_header = false;
+           }
+
+         print_generic_expr (f, ssa_name (x), TDF_NONE);
+         fprintf (f, "  : ");
+         r.dump (f);
+         fprintf (f, "\n");
+       }
+    }
+
+  if (!print_header)
+    fputc ('\n', f);
 }
 
 // --------------------------------------------------------------------------
index ef3afeacc901932a7dec7a690cbd862c5f56a589..d74cea3451e64e85c0ca80e2d8886d5e580e63af 100644 (file)
@@ -259,16 +259,11 @@ gimple_ranger::range_of_stmt (irange &r, gimple *s, tree name)
 void
 gimple_ranger::export_global_ranges ()
 {
-  unsigned x;
-  int_range_max r;
-  if (dump_file)
-    {
-      fprintf (dump_file, "Exported global range table\n");
-      fprintf (dump_file, "===========================\n");
-    }
-
-  for ( x = 1; x < num_ssa_names; x++)
+  /* Cleared after the table header has been printed.  */
+  bool print_header = true;
+  for (unsigned x = 1; x < num_ssa_names; x++)
     {
+      int_range_max r;
       tree name = ssa_name (x);
       if (name && !SSA_NAME_IN_FREE_LIST (name)
          && gimple_range_ssa_p (name)
@@ -276,21 +271,29 @@ gimple_ranger::export_global_ranges ()
          && !r.varying_p())
        {
          bool updated = update_global_range (r, name);
+         if (!updated || !dump_file || !(dump_flags & TDF_DETAILS))
+           continue;
 
-         if (updated && dump_file)
+         if (print_header)
            {
-             value_range vr = r;
-             print_generic_expr (dump_file, name , TDF_SLIM);
-             fprintf (dump_file, " --> ");
-             vr.dump (dump_file);
+             /* Print the header only when there's something else
+                to print below.  */
+             fprintf (dump_file, "Exported global range table:\n");
+             fprintf (dump_file, "============================\n");
+             print_header = false;
+           }
+
+         value_range vr = r;
+         print_generic_expr (dump_file, name , TDF_SLIM);
+         fprintf (dump_file, "  : ");
+         vr.dump (dump_file);
+         fprintf (dump_file, "\n");
+         int_range_max same = vr;
+         if (same != r)
+           {
+             fprintf (dump_file, "         irange : ");
+             r.dump (dump_file);
              fprintf (dump_file, "\n");
-             int_range_max same = vr;
-             if (same != r)
-               {
-                 fprintf (dump_file, "         irange : ");
-                 r.dump (dump_file);
-                 fprintf (dump_file, "\n");
-               }
            }
        }
     }