Ping.
On 10/21/24 15:21, Jørgen Kvalsvik wrote:
Ping.
On 10/10/24 10:08, Jørgen Kvalsvik wrote:
Ping.
On 10/3/24 12:46, Jørgen Kvalsvik wrote:
This is both a ping and a minor update. A few of the patches from the
previous set have been merged, but the big feature still needs review.
Since then it has been quiet, but there are two notable changes:
1. The --prime-paths-{lines,source} flags take an optional argument to
print covered or uncovered paths, or both. By default, uncovered
paths are printed like before.
2. Fixed a bad vector access when independent functions share compiler
generated statements. A reproducing case is in gcov-23.C which
relied on printing the uncovered path of multiple destructors of
static objects.
Jørgen Kvalsvik (2):
gcov: branch, conds, calls in function summaries
Add prime path coverage to gcc/gcov
gcc/Makefile.in | 6 +-
gcc/builtins.cc | 2 +-
gcc/collect2.cc | 5 +-
gcc/common.opt | 16 +
gcc/doc/gcov.texi | 184 +++
gcc/doc/invoke.texi | 36 +
gcc/gcc.cc | 4 +-
gcc/gcov-counter.def | 3 +
gcc/gcov-io.h | 3 +
gcc/gcov.cc | 531 ++++++-
gcc/ipa-inline.cc | 2 +-
gcc/passes.cc | 4 +-
gcc/path-coverage.cc | 782 +++++++++
gcc/prime-paths.cc | 2031 ++++++++++++++++++++++++
gcc/profile.cc | 6 +-
gcc/selftest-run-tests.cc | 1 +
gcc/selftest.h | 1 +
gcc/testsuite/g++.dg/gcov/gcov-22.C | 170 ++
gcc/testsuite/g++.dg/gcov/gcov-23-1.h | 9 +
gcc/testsuite/g++.dg/gcov/gcov-23-2.h | 9 +
gcc/testsuite/g++.dg/gcov/gcov-23.C | 30 +
gcc/testsuite/gcc.misc-tests/gcov-29.c | 869 ++++++++++
gcc/testsuite/gcc.misc-tests/gcov-30.c | 869 ++++++++++
gcc/testsuite/gcc.misc-tests/gcov-31.c | 35 +
gcc/testsuite/gcc.misc-tests/gcov-32.c | 24 +
gcc/testsuite/gcc.misc-tests/gcov-33.c | 27 +
gcc/testsuite/gcc.misc-tests/gcov-34.c | 29 +
gcc/testsuite/lib/gcov.exp | 118 +-
gcc/tree-profile.cc | 11 +-
29 files changed, 5795 insertions(+), 22 deletions(-)
create mode 100644 gcc/path-coverage.cc
create mode 100644 gcc/prime-paths.cc
create mode 100644 gcc/testsuite/g++.dg/gcov/gcov-22.C
create mode 100644 gcc/testsuite/g++.dg/gcov/gcov-23-1.h
create mode 100644 gcc/testsuite/g++.dg/gcov/gcov-23-2.h
create mode 100644 gcc/testsuite/g++.dg/gcov/gcov-23.C
create mode 100644 gcc/testsuite/gcc.misc-tests/gcov-29.c
create mode 100644 gcc/testsuite/gcc.misc-tests/gcov-30.c
create mode 100644 gcc/testsuite/gcc.misc-tests/gcov-31.c
create mode 100644 gcc/testsuite/gcc.misc-tests/gcov-32.c
create mode 100644 gcc/testsuite/gcc.misc-tests/gcov-33.c
create mode 100644 gcc/testsuite/gcc.misc-tests/gcov-34.c