[PATCH] D22569: [LLVM-COV] Add the coverage of lines in the summary report.

Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 22 05:53:54 PDT 2016


This revision was automatically updated to reflect the committed changes.
Closed by commit rL276409: [llvm-cov] - Add the coverage of lines in the summary report. (authored by yingyi).

Changed prior to commit:
  https://reviews.llvm.org/D22569?vs=64881&id=65063#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D22569

Files:
  llvm/trunk/test/tools/llvm-cov/prevent_false_instantiations.h
  llvm/trunk/test/tools/llvm-cov/report.cpp
  llvm/trunk/tools/llvm-cov/CoverageReport.cpp

Index: llvm/trunk/tools/llvm-cov/CoverageReport.cpp
===================================================================
--- llvm/trunk/tools/llvm-cov/CoverageReport.cpp
+++ llvm/trunk/tools/llvm-cov/CoverageReport.cpp
@@ -88,7 +88,8 @@
   return Column(Str, Width).set(Value);
 }
 
-static size_t FileReportColumns[] = {25, 10, 8, 8, 10, 10};
+// Specify the default column widths.
+static size_t FileReportColumns[] = {25, 12, 18, 10, 12, 18, 10, 12, 18, 10};
 static size_t FunctionReportColumns[] = {25, 10, 8, 8, 10, 8, 8};
 
 /// \brief  Adjust column widths to fit long file paths and function names.
@@ -136,10 +137,24 @@
                 File.RegionCoverage.getPercentCovered()) << '%';
   OS << format("%*u", FileReportColumns[4],
                (unsigned)File.FunctionCoverage.NumFunctions);
+  OS << format("%*u", FileReportColumns[5],
+               (unsigned)(File.FunctionCoverage.NumFunctions -
+                          File.FunctionCoverage.Executed));
   Options.colored_ostream(
       OS, determineCoveragePercentageColor(File.FunctionCoverage))
-      << format("%*.2f", FileReportColumns[5] - 1,
+      << format("%*.2f", FileReportColumns[6] - 1,
                 File.FunctionCoverage.getPercentCovered()) << '%';
+  OS << format("%*u", FileReportColumns[7],
+               (unsigned)File.LineCoverage.NumLines);
+  Options.colored_ostream(OS, File.LineCoverage.isFullyCovered()
+                                  ? raw_ostream::GREEN
+                                  : raw_ostream::RED)
+      << format("%*u", FileReportColumns[8],
+                (unsigned)File.LineCoverage.NotCovered);
+  Options.colored_ostream(OS,
+                          determineCoveragePercentageColor(File.LineCoverage))
+      << format("%*.2f", FileReportColumns[9] - 1,
+                File.LineCoverage.getPercentCovered()) << '%';
   OS << "\n";
 }
 
@@ -211,10 +226,15 @@
   adjustColumnWidths(Coverage.get());
   OS << column("Filename", FileReportColumns[0])
      << column("Regions", FileReportColumns[1], Column::RightAlignment)
-     << column("Miss", FileReportColumns[2], Column::RightAlignment)
+     << column("Missed Regions", FileReportColumns[2], Column::RightAlignment)
      << column("Cover", FileReportColumns[3], Column::RightAlignment)
      << column("Functions", FileReportColumns[4], Column::RightAlignment)
-     << column("Executed", FileReportColumns[5], Column::RightAlignment)
+     << column("Missed Functions", FileReportColumns[5],
+               Column::RightAlignment)
+     << column("Executed", FileReportColumns[6], Column::RightAlignment)
+     << column("Lines", FileReportColumns[7], Column::RightAlignment)
+     << column("Missed Lines", FileReportColumns[8], Column::RightAlignment)
+     << column("Cover", FileReportColumns[9], Column::RightAlignment)
      << "\n";
   renderDivider(FileReportColumns, OS);
   OS << "\n";
Index: llvm/trunk/test/tools/llvm-cov/prevent_false_instantiations.h
===================================================================
--- llvm/trunk/test/tools/llvm-cov/prevent_false_instantiations.h
+++ llvm/trunk/test/tools/llvm-cov/prevent_false_instantiations.h
@@ -1,7 +1,7 @@
 // Checks that function instantiations don't go to a wrong file.
 
 // INSTANTIATION-NOT: {{_Z5func[1,2]v}}
-// NAN-NOT: 0{{[ \t]+}}nan%{{[ \t]+}}0{{[ \t]+}}nan%
+// NAN-NOT: {{[ \t]+}}nan%
 
 // RUN: llvm-profdata merge %S/Inputs/prevent_false_instantiations.proftext -o %t.profdata
 // RUN: llvm-cov show -format text %S/Inputs/prevent_false_instantiations.covmapping -instr-profile %t.profdata -filename-equivalence %s | FileCheck %s -check-prefix=INSTANTIATION
Index: llvm/trunk/test/tools/llvm-cov/report.cpp
===================================================================
--- llvm/trunk/test/tools/llvm-cov/report.cpp
+++ llvm/trunk/test/tools/llvm-cov/report.cpp
@@ -1,11 +1,11 @@
 // RUN: llvm-cov report %S/Inputs/report.covmapping -instr-profile %S/Inputs/report.profdata -filename-equivalence 2>&1 | FileCheck %s
 // RUN: llvm-cov report %S/Inputs/report.covmapping -instr-profile %S/Inputs/report.profdata -filename-equivalence report.cpp 2>&1 | FileCheck -check-prefix=FILT-NEXT %s
 
-// CHECK:      Filename   Regions  Miss   Cover  Functions  Executed
+// CHECK:      Filename   Regions    Missed Regions     Cover   Functions  Missed Functions  Executed       Lines      Missed Lines     Cover
 // CHECK-NEXT: ---
-// CHECK-NEXT: report.cpp       5     2  60.00%          4    75.00%
+// CHECK-NEXT: report.cpp       5                2     60.00%           4                 1    75.00%          13                 4    69.23%
 // CHECK-NEXT: ---
-// CHECK-NEXT: TOTAL            5     2  60.00%          4    75.00%
+// CHECK-NEXT: TOTAL            5                2     60.00%           4                 1    75.00%          13                 4    69.23%
 
 // FILT: File 'report.cpp':
 // FILT-NEXT: Name        Regions  Miss   Cover  Lines  Miss   Cover


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D22569.65063.patch
Type: text/x-patch
Size: 4953 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160722/788d2b1f/attachment.bin>


More information about the llvm-commits mailing list