[LLVMdev] RFC: How can AddressSanitizer, ThreadSanitizer, and similar runtime libraries leverage shared library code?

Kostya Serebryany
Thu, 21 Jun 2012 09:30:34 -0000

On Thu, Jun 21, 2012 at 1:29 PM, Dmitry Vyukov <dvyukov at google.com>
wrote:

> On Thu, Jun 21, 2012 at 1:23 PM, Kostya Serebryany <kcc at
google.com> wrote:
>
>> On Thu, Jun 21, 2012 at 12:52 PM, Chandler Carruth <chandlerc at
google.com>wrote:
>>
>>> On Thu, Jun 21, 2012 at 1:42 AM, Kostya Serebryany <kcc at
google.com>wrote:
>>>
>>>> Can we alter the build system so that when building a run-time
library
>>>> it modifies all .cpp files like this:
>>>>    namespace FOO {
>>>>    <file body>
>>>>    }
>>>> This will give us essentially the same thing, but w/o system
dependent
>>>> object file hackery.
>>>> Maybe we can add a Clang flag to add such a namespace for us?
>>>>
>>>
>>> I think this is essentially what Dmitry was talking about w/ past
>>> STLport experience. It has lots of limitations:
>>>
>>
>> Patching object files still sounds much scarier and harder to port.
>> I'd prefer to find a solution that involves only source files and
maybe
>> clang.
>> Pondering...
>>
>>
>>> - You can't use the normal system standard library
>>>
>> - You have to build the standard library from source
>>> - You can't wrap certain parts of it (operator new, delete, a
few other
>>> things)
>>> - You can't re-use any C libraries (zlib for example)
>>>
>>
>
> Perhaps you are solving a broader problem. But as for asan/tsan, we
> currently need only symbolizer,
>

Not just currently.
I really hope that we won't need anything else.


> it's separable from everything else, and can be made to not use STL.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20120621/c0135988/attachment.html>