diff options
author | Max Moroz <mmoroz@chromium.org> | 2019-03-14 17:49:27 +0000 |
---|---|---|
committer | Max Moroz <mmoroz@chromium.org> | 2019-03-14 17:49:27 +0000 |
commit | a80d9ce5cfa1d109b895cd4837d0c1bb564775d7 (patch) | |
tree | ad1d817a44bc97824e2839cc1056a6029c83491b /llvm/test/tools/llvm-cov/export_functions.test | |
parent | 0d8df9832846c1fa0fc83282cdac78f2c01e31b2 (diff) | |
download | bcm5719-llvm-a80d9ce5cfa1d109b895cd4837d0c1bb564775d7.tar.gz bcm5719-llvm-a80d9ce5cfa1d109b895cd4837d0c1bb564775d7.zip |
Speeding up llvm-cov export with multithreaded renderFiles implementation.
Summary:
CoverageExporterJson::renderFiles accounts for most of the execution time given a large profdata file with multiple binaries.
Proposed solution is to generate JSON for each file in parallel and sort at the end to preserve deterministic output. Also added flags to skip generating parts of the output to trim the output size.
Patch by Sajjad Mirza (@sajjadm).
Reviewers: Dor1s, vsk
Reviewed By: Dor1s, vsk
Subscribers: liaoyuke, mgrang, jdoerfert, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D59277
llvm-svn: 356178
Diffstat (limited to 'llvm/test/tools/llvm-cov/export_functions.test')
-rw-r--r-- | llvm/test/tools/llvm-cov/export_functions.test | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-cov/export_functions.test b/llvm/test/tools/llvm-cov/export_functions.test new file mode 100644 index 00000000000..03f355f3238 --- /dev/null +++ b/llvm/test/tools/llvm-cov/export_functions.test @@ -0,0 +1,10 @@ +# Test that llvm-cov export produces function data by default and that it can be +# turned off with a flag. + +RUN: llvm-cov export %S/Inputs/report.covmapping -instr-profile %S/Inputs/report.profdata 2>&1 | FileCheck %s +RUN: llvm-cov export %S/Inputs/report.covmapping -instr-profile %S/Inputs/report.profdata -skip-functions 2>&1 | FileCheck -check-prefix=SKIP-FUNCTIONS %s + +CHECK: "functions":[ +SKIP-FUNCTIONS-NOT: "functions":[ + + |