13bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev//===-- lsan_testlib.cc ---------------------------------------------------===// 23bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// 33bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// The LLVM Compiler Infrastructure 43bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// 53bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// This file is distributed under the University of Illinois Open Source 63bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// License. See LICENSE.TXT for details. 73bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// 83bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev//===----------------------------------------------------------------------===// 93bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// 103bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// This file is a part of LeakSanitizer. 113bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// Standalone LSan tool as a shared library, to be used with LD_PRELOAD. 123bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev// 133bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev//===----------------------------------------------------------------------===// 143bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev/* Usage: 153bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveevclang++ ../sanitizer_common/sanitizer_*.cc ../interception/interception_*.cc \ 163bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev lsan*.cc tests/lsan_testlib.cc -I. -I.. -g -ldl -lpthread -fPIC -shared -O2 \ 173bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev -o lsan.so 183bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey MatveevLD_PRELOAD=./lsan.so /your/app 193bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev*/ 203bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev#include "lsan.h" 213bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev 223bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev__attribute__((constructor)) 233bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveevvoid constructor() { 243bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev __lsan::Init(); 253bc65b1dfb62a5e4f230f1853f10555956b7e4e7Sergey Matveev} 26