[PATCH] AArch64 sanitizer support

Kostya Serebryany kcc at google.com
Tue Feb 11 01:56:58 PST 2014


On Tue, Feb 11, 2014 at 1:28 PM, Renato Golin <renato.golin at linaro.org>wrote:

> On 11 February 2014 05:11, Kostya Serebryany <kcc at google.com> wrote:
> >   This patch is obviously based on the GCC source tree, LLVM source does
> not have 'libsanitizer' directory or a file configure.tgt.
> >   Let me give the first round of comments here, but then please send
> another patch based on the LLMV tree.
>
> Hi Kostya,
>
> Yes, he said so in the first email. ;)
>
> First of all, thanks for your detailed review, we shall continue that on
> phab.
>
My pleasure. I like the fact that the tools will be used on more
architectures.


> After my email to the GCC list trying to get some cooperation going, I
> think this is a good moment to get some rules for GCC contributions to
> the sanitizers.
>
> AFAIU, they have a separate three, which merges from our tree every so
> often. The work they do there, unlike Christophe's patch, is mainly
> around making it compile with GCC.
>
> If their tree is "identical" to ours (modulo GCC stuff), than it
> should be simple to just apply the patch on LLVM's tree.
>

The trees are similar, but not identical.
GCC has libsanitizer where LLVM has lib, tsan for tsan/rtl, include in a
different place, some files that LLVM doesn't have at all.
Don't ask me why :)
So, the simplest way for us to review the patches is if the patches are
actually made as the result of "svn diff --diff-cmd=diff -x -U999999" from
the LLVM tree
(or, simpler, using arc)


>
> I'm guessing something like this:
>
> 1. Develop, test in GCC's sanitizer tree
>
2. Take a diff one directory up (to avoid "libsanitizer")
>
3. Apply the patch on an LLVM sanitizer's tree (inside compiler-rt)
> and re-work the build to LLVM style.
>

4. Test (now, this is the hard part for new archs, but we're biting that
> bullet)
>
5. Submit the patch to LLVM's tree via Phab
> 6. Commit to compiler-rt
> 7. Merge back into libsanitizer
>
> Steps 3 and 4 above are the hard ones and one we'll have to help in
> some way. Maybe buildbots would help, but for new archs, it will come
> after the first patches. I'm sure we'll find a way and lets get that
> documented somewhere, so at least we make it easier for other
> toolchains to use our libraries. ;)
>

SGTM.
Do you want this to be documented as step-by-step at
https://code.google.com/p/address-sanitizer/wiki/HowToContribute
or somewhere else?

--kcc

>
> Makes sense?
>
> cheers,
> --renato
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140211/859ee7ad/attachment.html>


More information about the llvm-commits mailing list