[PATCH] D20993: [lit] Add support for PGO profile and code coverage collection
Vedant Kumar via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 3 16:59:51 PDT 2016
vsk created this revision.
vsk added reviewers: beanz, cmatthews, ddunbar.
vsk added a subscriber: llvm-commits.
It'd be nice to collect profiles for opt, clang etc. while running lit tests.
I've attempted to do this by adding an InstrumentedProcess class to lit. This class is almost a drop-in replacement for subprocess.Popen: whenever you execute an InstrumentedProcess, you have the option of gathering/indexing profiles and cleaning up any intermediate raw profiles.
This patch also introduces a utility script which produces a nice build artifact out of the coverage data + merged profiles. The eventual plan is to set up a bot that makes these artifacts available, so that everyone can take a look at source-based coverage reports for llvm/clang/etc.
http://reviews.llvm.org/D20993
Files:
CMakeLists.txt
cmake/modules/HandleLLVMOptions.cmake
test/Unit/lit.site.cfg.in
test/lit.site.cfg.in
utils/lit/lit/LitConfig.py
utils/lit/lit/TestRunner.py
utils/lit/lit/TestingConfig.py
utils/lit/lit/formats/base.py
utils/lit/lit/formats/googletest.py
utils/lit/lit/util.py
utils/prepare-code-coverage-artifact.sh
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20993.59641.patch
Type: text/x-patch
Size: 18646 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160603/a2babf08/attachment-0001.bin>
More information about the llvm-commits
mailing list