[llvm-dev] A new code coverage bot

Vedant Kumar via llvm-dev llvm-dev at lists.llvm.org
Mon Sep 26 13:24:21 PDT 2016




> On Sep 26, 2016, at 10:55 AM, Davide Italiano <davide at freebsd.org> wrote:
> 
> On Mon, Sep 26, 2016 at 3:32 AM, Sean Silva via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
>> 
>> 
>> On Sat, Sep 24, 2016 at 11:30 AM, Vedant Kumar via llvm-dev
>> <llvm-dev at lists.llvm.org> wrote:
>>> 
>>> The bot hiccupped earlier but looks stable now. The average turnaround
>>> seems to
>>> be 3.5 hours.
>>> 
>>> clang:
>>>  http://lab.llvm.org:8080/coverage/coverage-reports/clang/index.html
>>> 
>>> lld:
>>>  http://lab.llvm.org:8080/coverage/coverage-reports/lld/index.html
>> 
>> 
>> 
>> This seems like a bug in the coverage generation:
>> 
>> http://lab.llvm.org:8080/coverage/coverage-reports/lld/coverage/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/llvm/tools/lld/ELF/Symbols.cpp.html#L31
>> 
>> It shows `switch (Body.kind()) {` with zero counts even though code it
>> dominates has counts.

Yeah, this is a bug :|. I already have a report about this.


> Also, I think that at some point we could teach coverage about
> llvm_unreachable() (or the other way around, maybe annotating), so
> that we don't get zero counts as in here, e.g. void TargetInfo::relaxTlsIeToLe()
> http://lab.llvm.org:8080/coverage/coverage-reports/lld/coverage/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/llvm/tools/lld/ELF/Target.cpp.html

I have a bug open about this too. I like the idea of introducing a function
attribute like 'nocoverage'. I'll float the idea on cfe-dev, along with some
alternatives we've considered (new pragma, function blacklists).

vedant


More information about the llvm-dev mailing list