summaryrefslogtreecommitdiff
path: root/tools/llvm-cov
diff options
context:
space:
mode:
authorYuchen Wu <yuchenericwu@hotmail.com>2013-12-10 01:02:07 +0000
committerYuchen Wu <yuchenericwu@hotmail.com>2013-12-10 01:02:07 +0000
commit30d5ef51e4e20d5114bd80b1ef036d91e4410ae2 (patch)
treebe4749d275aac25267c25edb0161295011197565 /tools/llvm-cov
parent06e68434a5fdc33de8a4b704f63c89a45eb2d699 (diff)
downloadllvm-30d5ef51e4e20d5114bd80b1ef036d91e4410ae2.tar.gz
llvm-30d5ef51e4e20d5114bd80b1ef036d91e4410ae2.tar.bz2
llvm-30d5ef51e4e20d5114bd80b1ef036d91e4410ae2.tar.xz
llvm-cov: Added -a option for block data.
Similar to gcov, llvm-cov will now print out the block count at the end of each block. Multiple blocks can end on the same line. One computational difference is by using -a, llvm-cov will no longer simply add the block counts together to form a line count. Instead, it will take the maximum of the block counts on that line. This has a similar effect to what gcov does, but generates more correct counts in certain scenarios. Also updated tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196856 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-cov')
-rw-r--r--tools/llvm-cov/llvm-cov.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/llvm-cov/llvm-cov.cpp b/tools/llvm-cov/llvm-cov.cpp
index 7d3277aa8b..235670b7ce 100644
--- a/tools/llvm-cov/llvm-cov.cpp
+++ b/tools/llvm-cov/llvm-cov.cpp
@@ -30,6 +30,9 @@ InputGCNO("gcno", cl::desc("<input gcno file>"), cl::init(""));
static cl::opt<std::string>
InputGCDA("gcda", cl::desc("<input gcda file>"), cl::init(""));
+static cl::opt<bool>
+AllBlocks("a", cl::init(false), cl::desc("display all block info"));
+
//===----------------------------------------------------------------------===//
int main(int argc, char **argv) {
// Print a stack trace if we signal out.
@@ -67,12 +70,11 @@ int main(int argc, char **argv) {
}
}
-
if (DumpGCOV)
GF.dump();
FileInfo FI;
GF.collectLineCounts(FI);
- FI.print(InputGCNO, InputGCDA);
+ FI.print(InputGCNO, InputGCDA, GCOVOptions(AllBlocks));
return 0;
}