[Insight-developers] Define _GLIBCXX_DEBUG on dashboard?
Bradley Lowekamp
blowekamp at mail.nih.gov
Wed May 29 09:04:31 EDT 2013
Sean,
I am currently a little fired up to tack down more bugs.
Do you think you could configure a torture build but turn on only the Core modules?
Brad
On May 28, 2013, at 2:41 PM, Sean McBride <sean at rogue-research.com> wrote:
> On Tue, 28 May 2013 14:16:32 -0400, Bradley Lowekamp said:
>
>> I am looking through more gcc debug flags and I have come across a
>> couple interesting new ones with gcc 4.8:
>>
>> -fsanitize=address
>> Enable AddressSanitizer, a fast memory error detector. Memory access
>> instructions will be instrumented to detect out-of-bounds and use-after-
>> free bugs. See http://code.google.com/p/address-sanitizer/ for more details.
>> -fsanitize=thread
>> Enable ThreadSanitizer, a fast data race detector. Memory access
>> instructions will be instrumented to detect data race bugs. See http://
>> code.google.com/p/data-race-test/wiki/ThreadSanitizer for more details.
>>
>>
>> It looks like they are ported from clang/llvm projects. They looks quite
>> useful!
>>
>> I'd be curios if any one has tried them out in clang or gcc, and what
>> they think of them.
>
> I have used them with clang. They are awesome. They are pretty bleeding edge though, and have some false positives.
>
> The most mature of the -fsanitize flags is the undefined behaviour sanitizer (ubsan). I tried enabling ubsan on my Rogue7 ITK dashboard some months ago, but they report a gazillion errors, many from GDCM and vxl. I turned my attention to fixing VTK since its code is easier to work with (IMHO: templates=ugh).
>
> Address sanitizer (asan) probably won't find too much since you already use valgrind, though asan can find overruns of stack and globals, whereas valgrind only checks heap memory.
>
> Thread sanitizer (tsan) only works with linux right now, so I've only tried it a little bit, but it's promising. But fixing tricky threading issues IMHO should come only after we are valgrind-, ubsan-, and asan-clean.
>
> I'll create a 'torture' dashboard on Rogue7 and we can enable one ubsan flag at a time...
>
> Cheers,
>
> --
> ____________________________________________________________
> Sean McBride, B. Eng sean at rogue-research.com
> Rogue Research www.rogue-research.com
> Mac Software Developer Montréal, Québec, Canada
>
>
More information about the Insight-developers
mailing list