[llvm] r278152 - [llvm-cov] Swapped the line and count columns.

Ying Yi via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 9 12:53:36 PDT 2016


Author: yingyi
Date: Tue Aug  9 14:53:35 2016
New Revision: 278152

URL: http://llvm.org/viewvc/llvm-project?rev=278152&view=rev
Log:
[llvm-cov]  Swapped the line and count columns.

In the coverage report, the line and count columns have been swapped to make it more readable.
A follow-up commit in compiler-rt is needed

Differential Revision: https://reviews.llvm.org/D23281

Modified:
    llvm/trunk/test/tools/llvm-cov/Inputs/instrprof-comdat.h
    llvm/trunk/test/tools/llvm-cov/binary-formats.c
    llvm/trunk/test/tools/llvm-cov/combine_expansions.cpp
    llvm/trunk/test/tools/llvm-cov/prefer_used_to_unused.h
    llvm/trunk/test/tools/llvm-cov/showLineExecutionCounts.cpp
    llvm/trunk/test/tools/llvm-cov/showTemplateInstantiations.cpp
    llvm/trunk/test/tools/llvm-cov/universal-binary.c
    llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp

Modified: llvm/trunk/test/tools/llvm-cov/Inputs/instrprof-comdat.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/Inputs/instrprof-comdat.h?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/Inputs/instrprof-comdat.h (original)
+++ llvm/trunk/test/tools/llvm-cov/Inputs/instrprof-comdat.h Tue Aug  9 14:53:35 2016
@@ -8,14 +8,14 @@ private:
   T t;
 };
 
-template <class T> T FOO<T>::DoIt(T ti) { // HEADER:  2| [[@LINE]]|template
-  for (T I = 0; I < ti; I++) {            // HEADER: 22| [[@LINE]]|  for (T
-    t += I;                               // HEADER: 20| [[@LINE]]|    t += I;
-    if (I > ti / 2)                       // HEADER: 20| [[@LINE]]|    if (I > ti 
-      t -= 1;                             // HEADER:  8| [[@LINE]]|      t -= 1;
-  }                                       // HEADER: 20| [[@LINE]]|  }
-                                          // HEADER:  2| [[@LINE]]|
-  return t;                               // HEADER:  2| [[@LINE]]|  return t;
+template <class T> T FOO<T>::DoIt(T ti) { // HEADER: [[@LINE]]|  2|template
+  for (T I = 0; I < ti; I++) {            // HEADER: [[@LINE]]| 22|  for (T
+    t += I;                               // HEADER: [[@LINE]]| 20|   t += I;
+    if (I > ti / 2)                       // HEADER: [[@LINE]]| 20|   if (I > ti
+      t -= 1;                             // HEADER: [[@LINE]]|  8|     t -= 1;
+  }                                       // HEADER: [[@LINE]]| 20| }
+                                          // HEADER: [[@LINE]]|  2|
+  return t;                               // HEADER: [[@LINE]]|  2|  return t;
 }
 
 // To generate the binaries which correspond to this file, you must first

Modified: llvm/trunk/test/tools/llvm-cov/binary-formats.c
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/binary-formats.c?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/binary-formats.c (original)
+++ llvm/trunk/test/tools/llvm-cov/binary-formats.c Tue Aug  9 14:53:35 2016
@@ -1,6 +1,6 @@
 // Checks for reading various formats.
 
-// CHECK: 100| [[@LINE+1]]|int main
+// CHECK: [[@LINE+1]]| 100|int main
 int main(int argc, const char *argv[]) {}
 
 // RUN: llvm-profdata merge %S/Inputs/binary-formats.proftext -o %t.profdata

Modified: llvm/trunk/test/tools/llvm-cov/combine_expansions.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/combine_expansions.cpp?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/combine_expansions.cpp (original)
+++ llvm/trunk/test/tools/llvm-cov/combine_expansions.cpp Tue Aug  9 14:53:35 2016
@@ -5,22 +5,22 @@
 
 #define SIMPLE_OP \
   ++x
-// CHECK:       | [[@LINE-2]]|#define SIMPLE_OP
-// CHECK-NEXT: 2| [[@LINE-2]]|  ++x
+// CHECK:      [[@LINE-2]]|  |#define SIMPLE_OP
+// CHECK-NEXT: [[@LINE-2]]| 2|  ++x
 
 #define DO_SOMETHING \
   {                  \
     int x = 0;       \
     SIMPLE_OP;       \
   }
-// CHECK:       | [[@LINE-5]]|#define DO_SOMETHING
-// CHECK-NEXT: 2| [[@LINE-5]]|  {
-// CHECK-NEXT: 2| [[@LINE-5]]|    int x = 0;
-// CHECK-NEXT: 2| [[@LINE-5]]|    SIMPLE_OP;
-// CHECK-NEXT: 2| [[@LINE-5]]|  }
+// CHECK:      [[@LINE-5]]|  |#define DO_SOMETHING
+// CHECK-NEXT: [[@LINE-5]]| 2|  {
+// CHECK-NEXT: [[@LINE-5]]| 2|    int x = 0;
+// CHECK-NEXT: [[@LINE-5]]| 2|    SIMPLE_OP;
+// CHECK-NEXT: [[@LINE-5]]| 2|  }
 
-int main() {    // CHECK:      1| [[@LINE]]|int main() {
-  DO_SOMETHING; // CHECK-NEXT: 1| [[@LINE]]|  DO_SOMETHING;
-  DO_SOMETHING; // CHECK-NEXT: 1| [[@LINE]]|  DO_SOMETHING;
-  return 0;     // CHECK-NEXT: 1| [[@LINE]]|  return 0;
-}               // CHECK-NEXT: 1| [[@LINE]]|}
+int main() {    // CHECK:      [[@LINE]]| 1|int main() {
+  DO_SOMETHING; // CHECK-NEXT: [[@LINE]]| 1|  DO_SOMETHING;
+  DO_SOMETHING; // CHECK-NEXT: [[@LINE]]| 1|  DO_SOMETHING;
+  return 0;     // CHECK-NEXT: [[@LINE]]| 1|  return 0;
+}               // CHECK-NEXT: [[@LINE]]| 1|}

Modified: llvm/trunk/test/tools/llvm-cov/prefer_used_to_unused.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/prefer_used_to_unused.h?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/prefer_used_to_unused.h (original)
+++ llvm/trunk/test/tools/llvm-cov/prefer_used_to_unused.h Tue Aug  9 14:53:35 2016
@@ -12,13 +12,13 @@
 // RUN: llvm-cov show %S/Inputs/prefer_used_to_unused.covmapping -instr-profile %t.profdata -filename-equivalence %s | FileCheck %s
 
 // Coverage data for this function has a non-zero hash value if it is used in the translation unit.
-inline int sampleFunc(int A) { // CHECK:      1| [[@LINE]]|inline int sampleFunc(int A) {
-  if (A > 0)                   // CHECK-NEXT: 1| [[@LINE]]|  if (A > 0)
-    return A;                  // CHECK-NEXT: 1| [[@LINE]]|    return A;
-  return 0;                    // CHECK-NEXT: 0| [[@LINE]]|  return 0;
-}                              // CHECK-NEXT: 1| [[@LINE]]|}
+inline int sampleFunc(int A) { // CHECK:      [[@LINE]]| 1|inline int sampleFunc(int A) {
+  if (A > 0)                   // CHECK-NEXT: [[@LINE]]| 1|  if (A > 0)
+    return A;                  // CHECK-NEXT: [[@LINE]]| 1|    return A;
+  return 0;                    // CHECK-NEXT: [[@LINE]]| 0|  return 0;
+}                              // CHECK-NEXT: [[@LINE]]| 1|}
 
 // The hash for this function is zero in both cases, either it is used in the translation unit or not.
-inline int simpleFunc(int A) { // CHECK:      1| [[@LINE]]|inline int simpleFunc(int A) {
-  return A;                    // CHECK-NEXT: 1| [[@LINE]]|  return A;
-}                              // CHECK-NEXT: 1| [[@LINE]]|}
+inline int simpleFunc(int A) { // CHECK:      [[@LINE]]| 1|inline int simpleFunc(int A) {
+  return A;                    // CHECK-NEXT: [[@LINE]]| 1|  return A;
+}                              // CHECK-NEXT: [[@LINE]]| 1|}

Modified: llvm/trunk/test/tools/llvm-cov/showLineExecutionCounts.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/showLineExecutionCounts.cpp?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/showLineExecutionCounts.cpp (original)
+++ llvm/trunk/test/tools/llvm-cov/showLineExecutionCounts.cpp Tue Aug  9 14:53:35 2016
@@ -1,30 +1,30 @@
 // Basic handling of line counts.
 // RUN: llvm-profdata merge %S/Inputs/lineExecutionCounts.proftext -o %t.profdata
 
-// before any coverage              // WHOLE-FILE:      | [[@LINE]]|// before
-                                    // FILTER-NOT:      | [[@LINE-1]]|// before
-int main() {                              // TEXT:   161| [[@LINE]]|int main(
-  int x = 0;                              // TEXT:   161| [[@LINE]]|  int x
-                                          // TEXT:   161| [[@LINE]]|
-  if (x) {                                // TEXT:     0| [[@LINE]]|  if (x)
-    x = 0;                                // TEXT:     0| [[@LINE]]|    x = 0
-  } else {                                // TEXT:   161| [[@LINE]]|  } else
-    x = 1;                                // TEXT:   161| [[@LINE]]|    x = 1
-  }                                       // TEXT:   161| [[@LINE]]|  }
-                                          // TEXT:   161| [[@LINE]]|
-  for (int i = 0; i < 100; ++i) {         // TEXT: 16.2k| [[@LINE]]|  for (
-    x = 1;                                // TEXT: 16.1k| [[@LINE]]|    x = 1
-  }                                       // TEXT: 16.1k| [[@LINE]]|  }
-                                          // TEXT:   161| [[@LINE]]|
-  x = x < 10 ? x + 1 : x - 1;             // TEXT:   161| [[@LINE]]|  x =
-  x = x > 10 ?                            // TEXT:   161| [[@LINE]]|  x =
-        x - 1:                            // TEXT:     0| [[@LINE]]|        x
-        x + 1;                            // TEXT:   161| [[@LINE]]|        x
-                                          // TEXT:   161| [[@LINE]]|
-  return 0;                               // TEXT:   161| [[@LINE]]|  return
-}                                         // TEXT:   161| [[@LINE]]|}
-// after coverage                   // WHOLE-FILE:      | [[@LINE]]|// after
-                                    // FILTER-NOT:      | [[@LINE-1]]|// after
+// before any coverage              // WHOLE-FILE: [[@LINE]]|      |// before
+                                    // FILTER-NOT: [[@LINE-1]]|    |// before
+int main() {                              // TEXT: [[@LINE]]|   161|int main(
+  int x = 0;                              // TEXT: [[@LINE]]|   161|  int x
+                                          // TEXT: [[@LINE]]|   161|
+  if (x) {                                // TEXT: [[@LINE]]|     0|  if (x)
+    x = 0;                                // TEXT: [[@LINE]]|     0|    x = 0
+  } else {                                // TEXT: [[@LINE]]|   161|  } else
+    x = 1;                                // TEXT: [[@LINE]]|   161|    x = 1
+  }                                       // TEXT: [[@LINE]]|   161|  }
+                                          // TEXT: [[@LINE]]|   161|
+  for (int i = 0; i < 100; ++i) {         // TEXT: [[@LINE]]| 16.2k|  for (
+    x = 1;                                // TEXT: [[@LINE]]| 16.1k|    x = 1
+  }                                       // TEXT: [[@LINE]]| 16.1k|  }
+                                          // TEXT: [[@LINE]]|   161|
+  x = x < 10 ? x + 1 : x - 1;             // TEXT: [[@LINE]]|   161|  x =
+  x = x > 10 ?                            // TEXT: [[@LINE]]|   161|  x =
+        x - 1:                            // TEXT: [[@LINE]]|     0|        x
+        x + 1;                            // TEXT: [[@LINE]]|   161|        x
+                                          // TEXT: [[@LINE]]|   161|
+  return 0;                               // TEXT: [[@LINE]]|   161|  return
+}                                         // TEXT: [[@LINE]]|   161|}
+// after coverage                   // WHOLE-FILE: [[@LINE]]|      |// after
+                                    // FILTER-NOT: [[@LINE-1]]|    |// after
 
 // RUN: llvm-cov show %S/Inputs/lineExecutionCounts.covmapping -instr-profile %t.profdata -filename-equivalence %s | FileCheck -check-prefixes=TEXT,WHOLE-FILE %s
 // RUN: llvm-cov show %S/Inputs/lineExecutionCounts.covmapping -instr-profile %t.profdata -filename-equivalence -name=main %s | FileCheck -check-prefixes=TEXT,FILTER %s
@@ -45,30 +45,30 @@ int main() {
 // RUN: FileCheck -check-prefixes=HTML,HTML-WHOLE-FILE -input-file %t.html.dir/coverage/tmp/showLineExecutionCounts.cpp.html %s
 // RUN: FileCheck -check-prefixes=HTML,HTML-FILTER -input-file %t.html.dir/functions.html %s
 //
-// HTML-WHOLE-FILE: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>// before
-// HTML-FILTER-NOT: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='code'><pre>// before
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>int main() {
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  int x = 0
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>
-// HTML: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre><span class='red'>  if (x) {
-// HTML: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre><span class='red'>  }</span>
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>    x = 1;
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  }
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>
-// HTML: <td class='covered-line'><pre>16.2k</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  for (int i = 0; i < 100; ++i)
-// HTML: <td class='covered-line'><pre>16.1k</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>    x = 1;
-// HTML: <td class='covered-line'><pre>16.1k</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  }
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  x = x < 10
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  x = x > 10
-// HTML: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre><span class='red'>        x - 1:
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>        x + 1;
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  return 0;
-// HTML: <td class='covered-line'><pre>161</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>}
-// HTML-WHOLE-FILE: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>// after
-// HTML-FILTER-NOT: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='code'><pre>// after
+// HTML-WHOLE-FILE: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// before
+// HTML-FILTER-NOT: <td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// before
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>int main() {
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>  int x = 0
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre><span class='red'>  if (x) {
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre>
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre><span class='red'>  }</span>
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>    x = 1;
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>  }
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>16.2k</pre></td><td class='code'><pre>  for (int i = 0; i < 100; ++i)
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>16.1k</pre></td><td class='code'><pre>    x = 1;
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>16.1k</pre></td><td class='code'><pre>  }
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>  x = x < 10
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>  x = x > 10
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre><span class='red'>        x - 1:
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>        x + 1;
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>  return 0;
+// HTML: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>161</pre></td><td class='code'><pre>}
+// HTML-WHOLE-FILE: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// after
+// HTML-FILTER-NOT: <td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// after
 
 // RUN: llvm-cov export %S/Inputs/lineExecutionCounts.covmapping -instr-profile %t.profdata -name=main 2>/dev/null > %t.export.json
 // RUN: FileCheck -input-file %t.export.json %S/Inputs/lineExecutionCounts.json

Modified: llvm/trunk/test/tools/llvm-cov/showTemplateInstantiations.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/showTemplateInstantiations.cpp?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/showTemplateInstantiations.cpp (original)
+++ llvm/trunk/test/tools/llvm-cov/showTemplateInstantiations.cpp Tue Aug  9 14:53:35 2016
@@ -1,43 +1,43 @@
 // RUN: llvm-cov show %S/Inputs/templateInstantiations.covmapping -instr-profile %S/Inputs/templateInstantiations.profdata -filename-equivalence %s | FileCheck -check-prefixes=SHARED,ALL %s
 // RUN: llvm-cov show %S/Inputs/templateInstantiations.covmapping -instr-profile %S/Inputs/templateInstantiations.profdata -filename-equivalence -name=_Z4funcIbEiT_ %s | FileCheck -check-prefixes=SHARED,FILTER %s
 
-// before coverage   // ALL:          | [[@LINE]]|// before
-                     // FILTER-NOT:   | [[@LINE-1]]|// before
-template<typename T> // ALL:          | [[@LINE]]|template<typename T>
-int func(T x) {      // ALL-NEXT:    2| [[@LINE]]|int func(T x) {
-  if(x)              // ALL-NEXT:    2| [[@LINE]]|  if(x)
-    return 0;        // ALL-NEXT:    1| [[@LINE]]|    return 0;
-  else               // ALL-NEXT:    2| [[@LINE]]|  else
-    return 1;        // ALL-NEXT:    1| [[@LINE]]|    return 1;
-  int j = 1;         // ALL-NEXT:    0| [[@LINE]]|  int j = 1;
-}                    // ALL-NEXT:    2| [[@LINE]]|}
+// before coverage   // ALL:         [[@LINE]]|  |// before
+                     // FILTER-NOT:[[@LINE-1]]|  |// before
+template<typename T> // ALL:         [[@LINE]]|  |template<typename T>
+int func(T x) {      // ALL-NEXT:    [[@LINE]]| 2|int func(T x) {
+  if(x)              // ALL-NEXT:    [[@LINE]]| 2|  if(x)
+    return 0;        // ALL-NEXT:    [[@LINE]]| 1|    return 0;
+  else               // ALL-NEXT:    [[@LINE]]| 2|  else
+    return 1;        // ALL-NEXT:    [[@LINE]]| 1|    return 1;
+  int j = 1;         // ALL-NEXT:    [[@LINE]]| 0|  int j = 1;
+}                    // ALL-NEXT:    [[@LINE]]| 2|}
 
                      // SHARED:       {{^ *(\| )?}}_Z4funcIbEiT_:
-                     // SHARED-NEXT:  1| [[@LINE-9]]|int func(T x) {
-                     // SHARED-NEXT:  1| [[@LINE-9]]|  if(x)
-                     // SHARED-NEXT:  1| [[@LINE-9]]|    return 0;
-                     // SHARED-NEXT:  1| [[@LINE-9]]|  else
-                     // SHARED-NEXT:  0| [[@LINE-9]]|    return 1;
-                     // SHARED-NEXT:  0| [[@LINE-9]]|  int j = 1;
-                     // SHARED-NEXT:  1| [[@LINE-9]]|}
+                     // SHARED-NEXT:  [[@LINE-9]]| 1|int func(T x) {
+                     // SHARED-NEXT:  [[@LINE-9]]| 1|  if(x)
+                     // SHARED-NEXT:  [[@LINE-9]]| 1|    return 0;
+                     // SHARED-NEXT:  [[@LINE-9]]| 1|  else
+                     // SHARED-NEXT:  [[@LINE-9]]| 0|    return 1;
+                     // SHARED-NEXT:  [[@LINE-9]]| 0|  int j = 1;
+                     // SHARED-NEXT:  [[@LINE-9]]| 1|}
 
                      // ALL:         {{^ *}}| _Z4funcIiEiT_:
                      // FILTER-NOT:  {{^ *(\| )?}} _Z4funcIiEiT_:
-                     // ALL-NEXT:    1| [[@LINE-19]]|int func(T x) {
-                     // ALL-NEXT:    1| [[@LINE-19]]|  if(x)
-                     // ALL-NEXT:    0| [[@LINE-19]]|    return 0;
-                     // ALL-NEXT:    1| [[@LINE-19]]|  else
-                     // ALL-NEXT:    1| [[@LINE-19]]|    return 1;
-                     // ALL-NEXT:    0| [[@LINE-19]]|  int j = 1;
-                     // ALL-NEXT:    1| [[@LINE-19]]|}
-
-int main() {         // ALL:         1| [[@LINE]]|int main() {
-  func<int>(0);      // ALL-NEXT:    1| [[@LINE]]|  func<int>(0);
-  func<bool>(true);  // ALL-NEXT:    1| [[@LINE]]|  func<bool>(true);
-  return 0;          // ALL-NEXT:    1| [[@LINE]]|  return 0;
-}                    // ALL-NEXT:    1| [[@LINE]]|}
-// after coverage    // ALL-NEXT:     | [[@LINE]]|// after
-                     // FILTER-NOT:   | [[@LINE-1]]|// after
+                     // ALL-NEXT:    [[@LINE-19]]| 1|int func(T x) {
+                     // ALL-NEXT:    [[@LINE-19]]| 1|  if(x)
+                     // ALL-NEXT:    [[@LINE-19]]| 0|    return 0;
+                     // ALL-NEXT:    [[@LINE-19]]| 1|  else
+                     // ALL-NEXT:    [[@LINE-19]]| 1|    return 1;
+                     // ALL-NEXT:    [[@LINE-19]]| 0|  int j = 1;
+                     // ALL-NEXT:    [[@LINE-19]]| 1|}
+
+int main() {         // ALL:         [[@LINE]]| 1|int main() {
+  func<int>(0);      // ALL-NEXT:    [[@LINE]]| 1|  func<int>(0);
+  func<bool>(true);  // ALL-NEXT:    [[@LINE]]| 1|  func<bool>(true);
+  return 0;          // ALL-NEXT:    [[@LINE]]| 1|  return 0;
+}                    // ALL-NEXT:    [[@LINE]]| 1|}
+// after coverage    // ALL-NEXT:    [[@LINE]]|  |// after
+                     // FILTER-NOT:[[@LINE-1]]|  |// after
 
 // Test html output.
 // RUN: llvm-cov show %S/Inputs/templateInstantiations.covmapping -instr-profile %S/Inputs/templateInstantiations.profdata -filename-equivalence %s -format html -o %t.html.dir
@@ -45,41 +45,41 @@ int main() {         // ALL:         1|
 // RUN: FileCheck -check-prefixes=HTML-SHARED,HTML-ALL -input-file=%t.html.dir/coverage/tmp/showTemplateInstantiations.cpp.html %s
 // RUN: FileCheck -check-prefixes=HTML-SHARED,HTML-FILTER -input-file=%t.html.dir/functions.html %s
 
-// HTML-ALL: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>// before
-// HTML-FILTER-NOT: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='code'><pre>// before
-// HTML-ALL: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>template<typename T>
-// HTML-ALL: <td class='covered-line'><pre>2</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>int func(T x) {
-// HTML-ALL: <td class='covered-line'><pre>2</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  if(x)
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>    ret
-// HTML-ALL: <td class='covered-line'><pre>2</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  else
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>    ret
-// HTML-ALL: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>
-// HTML-ALL: <td class='covered-line'><pre>2</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>}
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// before
+// HTML-FILTER-NOT: <td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// before
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>template<typename T>
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>2</pre></td><td class='code'><pre>int func(T x) {
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>2</pre></td><td class='code'><pre>  if(x)
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>    ret
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>2</pre></td><td class='code'><pre>  else
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>    ret
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre>
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>2</pre></td><td class='code'><pre>}
 
 // HTML-SHARED: <div class='source-name-title'><pre>_Z4funcIbEiT_</pre></div><table>
-// HTML-SHARED: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='code'><pre>int func(T x) {
-// HTML-SHARED: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='code'><pre>  if(x)
-// HTML-SHARED: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='code'><pre>    ret
-// HTML-SHARED: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='code'><pre>  else
-// HTML-SHARED: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='code'><pre>
-// HTML-SHARED: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='code'><pre>
-// HTML-SHARED: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='code'><pre>}
+// HTML-SHARED: <td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>int func(T x) {
+// HTML-SHARED: <td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>  if(x)
+// HTML-SHARED: <td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>    ret
+// HTML-SHARED: <td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>  else
+// HTML-SHARED: <td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre>
+// HTML-SHARED: <td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre>
+// HTML-SHARED: <td class='line-number'><a name='L[[@LINE-53]]'><pre>[[@LINE-53]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>}
 
 // HTML-ALL: <div class='source-name-title'><pre>_Z4funcIiEiT_</pre></div><table>
 // HTML-FILTER-NOT: <div class='source-name-title'><pre>_Z4funcIiEiT_</pre></div><table>
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='code'><pre>int func(T x) {
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='code'><pre>  if(x)
-// HTML-ALL: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='code'><pre>
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='code'><pre>  else
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='code'><pre>    ret
-// HTML-ALL: <td class='uncovered-line'><pre>0</pre></td><td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='code'><pre>
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='code'><pre>}
-
-// HTML-ALL: td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>int main() {
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  func<int>(0);
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  func<bool>(true);
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>  return 0;
-// HTML-ALL: <td class='covered-line'><pre>1</pre></td><td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='code'><pre>}
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>int func(T x) {
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>  if(x)
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre>
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>  else
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>    ret
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='uncovered-line'><pre>0</pre></td><td class='code'><pre>
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-63]]'><pre>[[@LINE-63]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>}
+
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>int main() {
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>  func<int>(0);
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>  func<bool>(true);
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>  return 0;
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-44]]'><pre>[[@LINE-44]]</pre></a></td><td class='covered-line'><pre>1</pre></td><td class='code'><pre>}
 
-// HTML-ALL: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='code'><pre>// after
-// HTML-FILTER-NOT: <td class='uncovered-line'></td><td class='line-number'><a name='L[[@LINE-46]]'><pre>[[@LINE-46]]</pre></a></td><td class='code'><pre>// after
+// HTML-ALL: <td class='line-number'><a name='L[[@LINE-45]]'><pre>[[@LINE-45]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// after
+// HTML-FILTER-NOT: <td class='line-number'><a name='L[[@LINE-46]]'><pre>[[@LINE-46]]</pre></a></td><td class='uncovered-line'></td><td class='code'><pre>// after

Modified: llvm/trunk/test/tools/llvm-cov/universal-binary.c
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/universal-binary.c?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/universal-binary.c (original)
+++ llvm/trunk/test/tools/llvm-cov/universal-binary.c Tue Aug  9 14:53:35 2016
@@ -1,6 +1,6 @@
 // The coverage reader should be able to handle universal binaries
 
-// CHECK: 100| [[@LINE+1]]|int main
+// CHECK: [[@LINE+1]]| 100|int main
 int main(int argc, const char *argv[]) {}
 
 // RUN: llvm-profdata merge %S/Inputs/universal-binary.proftext -o %t.profdata

Modified: llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp?rev=278152&r1=278151&r2=278152&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp (original)
+++ llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp Tue Aug  9 14:53:35 2016
@@ -182,10 +182,10 @@ void SourceCoverageView::print(raw_ostre
         LineCount.addRegionStartCount(S->Count);
 
     renderLinePrefix(OS, ViewDepth);
-    if (getOptions().ShowLineStats)
-      renderLineCoverageColumn(OS, LineCount);
     if (getOptions().ShowLineNumbers)
       renderLineNumberColumn(OS, LI.line_number());
+    if (getOptions().ShowLineStats)
+      renderLineCoverageColumn(OS, LineCount);
 
     // If there are expansion subviews, we want to highlight the first one.
     unsigned ExpansionColumn = 0;




More information about the llvm-commits mailing list