• Home
  • History
  • Annotate
  • only in /external/compiler-rt/lib/tsan/rtl/
History log of /external/compiler-rt/lib/tsan/rtl/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5d71de26cedae3dafc17449fe0182045c0bd20e8 21-Jul-2014 Stephen Hines <srhines@google.com> Update compiler-rt for rebase to r212749.

Includes a cherry-pick of:
r213309 - fixes umodsi3

Change-Id: Ic7367e3586b6af7ef74bee6a8cf437d5f28d975a
akefile.old
san_clock.cc
san_clock.h
san_defs.h
san_dense_alloc.h
san_fd.cc
san_flags.cc
san_interceptors.cc
san_interface_ann.cc
san_interface_atomic.cc
san_interface_java.cc
san_interface_java.h
san_mman.cc
san_mman.h
san_mutex.cc
san_mutex.h
san_platform.h
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
san_report.cc
san_report.h
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stack_trace.cc
san_stack_trace.h
san_stat.cc
san_stat.h
san_suppressions.cc
san_sync.cc
san_sync.h
san_trace.h
san_update_shadow_word_inl.h
san_vector.h
2d1fdb26e458c4ddc04155c1d421bced3ba90cd0 29-May-2014 Stephen Hines <srhines@google.com> Update compiler-rt aosp/master for 3.5 (r209699) rebase.

Change-Id: I158a30186f0faea2e2400e9dfdd878db2eb40e90
akefile.old
san_clock.cc
san_clock.h
san_defs.h
san_fd.cc
san_fd.h
san_flags.cc
san_flags.h
san_ignoreset.cc
san_ignoreset.h
san_interceptors.cc
san_interface_ann.cc
san_interface_atomic.cc
san_interface_atomic.h
san_interface_java.cc
san_mman.cc
san_mutex.cc
san_mutex.h
san_mutexset.h
san_platform.h
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
san_report.cc
san_report.h
san_rtl.cc
san_rtl.h
san_rtl_amd64.S
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stat.cc
san_stat.h
san_suppressions.cc
san_symbolize.cc
san_symbolize.h
san_symbolize_addr2line_linux.cc
san_sync.cc
san_sync.h
san_vector.h
11f5309ec1bf13430c8a3a16f177d9e8e1190e38 15-Nov-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add support for robust mutexes



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194823 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_rtl.h
san_rtl_mutex.cc
5b2d43008240767872d0fe4913b3e5b784954e43 15-Nov-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add proper cfi directives to assembly code
this allows gdb to unwind through our hacky call



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194803 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
dbd69cc9ccda50efd0305cd0ce9bad50defe4b42 15-Nov-2013 Bob Wilson <bob.wilson@apple.com> Reapply asan coverage changes 194702-194704.

I still don't know what is causing our bootstrapped LTO buildbots to fail,
but llvm r194701 seems to be OK and I can't imagine that these changes could
cause the problem.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194790 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize.cc
ae51c273d55fa172908cf940c238eacec0f73223 15-Nov-2013 Bob Wilson <bob.wilson@apple.com> Speculatively revert asan coverage changes 194702-194704.

Apple's bootstrapped LTO builds have been failing, and these changes (along
with llvm 194701) are the only things on the blamelist. I will either reapply
these changes or help debug the problem, depending on whether this fixes the
buildbots.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194779 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize.cc
68e16eb59c7f654cdb98a2811b3a42612b58a735 14-Nov-2013 Kostya Serebryany <kcc@google.com> [asan] Poor man's coverage that works with ASan (compiler-rt part)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194702 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize.cc
55c7947a742aa72530eef52d902e60e5571ac3cf 12-Nov-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Specify a default value for each common runtime flag

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194479 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
0797ff48ae6a585382b6ff8bda98dfa72874e4d0 12-Nov-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Avoid needless use of stringification (#symver) in INTERCEPT_FUNCTION_VER.

This is a workaround for clang-format bug (PR17874).


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194468 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
a537ea99d3dcc4b2dc0033aee7ad5cb1b378efc7 11-Nov-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Warn if interception fails.

This includes a clang-format pass over common interceptors.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194372 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
f16dc4234098a22a9d0d56f0198d87905481e7fd 07-Nov-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Make StackTrace::Unwind the only public way to unwind a stack trace.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194196 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
e4f9f8a1296768a7a6b6646a3b241a379f4a5e15 02-Nov-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept strptime.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193903 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
8aa3d18712dec51d771523867305133ee41e006d 01-Nov-2013 Dmitry Vyukov <dvyukov@google.com> tsna: do not call user code from within runtime (from fflush)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193880 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
66d91e3356a0c4d7aff3beaaaff3e87bbaec805c 31-Oct-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Add Symbolizer::AddHooks() and use it in TSan and MSan.

Summary:
TSan and MSan need to know if interceptor was called by the
user code or by the symbolizer and use pre- and post-symbolization hooks
for that. Make Symbolizer class responsible for calling these hooks instead.
This would ensure the hooks are only called when necessary (during
in-process symbolization, they are not needed for out-of-process) and
save specific sanitizers from tracing all places in the code where symbolization
will be performed.

Reviewers: eugenis, dvyukov

Reviewed By: eugenis

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D2067

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193807 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_symbolize.cc
san_symbolize.h
26fe5d396c5c99ddcd89b3f8722cea1d4940b9e9 31-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept getline, getdelim.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193730 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
78d77c2638b8e02020737c9b296ce2198e4c58e6 29-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept drand48_r, lrand48_r.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193655 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
f814b43ed659512203439bc8c3f6d468155a1d3f 29-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept sincos, remquo, lgamma, lgamma_r.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193645 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
0b76578bf5bf04a0674ac5a27ade01e3da26a0c9 29-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [tsan] Fix unused variable warnings.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193639 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
5cf2c460e96e593b1c772f1b02d3a217f4837fdc 29-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan/asan: support pthread_setname_np to set thread names



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193602 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
58dc8bef3f86f4f8503359b5146be9d78d7e3ef0 28-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: start the background thread with signals blocked, otherwise it can steal users signals



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193519 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
c1a1ed62228288155459d39194995a36aca4a8a6 26-Oct-2013 Peter Collingbourne <peter@pcc.me.uk> Overhaul the symbolizer interface.

This moves away from creating the symbolizer object and initializing the
external symbolizer as separate steps. Those steps now always take place
together.

Sanitizers with a legacy requirement to specify their own symbolizer path
should use InitSymbolizer to initialize the symbolizer with the desired
path, and GetSymbolizer to access the symbolizer. Sanitizers with no
such requirement (e.g. UBSan) can use GetOrInitSymbolizer with no need for
initialization.

The symbolizer interface has been made thread-safe (as far as I can
tell) by protecting its member functions with mutexes.

Finally, the symbolizer interface no longer relies on weak externals, the
introduction of which was probably a mistake on my part.

Differential Revision: http://llvm-reviews.chandlerc.com/D1985

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193448 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_symbolize.cc
eada1a81188329b3f011311caed12ca4be4f639e 25-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept tmpnam, tmpnam_r, tempnam.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193415 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
3a3805f4923cddef1ac3e71ee52ffc7e30c93bbf 25-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Remove pthread_attr_getstackaddr interceptor.

The function is deprecated.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193409 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
e236dbb5e558b174609d2d13e80685d488c129d8 25-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept pthread_attr_get*.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193405 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
175599be65a5c08551bbe0359a7ca1aadb23ec8b 25-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: do not crash when apparently bogus fd is passed to e.g. close

some tests test libc/filesystem error handling paths (e.g. close(INT_MAX)),
currently such tests fail
with this change they work as expected



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193400 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
aff25aa02098a510eff6eda1a3ec823e5b1fe1aa 25-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept random_r.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193396 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
10362d66fffcd99bd5ced983e4b389dfeba114d0 24-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept shmctl.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193348 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
369a9a6d4297af031227db1c6fedd21ee7033dc1 23-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept ether_* functions.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193241 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
285d458935bc2f9d8ec1109de01ed66185062349 22-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept initgroups.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193158 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
5cee73e486aaa617a9627bb69a6447d3369b62cc 18-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Move statfs/fstatfs to common interceptors and add statvfs/fstatvfs.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192965 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
4d7297daef90ad59446250617b72d184141436fc 18-Oct-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept getmntent, getmntent_r.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192959 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
fc81346321671489e2864f0614bf44b6af5d9bdb 17-Oct-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Move pthread_cond_signal and pthread_cond_broadcast to common interceptors

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192876 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
1a3f1ea833b151fc6554a7f910f8e0185f513a35 17-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add a test for __tsan_default_options()



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192873 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
01a7ce809bf7cc627d73c045c70bcca9891f632c 16-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: move shadow stack from thread descriptors to fixed addresses

This allows to increase max shadow stack size to 64K,
and reliably catch shadow stack overflows instead of silently
corrupting memory.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192797 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_platform.h
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
san_sync.cc
san_trace.h
c842dabb53cc2101cc5449f24921a972d812d7c6 16-Oct-2013 Alexey Samsonov <samsonov@google.com> [TSan] Extend test for reporting globals with races on them

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192782 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
5e2d3776a314629680921abd1d55d89d95a2da90 16-Oct-2013 Alexey Samsonov <samsonov@google.com> Make some pthread_mutex_* and pthread_cond_* interceptors common.

Reviewers: eugenis, dvyukov

Reviewed By: dvyukov

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1937

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192774 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
f719b92eb175f34387ef05d1c4fc1d035b94e621 15-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: introduce __tsan_default_options() function

The function allows to statically setup default values for flags.
The interafece matches what asan/msan provide.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192715 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
06cbed8b8ae64b7ace50c1b4e4eed97a2a8b9965 15-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: use verbosity flag in sanitizer_common code directly
now it's available from common_flags()



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192705 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
6866dba92ac842fc513ba339ba849a953ffb7507 15-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: move verbosity flag to CommonFlags



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192701 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
17b0a3c9b28648ca9af1844111447f231f84c180 15-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix Go build



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192696 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
b48c2b2072c8cc17dc1579a6b20ce6c2a575821d 15-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: use sanitizer::CommonFlags in tsan



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192692 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_rtl.cc
san_symbolize_addr2line_linux.cc
3dbbd850cde5728c35aa4c15a279d858604fc6ee 15-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: resolve symlinks for called_from_lib suppressions



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192688 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
6a135be19fa0cc594fd61f9caf3c0be2b7f1466e 14-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: allow to override OnFinalize() in front-ends that does not support weak functions (Go)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192569 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
67f5544391c338411b0006bda7dc1b852bbdd4fb 11-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: catch more races on file descriptors



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192452 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_interceptors.cc
29cec483b760082e264340072f3245fad37e2255 11-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix epoll_ctl interceptor

Currently data-race-test unittests fail with the following false positive:


WARNING: ThreadSanitizer: data race (pid=20365)
Write of size 8 at 0x7da000008050 by thread T54:
#0 close tsan_interceptors.cc:1483 (racecheck_unittest-linux-amd64-O0+0x0000000eb34a)
#1 NegativeTests_epoll::Worker2() unittest/posix_tests.cc:1148 (racecheck_unittest-linux-amd64-O0+0x0000000cc6b1)
#2 MyThread::ThreadBody(MyThread*) unittest/./thread_wrappers_pthread.h:367 (racecheck_unittest-linux-amd64-O0+0x000000097500)

Previous read of size 8 at 0x7da000008050 by thread T49:
#0 epoll_ctl tsan_interceptors.cc:1646 (racecheck_unittest-linux-amd64-O0+0x0000000e9fee)
#1 NegativeTests_epoll::Worker1() unittest/posix_tests.cc:1140 (racecheck_unittest-linux-amd64-O0+0x0000000cc5b5)
#2 MyThread::ThreadBody(MyThread*) unittest/./thread_wrappers_pthread.h:367 (racecheck_unittest-linux-amd64-O0+0x000000097500)




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192448 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
6eb836f9bd2b96a321ddc7fb5ea08aa65131e61f 11-Oct-2013 Sergey Matveev <earthdok@google.com> [sanitizer] Move the PTHREAD_DESTRUCTOR_ITERATIONS constant to sanitizer_linux.h.

Add a test.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192442 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
117699dc17e35e84ea1179428a245ff6b60aa98f 10-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: minor refactoring

Replace duplicate code snippet with function.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192357 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_mutex.cc
e1ddbf9a458e81125a03fea721997565124294ae 10-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add annotations to ignore synchronization operations

The annotations are AnnotateIgnoreSyncBegin/End,
may be useful to ignore some infrastructure synchronization
that introduces lots of false negatives.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192355 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
san_interface_atomic.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_thread.cc
san_stat.cc
san_stat.h
5b894002c793f71f63a9b9aea1e735572db8477e 04-Oct-2013 Alexey Samsonov <samsonov@google.com> [TSan] Automatically pick up llvm-symbolizer from PATH, as we do in another sanitizers

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191954 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
f8a9c6bd45335b5423e33a8d04a93a44870513a7 04-Oct-2013 Alexey Samsonov <samsonov@google.com> [TSan] Add ValgrindSlowdown to the list of exported symbols

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191952 91177308-0d34-0410-b5e6-96231b3b80d8
san.syms.extra
9fe1d5abd472f3357d5888d1f580fe1866a417f8 04-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix a bug in pthread_once when called from an ignored library
It must set thr->in_rtl = 0 before executing user callback.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191946 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
90b0f1e3ba126bb2e92ab51ef379c98782c23d90 04-Oct-2013 Alexey Samsonov <samsonov@google.com> Refactor the usage of strip_path_prefix option and make it more consistent across sanitizers

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191943 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
92b54796149a8b5995fa49c43f43b709b83c5644 03-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add memory_limit_mb flag

The flag allows to bound maximum process memory consumption (best effort).
If RSS reaches memory_limit_mb, tsan flushes all shadow memory.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191913 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_platform.h
san_platform_linux.cc
san_rtl.cc
14dd980b384ad859099b499e12f320c4791fb674 03-Oct-2013 Dmitry Vyukov <dvyukov@google.com> asan/msan/tsan: move _exit interceptor to common interceptors



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191903 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
c78140f0bd5d6b44a2a30d82879480c592f10d52 03-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept _exit so that we can override exit status



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191898 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.h
san_interceptors.cc
san_stat.cc
san_stat.h
4af0f21c0c98950df1136dbec8824a029ed5bb8e 03-Oct-2013 Dmitry Vyukov <dvyukov@google.com> tsan: ignore interceptors coming from specified libraries

LibIgnore allows to ignore all interceptors called from a particular set
of dynamic libraries. LibIgnore remembers all "called_from_lib" suppressions
from the provided SuppressionContext; finds code ranges for the libraries;
and checks whether the provided PC value belongs to the code ranges.

Also make malloc and friends interceptors use SCOPED_INTERCEPTOR_RAW instead of
SCOPED_TSAN_INTERCEPTOR, because if they are called from an ignored lib,
then must call our internal allocator instead of libc malloc.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191897 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_java.cc
san_interface_java.h
san_rtl.cc
san_rtl.h
san_stat.cc
san_stat.h
san_suppressions.cc
san_suppressions.h
1394be15dfc8a8fc0586d5f5e4302c2c8e917148 27-Sep-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept backtrace, backtrace_symbols.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191516 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
c78773e8c3db9e191e736acdc608e7d81ac42513 27-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: support allocator_may_return_null flag
Fixes https://code.google.com/p/thread-sanitizer/issues/detail?id=29



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191482 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
9a949a8909f652b28e9084de785c848743139fd5 25-Sep-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] A bunch of libc interceptors.

sigwait
sigwaitinfo
sigtimedwait
sigemptyset
sigfillset
sigpending
sigprocmask


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191374 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
c5a385500057ba60c71abbb1d1cc0ee3773be792 24-Sep-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept wordexp.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191305 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
2d2dc4606e66974a69fb53a66f5b1e5501523686 22-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: allow symbolization of non-native PCs, e.g. coming from JIT/JAVA/etc



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191157 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize.cc
39fa68e4076f6a86765ddc69c44bcecb804f0b53 22-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: ignore malloc/free/strdup when called from libjvm


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191153 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
d18865339cebcdaa9fc720a1e960cb452f330835 22-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: ignore all interceptors coming directly from JVM


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191152 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_java.cc
san_interface_java.h
fcb6c9c80f06c241801d22d2258f59e7bb828e7b 22-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: improve diagnostics for incorrect usages of mutexes


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191151 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_mutex.cc
6c21e11b36bb5ebf625463ca6724cf936ef0dc39 21-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept fork syscall



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191144 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
b47d41f310d9069f68135b7b8cc92b09f7436c4d 21-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept close syscall



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191129 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
eb0be61dee155f501bb249287b17d364fedf3507 20-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: handle memory read/write in syscalls


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191074 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
ff90a95c26198e9e794e186365a62511439e0ca0 20-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: allow to ignore memory accesses in malloc and free


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191072 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
9880219fc988d9fd60c8aa21c0f6f0e0d7370dd6 20-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: do not crash when user intercepts fopen()



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191066 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
fae2bff6de8be5a319ca17fd713731ce8a887476 20-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix linking of tsan runtime into dynamic libraries
versioned symbols can not be linked into dynamic library w/o linker script
also simplifies code as side effect



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191056 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
c09250fce4e017c8da696a7f01abc125ba2288ad 19-Sep-2013 Alexey Samsonov <samsonov@google.com> [TSan] Fix -Wempty-body warning

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190993 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
9d4956eca0894f74be09ba7e93cf722e8b400d00 19-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: prevent the following false positive due to __cxa_atexit

WARNING: ThreadSanitizer: data race (pid=29103)
Write of size 8 at 0x7d64003bbf00 by main thread:
#0 free tsan_interceptors.cc:477
#1 __run_exit_handlers <null>:0 (libc.so.6+0x000000050cb7)

Previous write of size 8 at 0x7d64003bbf00 by thread T78 (mutexes: write M9896):
#0 calloc tsan_interceptors.cc:449
#1 ...





git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190989 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
9c1e4f43d24e6a9160552a64374374977ecd6961 19-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: consistently use thr instead of cur_thread() in annotations implementation


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190988 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
652f78a41de2887aedc1b0314b58bb6b622c80ca 19-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: refactor internal IgnoreCtl interface



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190987 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_ann.cc
san_rtl.cc
san_rtl.h
2ec7318dc7ffadf302ecbbaece7d4ce62172ae39 18-Sep-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [tsan] No-op implementation of AnnotateMemoryIsInitialized.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190933 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
7847d77b246635211c3bf465421d49d7af5226c1 10-Sep-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Refactor symbolization interface: use class instead of several functions. Move some code around to get rid of extra source files

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190410 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_symbolize.cc
a09507c38cf9dd9119e5aa9bd6d91383514f857b 10-Sep-2013 Eli Friedman <eli.friedman@gmail.com> Delete unused variables.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190383 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
bd33d3ab168fcbcfe09a3fd6a971994b481e89d0 06-Sep-2013 Kostya Serebryany <kcc@google.com> [tsan] make calloc crash instead of returning 0 on overflow (controlled by the allocator_may_return_null flag)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190135 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
a27512c4e115df4f260501a94b8d343f9ed955af 05-Sep-2013 Kostya Serebryany <kcc@google.com> [tsan] add colors to tsan output

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190045 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
8cde5cb6b7020d079f8db3e389a02df7a007f017 03-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: catch races on condition variables


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189816 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
da506a9ae831f275267ddc9ee74e5474246369b1 03-Sep-2013 Alexey Samsonov <samsonov@google.com> [TSan] fixup for r189791: don't put ; on the newline

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189792 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
a117492b30509744a2b3e1e84c7b56e9ad76c0c9 03-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add suppressions for true/false positives in standard libraries


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189791 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
2e13ca86c9ce926e6fefd528892592326478ac6c 03-Sep-2013 Alexander Potapenko <glider@google.com> [TSan] Move the /proc/self/maps parsing logic to sanitizer_common

Provide a generic way for the tools to generate memory profiles from contents of /proc/self/maps



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189789 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
f061554e8bbfad5e29dcd9e81feb725b75869fa0 02-Sep-2013 Dmitry Vyukov <dvyukov@google.com> tsan: properly intercept pthread_cond functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189767 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
d9760ab05f99451ffe7528a3e03e98ab67e09383 29-Aug-2013 Alexey Samsonov <samsonov@google.com> [TSan] Move build rules a bit to ensure correct dependencies of check-tsan command

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189579 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
e5fa243b20bf5e6a097bc58cbedfe6bed8a9b7d1 27-Aug-2013 Alexey Samsonov <samsonov@google.com> Properly generate lists of exported symbols for sanitizer runtimes

This change adds a Python script that is invoked for
the just-built sanitizer runtime to generate the list of exported symbols
passed to the linker. By default, it contains interceptors and sanitizer
interface functions, but can be extended with tool-specific lists.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189356 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
san.syms
san.syms.extra
9d95475f8adb1e08e45484feb03570ae2be2d0f3 16-Aug-2013 Dmitry Vyukov <dvyukov@google.com> tsan: better report formatting for Go
Say that gorotuine 1 is main goroutine.
Remove excessive new line.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188542 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
cf878fd3e01cd141ad1e095764d64c410c0ce763 13-Aug-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept getaddrinfo
This is necessary to prevent false positives, see:
https://code.google.com/p/thread-sanitizer/issues/detail?id=25



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188291 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
dbac0a4a41f405d10e3dcad3597fe08986605289 13-Aug-2013 Dmitry Vyukov <dvyukov@google.com> tsan/msan: add halt_on_error flag
If halt_on_error==true, program terminates after reporting first error.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188279 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_rtl_report.cc
f109267c5320210e69c1b66add801fd5f2e2a452 13-Aug-2013 Timur Iskhodzhanov <timurrrr@google.com> [*San/RTL] Fix minor breakage

Grumbling: this hasn't been caught by running 'make check-{a,l,t}san check-sanitizer'

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188262 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
3c80c6c574850106481f82b9e23d1c728458d4a9 13-Aug-2013 Timur Iskhodzhanov <timurrrr@google.com> Define SANITIZER_INTERFACE_ATTRIBUTE on Windows and fix all the places where SANITIZER_INTERFACE_ATTRIBUTE or SANITIZER_ATTRIBUTE_WEAK are used

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188261 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface.cc
san_interface.h
san_interface_ann.h
e18e3f07802c420eb4b2da407e148084b75cecc9 12-Aug-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept poll/ppoll.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188177 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
edff34b5175c6759685da82077c99ee2be017667 12-Aug-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept getgroups.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188167 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
224226c18c1ee1f9d187de86bf1c5023cb153c71 08-Aug-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept scandir/scandir64.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187982 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
1204979804868728edb6edfe3ae018465191a85c 08-Aug-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept strerror and strerror_r.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187978 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
45c652e3b3068f5a0626977e4506c71cfdba8ad3 07-Aug-2013 Alexander Potapenko <glider@google.com> [TSan] Let the users suppress use-after-free errors using the "race:" suppressions.

If there's a race between a memory access and a free() call in the client program,
it can be reported as a use-after-free (if the access occurs after the free()) or an ordinary race
(if free() occurs after the access).
We've decided to use a single "race:" prefix for both cases instead of introducing a "use-after-free:" one,
because in many cases this allows us to keep a single suppression for both the use-after-free and free-after-use.

This may be misleading if the use-after-free occurs in a non-racy way (e.g. in a single-threaded program).
But normally such bugs shall not be suppressed.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187885 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
84ba74c10ad43c6dff77302f87efae72623d2a1b 07-Aug-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept sched_getaffinity.

Re-applying with a more reliable test case.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187876 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
212008328600e3b966fe5363e84d7fa824eafe77 07-Aug-2013 David Blaikie <dblaikie@gmail.com> Revert "[sanitizer] Intercept sched_getaffinity."

This reverts commit r187788.

The test case is unreliable (as the test may be run in a situation in
which it has no affinity with cpu0). This can be recommitted with a more
reliable test - possibly using CPU_COUNT != 0 instead (I wasn't entirely
sure that a process was guaranteed to have at least one affinity, though
it seems reasonable, or I'd have made the change myself).

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187841 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
b2dc6137eaa16f45401a6905f5aff1e894ae0975 06-Aug-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept sched_getaffinity.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187788 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
5ec19bc74b52fd962f079086c2fa615d6d3f0864 30-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [msan] Intercept confstr.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187412 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
158ca5237af46076225d5d82a38ae0f733f57f31 18-Jul-2013 Dmitry Vyukov <dvyukov@google.com> tsan: treat SIGSYS as synchronous signal
It is required for chromium sandboxing code.
From the description it seems to be indeed synchronous -- called back on syscall with incorrect arguments,
but seems to be unused in practice. So this should be fine.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@186579 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
48016bcefb6088b464555efe2e606f6a4d01fa00 17-Jul-2013 Dmitry Vyukov <dvyukov@google.com> tsan: disable one more interceptor that causes recursion


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@186497 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
67505a8a0cf9621243ed21b67dfa041224c78e4b 16-Jul-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] move strcpy and strncpy to common interceptors

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@186408 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
fbeab51e1cddbeb73ad0d86d1f650081178c1dd8 16-Jul-2013 Dmitry Vyukov <dvyukov@google.com> tsan: support sigsuspend() call
Intercepting it makes it process pending signal before return.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@186400 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
3fa122e6a8e12db6583793861f6cf776fe1c98a0 09-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Support GLOB_ALTDIRFUNC in glob interceptor.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185932 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
12eb79dd701d9d40551759330a9257316601373b 09-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept realpath and canonicalize_file_name.

Handle realpath(path, NULL) form.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185921 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
ea72768894e32f367607c2142a7dfab603310da0 04-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept tcgetattr.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185626 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
ff6c9fb3ee83529dc28cd60a3797a8b783f3e892 04-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] More interceptors.

bcopy
strtoimax, strtoumax
mbstowcs, mbsrtowcs, mbsnrtowcs
wcstombs, wcsrtombs, wcsnrtombs



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185624 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
801448950d645813efb398575bbc62b48e5b1dfc 02-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept mbtowc, mbrtowc, get_current_dir_name.

Move getcwd to common interceptors.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185424 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
3cae6040ebb4ce14123b8ba000b79b4383dbd48a 02-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept setlocale.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185416 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
9eedf489075c24b2b1ed9f88bf5102066fffdeb1 01-Jul-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept getnameinfo.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185338 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
c8c312adee610a1f9284f567a35562f6f8dc15e0 01-Jul-2013 Alexey Samsonov <samsonov@google.com> Hide mlock/munlock info message under verbosity flag.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185314 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
f2c29a5dc56feed66e81a7fb3f03ef2c5ea76870 29-Jun-2013 Richard Smith <richard-llvm@metafoo.co.uk> Fix typo found by Clang fix for extern "C" function handling.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185234 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
341b9e63f63a8eacf1b699d4c79edee55241ebe6 28-Jun-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept ptrace.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185142 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
1d55ed1fccd11c77af78a174499238776d609cb8 27-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: revert dynamic symbols file to the old incorrect one
full proper list of dynamic symbols crashes old gold (see bug 16468).
the culprit is 'memcpy' function, if it's added to syms file, gold crashes



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185078 91177308-0d34-0410-b5e6-96231b3b80d8
san.syms
66385c9cbdc16c18f9875cc04da70149578cc07a 27-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: remove non-existent functions from syms file


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185077 91177308-0d34-0410-b5e6-96231b3b80d8
san.syms
f2c844564c14e5438494083bf6db304a33673df2 26-Jun-2013 Sergey Matveev <earthdok@google.com> [tsan] Fix build.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184963 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
a52e5c6f371bcc66e89792db1219a557664aab8d 26-Jun-2013 Sergey Matveev <earthdok@google.com> [tsan] Move some suppressions-related code to common.

Factor out code to be reused in LSan. Also switch from linked list to vector.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184957 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_rtl.h
san_suppressions.cc
san_suppressions.h
b5cf98f76fd62236f2945bff17b3cdb4e8a5c2f4 26-Jun-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] readdir and readdir_r interceptors.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184950 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
1dcabd115668f9efba615f7c4e190244a4df361f 25-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add missing __attribute__((visibility("default"))) to interface functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184858 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
6d817380fcfb73f213505c8cd998476532ade3df 24-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: update dynamic export syms file
now it includes proper functions (including interceptors)
and does not include local functions that lead to build failures


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184747 91177308-0d34-0410-b5e6-96231b3b80d8
san.syms
359d7fc7daf099ab8ef9a860564542d2581544aa 24-Jun-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept sysinfo.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184739 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
90a65aa532dc1e60ce3413b05cd2f3bf3e166058 24-Jun-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Fix TSan build.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184736 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
b916e6a9b3efa4907b70a2dcd418c76b044171e7 24-Jun-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept readv, preadv, writev, pwritev.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184717 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
48e54204b82ba982ed7992847413dd0043fdc700 20-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix potential false positive race on fd


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184430 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
e7718bcc1372d25fc21100e403cf41b166d42f9b 17-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: consistently use return pc as top frame pc
always substract 1 from the top pc
this allows to get correct stacks with -O2


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184112 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_ann.cc
san_interface_atomic.cc
san_interface_java.cc
san_rtl_report.cc
0a05e5fa28a7424f8146549057c53b4590f3a251 14-Jun-2013 Alexey Samsonov <samsonov@google.com> [TSan] use InternalMmapVector to store fired suppressions

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183974 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl.h
san_rtl_report.cc
9c4d7a4e5fc1b49757ac733fec72c5e89948fefb 13-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix Windows Go crash


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183898 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
e0c45610e138c9e0b518189b7fa286f4b7ee6474 11-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add -Wno-maybe-uninitialized to Go build script
this is how the rest of the codebase is built


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183738 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
39968339a07d790aadcf27534f92a0de8c0c90fb 10-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: allows to suppress races on global variables


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183672 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_report.cc
san_suppressions.cc
san_suppressions.h
917f62eaa5c2839155f703dee114a767ff81cca5 10-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: disable getaddrinfo() interceptor for tsan (causes recursion)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183649 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
cc08fca1faf3b61fa51f32b2360c978982de6b77 10-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix old gcc warnings


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183645 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
bb5aecb56d84e09106a88aca2d30fbb0b29b2e9c 10-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: more detailed trace for atomic operations (include address and memory ordering)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183643 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
745dd0d296e7bef712df4b5c7f86c72534953738 07-Jun-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] ioctl interceptor.

ASan: disabled by default
MSan: enabled by default
TSan: disabled


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183517 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
48cd12d0398914db195c1a25852b153f3345090d 06-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: use memory access size for Go after all
helps to make range access functions correct and fast


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183418 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
san_update_shadow_word_inl.h
1dc5f39fbcb09734809b73eb16dd64b50d647038 06-Jun-2013 Dmitry Vyukov <dvyukov@google.com> tsan: always strip bottom frame in Go reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183408 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
2e9ffcbc2184f308881fc04ce0799c557b7e5b0f 04-Jun-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Fix __sanitizer_unaligned_* to work with unaligned data types.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183224 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface.cc
san_interface.h
bc33e138d82759074f8333239f96506027731e20 29-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept getpeername.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182844 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
9666d89b628867b2c790d5415f0371fdb4050b0c 29-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Move TSan and MSan recvmsg interceptors to common.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182843 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
24cdfee9776abddcd6c96240e398706667029e0d 29-May-2013 Dmitry Vyukov <dvyukov@google.com> tsan: match "race" suppressions against "race on vptr" reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182842 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
c87088b54f7438d589119d314853a5f3b00d02b5 29-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] modf/modff/modfl interceptors.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182838 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
1f3c2fee395abc36230c445e9ebdba55c4729d35 29-May-2013 Alexey Samsonov <samsonov@google.com> Make InternalAlloc/InternalFree in sanitizer runtimes libc-free by switching to a custom allocator.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182836 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_rtl.h
9d1525ec52430d0b8ffd6d0893b7f5529105b321 29-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Share TSan accept & accept4 interceptors with other sanitizers.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182835 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
2a5c67895d8da24c37701af37e24379f3f3ae838 23-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [tsan] Remove -Wgnu from Makefile.old.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182580 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
f32be42523a199674ea665a499db131591e64e08 23-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept getsockopt.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182574 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
0a2cc37712a452525f9f03b3bf67b1f0a97c8d3a 23-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Interceptors for gethostbyname and friends.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182573 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
9f58c5c60a56d9c39d36b5313dc87ad4bb713163 22-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [msan] Intercept getsockname.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182475 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
447ef19d1b8cebbeaba49e4be22ac721448dcf3e 22-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [msan] getaddrinfo & nested interceptor support.

Multiple connected changes:
- Ignore reads from nested interceptors.
- Check shadow on reads from common interceptors.
- getaddrinfo interceptor.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182466 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
dc563c0efbba5aec49b20a4d74e020feb75d7e8a 21-May-2013 Dmitry Vyukov <dvyukov@google.com> tsan: detect when a thread ends with ignores enabled


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182354 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl_thread.cc
56d3472104dd9fec6578e02f4895f3254e038e8e 21-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept pthread_getschedparam.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182353 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
0b694fcab9b2f33bdd6691cbea4e80a5c27191b1 17-May-2013 Peter Collingbourne <peter@pcc.me.uk> [nolibc] Move all platforms to internal_getpid.

Before, we had an unused internal_getpid function for Linux, and a
platform-independent GetPid function. To make the naming conventions
consistent for syscall-like functions, the GetPid syscall wrapper
in sanitizer_posix.cc is moved to sanitizer_mac.cc, and GetPid is
renamed to internal_getpid, bringing the Linux variant into use.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182132 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_ann.cc
san_platform_linux.cc
san_report.cc
san_rtl.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
0c547de62dc0852a03fae2d868fa571e7f5512b3 17-May-2013 Peter Collingbourne <peter@pcc.me.uk> [nolibc] Begin moving sanitizer_common's libc-dependent code to a separate library

Introduce a new object library, RTSanitizerCommonLibc, which will contain
the subset of sanitizer_common with libc dependencies. RTSanitizerCommon
contains the remainder of sanitizer_common, and is intended to have no
libc dependencies. Begin moving code to RTSanitizerCommonLibc, starting
with sanitizer_common.cc, whose libc-dependent portion is moved to
sanitizer_common_libcdep.cc, the first member of the new library.

This split affects the CMake build only. The makefile build continues
to produce the full sanitizer_common library.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182118 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
a1b3f0d956862266c23526d5c14b5ae2bc274716 17-May-2013 Dmitry Vyukov <dvyukov@google.com> tsan: remove "printing report from signal handler. Can crash or hang" output
it was added to debug mysterious hangs, but it does not seem to happen anymore
now it only clutter up output


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182089 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
8354faeec647dc5b420726fa61616189392d5045 17-May-2013 Dmitry Vyukov <dvyukov@google.com> tsan: introduce recursive mutex lock/unlock java interface
this is required to handle Object.Wait()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182088 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.cc
san_interface_java.h
san_rtl.h
san_rtl_mutex.cc
84b35c4ddf4e9ad23b40bb4c4d9fbc4c0a3d53a2 14-May-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> Add sanitizer syscall hooks to the tool's export lists.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@181790 91177308-0d34-0410-b5e6-96231b3b80d8
san.syms
9578a3ecfc35a264ede1135033398e2a77a6cad6 08-May-2013 Peter Collingbourne <peter@pcc.me.uk> [nolibc] Change internal syscall API to remove reliance on libc's errno.

This change moves to a model where the error value of a system call is
potentially contained in the return value itself rather than being
implicit in errno. The helper function internal_iserror can be used
to extract the error value from a return value. On platforms other
than Linux/x86_64 this still uses errno, but other platforms are free
to port their error handling to this new model.

Differential Revision: http://llvm-reviews.chandlerc.com/D756

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@181436 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_rtl.cc
san_suppressions.cc
24323de08fa8850712d56621bff29dbbbd0285a9 07-May-2013 Sergey Matveev <earthdok@google.com> [sanitizer] Move GetThreadStackAndTls from TSan to sanitizer_common.

Move this function to sanitizer_common because LSan uses it too. Also, fix a bug
where the TLS range reported for main thread was off by the size of the thread
descriptor from libc (TSan doesn't care much, but for LSan it's critical).

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@181322 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
94d8b448e046f3976b13ab79130c389115754022 30-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix deadlock detector table (OK to lock sync var mutex during reporting)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180782 91177308-0d34-0410-b5e6-96231b3b80d8
san_mutex.cc
924047f32220f8da9c308acddbc0a41b952e7a0d 30-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: reverse stack trace for failed CHECK's, this is how we print traces in other places


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180781 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
8ecd0e5d9f389d18653892851c6ffb2f235de4b7 30-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add interface functions for unaligned access, e.g. __sanitizer_unaligned_load16


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180780 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface.cc
san_interface.h
san_rtl.cc
san_rtl.h
46fea91f84311643cbe7c8daf70c7f81656cf3e1 24-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix stack traces for malloc and free


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180184 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
edd2821982c058469dca631a3147fdd42045c48a 24-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: disable getpwuid_r() and glob64() interceptors under tsan, because they cause interceptor recursion if user intercepts fopen()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180182 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
03049413f8978c202a254eb0acfa2f10b9bbe34a 24-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix crash when data race happens on out-of-bounds accesses.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180180 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_rtl_report.cc
san_sync.cc
d36f07c7f2a915616c3f784c5f77f21f1b86817f 23-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: support heap starting at 0x04c0 (used in some custom deplyments)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180116 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
4860c68bafe61e02a84ce8bc76095f5e5e5539e1 23-Apr-2013 Dmitry Vyukov <dvyukov@google.com> tsan: update Go memory mapping, Go now uses 0x00c0 heap base


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180113 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
9530eb721dfacdf2c3f46d408e22d3f7cf8be667 23-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept inet_pton and inet_ntop.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180107 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
103a63ed3fb5511516b55ce1ee4f33290209f3d8 23-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept getgrnam{_r}, getgrgid{_r}.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@180091 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
77330179d0c0fe876f3b89fca9a23c4504b1e692 19-Apr-2013 Alexey Samsonov <samsonov@google.com> [TSan] Allocate fd table in user heap instead of using internal allocator. We need this to catch races on fds.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179841 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
881b677c189e65872fd315a75a0e56f077339189 12-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Add syscall handlers to ASan and TSan runtimes.

ASan checks addressability of syscall arguments. TSan does nothing for now.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179380 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
897a4ae31f5c55255c78854b69b4cd4a4e3c7c39 09-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Interceptors for wait*.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179096 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
a1c2a5547d815a4ce116f04ebd3cef1716ab791c 09-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [msan] Intercept glob() with tests.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179091 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
c9b626e27dc7555d649aae19c8caf4ddd21ea3a7 09-Apr-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] fix TSan tests: remove global ctor from sanitizer_common, run load_shared_lib test only in lit

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179090 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
39fdce1e178196afbbe34d4530c621e58ebab0d4 08-Apr-2013 Chandler Carruth <chandlerc@gmail.com> Revert r179012: "[msan] Intercept glob()."

This was committed without tests and contains obvious bugs. That's not
acceptable. It broke address sanitizer for most programs using glob(3).

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179054 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
6f4c197022901cd961d15a3e5f68eeaab5bcdffa 08-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [msan] Intercept glob().


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179012 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
cc24ec9da75581b1d9b5088950807af5ecc5179e 08-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [tsan] Fix build.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179008 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
7ed46ff7af911da0dd2067734d1408c6986c6657 05-Apr-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use a common mutex to prevent mixing reports from different sanitizers. This fixes PR15516

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178853 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl_report.cc
743d89d5de3b1b6964ffb11cd26e358010c31807 02-Apr-2013 Alexander Potapenko <glider@google.com> [TSan] Add the WTFAnnotateBenignRaceSized implementation and a test for
WTFAnnotateBenignRaceSized and AnnotateBenignRaceSized.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178534 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
e4bdda51b3469aa0f6ef6f6c4656419effa48038 01-Apr-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] More interceptors.

getpwnam, getpwuid, getpwnam_r, getpwuid_r, clock_getres, clock_gettime,
clock_settime, getitimer, setitimer, sigaction (MSan).



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178465 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
d475aa8578f4a1955cdb3e3159eda8b229f8c021 29-Mar-2013 Kostya Serebryany <kcc@google.com> [tsan] restore performance critical inlining in tsan: remove static from ALWAYS_INLINE, use ALWAYS_INLINE USED for critical functions.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178341 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
43c36e4b055f348d6076e6da44f9cd3e4399568f 28-Mar-2013 Timur Iskhodzhanov <timurrrr@google.com> Band-aid fix for the TSan RTL build

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178298 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
b157c67e17c3fc8805c8b7cb590668885680608f 28-Mar-2013 Timur Iskhodzhanov <timurrrr@google.com> Remove all 'static' before ALWAYS_INLINE

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178290 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
abfdbdf5bc7e9d202652fe061acd20c14a4d22f4 28-Mar-2013 Timur Iskhodzhanov <timurrrr@google.com> Make all the ALWAYS_INLINE users Windows-friendly; also, avoid ALWAYS_INLINE INLINE combinations

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178266 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_rtl.h
0fd908cf5a555483633e2d9703932bde18009682 28-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: print statistics about benign race annotations
(total count, unique, matched) if requested with print_benign=1
flag.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178245 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_interface_ann.cc
san_rtl.cc
san_rtl.h
f754eb501d6bd163fff6747716b7703fe45be4b8 27-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: print matched suppressions if print_suppressions=1 flag is provided



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178159 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_flags.h
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_suppressions.cc
san_suppressions.h
be52366ff2500f11133fd6089f349e93bd5f4822 26-Mar-2013 Dmitry Vyukov <dvyukov@google.com> asan/tsan: move strcasecmp() interceptor to sanitizer_common


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178010 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
9ae2883d88dd28b9c5dc862107e6e6d12a35926e 26-Mar-2013 Alexander Potapenko <glider@google.com> [libsanitizer] Unmapping the old cache partially invalidates the memory layout, so add
a flag to skip cache update for cases when that's unacceptable (e.g. lsan).

Patch by Sergey Matveev (earthdok@google.com)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178000 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
8b30c254a63a7421dd81d13dee086a54c4ca134b 25-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept setjmp/longjmp


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177858 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.h
san_rtl.cc
san_rtl.h
san_rtl_amd64.S
san_vector.h
a06fe9183fbffb78798a444da9bc3040fdd444aa 23-Mar-2013 Richard Smith <richard-llvm@metafoo.co.uk> Build and install .syms files alongside sanitizer runtimes. These are used to
specify which symbols are exported to DSOs when the sanitizer is statically
linked into a binary.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177784 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
san.syms
7423c7821ff30043def78c6cbb257bd2f4d9eef6 22-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: return 0 on malloc() failure instead of crashing



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177741 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
4536cb1fa7734133f404acb413589d7a6d314f4a 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: better reporting of thread leaks
1. do not report running threads as leaks
2. aggregate leaked threads by creation stack



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177647 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_report.h
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
0dc47b652dfbe0d61d153eded02bae9487a7b539 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: better reporting for races on vptr
explicitly say "ctor/dtor vs virtual call"



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177640 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface.h
san_interface_inl.h
san_report.cc
san_report.h
san_rtl.h
san_rtl_report.cc
f63dde3594da0dba4c8039f0cb3a4196a76f1aff 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add flag to control symbolizer flush frequency



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177638 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_rtl.cc
5043f05a633b8d2f19ebd3dda961408c69473718 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept abort() to fflush() libc streams



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177637 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
f465bdec3f1a35374be36ed25dd992cb2bb056c0 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: remove bogus CHECK
Asynchronous signal (e.g. SIGABRT) can be received with any value of in_rtl.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177636 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
a38e40fde45acccb124f7419ecbe21ef6cfd306b 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: flush symbolizer cache if not symbolized for more than 5 seconds



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177629 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl.h
san_rtl_report.cc
4219ea38d733f73c96c8740777ee0bb7061cbe0f 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add a comment about magic numbers


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177628 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
4bebe7bab966c82f0a8952f797ed3d490624dc62 21-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: use a single background thread for memory profiler and memory flush (and later for symbolizer flush)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177627 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
236a098869e35b29e938cbb7bd98d8d5b656d47f 20-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: correct sizes of signal-related data structures


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177526 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
423bd20bdca374fcb62a5d16040b6e6133798d56 20-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add missing stat descriptions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177523 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
0ebfc6fb9ba161e994dfd1c3ce898b0895d83c33 20-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: call fflush(0) on exit again


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177522 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_platform_linux.cc
san_stat.cc
san_stat.h
ae4cf313552e707c4a21116ef67c4f389a442aa6 20-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: reduce size of mutexsets from 64 to 16 mutexes
overflow is handled anyway
saves memory because each thread holds 1024 mutexsets



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177520 91177308-0d34-0410-b5e6-96231b3b80d8
san_mutexset.h
82dbc5195ceedba0e1a9aab92d436614cc4b7ff9 20-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: special handling of .rodata (don't try to find races, don't keep shadow, dont' put into traces)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177517 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_rtl.cc
san_rtl_thread.cc
san_stat.cc
san_stat.h
286c914d37d28df611ae083cac40148cf2622ee7 20-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177513 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
9743d74426ae43898e4da55e591b09be18f8aa6e 20-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: move trace header into 0x600000000000 range
eliminat thread "dead info" altogether



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177512 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
30e110edf92303237d471f1cb8e3ad07954fb145 19-Mar-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] More renamed macros.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177401 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
24e13723f8477d8c42ab8b2a7f4f69fc089842f1 19-Mar-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Replace more platform checks with SANITIZER_ constants.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177400 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
ce85e03620f64ce7e4cd0598f2e93090f52a9e99 19-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: flush dead thread info earlier (when another thread is finished rather than new thread is created)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177394 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_thread.cc
8e1c769ed84f4d5cf23904dee1abeec6f125f1ac 19-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: instruct malloc() to consume less memory



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177393 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
723e24f768f5b32c38283ee8d2c4219267af2b4d 19-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: symbolizer "flush caches" support


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177389 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize.cc
san_symbolize.h
b186c1905d471243cf2981ca754397bc16976392 19-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix memory leak



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177387 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
b9bf700ae7fe59e25976e0abe9636150f3a39cd2 19-Mar-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Don't adjust the size of the user-allocated stack.

Moved this code to sanitizer_common.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177383 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
210ce0ee0190170ca6fab6f5d953885ce5f9ac89 19-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: do not allocate sync vars on relaxed atomic operations
helps to reduce memory consumption if an atomic is used only with relaxed ops (stats)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177381 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
f51c3860ce0a1ae81d0dc9da27db0693718db18e 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: smaller memory block headers (32b->16b)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177312 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_rtl.h
san_rtl_report.cc
san_sync.cc
3ce21701b4e1026a4f5157ff9771c533f4e3ef55 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add support for idle threads



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177292 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
74172de3ce25bf52d9d3918c94216f2eef5956e2 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: touch less shadow memory during operations on big memory ranges
greatly reduces memory consumption



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177289 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_rtl.cc
san_rtl_thread.cc
7ac33ac529ff93a57419f5ddf71b1fde68428577 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: mark shadow for thread stack as "don't need" when thread exits



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177288 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
san_rtl.cc
san_rtl.h
san_rtl_thread.cc
5d72fc796f21fb9714722e0006d72213fb300688 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: better memory profiler



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177286 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_rtl.cc
ac1f5cafad90d902056f458ce5aec27b87260a52 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: madvise(DONTNEED) shadow memory on munmap()



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177278 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
e93e5057023de89f1bad5de609efac39efc5da73 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: move implementation out of h file


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177269 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_rtl.h
6af642eaf764434ac6f28f242e7f081156bce9e3 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix clang -Wall build
Clang does not like classes with virtual functions but w/o virtual dtor.
Go does not like libstdc++ (operator delete).



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177267 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_thread.cc
036f9336f7cc7e755287a317f71a7bec7534a7f7 18-Mar-2013 Alexey Samsonov <samsonov@google.com> [TSan] re-apply r177249 lost in edits

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177265 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
46b4a861a5903ca8c92916b25257b3b0a7f8bf39 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix memory leak


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177262 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
2c5284e0f87e101e177a151fae5f557bcf6f664c 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: use StackDepot for thread creation stacks


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177261 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
491852ecf05d927cf543292ded98dcc545799b4d 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix Go build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177260 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl_report.cc
san_rtl_thread.cc
3abf531bc72da7e56bccd84f3c90f25fc837b30b 18-Mar-2013 Dmitry Vyukov <dvyukov@google.com> tsan: use StackDepot in sync object to store creation stacks



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177258 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl_report.cc
san_sync.cc
san_sync.h
ffa4e08ab009e38ab1bf9dadf49628a9e8492ea0 18-Mar-2013 Alexey Samsonov <samsonov@google.com> [TSan] fix undefined variable in debug TSan build

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177249 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
df2ca17ae60fc2116a32fc201deb704e1c8b2114 18-Mar-2013 Alexey Samsonov <samsonov@google.com> [TSan] Use ThreadRegistry::FindThreadContextLocked() to find thread by its stack/tls address.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177248 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
5c889362bb5bc57288ab84e7859774b42c6bb5de 18-Mar-2013 Alexey Samsonov <samsonov@google.com> [TSan] Makefiles: allow configurable paths to clang and FileCheck. Add -fno-rtti flag.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177247 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
2bbd8bec77c2fdb41c5f5b6cb0d83d22bc576650 15-Mar-2013 Alexey Samsonov <samsonov@google.com> [TSan] Switch TSan runtime to use ThreadRegistry class from sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177154 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
san_mman.cc
san_report.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
7cbbb2943527ff852bdace822c8592cfc7e450d7 14-Mar-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Intercept frexp and friends.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177056 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
47a0f6edc48eb6dc46b2e1f203d6783fd7e07505 14-Mar-2013 Alexey Samsonov <samsonov@google.com> [TSan] Add missing header inclusion

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177013 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
f110e356170fbe990b99c0939d77eeaa89b25497 14-Mar-2013 Alexey Samsonov <samsonov@google.com> [TSan] Use __sanitizer_pthread_attr_t in TSan

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177012 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
b114ed83859d8d4964ac2284584733bcd2acf4f6 13-Mar-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Move GetTlsSize code from TSan to sanitizer_common.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@176938 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
45717c9d5e39a434749ae10509111f9df1b2cdf4 13-Mar-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Change MemoryMappingLayout methods to also report memory protection flags (for future use in leak checker). Patch by Sergey Matveev.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@176931 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
8a6b5e551ab8a331f7e7bc4bfcd74926fbffa3f6 25-Feb-2013 Alexey Samsonov <samsonov@google.com> [TSan] Add interceptor for malloc_usable_size()

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@176013 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
san_mman.h
san_stat.h
9358c58d0aaf1b20f17362af354d4c3c1309276a 19-Feb-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Add interceptors for localtime and friends.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175499 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
ce44055cdde85554aa9d18f8a7166bf5df6f9bb3 19-Feb-2013 Kostya Serebryany <kcc@google.com> [tsan] use our own GetEnv instead of libc's getenv

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175498 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
15190a6f0f086737f2fcffe16a58ed42939ef081 14-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix bug in suppression reading (suppressions from file were discarded)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175153 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
eaa0190fc9a510a621d871becce0536950c5468d 13-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: do not imitate memory write on malloc() (Go)
better memory range access functions (put only 1 event to trace) (Go)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175056 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_thread.cc
86edb3b220ec3443cadd918609b3c05b8a6a1e7b 12-Feb-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Missing changes from r174960.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174962 91177308-0d34-0410-b5e6-96231b3b80d8
san_stat.cc
san_stat.h
e47115fa033f3e3bd906dabe8beebc2e29e722d0 07-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix suppress_java logic


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174635 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
03f224835f46801a0e22cc2951d21b67304e0457 07-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept libc __res_iclose
this is required to catch close of file descriptors created in getaddrinfo()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174624 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_platform.h
san_platform_linux.cc
san_stat.cc
san_stat.h
6cf1e6d92200f61bf275ca433c88c60c934e3086 07-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix Go build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174622 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
5ba301dfe9a39c02b3faeb0fa252473f1d6e742c 06-Feb-2013 Alexey Samsonov <samsonov@google.com> [TSan] skip multiple internal frames, if necessary

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174516 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_rtl.h
san_rtl_report.cc
9dbba15ba91b55f87a25feb284e43ab7a9be31b3 06-Feb-2013 Kostya Serebryany <kcc@google.com> [tsan] improve FrameIsInternal

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174506 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
2f588f9d3417aa107ebbbd8830f97501023d3f40 06-Feb-2013 Kostya Serebryany <kcc@google.com> [tsan] print error summary line

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174505 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_rtl.h
san_rtl_report.cc
69563986ca570ce750111a82264d51ddbf4107ba 05-Feb-2013 Alexander Potapenko <glider@google.com> [ASan] Delete the code related to static runtime on OS X.
Nuke lib/interception/mach_override.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174383 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.mk
52c70e5818727521b89f7fc95a2a383df8985ca6 04-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: intercept bind/listen


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174311 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
ee7cc4454421a176d23442382afd9a01d36e7ad4 01-Feb-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] make internal_open have the same interface as libc version

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174187 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_suppressions.cc
c05cbca0988c296068e0da1556bd6af7edd43c69 01-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: catch races on fd in more cases


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174184 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
3285866e45a8521c56ba6209daf3c9f91f844fd3 01-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: even if races between atomic and plain memory accesses are turned off (report_atomic_races=0),
still report races between atomic accesses and free().


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174175 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
0a07b354fe95d50911c620b42fc031868ef15cc1 01-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: say that the memory access is atomic in reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174168 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_report.cc
san_report.h
san_rtl_report.cc
cafed29d27a9a1700aa3c828329f9db8e7592a6b 01-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: remember 2 stack frames for atomics (caller and atomic itself)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174167 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
ddbe2be9dc8b8eb7d40017c077e8392daf708510 01-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add flag to not report races between atomic and plain memory accesses


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174165 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_interface_atomic.cc
33a040af0f32bcf2e5ab25fa2c9b6a81d3a59092 01-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: flip is_write bit in shadow to is_read
this makes calculation of interesting predicates faster


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174164 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
334553ec45d8982df45a6f5e656e068142ecde3f 01-Feb-2013 Dmitry Vyukov <dvyukov@google.com> tsan: detect races between plain and atomic memory accesses


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174163 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_fd.cc
san_interceptors.cc
san_interface.cc
san_interface_atomic.cc
san_interface_inl.h
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_update_shadow_word_inl.h
859778a4e2dffa4024fa3e13b105fd62eca44b1c 31-Jan-2013 Kostya Serebryany <kcc@google.com> [sanitizer] make the error messages from sanitizer_common contain the actual tool name

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174059 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
6bd82d398b0c1e66f957a8553a912c5aa54b9639 31-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: do not check for intersecting memory accesses in Go (all accesses are 1 byte)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174046 91177308-0d34-0410-b5e6-96231b3b80d8
san_update_shadow_word_inl.h
a55fbd57148fa92dd5dcf1c63846d1d23d328c9a 30-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix CPP_WEAK definition (it must be the other way around)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173932 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
216719b23134b9719bbf3e1de4a7d5d351c21fa8 30-Jan-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] include sanitizer_common headers when building interception library

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173930 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.mk
250f221ae0dee295098da8aa631977b6c2ebc99b 30-Jan-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Further split private and public sanitizer headers.

And make msan_interface.h C-compatible.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173928 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface.h
san_interface_ann.h
7c984ca2fc88e2cd82b30c5b3ef361af2a1f2062 30-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: introduce a helped macro CPP_WEAK (Go linker does not support weak symbols)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173917 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_rtl.cc
22881ec8c8a3c01f9b993b186040444b0b5caa50 30-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add OnFinalize() callback for frontends


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173915 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
ba5e99668e3030cc5bab357a04271a1bdbac209c 30-Jan-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] update style checker script and fix namespace style warnings

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173910 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.h
san_interceptors.cc
san_interface_java.cc
san_md5.cc
san_rtl.cc
san_vector.h
793e7610934531fa014aa2c0721d7901bdbae548 29-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: dump stack on internal assert failure


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173799 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_report.cc
31c05ea4d508a476403ba30c1f60ef6190eb46b6 29-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: support for inprocess symbolizer


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173797 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
4e81d0e82a4a327987644a57b6103052a974824f 29-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: remember when we are inside of symbolizer code (required for inprocess symbolizer)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173796 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_symbolize.cc
90a2467c0a0722dcc9443229b8805f0a878ccb56 29-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add IsSymbolizerAvailable() function for querying for presence of internal/external symbolizer


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173783 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize.cc
61ba1b5df34614e0647f5f80d462f6485e817fa5 29-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add interceptor stubs for stat family of functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173782 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
65199f1b253c4bfb225805629217acb8f0b1e185 25-Jan-2013 Kostya Serebryany <kcc@google.com> [sanitizer] fix calloc overflow in asan/tsan/msan

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173441 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
1acfa02e08e6d3316c80f52255cbb7d9e3164128 24-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: return the old fake numbers from malloc stats (some code already depends on them)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173348 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
e5e3a13b43beee99a0d3ec888a0be170a53af934 24-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: suppress reports using both stacks


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173346 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_report.cc
c2b9f1c1d54e857e56462e65155381faddf398df 24-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: allow a front-end to provide default suppressions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173345 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
san_suppressions.h
bdd844cb41718c27ef727a99a236191bc29a3df8 24-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: implement malloc stats querying


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173332 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_mman.h
san_rtl.cc
san_rtl_thread.cc
12530820a4d45e799cdbb83e7b3b1e8ef111650c 23-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add stubs for malloc introspection (similar to what we have in asan)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173255 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
7eca152ea59510d51b01b764fc96852a34e9d6bc 20-Jan-2013 Alexey Samsonov <samsonov@google.com> CMake: use add_compiler_rt_static_runtime to build TSan and MSan runtimes. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172978 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
82a9080eaff95d69b270cd863e9df63e3b4e59ad 18-Jan-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] lint


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172817 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
4f32c0beaa83ffbb84db23d2e6205bee57c39ce1 18-Jan-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Rename 2 files *.h->*.inc as appropriate.

Also add a missing include.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172814 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
2f3aef010fdeadfe7ec995dc534544acb5f357fb 18-Jan-2013 Alexey Samsonov <samsonov@google.com> CMake variables renaming: X86_64->x86_64 I386->i386

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172812 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
996c4f2fa53cce8f9d7b517073f38569460de505 18-Jan-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [sanitizer] Common *scanf interceptors.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172805 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
c20b321d49f0eff60f1394d56e623d8ca94f24d7 18-Jan-2013 Kostya Serebryany <kcc@google.com> [sanitizer] reapply r172719, r172721-172723, r172725, and also fix the warning on Mac.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172791 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
29b37ea8907bc99bf86fab89bf8dc93a520ebac4 17-Jan-2013 Jakob Stoklund Olesen <stoklund@2pi.dk> Revert r172719, r172721-172723, and r172725.

The r172719 patch broke the build on Mac, the others depended on it.

compiler-rt/lib/asan/asan_interceptors.cc:78:13: error: unused function
'SetThreadName' [-Werror,-Wunused-function]
static void SetThreadName(const char *name) {

Orignal headlines:

[asan] attempting to fix the Mac build
[asan] restructure read/pread/pread64 tests
[sanitizer] move write/pwrite/pwrite64 interceptors to common
[msan] start using common interceptors in msan
[tsan] move prctl interceptor from asan to common_interceptors thus enabling it for tsan too

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172763 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
153ba3f41d8f6ad1641ae76cfdf01445cec9db89 17-Jan-2013 Kostya Serebryany <kcc@google.com> [sanitizer] move write/pwrite/pwrite64 interceptors to common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172722 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
0223e7dece2c215ed07e2100e1739fa5bf4d8210 17-Jan-2013 Kostya Serebryany <kcc@google.com> [tsan] move prctl interceptor from asan to common_interceptors thus enabling it for tsan too

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172719 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
7be1cc87ba99036519437518ec8eb9231916241b 17-Jan-2013 Kostya Serebryany <kcc@google.com> [tsan] add write_range/read_range hooks to common interceptors called from tsan (to find races on read/pread/etc)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172714 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
c8033193376c3326478a345c4ae6633d4d2862c6 17-Jan-2013 Kostya Serebryany <kcc@google.com> [sanitizer] a bit more unification for interceptors (merge read/pread/pread64 in asan and tsan)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172713 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
fb917e9069ea44f7103f50c658be84a8f66de56c 14-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: describe stack and TLS addresses


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172393 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
san_report.cc
san_report.h
san_rtl_mutex.cc
san_rtl_report.cc
f4f51f2cc6fa936f0c65577f82e6b62989d546ee 14-Jan-2013 Dmitry Vyukov <dvyukov@google.com> asan/tsan: move blocking mutex from asan to sanitizer_common


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172380 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
175e6407c9d5f8bd0f36abd9c020e3888134ebd3 11-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix compiler warning


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172191 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
5a1f23310cc4a1debae8741653defe620518e612 11-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: symbolize global variables


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172181 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_rtl_report.cc
san_symbolize.cc
san_symbolize.h
f5d4273457ca3d26e6cf658b266cd61062a65101 10-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: add check for invalid fd


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172060 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
a597258803f870d859e2e8b18bbb4fabf4d5a3f8 09-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: detect races on fd passed to epoll_ctl


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171981 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_fd.h
san_interceptors.cc
f17b3822b22751f09549ab563cc5ca61d072b2e8 09-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix crash when user defines own fopen/fileno


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171967 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
san_stat.cc
san_stat.h
bb30741133d0053d242e9aef869c6d19e18cbcea 09-Jan-2013 Dmitry Vyukov <dvyukov@google.com> tsan: fix crash when user defines own fopen/fileno


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171958 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
a54aec8ca2e372b1a841d605d53cab5e336aeb03 27-Dec-2012 Kostya Serebryany <kcc@google.com> [asan/tsan] when unmapping a chunk of user memory, apply madvise(MADV_DONTNEED) to the corresponding chunk of shadow memory. Also update sanitizer_allocator64_testlib.cc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171144 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_rtl.h
491d34b7b75c42ac746ce90cda5a124bda038383 25-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix the code that searches for heap memory block metadata
(the old code won't work with new allocator)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171054 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
421841f28b599a55442d1feafbca0bece5078729 24-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove static reference to glibc internal _dl_get_tls_static_info()
(this breaks RPM packages)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171033 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
b843c1fcc203accc4f37a784cb067904b3e79abe 24-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more defensive file descriptor verification
to prevent assertion failures on code like "write(-1, ...)"


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171030 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
c3d708b5e27a8c952c44155df46a2c56d2aafb5d 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix Java memory move operations and add the test


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170891 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.cc
san_sync.h
dae1251f196f9694d428a04f14987b06112ae52c 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: less debug output


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170889 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_symbolize_addr2line_linux.cc
f4e4f9393ed1cf9cbefaafc6ea8fd9b89fea4bcf 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: update mutex table for java


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170884 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.cc
san_mutex.cc
san_mutex.h
san_stat.cc
san_stat.h
ef86724015d7882c2d3e614e0f72bffe10cb762b 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: java: move shadow memory on GC compaction


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170882 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.cc
25a972873bd4c2143ea85324a47a9573a1d430c8 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add a high-level comment to tsan_interface_java.h


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170881 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.h
4dc30820d34372c419fd44dda2bdb6383a480ce7 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix lint warnings


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170877 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
4de5864fa631dbba52670dea2503b8540390f176 21-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: disable checks for limited address space and unlimited stack for Go


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170876 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
21cc85db95b8fa85a9ff7a403c8a24e345d73baf 20-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: java interface implementation skeleton


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170707 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.cc
san_mutex.h
san_rtl.h
san_stat.h
san_sync.cc
san_sync.h
1d4b96decf8bdf9d07f17a851d64d6b0e57bd4e8 20-Dec-2012 Kostya Serebryany <kcc@google.com> [tsan] fix cmake build

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170689 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
e78b620d10b4c59871480a130c10588a124d05f4 20-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add java interface implementation stub


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170681 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.cc
san_interface_java.h
5d6963b766ed5dd2fcb14dc547ca1ece852ef61e 20-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add Java interface


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170679 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_java.h
b75c67b495ca13801cc629b2c2c9dd0010e54739 19-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix -Wgnu warnings


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170499 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
san_interceptors.cc
4554b7a7b345cd50ff8138b3cda8dd1135b965fa 18-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: intercept fork() to prevent false race reports on fd's


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170433 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_fd.h
san_interceptors.cc
san_stat.cc
san_stat.h
san_sync.cc
11edbbbbf96c11da65bb6e9a2dde303f4bdfde7d 18-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: warn about reports from signal handlers


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170430 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
45d4324bf5b0ec282f0a8f96312233e09a882502 18-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add signalfd() and inotify_init() interceptors


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170429 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_fd.h
san_interceptors.cc
san_stat.cc
san_stat.h
e3178e8fab67e77165978006928228f9be2ce30d 18-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add io_sync flag that controls amount of IO synchronization


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170427 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_flags.cc
san_flags.h
d2f08ffcb97726452f4ba11c199a1e06dc2a7e54 18-Dec-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Expose StackTrace::GetPreviousInstructionPc() to get PC of call instruction from return address

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170424 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
c2234cd922bbd94e276e0bebb08004d63cbc5cf2 18-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: describe "file descriptor" location


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170417 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_fd.h
san_report.cc
san_report.h
san_rtl_report.cc
da3503782901d30bd6e48885055b51b38cf5126c 17-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: say what thread had created a thread in reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170346 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_report.h
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
ed513f69b8017a69214509105e7ec59fec77b468 14-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: synchronize connect->accept calls


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170235 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_fd.h
san_interceptors.cc
983518e360a179d92bdbddebe05a87db3c6cc3c0 14-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add socketpair() interceptor and test


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170184 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
9af645316cdb5e75033a7894e85009791ded7e4b 13-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix compilation with -pedantic


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170131 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.h
d62237995d0fc50697e375ea50f015e996162884 13-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: completely disable deadlock detector for Go
seems to cause some weird stack overflow


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170116 91177308-0d34-0410-b5e6-96231b3b80d8
san_mutex.cc
6535c31c66569df262791f0b56852c496977c977 13-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: support MapThreadTrace() on all platforms


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170113 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_rtl.cc
san_rtl.h
214621f7663896987dc509561c762460226c68c2 12-Dec-2012 Kostya Serebryany <kcc@google.com> [sanitizer] add OnMap/OnUmap callbacks to the allocator interface

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169985 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
d0fa1c1d51f423f90421fe401e2f39f7fa356ec7 12-Dec-2012 Kostya Serebryany <kcc@google.com> [tsan] fix cmake build

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169982 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
703e4e4a133aa6585361a2c6130cfc2874efff75 12-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: explain why pthread_cond_init() interceptor is commented out


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169975 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
84cc1ca0b3a0b5004c4d21cf481773aba0971eb2 12-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add comment to tsan_fd.h file


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169973 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.h
fb8ca8143896ef012d9e2bcb20ff3e4cfed93092 12-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add missing files


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169971 91177308-0d34-0410-b5e6-96231b3b80d8
san_fd.cc
san_fd.h
c78839f0288e5af16101b5fd3b455e1a88cc1c5e 12-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more precise handling of IO synchronization


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169970 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.h
san_stat.cc
san_stat.h
8530e2b953f0b34ecd267a6aba5f155d5c08c5c8 12-Dec-2012 Kostya Serebryany <kcc@google.com> [asan] add sanitizer_common/sanitizer_common_interceptors.h with pread/pread64/read interceptors. Use it in asan. Add asan tests for pread/etc. Add FIXME to tsan/msan interceptors

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169966 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
063e4a54b2b4ccad8b9c40aa869a134c46804068 07-Dec-2012 David Blaikie <dblaikie@gmail.com> Unbreak the C++98 build.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169636 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
68230a12bbd22c9402dd8f9af027fcb2e119f978 07-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: even more fd interceptors + fixes


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169628 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_rtl.cc
san_stat.cc
san_stat.h
ba3ae356e0827bfdb17feaff53e17c3934470404 07-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more fd interceptors + bug fixes + tests


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169621 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
01e96987f557524a351b9f2229e7c920cdb96aad 07-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix pipe interceptors and add 2 tests


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169607 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
ddeb2c354235818494d86827e88a0c2fa44bebcc 07-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add pipe interceptors


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169602 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
3f4e6d9b75fb3f7f2674a31008738cfda9cda9ed 07-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: refactoring is preparation to more precise fd synchronization handling


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169600 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
e10e3e57b5e9d2fe39dd33ddf2b5fba514913300 06-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add new file to cmake


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169502 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
aaaba79d2b40002c1052af0aebfd4d32779b5da6 06-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add some more functions for java filtering


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169501 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
8166bdaa2c92569ce467be7587ae1cc00200a422 06-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add 'free' to java nonsense reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169494 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
ad9da372f962495b3487685232d09390be841b1c 06-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add mutexsets to reports
With this change reports say what mutexes the threads hold around the racy memory accesses.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169493 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interface_atomic.cc
san_mman.cc
san_mutex.cc
san_mutex.h
san_mutexset.cc
san_mutexset.h
san_report.cc
san_report.h
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stat.cc
san_stat.h
san_sync.cc
san_sync.h
san_trace.h
37e6af28435fea112a68d7f1b86b99d24f967b04 05-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix memory barriers in atomics


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169379 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
1ffeded71b960d8a0f018a46a0035203b1484a7a 05-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: provide own implementation of __cxa_guard_xxx functions
that way we allow static linking of libstdc++


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169376 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
36decbf426ea75eef9ce6f6f43b74a66e66795d3 05-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove unnecesary include file


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169370 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interceptors.h
72166ca99c2f8898a7a540e60aac3959cbd959bf 05-Dec-2012 Kostya Serebryany <kcc@google.com> [tsan] get rid of *allocator64* files, moving everything to *allocator* files. This will help with the 32-bit allocator implementation and testing

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169368 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
aecf2e5756c6a0de7c146bef67a6e338c7017d55 04-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: output thread names



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169279 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
san_report.cc
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
503a3af431c3c676fe14a1fade8e901bb95fa7a5 04-Dec-2012 Kostya Serebryany <kcc@google.com> [tsan] add a compile-time error for 64-bit-only support

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169275 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
634f0476879e4509f8520f0f1542a27e0a10ccda 04-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: make atomic operations atomic again


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169273 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface.h
san_interface_atomic.cc
82de9426176ac5ca7d36922648b3dbccabd35834 04-Dec-2012 Kostya Serebryany <kcc@google.com> [tsan] minor interface refactoring

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169267 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
acc2e304d43d9ea0e76ff34a1c586fa63bc3a8d1 04-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix nand operation


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169266 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
258c24b96762f37d625ae94f5152704067d1369c 04-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add __attribute__((visibility("default"))) to interface functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169265 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface.h
san_interface_ann.cc
san_interface_ann.h
san_interface_atomic.h
0415ac00935795a70d87ae662ccad58ea0704537 04-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix trace handling when trace is reused between threads


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169259 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
91ac008b435b879bb366bcf9516c53f2d07c30b1 04-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: better error message if we fail to intercept some function
currently the message is SIGSEGV


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169231 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interceptors.h
6422c32996ec2d65b2ebc77dda36b613dbd1571a 04-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: check if PWD env var is absent
On some programs I see:
failed to open suppressions file '<null>/testing/tsan/v2/tsan.supp'



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169230 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
433c219f8772c35dc4e6bd32bb4131dbc07fdfd6 03-Dec-2012 Dmitry Vyukov <dvyukov@google.com> tsan: describe global vars (module+offset for now)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169122 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_report.h
san_rtl_report.cc
san_symbolize.cc
c8f0a00ede42f83ac79ff63c347ca8ddcda77155 30-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix int overflow and several instances where tid is used with ignore


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169029 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_rtl.cc
san_rtl.h
543b94a5cd102c0795b44d78234d5458eed2c75e 30-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: suppress weird race reports when JVM is embed into the process


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169019 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_interceptors.cc
san_rtl_report.cc
07ba8ef44deb54baa9307298fbffe25ddb30c362 30-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add __libc_memalign interceptor (used by dynamic loader to allocate tls for dlopen'ed modules)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169017 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
92733f94292cd36795238e1a6ed0a99a1dc0454d 30-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: intercept mlock() because of the kernel bug


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168987 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.h
san_interceptors.cc
064c84731c1cf41dcd7195c9380170b9aa6887b6 30-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix bug that leads to spurious use-after-free reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168985 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
6c0fbcae2f03eb78f82969bea61ccdbd2fb58e27 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: explicitly say that failed to restore the stack


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168790 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
3fb70e333087ffac19517ad6559fcba9e43ac5ca 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: address several review comments


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168789 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_flags.h
san_rtl.h
cec6068bbbbfb84285c0856c196c48170924e215 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add log_path parameter (similar to asan)
remove old log_fileno


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168788 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_rtl.cc
d698edc4f74a17048eef3342a9fa42b3ebba802a 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: dynamic history size
introduces history_size parameter that can be used to control trace size at startup


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168786 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_platform_linux.cc
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
san_trace.h
0d35d9d9b1ff686b53918f9fd36797f0911db663 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: change fast state layout in preparation to dynamic traces


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168784 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
385542a2e83a4f37de4232d6c72097c1b7d6d44b 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: move traces from tls into dedicated storage at fixed address
helps to reduce tls size (it's weird to have multi-MB tls)
will help with dynamically adjustable trace size


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168783 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_trace.h
45bdb2ffb2878a6c22493af76256d5950dc0a6a2 28-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add description of memory layouts in different configs


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168777 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
62470003b9a51ec8235724d6cee3d5b1488a5a2e 27-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix macro mess


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168697 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.h
c11e1e0f1401a95d0803317c4cdb83be3938146a 27-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix compilation for dead old compilers (why we are supporting them at all?..)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168693 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
3c50fdd31f89d51333bd8640b968c13102a72bbb 27-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add memory range access functions to public iface


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168692 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface.h
san_interface_inl.h
63da509a995a3cac9bf5495b5cb94c527ff96ce1 27-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add 128-bit atomic operations


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168683 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
san_stat.cc
san_stat.h
3c0c408fe5268058c1347b51235d564cc081e575 27-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: refactor atomic operations implementation
do the atomic operation under the sync object mutex
make acquire/release sync atomic with the operation itself
combine acquire and release into a single acq_rel operation


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168682 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
f5d526fc35524db0479828188e47c130ac09a038 26-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: explicitly mark symbols referenced from assembly as hidden
this allows to build tsan runtime as dynamic library


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168589 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_amd64.S
02b45d2aec154cb392cd6eb85e8dd16ed255351f 26-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add atomic nand operation


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168584 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
san_stat.cc
san_stat.h
e89f1846d58550f919a0ef9081b11d4b0405019d 24-Nov-2012 Kostya Serebryany <kcc@google.com> [asan/tsan] get rid of kPageSize completely in favor of GetPageSizeCached(). This makes the code friendly to more platforms

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168537 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
fc575e52636c803262fc24bacf63a95f731b1314 23-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add failure memory order to atomic compare exchange functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168518 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
f67ec2b6e8d2ae328c27de0b026eea2d6667836e 23-Nov-2012 Kostya Serebryany <kcc@google.com> [asan] get rid of some of the uses of kPageSize. The intent is to get rid of it completely to support platforms with multiple possible page sizes.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168517 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
6fa4cc3a81713a392b2f3e8e7d6ad411e4b3f421 23-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: ensure than func entry/exit are inlined


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168506 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
80d46a2fbc0ae5086511a91119a6e28883b9f880 22-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix more bugs in signal handling


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168497 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
95f50b126cebecc0165fbf6e4c8209c640836271 22-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add missing \n in report


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168496 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
dc2a27ecd65079f1916f5ab53ec646f9a9e61349 21-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: explictly say when we fail to restore a stack trace


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168423 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
0bf04eab1910cc8bf622c20ba08c339dc25e297e 21-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix handling of signals
(do not execute synchronous signals in recursive interceptors)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168421 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
b717f4d415cafbb8526bb33f737b9c07409a73bb 16-Nov-2012 Alexey Samsonov <samsonov@google.com> [TSan] use explicit ctor for BlockingCall

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168150 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
bd9f4963dd50f2fe66ba47a74776dc2665f84d7d 15-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove unused parameter


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168060 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl.h
san_rtl_thread.cc
993e2e0901168c1d44be2a4847c902ce9515d5ca 15-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: switch to 4 shadow cells by default (since that's what we use everywhere now)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168059 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
ee8ee2437b28ab8bf6f48af15b8b446fb5d55e90 15-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: eevn better handling of signals
add interceptor for poll()
in addition process signals in every atomic op
in addition process signals in blocking libc functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168050 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_atomic.cc
san_rtl.h
san_stat.cc
san_stat.h
a7bf04e398c79de110d672fbb27d09c6b50e9870 13-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove unused const



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167835 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
ed77156ba3c5754b4cfe4ca1d6d5d7a4fdfb7835 13-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: better function names


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167834 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_update_shadow_word_inl.h
08adb1815b4958df88f904b9780a055b0d387294 13-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix stats collection


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167832 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
aad173b2f1dae9f88bbffd217ebd46ed1f020bcb 09-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: intercept gettimeofday()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167630 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
93b4cafd631b661b4b612ccdc0938f7f1e1c86d6 09-Nov-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] add sanity checks for communication with external symbolizer

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167617 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
c43f2721a8cdad652b188d0e40f9f091ce35a48f 09-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: switch to new memory_order constants (ABI compatible)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167614 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
e337bf303dde9258bc7e2c87722a270fed96460b 09-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add __tsan_atomicX_compare_exchange_val() function
It's easier to call from compiler module.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167611 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
79c9836f727cbaaf380ccb29e1ef62de83a2e810 08-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: use GORACE env for options for Go


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167575 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
54e0a9a391616bbd2a4f0fd2d01076291274cb98 07-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: do not sleep at exit if there are no other threads


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167533 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_rtl.cc
san_rtl.h
san_rtl_thread.cc
8a326776e41dc68c810ba3719a24328de517d8f9 07-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add flag to suppress all reports (useful for benchmarking)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167532 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_interceptors.cc
san_rtl_report.cc
538f1ba8cb57cfa02d25f8f922feb00975e0a286 07-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more precise handling of finalizers


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167530 91177308-0d34-0410-b5e6-96231b3b80d8
san_clock.cc
san_clock.h
san_rtl.h
san_rtl_mutex.cc
san_rtl_thread.cc
6b641c5e63be45a03f96346886d27c4b4135ddaf 06-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: slightly relax requirements for lazy shadow memory (can overlap and may not be properly aligned)
it's problematic on windows where allocation granularity is much larger than page size



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167466 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
a05fcc1e3e045097f2f1a20798cbe038bbb1d6a9 06-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: lazily allocate shadow for Go



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167464 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_platform_linux.cc
san_platform_mac.cc
san_platform_windows.cc
san_rtl.cc
san_rtl.h
17192a77e1296f0e2fe63088bf80778942121c92 06-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: windows platform support


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167457 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_windows.cc
6da4354df86f535b479d45a4adbba31af4634f46 06-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add shadow mapping for windows


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167455 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
6c51d6e82092ab1541a732a75c5017d2d8b93af0 06-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix constant types



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167453 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
1e99374ba2a4fdec2c0d14197a204b3f75e60565 06-Nov-2012 Dmitry Vyukov <dvyukov@google.com> tsan: don't release disabled clocks



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167451 91177308-0d34-0410-b5e6-96231b3b80d8
san_clock.cc
san_clock.h
b1fe3021eca0843e37878d224ee7f32e32f40d99 02-Nov-2012 Alexey Samsonov <samsonov@google.com> [TSan] finally remove TsanPrintf in favor of Printf from sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167294 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
san_interceptors.cc
san_interface_ann.cc
san_mutex.cc
san_platform_linux.cc
san_platform_mac.cc
san_printf.cc
san_report.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stat.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
f3457cb9c3e1ddbbea07ee97b22ca387687b72e0 02-Nov-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use kStderrFd constant instead of hardcoded 2

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167291 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
b3b21231dd9dfeb34f5f302c879f2d11b6312080 07-Oct-2012 Dmitry Vyukov <dvyukov@google.com> tsan: better message about found races for Go ThreadSanitizer


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165376 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
158c6ac3bb46753db217f9c2c73485811a3a1890 05-Oct-2012 Dmitry Vyukov <dvyukov@google.com> tsan: cache pc's that cause suppressions (this way we do not need to symbolize the reports)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165317 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_suppressions.cc
san_suppressions.h
529cfa05a7dd0cdbe97172045430243181e43522 04-Oct-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add atomic_fetch_sub() and atomic_signal_fence() functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165218 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
san_stat.h
7ba89e5c1f7bd91a3c03d449b073c99c12f554eb 03-Oct-2012 Dmitry Vyukov <dvyukov@google.com> tsan: prepare for migration to new memory_order enum values (ABI compatible)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165106 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
e0023f74ea88efee329f68391b70f8adc6b21617 02-Oct-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix mac build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165004 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_report.h
san_rtl.h
san_rtl_thread.cc
d0a51c02157e8293ea365ad0d429ef8e73d115de 02-Oct-2012 Dmitry Vyukov <dvyukov@google.com> tsan: wait for pending reports before exit


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164999 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
7dccf3f92a867f917ad19f9a6b37bcf93e64b35b 02-Oct-2012 Dmitry Vyukov <dvyukov@google.com> tsan: output tid's in reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164998 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_report.cc
san_report.h
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
97dac9e9a15722f94724a9f61b29518698867ee8 27-Sep-2012 Evgeniy Stepanov <eugeni.stepanov@gmail.com> Quick fix data/bss detection in TSan.

The old way breaks when a module's bss is adjacent to the [heap] vm area.
Both ways are not very reliable, though.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164772 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
7eff311e3e969ae084aadba7d7812591e34d08ab 27-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] move replacement for new/delete back into tsan_interceptors

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164764 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile.old
san_interceptors.cc
san_new_delete.cc
san_rtl.h
68bdcc4db8802c9a6f72d0e684a336ab92a3785b 25-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] fork external symbolizer before starting internal threads

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164600 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
4f0ea398bdc99a4a32402057c23bbcc6d19a8eb4 24-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] Provide replacements for operators new/delete instead of declaring extern C functions with weirdly mangled names (same strategy is used in ASan).

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164487 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile.old
san_interceptors.cc
san_interceptors.h
san_mman.cc
san_mman.h
san_new_delete.cc
san_rtl.h
b610ef8ded4b51b1fa75cca231de05586dd6bfb1 22-Sep-2012 Michael J. Spencer <bigcheesegs@gmail.com> [CMake][tsan] Compile .S files for tsan as C instead of CXX.

Using CXX breaks if you add -stdlib=libc++ to CMAKE_CXX_FLAGS.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164422 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
b2c8d695e8b569058b1a8f76e2d2b270d6bd1232 19-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix gcc4.2.1 warning


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164200 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
85a6dad26739fcd9742eae04b4a539e29889e937 19-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix Go build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164198 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_rtl.cc
3b339c923b4eefa6a58a349c1a7a1d279612215e 17-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] If we detect an unlimited stack, try to re-exec with limited stack

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164021 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
9c6c5a26ec1e49f379515d2403b8b206bf2755c3 17-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: increase internal memory block limit 1GB->4GB


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164011 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
deb0dd86b99170abfdfb39520064c49b3e91b0cc 13-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] fix a typo in CMakeLists

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163796 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
9a46c3b7aeb3a800702b48dd5f8017b0ae7387c7 13-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] Use interface attribute for weak functions that may be overriden by user

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163795 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_rtl_report.cc
79c682624f727408c1e56afc9d561fe0e03f4804 13-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] Add initial support for buidling ThreadSanitizer runtime library with CMake (currently the only supported platfrom is 64-bit Linux). This patch makes 'clang++ -fthread-sanitizer' work for both clang in the build tree and installed clang

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163789 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
2135d8a7f4ba30fe35ed02d5e6ffd59a95b26219 13-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] fix a bunch of warnings reported by pedantic gcc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163788 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_atomic.h
san_mman.h
san_mutex.cc
san_mutex.h
san_platform_linux.cc
san_report.h
san_rtl.h
san_rtl_report.cc
san_stat.h
san_suppressions.h
san_trace.h
223ff76d894fea012086da0413afbf219221d718 11-Sep-2012 Alexander Potapenko <glider@google.com> Revert the lockf() support.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163614 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
591616d323d73b7ea7cd8fea4eec46cedccda27e 11-Sep-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Get rid of dependency between sanitizer_common and asan/tsan runtimes: implement tool-specific Die and CheckFailed functions via callbacks

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163603 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_platform_mac.cc
san_rtl.cc
san_rtl.h
san_rtl_report.cc
0ce948e0887e2c23c6510c32a639da9730bbce25 11-Sep-2012 Alexander Potapenko <glider@google.com> Interceptors for lockf and lockf64, minor calloc() fix.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163602 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
0c2feef1067818db0ede4531a2e71c9b5595d57a 07-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: ignore destruction of global mutexes (causes a lot of non-interesting reports)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163400 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_rtl_mutex.cc
03e23bba872d0745ac6b30ead66631277269ac3d 06-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix code style


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163326 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
0ab628c61594eb80612e5389d9c33da0e0d70c66 06-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: increase max shadow stack size + reduce memory consumption at the same time (by not memorizing full stacks in traces)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163322 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_report.cc
san_rtl.cc
san_rtl_report.cc
san_sync.cc
san_trace.h
8cc1f81b2cc1fa0d4cda4f4635d955aed04c09c8 06-Sep-2012 Alexey Samsonov <samsonov@google.com> [TSan] add support for running external symbolizer other than addr2line (for testing purposes)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163297 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_rtl.cc
san_symbolize.cc
1dc4cf7e253aefa3ce3bd4a1d349a13647e8b2ea 05-Sep-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Remove implicit conversion of InternalScopedBuffer<T> to T*

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163197 91177308-0d34-0410-b5e6-96231b3b80d8
san_printf.cc
san_rtl.cc
san_rtl_report.cc
san_suppressions.cc
san_symbolize.cc
san_symbolize_addr2line_linux.cc
aaac6e206453574d0130f2ae8d743f630d0c0a42 02-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: do not crash with obscure message if a user passes invalid arguments to malloc/free/memset/etc


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163092 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
41e8153c4a29b28bc7c80d35bc1d43438acdd4e7 02-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: insert cfi directives into assembly (not fully working for now, though)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163090 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
san_rtl_amd64.S
0542644830da123babea42f58416487be467c72d 02-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more robust current thread stack restoration


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163089 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
1da1056127d1dbcacdd035eb4149257848f7c4df 01-Sep-2012 Dmitry Vyukov <dvyukov@google.com> tsan: better diagnostics for mutex misuse


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163060 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_report.h
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
9adce675d5978dc8c584bafe724208bbab4ae72a 31-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix crash when users pass insane mutex addresses in dynamic annotations


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163016 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_mutex.cc
848531192777acecf79747dc7c1ffeedf5c1da9f 31-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add "as if synchronized via sleep" feature


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163006 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.cc
san_report.cc
san_report.h
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_stat.h
c00e30a77a2993bed741c00628b1e034ce01e44d 31-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: slightly optimize mutex unlock


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162995 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_mutex.cc
7643a5077a01f56766e2e417d1346e8340710081 31-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more precise handling of atomic_store(memory_order_release)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162994 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
9d6f5a88618689a145eb30674db22dbfa894c8ad 30-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: simplify TSAN_HISTORY_SIZE code


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162905 91177308-0d34-0410-b5e6-96231b3b80d8
san_trace.h
ff35f1d82b4f145b3477ef27a7a2e7b63c486988 30-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: use stack depot to describe heap blocks


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162902 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_mutex.cc
san_mutex.h
san_report.cc
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
5f0297b5176f6937c59c0180282ba1eee48a1c28 29-Aug-2012 Kostya Serebryany <kcc@google.com> [tsan] fix tsan's Makefile.old -- our build bot still uses it (hopefully, will soon migrate to cmake completely)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162832 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
e1f5dac9296df08ff83ae5fca51ce4da995b55cf 27-Aug-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Rename ProcessMaps to MemoryMappingLayout and fix Windows build by providing stub implementation

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162671 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
ffad0c4bc88056f5c9360af792ef2e6c1e8259bf 23-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: allow to override per-thread event trace size
useful if you don't see the second stack trace


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162456 91177308-0d34-0410-b5e6-96231b3b80d8
san_trace.h
14c8bd7250742749e44e306c02a56cf47ad1db82 22-Aug-2012 Alexey Samsonov <samsonov@google.com> [TSan] switch tsan to using InternalScopedBuffer from sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162351 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.h
san_printf.cc
san_rtl.cc
san_rtl_report.cc
san_suppressions.cc
san_symbolize.cc
san_symbolize_addr2line_linux.cc
55e711ed818d7553d62eba4b3a2fad3e2723f697 18-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: proper handling of linker initialized mutexes


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162169 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_mutex.cc
san_sync.cc
a911c6f1d0c6f8b7e175bd36e7044d79cdcf5153 17-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: Non-executable stack for hand-coded assembly


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162112 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_amd64.S
bbbb20b7212155ebc5b5b4ee1c68c987dcf30320 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: improve Go report format + fix build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162042 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_rtl.cc
san_rtl_thread.cc
fd513907acd3e2eaa02070edaa24df66648dc2ac 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add flag to disable reporting of destruction of locked mutexes (some programs use that on a regular basis)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162024 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_rtl_mutex.cc
332c62b52b3603be872b28bd3ea5e739aa28cd05 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: better diagnostics for destroy of a locked mutex + a test


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162022 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_sync.cc
san_sync.h
2e933fc077595b18de37d2ed44e8f14c6053a432 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: support for linker initializer mutexes with static storage duration


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162021 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_mutex.cc
san_sync.cc
san_sync.h
539121b7be56780045ba1e9c0aea826626cb638a 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix COMPAT shadow mapping once again


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162020 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
c20e9ba760a93706c9160133cdcce62194f9694f 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: implement RWLOCK annotations


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162019 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_ann.cc
san_rtl.h
san_rtl_mutex.cc
san_stat.h
eee7f733f047bbd58b0787e6c492fd1bed375cc0 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix COMPAT shadow mapping for new memory allocator


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162018 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_rtl.h
64310b28c4e418573ddfda2dbedd702ccf20a051 16-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: refactor cur_thread() -> thr


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162017 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
9bbc579e11900741551b81b5e91d22ca47d70b26 15-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: store sync objects in memory block headers + delete them when the block is freed


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161959 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_sync.cc
26af89330051837bab68dcf25cf669c194b4e310 15-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: provide function that imitates write to a region but does not detect races


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161957 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_rtl.h
2e87051d136db3150a3ca322d8862f92b0a684bb 15-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: switch to new allocator


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161953 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
san_mman.cc
san_mman.h
san_platform.h
san_platform_linux.cc
san_rtl.cc
san_rtl.h
san_rtl_thread.cc
de782581b15534c627bf19589d33ceff5a3e5c78 12-Aug-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix parameter type for pwrite64() interceptor



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161741 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
3dc47e5969979689dbf5f3743f501cd2beac03cc 01-Aug-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Make ASan/TSan sources depend on headers from interception library

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161113 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.mk
8f88dd2f955e8f73944abb591d15a99b4e6b0358 30-Jul-2012 Alexey Samsonov <samsonov@google.com> [TSan] delete trailing spaces

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160955 91177308-0d34-0410-b5e6-96231b3b80d8
san_clock.cc
9d150bdb433ddd092073dabd87ba15aa176603a1 28-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add ReleaseStore() function that merely copies vector clock rather than combines two clocks
fix clock setup for finalizer goroutine (Go runtime)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160918 91177308-0d34-0410-b5e6-96231b3b80d8
san_clock.cc
san_clock.h
san_rtl.h
san_rtl_mutex.cc
san_rtl_thread.cc
c1527fd9915bd4b6032d799170ceb9195cf840ab 27-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tasn: do not remember stack traces for sync objects for Go (they are not reported anyway)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160861 91177308-0d34-0410-b5e6-96231b3b80d8
san_sync.cc
93ec44001a5a5a0f5dfd8321401175730bcbacc9 27-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove unnecessary and wrong include


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160860 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
87dbdf5fd6cb9f1b90a0a97b7675bd8cad8a0264 25-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: allow environment to override OnReport() and OverrideFlags()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160728 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_rtl_report.cc
8f1104cbf1af615242e14c66d1b3dd9e8437b152 25-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: suport for Go finalizers


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160723 91177308-0d34-0410-b5e6-96231b3b80d8
san_clock.cc
san_clock.h
san_rtl.h
san_rtl_thread.cc
853733e772b2885d93fdf994dedc4a1b5dc1369e 24-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: align report style with Go internal format


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160672 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
43046e0b628df7eaaec266a4b6c9e9a998b02120 24-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: output goroutine creation stack


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160670 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
5164ad434eccbfa9ad8097cf25146626313643f9 18-Jul-2012 Alexey Samsonov <samsonov@google.com> [TSan] fix confusing error message in CheckFailed

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160435 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
6fbecdd97512bd7d9ccef130e99650d446b50444 17-Jul-2012 Alexey Samsonov <samsonov@google.com> [TSan] cleanup header comments

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160359 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_mac.cc
san_rtl_report.cc
san_trace.h
25d1c799087af5757ab6efc4a77558565fb1744a 16-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: use dynamic shadow stack for Go


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160288 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_mman.h
san_rtl.cc
san_rtl.h
san_rtl_thread.cc
san_sync.cc
san_trace.h
e716b602e8066ede297b5e0be4d23720c26cdcf9 16-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: increase number of dead threads for Go


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160283 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
3f24d6386cea638f5d4bc1694d1de02917988bcd 16-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix build


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160267 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_platform_mac.cc
5b266cb19c9c18ab5da77441de5cb45f0f4abac1 16-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: port Go runtime to Darwin


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160266 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_mac.cc
b93c3d5badc4066120edf3ed1c515cdd516a8776 13-Jul-2012 Kostya Serebryany <kcc@google.com> [tsan] use internal_strnlen in strncpy interceptor (the bug found while booting chromium)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@160171 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
f3be7069465c15b4c3f6719423d6075b0cf5a871 09-Jul-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move flag parsing routines (and unit tests) from tsan runtime to common runtime.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159928 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
cb3a6b82ae406613f8870519d2acda1ee1c8f2b5 06-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: Go language support fixes


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159856 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_rtl_report.cc
c510a2f264a22ff60333fc48e5fa12d41cefba3c 06-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: Go lang: symbolize stack traces


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159827 91177308-0d34-0410-b5e6-96231b3b80d8
san_report.cc
san_rtl_report.cc
b78caa645f70eff2f037f1f8bb43ca9129dbd8d9 05-Jul-2012 Dmitry Vyukov <dvyukov@google.com> tsan: Go language support


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159754 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_mutex.cc
san_platform.h
san_platform_linux.cc
san_rtl.cc
san_rtl.h
san_rtl_thread.cc
bc12f5d836b161b881de91e29548cfbc014243a3 05-Jul-2012 Alexey Samsonov <samsonov@google.com> [TSan] add a new option 'use_internal_symbolizer' that allows to choose between addr2line-based and llvm-based symbolizer w/o having to rebuild the runtime. This is hopefully a temporary solution that simplifies testing process. In the end, we should leave a single symbolizer.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159730 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_symbolize.cc
san_symbolize.h
san_symbolize_addr2line_linux.cc
c04d8b39795b8faab2c172da59462f4e54823533 29-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan/asan: unify ScopedLock


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159438 91177308-0d34-0410-b5e6-96231b3b80d8
san_mutex.cc
san_mutex.h
fce5bd4cc29fddb5e8f0cb9c12df7c10187a991d 29-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan/asan: unify atomics (move atomics from tsan to sanitizer_common)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159437 91177308-0d34-0410-b5e6-96231b3b80d8
san_atomic.h
san_defs.h
san_interceptors.cc
san_mutex.h
san_rtl.cc
san_sync.h
6e4815579e5b48b48de092afcc3b092dfb97df5c 29-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: replace struct copies where clang inserts memcpy() calls with explicit internal_memcpy() calls


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159431 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
065c4ac846589d04436cb7f19f938ff42035313e 29-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove own memset/memcpy/memcmp (too messy)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159430 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
san_interceptors2.cc
43b0461ceba5469a8c135fbdd39037b645392588 28-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: clear shadow for ucontext, because it's visible to user


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159365 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
1fc03d50a87302689482efa24b045a393097b6c3 28-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix crashes if signal is caught during thread bootstrap or shutdown


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159361 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_rtl.h
san_rtl_thread.cc
df50545d0a871f1ad509a8dbad77de1a15e1fc50 28-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add missing file (forgot to svn add in r159294)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159341 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors2.cc
d51a1a10cba87be50e9ada9fa21337c387edb237 27-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: prevent insertion of unwanted memset/memcpy/memcmp into runtime


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159294 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_interceptors.cc
san_md5.cc
san_rtl_report.cc
san_rtl_thread.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
san_vector.h
a5562db12c5331433407ac21602086f34561c25c 27-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remember and pass original ucontext to signal handlers (instead of a fabricated one)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159278 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
e96366613372e616fc6f2209b81b776f931a2c58 27-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: refactor signal handling code (move some definitions out of common header)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159266 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_mman.h
san_rtl.h
7a72b4a0f04f7f043ab86396b0faa552f55aa857 27-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: check that signal handlers do not spoil errno.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159264 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_report.cc
san_report.h
bb54ae3fd53524aaae7f5f892a7bd62884970e37 27-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: close all file descriptors after fork()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159263 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize_addr2line_linux.cc
bf3471043da3a9af36a801c7ad54dc93d4d427cd 25-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove internal allocator, switch to sanitizer_common one.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159141 91177308-0d34-0410-b5e6-96231b3b80d8
san_allocator.cc
san_allocator.h
san_mman.cc
9ad7c32720dfa1287f8cfd481e5d583435178cae 22-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: do not call malloc/free in memory access handling routine.
This improves signal-/fork-safety of instrumented programs.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158988 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_mman.cc
san_rtl.cc
san_rtl.h
san_sync.cc
san_sync.h
san_trace.h
de08c02aa3007a590bfb7d43f31d5b1a0e7d337c 19-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Renaming: SNPrintf -> internal_snprintf (and move it to sanitizer libc)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158710 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
86cdf2d60b0efbfc5e37c519baff03362856d1a5 19-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] Add a comment that tsan_flags.h may be included in the user code, and therefore shouldn't include other headers from TSan or common sanitizer runtime. User may need tsan_flags.h to provide its implementation of __tsan::OverrideFlags

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158708 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.h
84902c716abf9ba0dc6e7b1cd0522759f29b3179 18-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] kill some linux-specific code in favor of code in common runtime: reuse wrappers for mmap routines, ProcessMaps iterator, thread stack calculation

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158657 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
0969bcf2c936126b1f6e636b978aade8fc207437 18-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move different wrappers from TSan to common sanitizer runtime

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158655 91177308-0d34-0410-b5e6-96231b3b80d8
san_mutex.cc
san_platform.h
san_platform_linux.cc
san_rtl.cc
san_suppressions.cc
c925697df6626bb0ea27ea96539bf0580f8f3d3d 15-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move all the rest re-implementations of libc functions from ASan runtime to common sanitizer runtime

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158519 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
88207ab15125e2f1e9b3d541b735b2b8aba9b6d9 15-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use DEFINE_REAL macro in TSan runtime to call libc implementations of functions. Move strchr to sanitizer_libc.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158517 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_interceptors.cc
san_md5.cc
san_platform_linux.cc
san_rtl_report.cc
san_rtl_thread.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
san_sync.cc
san_vector.h
3fb44411ae1b9c2a277c04b3f379554290832009 14-Jun-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix COMPAT mapping to not produce false reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158473 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
san_platform.h
327c1c17d9557ed8b197f732c8a070fd6ba821b5 14-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Move internal_memcmp to common sanitizer libc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158450 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
98c8780c22685af63c57ce5312a9ed730ee3408d 09-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] use efficient real_memcpy inside runtime

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158260 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_interceptors.cc
san_md5.cc
san_rtl_thread.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
san_sync.cc
san_vector.h
4fac1482179c6bfd84fa129560caa43f341c7336 08-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] add internal_memset and internal_strrchr to sanitizer_common/

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158202 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
e19cf55e85f47e158526a932838b26cdafacc37d 08-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] s/internal_memset/real_memset

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158200 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_interceptors.cc
san_md5.cc
san_symbolize_addr2line_linux.cc
f7667cc84cdd8923c0b6c7cfc92b7bd5692ce18c 07-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move internal_strdup and internal_memcpy to common runtime. Make internal allocations from TSan runtime call InternalAlloc from common runtime

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158148 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
san_mman.cc
47b1634df012507799eb39aa17d4022d748ba67b 07-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move placement_new definiton from TSan to common runtime

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158145 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_ann.cc
san_interface_atomic.cc
san_placement_new.h
san_rtl.cc
san_rtl_report.cc
san_rtl_thread.cc
san_sync.cc
15a77612e0a89c1df444a2034e531c8968d0cedf 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use common CHECK machinery. Currently each tool has to define its own CheckFailed function.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158075 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_rtl_report.cc
7fdcdf5a3a7090ec86d426a815bb42f3d35adf13 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Remove __attribute__((format))

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158070 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
e954101f6602ac181a2c3accfbbad0ae51b0bf7c 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer]: Introduce a common internal printf function. For now, also use tool-specific wrappers TsanPrintf (its output is controlled by TSan flags) and AsanPrintf (which copies its results to the ASan-private buffer). Supported formats: %[z]{d,u,x}, %s, %p. Re-write all format strings in TSan according to this format (this should have no effect on 64-bit platforms).

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158065 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_ann.cc
san_mman.cc
san_mutex.cc
san_platform_linux.cc
san_printf.cc
san_report.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stat.cc
san_symbolize_addr2line_linux.cc
67a64dd8259fdbd867633b27f54d584f435f1ce6 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] run some renaming as a preparation for factoring out Printf implementation.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158058 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_interface_ann.cc
san_mman.cc
san_mutex.cc
san_platform_linux.cc
san_printf.cc
san_report.cc
san_rtl.cc
san_rtl.h
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stat.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
230c3be6cdd094a187f48e27ba0961dbeee70344 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Move more functions/constants to sanitizer_common.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158056 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_flags.cc
san_interceptors.cc
san_platform.h
san_platform_linux.cc
san_symbolize_addr2line_linux.cc
8e820fcf7aafeb8101322182d742fcf99255d972 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] move internal_filesize and internal_dup2 from TSan to sanitizer_common.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158052 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
9edf7508e4ad536d26a202224548081d36eddd70 06-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] add sanitizer_common.h for routines shared between TSan and ASan runtimes. Use __sanitizer::Die() in TSan.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158050 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
san_rtl.h
94b5036ee6ba866e1702848855b6d687d1e70afa 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] rename sanitizer_defs.h to sanitizer_internal_defs.h

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158001 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
b9a30e0799787a99147e2587ef5ecc8c5f224160 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] remove using namespace __sanitizer lines

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157999 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interface_ann.cc
san_platform_linux.cc
san_printf.cc
san_rtl.cc
san_rtl_report.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
0a4c906dbc8f150657ddd4f19a7192b779f1d605 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use common defines for ASan and TSan runtime. Split defines between interface defines (can be visible in user code that includes interface ASan/TSan headers) and internal defines.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157998 91177308-0d34-0410-b5e6-96231b3b80d8
san_allocator.cc
san_compiler.h
san_defs.h
san_interceptors.cc
san_interface_ann.cc
san_placement_new.h
san_platform_linux.cc
san_rtl.cc
562e19e2f200f5e9d411e75e5a8d62df90ecb4c9 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] Use internal_munmap from sanitizer_libc in TSan runtime.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157995 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
89345b088c65680b4b1250ca9a80fb6fc464447f 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] make TSan runtime use internal_{close,read,write} from sanitizer_libc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157992 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_printf.cc
san_symbolize_addr2line_linux.cc
7f9c5a220b2768a450696bbd157a0e6f2e9ceea3 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] use __sanitizer::internal_open in TSan run-time

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157988 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform.h
san_platform_linux.cc
san_suppressions.cc
48aee681c0d800deb6c00f546bfaa377ece37326 05-Jun-2012 Alexey Samsonov <samsonov@google.com> [TSan] use __sanitizer::internal_mmap in TSan run-time

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157984 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
603c4be006d8c53905d736bf1f19a49f5ce98276 04-Jun-2012 Alexey Samsonov <samsonov@google.com> Remove file-type tags in .cc files in tsan/ and sanitizer_common/

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157928 91177308-0d34-0410-b5e6-96231b3b80d8
san_allocator.cc
san_clock.cc
san_flags.cc
san_interceptors.cc
san_interface.cc
san_interface_ann.cc
san_interface_atomic.cc
san_md5.cc
san_mman.cc
san_mutex.cc
san_platform_linux.cc
san_printf.cc
san_report.cc
san_rtl.cc
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stat.cc
san_suppressions.cc
san_symbolize_addr2line_linux.cc
san_sync.cc
c0d78c1de1f2607c874020d27b72cf989c5ce092 04-Jun-2012 Alexey Samsonov <samsonov@google.com> [Sanitizer]: move internal_strcmp to sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157926 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
san_interface_ann.cc
san_rtl_report.cc
f037f565b2e02878ceb6e7b49647e814e2990ef5 31-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: intercept longjmp() but die in it, greatly simplifies problem diagnostic


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157760 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_stat.cc
san_stat.h
a13749bd7b3629a3498e765960729a8ade5db7cf 31-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix a typo


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157744 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
16e0075746b21ed866ec3be21ef0d1e46f0efed5 31-May-2012 Kostya Serebryany <kcc@google.com> [asan,tsan] rename files in sanitizer_common to have a common prefix (sanitizer_).

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157740 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
20f60c53c446f42af2b4ebc3b85f6a5042be6904 31-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: suppress reports against source file names as well


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157739 91177308-0d34-0410-b5e6-96231b3b80d8
san_suppressions.cc
san_suppressions.h
b4b9fa707324095e3590a57963fd754d7a4dd40e 29-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: prevent recursive signal handlers


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157625 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
b3cedf98a3c8545da2234c2d35cb5d687984035f 29-May-2012 Kostya Serebryany <kcc@google.com> [asan,tsan] Add a new directory compiler-rt/lib/sanitizer_common
which will contain code shared between asan and tsan run-times.

Naming is hard. If you can suggest a better name for the directory -- speak up.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157611 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
san_rtl.cc
411b2c9d6787b64939fc15fdeec65e9d65ba1a51 28-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix race during pthread_join/detach


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157584 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
d350c35e3a4da6bf325b85e33df8701fcff39811 28-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: increase /proc/self/maps max size (1M is far not enough)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157570 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
f54c0e3321e2381fca3f02faefaaa6639d59c7cf 28-May-2012 Dmitry Vyukov <dvyukov@google.com> asan/tsan: rename interceptors from __xsan_xxx to __interceptor_xxx


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157569 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
75d48f2f4e7addb4d3167eea5ee12af81ada0522 28-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: more robust detection of stack of main thread


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157568 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
769544eed418993abb8efcb4ea939ed5c93a5ba2 28-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: use DCHECK_GT/LT instead of plain DCHECK (better diagnostics)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157567 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.cc
af154b815bbd793874b4cd05be98d571b6579272 28-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: do not clean stack/tls for main thread


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157566 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_thread.cc
789b6c5669547b550034fc9888059b17e2ff1417 25-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: do not call into libc in symbolizer and in other code (this causes recursion and crashes)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157466 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_interceptors.cc
san_platform.h
san_platform_linux.cc
san_rtl_thread.cc
san_symbolize_addr2line_linux.cc
1070a5a7143c76a2ac0ca3c0c8113d7357d26ff7 25-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: output message about failure to intercept only if verbosity flag is passed



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157465 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
5aa3f227be0a8934dedc0321f6913140fca60a94 24-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix compilation with newest clang


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157391 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_rtl.h
580469d7e40e39319cb2d3750edac4bccca18105 24-May-2012 Dmitry Vyukov <dvyukov@google.com> asan/tsan: weak interceptors
The idea isthat asan/tsan can survive if user intercepts the same functions. At the same time user has an ability to call back into asan/tsan runtime. See the following tests for examples:
asan/output_tests/interception_failure_test-linux.cc
asan/output_tests/interception_test-linux.cc
asan/output_tests/interception_malloc_test-linux.cc



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157388 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl_report.cc
24567d409cca096b950574fa4b19aa4c2c67a1f0 24-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add a flag to control RunningOnValgrind() return value


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157383 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_interface_ann.cc
adfb65039646774f0f063b538f8fb0aec021f42b 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add shadow memory flush + fix few bugs


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157270 91177308-0d34-0410-b5e6-96231b3b80d8
san_clock.h
san_defs.h
san_flags.cc
san_flags.h
san_platform.h
san_platform_linux.cc
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
e294d09d45aa97d1d2c8ee237ee2ac225442d330 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix sizeof sigset_t


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157268 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
b9bcdb3cbdbf15480328501a096b4859604e4502 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix makefile
allow to build custom configurations


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157259 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
9d2ffc2ee08216f8fad9b1bd267d1f112e0d2f01 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: reduce per-thread memory usage


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157252 91177308-0d34-0410-b5e6-96231b3b80d8
san_defs.h
san_mman.h
san_platform_linux.cc
san_rtl.cc
san_rtl.h
san_rtl_report.cc
san_rtl_thread.cc
san_trace.h
26127735454fddae3495794f38189d57dde6510f 22-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: simple memory profiler


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157248 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_interceptors.cc
san_mutex.cc
san_platform.h
san_platform_linux.cc
san_rtl.cc
san_sync.cc
san_sync.h
05906a7a12865b0fb0f5f6d607848cf7b5a1e5e0 21-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: implement malloc/free hooks



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157196 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
6d6acaa301e86d997a9dd5aed51c72a736fa245d 21-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: do not assume non-recursive signal handlers


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157187 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
e784ad46359c898e48d0262f28a1b7b4a512f1d3 21-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: replace CHECK with CHECK_EQ for better diagnostics


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157181 91177308-0d34-0410-b5e6-96231b3b80d8
san_rtl.h
d91d06794506f10fb7599a2b835222fba29394e0 21-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: better, more realistic handling of signals


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157178 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
san_rtl.h
san_stat.h
efd958213d70188ae6f79afd79fe2c84956d24ff 21-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add more checks for OOM conditions
tests like to try to malloc((size_t)-1)



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157176 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
7b8bee18f2f2c752bca3656b6092610b6cc9b503 18-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: check for overflow in malloc()


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157048 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
7d38634b30beed9bed44dfa6cb8e977ec51d7c6c 18-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix potential NULL deref


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@157047 91177308-0d34-0410-b5e6-96231b3b80d8
san_interceptors.cc
b7b6b1cd9df0c954b1f890fcebf373db984923b3 17-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: remove shutdown code
tsan runtime shutdown is problematic for 2 reasons:
1. others crash during shutdown
2. we have to override user exit status (don't know it and can't return from atexit handler)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156991 91177308-0d34-0410-b5e6-96231b3b80d8
san_flags.cc
san_flags.h
san_interceptors.cc
san_mman.cc
san_rtl.cc
san_rtl.h
san_rtl_thread.cc
san_suppressions.cc
san_suppressions.h
069ce828e3057819ee34426496ea7080f7cc52f0 17-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: detect accesses to freed memory
http://codereview.appspot.com/6214052


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156990 91177308-0d34-0410-b5e6-96231b3b80d8
san_clock.cc
san_clock.h
san_defs.h
san_report.cc
san_report.h
san_rtl.cc
san_rtl.h
san_rtl_report.cc
7b664bf9be64f92d5a84a7481bd7a2e510f94583 17-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: ValgrindSlowdown() should be weak for some time


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156982 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
dc2f0320c565ea0fe6396d06c5990daab42be0e9 17-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add ValgrindSlowdown() "dynamic annotation"


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156981 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_ann.cc
5c5564a8be4bf43f69833821ab16cd5d4d3fe5ba 16-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: improve addr2line symbolizer
-provide support for non-continous modules
-ignore not loaded sections
-more debug output


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156924 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize_addr2line_linux.cc
0629810986dc401f2766377cf313eab7fba5d051 16-May-2012 Kostya Serebryany <kcc@google.com> [tsan] fix old-style makefile -- we still need them to run our tests

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156907 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
4026c2c28927b90a97cda2a713c761f633bb1422 15-May-2012 Kostya Serebryany <kcc@google.com> [tsan] makefile machinery to build tsan-rt (linux-x86_64 only)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156822 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.mk
cdfb33a69a0c96c6912036ad85224972db3a7e7d 14-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: add more atomics to public interface (fetch_or/and/xor + 1-,2-byte versions)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156766 91177308-0d34-0410-b5e6-96231b3b80d8
san_interface_atomic.cc
san_interface_atomic.h
san_stat.h
f5820e74ad31eb8352049c880f8d58e286a9b713 14-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: enabled report suppression for signal-unsafe reports


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156765 91177308-0d34-0410-b5e6-96231b3b80d8
san_mman.cc
san_rtl.h
san_rtl_report.cc
a762200b9765014453b2761375ca7512672a7a6c 14-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: make addr2line symbolizer understand dynamic libraries
Collect info about all dynamic libraries in the process (name, base, size).
Determine to what dyn lib the address relates, route request to addr2line instance for the lib.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156759 91177308-0d34-0410-b5e6-96231b3b80d8
san_symbolize_addr2line_linux.cc
37f60be6cf5d1d9f2be722095c68eb9cdbd5ef31 13-May-2012 Dmitry Vyukov <dvyukov@google.com> tsan: fix mmap fd
This is mostly to test my commit access.
Fixes fd passed to mmap(), -1 is the proper invalid fd.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156741 91177308-0d34-0410-b5e6-96231b3b80d8
san_platform_linux.cc
3d6ae1580e5f34f02d24ff0c8bb352a5026c327a 11-May-2012 Kostya Serebryany <kcc@google.com> [tsan] run more kinds of builds as presubmit test (and fix gcc debug build)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156616 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
san_clock.h
san_defs.h
san_rtl.h
san_rtl_thread.cc
b82ae88720750d0ad4fd829c84e0dd0f8708cc2b 10-May-2012 Kostya Serebryany <kcc@google.com> [tsan] old-dstyle Makefile for tests; two helper scripts that analyze the assembly code of the hot functions

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156547 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
d40895d1305d630a5bfeb103fdbbf2a4d955b404 10-May-2012 Kostya Serebryany <kcc@google.com> [tsan] add the old Makefile (which is the only way to build the tsan-rtl for now)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156544 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.old
7ac41484ea322e0ea5774df681660269f5dc321e 10-May-2012 Kostya Serebryany <kcc@google.com> [tsan] First commit of ThreadSanitizer (TSan) run-time library.

Algorithm description: http://code.google.com/p/thread-sanitizer/wiki/ThreadSanitizerAlgorithm

Status:
The tool is known to work on large real-life applications, but still has quite a few rough edges.
Nothing is guaranteed yet.

The tool works on x86_64 Linux.
Support for 64-bit MacOS 10.7+ is planned for late 2012.
Support for 32-bit OSes is doable, but problematic and not yet planed.

Further commits coming:
- tests
- makefiles
- documentation
- clang driver patch

The code was previously developed at http://code.google.com/p/data-race-test/source/browse/trunk/v2/
by Dmitry Vyukov and Kostya Serebryany with contributions from
Timur Iskhodzhanov, Alexander Potapenko, Alexey Samsonov and Evgeniy Stepanov.




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156542 91177308-0d34-0410-b5e6-96231b3b80d8
san_allocator.cc
san_allocator.h
san_atomic.h
san_clock.cc
san_clock.h
san_compiler.h
san_defs.h
san_flags.cc
san_flags.h
san_interceptors.cc
san_interface.cc
san_interface.h
san_interface_ann.cc
san_interface_ann.h
san_interface_atomic.cc
san_interface_atomic.h
san_interface_inl.h
san_md5.cc
san_mman.cc
san_mman.h
san_mutex.cc
san_mutex.h
san_placement_new.h
san_platform.h
san_platform_linux.cc
san_printf.cc
san_report.cc
san_report.h
san_rtl.cc
san_rtl.h
san_rtl_amd64.S
san_rtl_mutex.cc
san_rtl_report.cc
san_rtl_thread.cc
san_stat.cc
san_stat.h
san_suppressions.cc
san_suppressions.h
san_symbolize.h
san_symbolize_addr2line_linux.cc
san_sync.cc
san_sync.h
san_trace.h
san_update_shadow_word_inl.h
san_vector.h