[LLVMdev] AddressSanitizer run-time in tools/clang/runtime/compiler-rt

Kostya Serebryany kcc at google.com
Wed Nov 16 18:24:29 PST 2011


Hi Daniel,

Chris suggested to talk to you about committing the AddressSanitizer (asan)
run-time into the llvm tree (llvm-project/compiler-rt).

Questions:
- What is the preferred name for the directory? (asan? libasan?
address_sanitizer? AdressSanitizer?)
- Should the asan run-time use cmake, or just make, or what? The build is a
bit tricky, especially for tests. We currently use make.
- How would you suggest to do the code review?
   The code of the run-time is ~5 KLOC.
http://code.google.com/p/address-sanitizer/source/browse/#svn%2Ftrunk%2Fasan
   The Apple-specific part may make some Apple experts cry (or maybe not).
   The code uses google's coding style, which is similar, but not
equivalent to the LLVM's one. We check it using cpplint before commits.
   LLVM license is used.
   The tests are ~2.5 KLOC; most of the tests require the clang compiler
with -faddress-sanitizer switch.
   If possible, I'd prefer not to review the patch in a usual way (too
big), but instead have the comments to the files in
http://code.google.com/p/address-sanitizer/source/browse/#svn%2Ftrunk%2Fasan
   Or, alternatively, commit everything as is and then iterate over
individual files.
- The run-time library uses a couple of third_party files (BSD license) to
parse process mapping.
  W/o these files asan will work, but will not produce symbolizable traces.
  Can we include these files as as in a separate directory? (They may be
useful for other tools as well)

http://code.google.com/p/address-sanitizer/source/browse/trunk/asan/sysinfo.cc
- Yet another piece of third-party code (mit license) is used for
Apple-specific work (function overriding). Same question as above apply.

http://code.google.com/p/address-sanitizer/source/browse/trunk/asan/mach_override.c
- test-specific: can I rely on gtest being installed? (fresh version is
required).

Thanks,

--kcc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111116/ad18f82f/attachment.html>


More information about the llvm-dev mailing list