[LLVMdev] LLVM Coverage GCDA Flush API

John Harrison ash.gti at gmail.com
Wed Feb 6 09:43:57 PST 2013


The way `-ftest-coverage -fprofile-arcs` works at the moment it only
flushes via `atexit()`. This patch allows you to flush the coverage at any
point by calling `__llvm_gcov_flush` the same way `__gcov_flush` works for
gcc.

If there is another way of doing this, I might of missed it but I was
looking for `__gcov_flush` and I did not find the equivalent in llvm at the
moment.

--
John Harrison


On Tue, Feb 5, 2013 at 11:26 PM, Bill Wendling <wendling at apple.com> wrote:

> We do have a gcov "flush" implementation. It should be emitted with the
> normal coverage code. Is it not showing up?
>
> -bw
>
> On Feb 5, 2013, at 4:20 PM, John Harrison <ash.gti at gmail.com> wrote:
>
> Hi,
>
> I ran into the bug/feature request that you cannot flush gcov buffers
> while the app is running. They are only called when you exit the program,
> since the flush functions are registered with atexit(). This is the bug
> report: http://llvm.org/bugs/show_bug.cgi?id=12144
>
> I have what I think is a basic implementation of the `__gcov_flush` call,
> although I called this version `__llvm_gcov_flush`. Here is the diff
> https://gist.github.com/ashgti/4685743 if anyone would like to see it.
>
> So, my question is where should I go from here? Do I need to email the
> exact patch to llvm-commits? This touches both the llvm and compiler-rt, so
> I don't know if that changes anything.
>
>
> Thanks,
>
> --
> John Harrison
>  _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130206/050024ed/attachment.html>


More information about the llvm-dev mailing list