blob: e4f4961c5d4ff7c25840cd5d5f1be8a6bca123ae [file] [log] [blame]
Kostya Serebryany1e172b42011-11-30 01:07:02 +00001AddressSanitizer RT
2================================
3This directory contains sources of the AddressSanitizer (asan) run-time library.
4We are in the process of integrating AddressSanitizer with LLVM, stay tuned.
5
6Directory structre:
Kostya Serebryany1e172b42011-11-30 01:07:02 +00007README.txt : This file.
Alexey Samsonov5b1f0202012-09-06 06:39:02 +00008Makefile.mk : File for make-based build.
9CMakeLists.txt : File for cmake-based build.
Kostya Serebryany1e172b42011-11-30 01:07:02 +000010asan_*.{cc,h} : Sources of the asan run-time lirbary.
Kostya Serebryany1e172b42011-11-30 01:07:02 +000011scripts/* : Helper scripts.
Alexey Samsonov5b1f0202012-09-06 06:39:02 +000012tests/* : ASan unit tests.
13lit_tests/* : ASan output tests.
Kostya Serebryany1e172b42011-11-30 01:07:02 +000014
Alexey Samsonov5b1f0202012-09-06 06:39:02 +000015Also ASan runtime needs the following libraries:
16lib/interception/ : Machinery used to intercept function calls.
17lib/sanitizer_common/ : Code shared between ASan and TSan.
Kostya Serebryany1e172b42011-11-30 01:07:02 +000018
Alexey Samsonov5b1f0202012-09-06 06:39:02 +000019Currently ASan runtime can be built by both make and cmake build systems.
20(see compiler-rt/make and files Makefile.mk for make-based build and
21files CMakeLists.txt for cmake-based build).
Kostya Serebryany1e172b42011-11-30 01:07:02 +000022
Alexey Samsonov5b1f0202012-09-06 06:39:02 +000023ASan unit and output tests work only with cmake. You may run this
24command from the root of your cmake build tree:
Kostya Serebryany1e172b42011-11-30 01:07:02 +000025
Alexey Samsonov5b1f0202012-09-06 06:39:02 +000026make check-asan
Kostya Serebryany1e172b42011-11-30 01:07:02 +000027
Alexey Samsonov5b1f0202012-09-06 06:39:02 +000028For more instructions see:
29http://code.google.com/p/address-sanitizer/wiki/HowToBuild