Commit Graph

130 Commits

Author SHA1 Message Date
Alexey Samsonov 6c3f7fcb8a Mark this test as 64-bit specific
llvm-svn: 204319
2014-03-20 07:37:45 +00:00
Dmitry Vyukov 1af191e1f4 tsan: add test for second_deadlock_stack flag
llvm-svn: 204240
2014-03-19 15:00:38 +00:00
Evgeniy Stepanov a57750482f [msan] Fix line numbers in test.
This corresponds to a fix in llvm::SplitBlockAndInsertIfThen.

llvm-svn: 204229
2014-03-19 12:56:38 +00:00
Kostya Serebryany 2ea796e05f [sanitizer] deadlock detector: a) initial support for suppressions, b) be more robust in case we failed to extract a stack trace for one of the locks
llvm-svn: 204225
2014-03-19 12:26:33 +00:00
Joerg Sonnenberger 14743127b7 Use CRT_HAS_128BIT.
llvm-svn: 204182
2014-03-18 21:35:30 +00:00
Evgeniy Stepanov 412d973980 [msan] Origin tracking with history, compiler-rt part.
Compiler-rt part of MSan implementation of advanced origin tracking,
when we record not only creation point, but all locations where
an uninitialized value was stored to memory, too.

llvm-svn: 204152
2014-03-18 13:45:19 +00:00
Dmitry Vyukov eac8cc7a42 tsan: fix flaky test
llvm-svn: 204119
2014-03-18 06:37:31 +00:00
Kostya Serebryany 5c0171b811 [sanitizer] a bit more informative deadlock detector report (still lots to improve)
llvm-svn: 204115
2014-03-18 05:56:14 +00:00
Kostya Serebryany f01c094cdd [sanitizer] reverse the order of the stack traces printed for every pair of locks in the deadlock report (first print the 'from' node, then print the 'to' node of the deadlock graph)
llvm-svn: 204043
2014-03-17 14:56:04 +00:00
Kostya Serebryany 8976539627 [sanitizer] make the deadlock detector print 2*N stack traces on lock-order-inversion with N locks (i.e. print stack traces for both lock acquisitions in every edge in the graph). More improvements to follow
llvm-svn: 204042
2014-03-17 14:41:36 +00:00
Kostya Serebryany 779ccf3b2c [sanitizer] one more output test for the deadlock detector
llvm-svn: 204036
2014-03-17 09:32:48 +00:00
Kostya Serebryany b9cb473fb8 [sanitizer] fix build warnings; add an output test for the deadlock detecor
llvm-svn: 204035
2014-03-17 09:21:41 +00:00
Alexander Potapenko b76ea32834 [ASan] Fix https://code.google.com/p/address-sanitizer/issues/detail?id=274
by ignoring globals from __TEXT,__cstring,cstring_literals during instrumenation.
Add a regression test.

llvm-svn: 203916
2014-03-14 10:41:49 +00:00
Dmitry Vyukov a02fac7bec tsan: update the test since the bug is fixed
http://llvm.org/bugs/show_bug.cgi?id=19113 is fixed, so enable the better CHECK

llvm-svn: 203784
2014-03-13 10:54:16 +00:00
Kostya Serebryany de3f20cf4b [sanitizer] support recursive rwlocks in bitset-based deadlock detector
llvm-svn: 203779
2014-03-13 10:26:03 +00:00
Dmitry Vyukov 8c0f86e307 tsan: fix handling of pthread_cond_wait in presence of pthread_cancel
if the thread is cancelled in pthread_cond_wait, it locks the mutex before
processing pthread_cleanup stack
but tsan was missing that, thus reporting false double-lock/wrong-unlock errors
see the test for details

llvm-svn: 203648
2014-03-12 09:48:14 +00:00
Dmitry Vyukov 47fd6179b1 tsan: add disabled test for http://llvm.org/bugs/show_bug.cgi?id=19113
llvm-svn: 203646
2014-03-12 08:24:49 +00:00
Alexey Samsonov 8ad7a05bb4 Improve llvm-symbolizer discovery in asan_symbolize.py
llvm-svn: 202982
2014-03-05 15:00:36 +00:00
Sergey Matveev 8bf42919e6 [msan] Make up for missing interceptor in getxattr() test.
llvm-svn: 202846
2014-03-04 13:13:34 +00:00
Alexey Samsonov 3d9adc0a73 [ASan] Speed up stack trace unwinding for stacks of size 2.
Summary:
We don't need to do any work in this case - just take
the current PC and caller PC.

Reviewers: eugenis, ygribov

Reviewed By: eugenis

CC: llvm-commits

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

llvm-svn: 202845
2014-03-04 13:12:25 +00:00
Sergey Matveev e7b3e4c2ae [msan] Add missing line to getxattr() test.
llvm-svn: 202841
2014-03-04 12:41:18 +00:00
Dmitry Vyukov 811d16c953 tsan: prevent actual deadlock in deadlock detector test
llvm-svn: 202502
2014-02-28 14:34:25 +00:00
Kostya Serebryany eae464f911 [sanitizer] speedup deadlock detector for the case when we acquire the first lock in a thread
llvm-svn: 202492
2014-02-28 11:56:14 +00:00
Kostya Serebryany afc4f2af76 [sanitizer] speedup deadlock detector for the case when we destroy a mutex that has never been locked
llvm-svn: 202487
2014-02-28 10:59:33 +00:00
Dmitry Vyukov 371639ea1f tsan: deflake test
llvm-svn: 202484
2014-02-28 10:47:07 +00:00
Kostya Serebryany 261993ad1a [sanitizer] a test for recursive rwlock and deadlock detector (currently fails)
llvm-svn: 202480
2014-02-28 10:03:51 +00:00
Kostya Serebryany b86b56c0db [tsan] one more test for deadlock detector
llvm-svn: 202476
2014-02-28 09:17:16 +00:00
Dmitry Vyukov d8c2fbd57f tsan: another attempt to fix the tls_get_addr crash
llvm-svn: 202405
2014-02-27 15:07:45 +00:00
Dmitry Vyukov a12923e265 tsan: intercept vfork
this fixes obscure false positives
see the comments and the test for details

llvm-svn: 202400
2014-02-27 14:36:16 +00:00
Dmitry Vyukov 17ca4d06c7 tsan: 2 more deadlock detector benchmarks
llvm-svn: 202379
2014-02-27 12:05:17 +00:00
Dmitry Vyukov 8a0813d944 tsan: fix deadlock detector lit test output
llvm-svn: 202368
2014-02-27 09:18:08 +00:00
Dmitry Vyukov 511118c762 tsan: add another deadlock detector benchmark
llvm-svn: 202366
2014-02-27 09:05:07 +00:00
Dmitry Vyukov 794500ae4e tsan: add recursive deadlock detector benchmark
llvm-svn: 202361
2014-02-27 08:33:52 +00:00
Dmitry Vyukov c546943b6a tsan: improve deadlock detector test
- allow to specify which test to run
- allow to specify number of iterations
- specify number of threads required in the test itself

llvm-svn: 202358
2014-02-27 08:04:20 +00:00
Dmitry Vyukov 0f34a3ba8c tsan: fix deadlock detector test so that it does not force contention in runtime
llvm-svn: 202278
2014-02-26 17:06:58 +00:00
Alexander Potapenko 4b1a7fe33a [ASan] Split interception-in-shared-lib-test.cc into two tests with platform-specific RUN commands.
Get rid of a TestCases/SharedLibs/shared-lib-test-so.cc dependency in these tests.

llvm-svn: 202267
2014-02-26 14:05:57 +00:00
Evgeniy Stepanov 6697dc6aa3 [asan] Remove extra sonames from libraries in tests.
llvm-svn: 202156
2014-02-25 15:25:37 +00:00
Kostya Serebryany 67968cbf93 [sanitizer] minimal support for recursive locks indeadlock detector
llvm-svn: 202153
2014-02-25 14:02:01 +00:00
Evgeniy Stepanov e4d8577c69 [asan] Reenable waitid test on Android.
waitid() is present since API level 9 (Android 2.3). That's old enough.

llvm-svn: 202149
2014-02-25 13:24:42 +00:00
Alexey Samsonov 98aa08c0e9 Update sanitizers' bash scripts.
* Fix bash scripts to work on FreeBSD (patch by Viktor Kutuzov)
* Update locations of lit tests in check_lint script.

llvm-svn: 202145
2014-02-25 12:09:25 +00:00
Kostya Serebryany 01be296dbb [sanitizer] support pthread_rwlock_rd* in deadlock detector
llvm-svn: 202132
2014-02-25 10:33:37 +00:00
Kostya Serebryany fd88edfddb [sanitizer] partially support pthread_rwlock_* (no rd* form yet)
llvm-svn: 202128
2014-02-25 09:33:10 +00:00
Kostya Serebryany 8f240ec03f [tsan] add deadlock detector tests for pthread_spin_lock
llvm-svn: 202123
2014-02-25 08:42:34 +00:00
Kostya Serebryany 11f4f30fa7 [sanitizer] add support for try_lock in deadlock detector
llvm-svn: 202120
2014-02-25 08:24:15 +00:00
Evgeniy Stepanov 4bf7a268e0 [asan] Add a test for interceptors in shared libraries.
llvm-svn: 202037
2014-02-24 14:31:28 +00:00
Kostya Serebryany d77dfcb384 [tsan] one more test for deadlock detector
llvm-svn: 202026
2014-02-24 11:45:47 +00:00
Evgeniy Stepanov c0ae3dfc3a [asan] A test was reverted, but not "svn rm"-ed in r202016.
llvm-svn: 202025
2014-02-24 11:43:47 +00:00
Evgeniy Stepanov 4c32d16c76 Revert r202014.
Failing on the bots for an unknown reason.

llvm-svn: 202016
2014-02-24 10:21:44 +00:00
Evgeniy Stepanov 567e0eef4c [asan] Add a test for interceptors in shared libraries.
llvm-svn: 202014
2014-02-24 10:04:42 +00:00
Evgeniy Stepanov d512234d7e [asan] Avoid hardcoding library path in test binary.
llvm-svn: 202013
2014-02-24 10:03:33 +00:00