zequanwu added a comment.

For those test cases, I could either moving the comments inside a function to 
outside or change `CHECK-NEXT` to `CHECK`

In D83592#2148833 <https://reviews.llvm.org/D83592#2148833>, @vsk wrote:

> Before updating any tests, maybe it's worth doing a quick experiment with 
> comments placed in different contexts, to see whether adding these skipped 
> regions is really sufficient. For example, given:
>
>   1|  for (auto x : collection) {
>   2|    // Explain the loop.
>   3|  }
>
>
> The loop region covers lines 1-3. If we skip the comment range on line 2, 
> does an execution count from the loop region still get picked up? I'd expect 
> it to. It's possible that we need more information from the preprocessor 
> about whether the line is fully comment/whitespace-only.


Here is what I got:

  $ clang -fcoverage-mapping -fprofile-instr-generate /tmp/a.c -Xclang 
-dump-coverage-mapping && ./a.out && llvm-profdata merge -sparse 
default.profraw -o a.profdata && llvm-cov show ./a.out -instr-profile=a.profdata
  main:
    File 0, 1:12 -> 6:2 = #0
    File 0, 2:19 -> 2:25 = (#0 + #1)
    File 0, 2:27 -> 2:30 = #1
    Gap,File 0, 2:31 -> 2:32 = #1
    File 0, 2:32 -> 4:4 = #1
    Skipped,File 0, 3:5 -> 3:15 = 0
      1|      1|int main() {
      2|     11|  for (int i = 0; i < 10; i++) {
      3|       |    // comment
      4|     10|  }
      5|      1|  return 0;
      6|      1|}

For those failed test cases, they are caused by extra `Skipped, File ...` lines 
which invalidate some `CHECK-NEXT`. 
I could either change `CHECK-NEXT` to `CHECK` or moving those checks inside 
function to above the function, since comments outside functions will not be 
tracked.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D83592/new/

https://reviews.llvm.org/D83592



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to