[LLVMdev] asan coverage

Kostya Serebryany kcc at google.com
Tue Feb 18 01:00:04 PST 2014


On Tue, Feb 18, 2014 at 12:20 AM, Bob Wilson <bob.wilson at apple.com> wrote:

>
> On Feb 17, 2014, at 5:13 AM, Kostya Serebryany <kcc at google.com> wrote:
> > Then my question: will there be any objection if I disentangle
> AsanCoverage from ASan and make it a separate LLVM phase with the proper
> clang driver support?
> > Or it will be an unwelcome competition with the planned clang coverage?
>
> I don’t view it as a competition, but assuming that we both succeed in our
> plans, LLVM would then end up with two very similar solutions for code
> coverage. Does it really make sense to have two?


It depends. If the two will indeed have the same functionality -- then no.
My understanding about your plans is that the upcoming coverage will
provide "counters" (== how many times a bb/edge was executed).
AsanCoverage produces booleans (== 1, iff a function/bb was executed),
which is less information, but faster.
How much faster -- I can't tell w/o your performance numbers.
For our early users the performance is critical and booleans are
sufficient.

If we end up needing both variants, we may want to keep them similar from
user perspective, e.g. have flag combinations like these:
-coverage=per-edge,counter
-coverage=per-function,counter
-coverage=per-block,counter
-coverage=per-function,boolean
-coverage=per-block,boolean

 --kcc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140218/7c1484ed/attachment.html>


More information about the llvm-dev mailing list