[all-commits] [llvm/llvm-project] 63182c: [gcov] Add spanning tree optimization
Fangrui Song via All-commits
all-commits at lists.llvm.org
Sun Sep 13 00:08:49 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 63182c2ac0b643a60d397274e8a31166fc7243fa
https://github.com/llvm/llvm-project/commit/63182c2ac0b643a60d397274e8a31166fc7243fa
Author: Fangrui Song <i at maskray.me>
Date: 2020-09-13 (Sun, 13 Sep 2020)
Changed paths:
M clang/test/CodeGen/code-coverage-tsan.c
M compiler-rt/test/profile/Posix/gcov-fork.c
M compiler-rt/test/profile/gcov-dump-and-remove.c
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/test/Transforms/GCOVProfiling/atomic-counter.ll
A llvm/test/Transforms/GCOVProfiling/split-indirectbr-critical-edges.ll
Log Message:
-----------
[gcov] Add spanning tree optimization
gcov is an "Edge Profiling with Edge Counters" application according to
Optimally Profiling and Tracing Programs (1994).
The minimum number of counters necessary is |E|-(|V|-1). The unmeasured edges
form a spanning tree. Both GCC --coverage and clang -fprofile-generate leverage
this optimization. This patch implements the optimization for clang --coverage.
The produced .gcda files are much smaller now.
More information about the All-commits
mailing list