[PATCH] Code coverage tool that uses the new coverage mapping format and clang's instrumentation based profiling data

Alex Lorenz arphaman at gmail.com
Wed Jul 9 16:47:46 PDT 2014


Hi bob.wilson, dexonsmith, bogner,

The patch provides the initial implementation of the updated code coverage tool
that uses clang's instrumentation based profiling data (the -fprofile-instr-generate option) and the
new coverage mapping format.

The gcov compatible tool is still there. To invoke the new tool, pass the 'show' or 'report' command as the first argument to llvm-cov.

The show command displays the code coverage information for a set of source code files of a program. Some of its options follow:
  -show-expansions - Show macro expansions
  -show-instantiations - Show template/static functions instantiations
  -show-regions - Show region markers
  -show-line-counts - Show execution counts for each line (enabled by default).

The report command displays a couple of code coverage metrics for files/functions in a concise table.

http://reviews.llvm.org/D4445

Files:
  tools/llvm-cov/CMakeLists.txt
  tools/llvm-cov/CodeCoverage.cpp
  tools/llvm-cov/CoverageFilters.cpp
  tools/llvm-cov/CoverageFilters.h
  tools/llvm-cov/CoverageReport.cpp
  tools/llvm-cov/CoverageReport.h
  tools/llvm-cov/CoverageSummary.cpp
  tools/llvm-cov/CoverageSummary.h
  tools/llvm-cov/CoverageSummaryInfo.cpp
  tools/llvm-cov/CoverageSummaryInfo.h
  tools/llvm-cov/CoverageViewOptions.h
  tools/llvm-cov/FunctionCoverageMapping.h
  tools/llvm-cov/LLVMBuild.txt
  tools/llvm-cov/Makefile
  tools/llvm-cov/SourceCoverageDataManager.cpp
  tools/llvm-cov/SourceCoverageDataManager.h
  tools/llvm-cov/SourceCoverageView.cpp
  tools/llvm-cov/SourceCoverageView.h
  tools/llvm-cov/SourceLanguages.cpp
  tools/llvm-cov/SourceLanguages.h
  tools/llvm-cov/gcov.cpp
  tools/llvm-cov/llvm-cov.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D4445.11234.patch
Type: text/x-patch
Size: 100919 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140709/4cd95ff4/attachment.bin>


More information about the llvm-commits mailing list