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