SuccessChanges

Summary

  1. [llvm-cov gcov] Compute unmeasured arc counts by Kirchhoff's circuit law (details)
Commit b9d086693b5baebc477793af0d86a447bae01b6f by i
[llvm-cov gcov] Compute unmeasured arc counts by Kirchhoff's circuit law

For a CFG G=(V,E), Knuth describes that by Kirchoff's circuit law, the minimum
number of counters necessary is |E|-(|V|-1). The emitted edges form a spanning
tree. libgcov emitted .gcda files leverages this optimization while clang
--coverage's doesn't.

Propagate counts by Kirchhoff's circuit law so that llvm-cov gcov can
correctly print line counts of gcc --coverage emitted files and enable
the future improvement of clang --coverage.
The file was modifiedcompiler-rt/test/profile/Inputs/instrprof-gcov-multiple-bbs-single-line.c.gcov (diff)
The file was modifiedllvm/test/tools/llvm-cov/gcov-8.c (diff)
The file was modifiedllvm/test/tools/llvm-cov/gcov-4.7.c (diff)
The file was modifiedllvm/include/llvm/ProfileData/GCOV.h (diff)
The file was modifiedllvm/lib/ProfileData/GCOV.cpp (diff)
The file was modifiedllvm/test/tools/llvm-cov/gcov-9.c (diff)