[LLVMdev] asan coverage
Bob Wilson
bob.wilson at apple.com
Thu Nov 14 22:14:16 PST 2013
The bit code file produced by the stage 1 compiler for one of the files in the clang driver is corrupt and causes the linker for stage 2 to crash.
On Nov 14, 2013, at 10:13 PM, Kostya Serebryany <kcc at google.com> wrote:
> What are the symptoms?
>
> On Fri, Nov 15, 2013 at 9:37 AM, Bob Wilson <bob.wilson at apple.com> wrote:
>> I’m waiting to see if this fixes the buildbots. Unfortunately, because they were failing all day, there are a bunch of other regressions that have come up, and I’m still working through them. It takes quite a while to run a bootstrapped LTO clang build, so it will take a while longer.
>>
>> I don’t have any other useful information at this point, and I share your puzzlement about how your changes could possibly break the compiler. My only hypothesis is some sort of memory corruption.
>>
>> I will keep you posted.
>>
>> On Nov 14, 2013, at 9:22 PM, Kostya Serebryany <kcc at google.com> wrote:
>>
>>> Also, when are you planing to "reapply the changes or help debug"?
>>>
>>> On Fri, Nov 15, 2013 at 9:15 AM, Kostya Serebryany <kcc at google.com> wrote:
>>>> On Fri, Nov 15, 2013 at 7:26 AM, Bob Wilson <bob.wilson at apple.com> wrote:
>>>>> Hi Kostya,
>>>>>
>>>>> Thanks for the heads-up on this. I haven’t had a chance to look into the
>>>>> details yet, but it looks like these patches may be breaking our
>>>>> bootstrapped LTO build. Our buildbots have been failing all day, and we’re
>>>>> still trying to figure out the problem. I’m going to speculatively revert
>>>>> those changes, since they were the only patches on the buildbot blame list.
>>>>> I will either reapply the changes or help debug the problem.
>>>>
>>>> How could this possibly affect your LTO build?
>>>> The option is off by default.
>>>> Do you have any details, logs, etc?
>>>>
>>>>>
>>>>> —Bob
>>>>>
>>>>> On Nov 14, 2013, at 5:42 AM, Kostya Serebryany <kcc at google.com> wrote:
>>>>>
>>>>> Bob, Justin,
>>>>>
>>>>> I've just committed a poor man's coverage implementation that works with
>>>>> asan.
>>>>> http://llvm.org/viewvc/llvm-project?rev=194701&view=rev
>>>>> http://llvm.org/viewvc/llvm-project?rev=194702&view=rev
>>>>> It provides only function-level boolean coverage (i.e. no counters, just
>>>>> "visited or not"),
>>>>> but is very fast and very simple (no extra sections to the binary file, etc)
>>>>> I've tried it for Chrome's content_shell (huge and heavy binary) and the
>>>>> overhead
>>>>> is negligible at both run-time and shutdown-time.
>>>>>
>>>>> We'll be evaluating this implementation and collecting usage stats.
>>>>> Maybe we want to implement something simple like this in the Clang coverage.
>>>>>
>>>>> --kcc
>>>>>
>>>>>
>>
More information about the llvm-dev
mailing list