Original discussion: https://gcc.gnu.org/pipermail/gcc/2022-October/239544.html
Some tiny test additions as well as more accurate check for when to split edges for coverage. This patch preserves the edge splitting heuristic except using a slightly more precise comparison, but makes a huge difference for the condition profiling [1]. I compared the .gcov files for the gcc and g++ testsuites with and without this patch and found no differences, and bootstrapped on x86_64-linux. [1] https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598165.html Jørgen Kvalsvik (2): gcov: test switch/break line counts Split edge when edge locus and dest don't match gcc/profile.cc | 18 +++++++++--------- gcc/testsuite/g++.dg/gcov/gcov-1.C | 8 ++++---- gcc/testsuite/gcc.misc-tests/gcov-4.c | 4 ++-- 3 files changed, 15 insertions(+), 15 deletions(-) -- 2.30.2