[libcxx] r243574 - Recommit r243503 "[libcxx] Cleanup CMake configuration and integrate with LLVM"

Eric Fiselier eric at efcs.ca
Thu Jul 30 17:35:01 PDT 2015


Looks like the updated commit broke the sanitizer build again. I'm
looking into it but I'm having trouble reproducing.
If anybody has access to the logs I would like to see them.

On Thu, Jul 30, 2015 at 6:33 PM, Eric Fiselier <eric at efcs.ca> wrote:
> FYI I recommitted the working parts of this patch as r243698. I
> removed the "HandleLLVMOptions.cmake" include which was causing all of
> the problems. Please let me know if anything comes up.
>
> /Eric
>
>
> On Thu, Jul 30, 2015 at 4:26 PM, Eric Fiselier <eric at efcs.ca> wrote:
>>> What would/does `-DLLVM_USE_SANITIZER=Thread` do differently than `-DCMAKE_CXX_FLAGS=-
>>> fsanitize=thread` here?
>>
>> Using LLVM_USE_SANITIZER will prevent LLVM from adding certain link
>> flags such as '-Wl,-z,defs', '-ffunction-sections' and
>> '-fdata-sections' and it will force LLVM to provide some level of
>> debug information in RELEASE mode.
>>
>> For sanitizers other than Thread, LLVM_USE_SANITIZER will add extra
>> flags such as '-fsanitize-no-recover'.
>>
>> Also, for libc++, using LLVM_USE_SANITIZER sets the testsuite up to
>> run with the sanitizers as well.
>>
>> On Thu, Jul 30, 2015 at 4:09 PM, Jonathan Roelofs
>> <jonathan at codesourcery.com> wrote:
>>>
>>>
>>> On 7/30/15 12:47 PM, Alexey Samsonov wrote:
>>>>
>>>> I actually support the idea of including LLVM CMake modules from
>>>> libc++ CMake: the logic for building instrumented LLVM and building
>>>> instrumented libc++ should better be listed in a single place, and be
>>>> controlled by LLVM_USE_SANITIZER options: i.e. when we configure
>>>> libc++ from compiler-rt, we should pass -DLLVM_USE_SANITIZER=Thread
>>>> rather than -DCMAKE_CXX_FLAGS=-fsanitize=thread. It's not possible to
>>>> do this right now, though (for instance we build two different
>>>> versions of MSan-libc++), but I think I'd be able to work on that
>>>> once your patch lands and the dust settles.
>>>>
>>>
>>> What would/does `-DLLVM_USE_SANITIZER=Thread` do differently than
>>> `-DCMAKE_CXX_FLAGS=-fsanitize=thread` here?
>>>
>>>
>>> Jon
>>>
>>>
>>> --
>>> Jon Roelofs
>>> jonathan at codesourcery.com
>>> CodeSourcery / Mentor Embedded



More information about the cfe-commits mailing list