diff mbox series

[stage1] gcov: print total_lines summary for all files.

Message ID 702edbb8-7783-5932-4040-65beb36362bc@suse.cz
State New
Headers show
Series [stage1] gcov: print total_lines summary for all files. | expand

Commit Message

Martin Liška April 20, 2020, 9:31 a.m. UTC
Hi.

The patch prints total lines summary after all files are processed.
Moreover, I remove a check in generate_results where we should
be always given file_name != NULL.

Patch can bootstrap on x86_64-linux-gnu and survives regression tests.
I'm planning to install the in next stage1 if there are not objections.

Thanks,
Martin

gcc/ChangeLog:

2020-04-17  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/94636
	* gcov.c (main): Print total lines summary at the end.
	(generate_results): Expect file_name always being non-null.
	Print newline after intermediate file is printed in order to align with
	what we do for normal files.
---
  gcc/gcov.c | 30 +++++++++++++++---------------
  1 file changed, 15 insertions(+), 15 deletions(-)
diff mbox series

Patch

diff --git a/gcc/gcov.c b/gcc/gcov.c
index a291bac3e9e..488847231c2 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -874,6 +874,9 @@  main (int argc, char **argv)
 	}
     }
 
+  if (!flag_use_stdout)
+    executed_summary (total_lines, total_executed);
+
   return 0;
 }
 
@@ -1410,17 +1413,13 @@  generate_results (const char *file_name)
     }
 
   name_map needle;
-
-  if (file_name)
-    {
-      needle.name = file_name;
-      vector<name_map>::iterator it = std::find (names.begin (), names.end (),
-						 needle);
-      if (it != names.end ())
-	file_name = sources[it->src].coverage.name;
-      else
-	file_name = canonicalize_name (file_name);
-    }
+  needle.name = file_name;
+  vector<name_map>::iterator it
+    = std::find (names.begin (), names.end (), needle);
+  if (it != names.end ())
+    file_name = sources[it->src].coverage.name;
+  else
+    file_name = canonicalize_name (file_name);
 
   gcov_intermediate_filename = get_gcov_intermediate_filename (file_name);
 
@@ -1462,7 +1461,11 @@  generate_results (const char *file_name)
       if (flag_gcov_file)
 	{
 	  if (flag_json_format)
-	    output_json_intermediate_file (json_files, src);
+	    {
+	      output_json_intermediate_file (json_files, src);
+	      if (!flag_use_stdout)
+		fnotice (stdout, "\n");
+	    }
 	  else
 	    {
 	      if (flag_use_stdout)
@@ -1509,9 +1512,6 @@  generate_results (const char *file_name)
 	    }
 	}
     }
-
-  if (!file_name)
-    executed_summary (total_lines, total_executed);
 }
 
 /* Release all memory used.  */