Skip to content
SPECIFICTION
Get listed

cargo-llvm-cov vs gcov

cargo-llvm-cov

github.com

gcov

gcc.gnu.org

Side by side

Figurecargo-llvm-covgcov
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
Plans published11
Spec score · Test Coverage Tools8.1 (#8)8.5 (#5)
Purposecargo-llvm-cov is a Cargo subcommand that wraps rustc’s LLVM source-based code coverage instrumentation.gcov is a test coverage program used with GCC to find untested parts of programs and guide code optimization.

Plans

cargo-llvm-cov

  • Free / open sourceFree

cargo-llvm-cov pricing →

gcov

  • gcovFree

gcov pricing →

In their own words

cargo-llvm-cov

cargo-llvm-cov is a Cargo subcommand that uses rustc’s LLVM source-based instrumentation to generate code coverage reports. It works with cargo test, cargo run, and cargo nextest through a Cargo-compatible command-line interface, and supports proc-macro UI tests. Line and region coverage are available; branch coverage is optional and requires nightly Rust. Doc-test coverage is also optional and requires nightly features. Reports can be generated as text, HTML, JSON, LCOV, Cobertura XML, or Codecov Custom Coverage format. The project provides GitHub Actions examples for uploading reports to Codecov and a GitLab CI example using Cobertura output. LCOV results can be viewed in VS Code with the Coverage Gutters extension. With compatible Clang and LLVM tools configured, the tool can include C and C++ code linked to a Rust library or binary. It supports Linux, macOS, and Windows, and is licensed under either Apache-2.0 or MIT at the user's choice. Installation requires rustc 1.87 or newer, while running it requires Cargo 1.60 or newer. Branch and doc-test coverage are unstable and have known issues, respectively.

Visit github.com

gcov

gcov is a free test coverage tool used with GCC to show how program code runs during testing. It reports which source lines execute and how often, producing per-line counts in `.gcov` files. Reports can include line, function, branch, condition, prime-path, and basic-block coverage. Options can report branch frequencies, show whether conditions independently affect a Boolean expression’s result, or filter reports to functions matching regular expressions. Output is available as `.gcov` text or gzip-compressed JSON; JSON generation does not require source code. The GCC documentation also describes using gcov with gprof to assess computing time, while warning that optimization can combine source lines and reduce hotspot detail. Before coverage reporting, programs must be compiled with GCC’s `--coverage` option. gcov works only with GCC-compiled code and is not compatible with other profiling or test coverage mechanisms. It runs on Linux, macOS, and Windows, supports the listed languages from C and C++ to Ada, D, and Go, and is self-hosted.

Visit gcc.gnu.org