是否可以使用callgrind来生成像gcov / lcov给出的输出? 我正在阅读他们的文档无法找到callgrind_annotate的确切选项
答案 0 :(得分:1)
这是不可能的,但callgrind_annotate和kcachegrind应该实现它。但是使用kcachegrind,您可以调用每个函数/方法的计数。
费用/所有来电者标签中的电话列或来电者标签中的计数应该是相关的。
答案 1 :(得分:1)
是的,你可以。使用callgrind --collect-jumps = yes,以及下面链接中描述的工具,您可以获得与gcov相同的信息。它不像lcov那么漂亮,但节省的时间可能是值得的。
http://benjamin-meyer.blogspot.com/2007/12/valgrind-callgrind-tools-part-3-code.html
请注意,即使使用优化的二进制文件,这也能很好地工作,因此您可以通过而不是重新编译--coverage,在构建/测试周期中节省大量时间。
在使用cj_merge使用Benjamin的脚本之前,您还可以合并多个测试运行。