summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/tsan
Commit message (Collapse)AuthorAgeFilesLines
...
* [TSan] Replace __tsan::OverrideFlags with __tsan::OnInitializeAlexey Samsonov2013-12-113-11/+3
| | | | llvm-svn: 197014
* Run TSan/MSan lit tests only on 64-bit platformsAlexey Samsonov2013-12-052-3/+4
| | | | llvm-svn: 196501
* [tsan] fix the old tsan Makefile to build the asm files with includesKostya Serebryany2013-12-051-0/+2
| | | | llvm-svn: 196495
* Revert r196490 and fix include paths in makefile-based buildAlexey Samsonov2013-12-051-1/+1
| | | | llvm-svn: 196492
* [tsan] fix the include path that is broken in configure/make build but works ↵Kostya Serebryany2013-12-051-1/+1
| | | | | | in cmake build (PR18144). This is a quick fix. Will need to fix the configure/make build properly llvm-svn: 196490
* [sanitizer] support toolchains that don't understand CFI directivesKostya Serebryany2013-12-052-126/+128
| | | | | | | | | | | | | | Summary: Support toolchains that don't understand CFI directives. Reviewers: dvyukov Reviewed By: dvyukov CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2336 llvm-svn: 196480
* [sanitizer] Intercept textdomain.Evgeniy Stepanov2013-12-022-0/+2
| | | | | | Patch by Alexander Taran. llvm-svn: 196098
* [sanitizer] Intercept times.Evgeniy Stepanov2013-11-282-0/+2
| | | | llvm-svn: 195918
* [sanitizer] Intercept iconv.Evgeniy Stepanov2013-11-282-0/+2
| | | | llvm-svn: 195917
* tsan: deflake more testsDmitry Vyukov2013-11-282-0/+3
| | | | llvm-svn: 195916
* tsan: add support for passing file descriptors over UNIX domain socketsDmitry Vyukov2013-11-283-0/+37
| | | | | | | tsan was missing new fd's arrived from recvmsg(), and thus was reporting false positives due to missed synchronization on the fd's llvm-svn: 195914
* tsan: deflake more testsDmitry Vyukov2013-11-282-0/+4
| | | | llvm-svn: 195913
* tsan: clarify "thread ended with ignores enabled" messageDmitry Vyukov2013-11-271-0/+2
| | | | llvm-svn: 195858
* [sanitizer] Intercept __xpg_strerror_r.Evgeniy Stepanov2013-11-272-0/+2
| | | | llvm-svn: 195839
* tsan: better diagnostics if thread finishes with ignores enabledDmitry Vyukov2013-11-2714-72/+216
| | | | | | | print thread creation stack and stacks where ignores were enabled. llvm-svn: 195836
* tsan: do not leave verbosity>0 in testsDmitry Vyukov2013-11-271-2/+2
| | | | llvm-svn: 195833
* tsan: fix flags parsingDmitry Vyukov2013-11-272-6/+214
| | | | | | | | - running_on_valgrind was not parsed in some contexts - refactor code a bit - add comprehensive tests for flags parsing llvm-svn: 195831
* tsan: support synchronization by means of linux aioDmitry Vyukov2013-11-271-2/+42
| | | | | | http://llvm-reviews.chandlerc.com/D2269 llvm-svn: 195830
* tsan: filter out more bogus fd valuesDmitry Vyukov2013-11-251-1/+1
| | | | | | people do close(sysconf(_SC_OPEN_MAX)) after fork, where _SC_OPEN_MAX=1200000. llvm-svn: 195645
* tsan: deflake testsDmitry Vyukov2013-11-212-0/+3
| | | | | | | | the tests produce episodic flakes the hypothesis is that it's due to our "racy" race detection algorithm sleeps should remove the flakes llvm-svn: 195351
* tsan: add -lm to output test build scriptDmitry Vyukov2013-11-211-1/+1
| | | | | | as common sanitizer interceptors now require it llvm-svn: 195346
* tsan: fix handling of setjmpDmitry Vyukov2013-11-211-4/+8
| | | | | | | | It's incorrect to take address of setjmp, because it may not (ligally) present in libc. Fixes http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59188 llvm-svn: 195345
* [tsan] use FileCheck in race_on_speculative_load.ccKostya Serebryany2013-11-211-1/+4
| | | | llvm-svn: 195331
* [tsan] add a run-time-side regression test for ↵Kostya Serebryany2013-11-211-0/+24
| | | | | | https://code.google.com/p/thread-sanitizer/issues/detail?id=40 (tsan-hostile load speculation) llvm-svn: 195325
* tsan: fix WTFAnnotateBenignRaceSized annotationDmitry Vyukov2013-11-191-1/+1
| | | | | | actually use the passed size llvm-svn: 195133
* tsan: add support for robust mutexesDmitry Vyukov2013-11-155-2/+96
| | | | llvm-svn: 194823
* tsan: add proper cfi directives to assembly codeDmitry Vyukov2013-11-151-2/+2
| | | | | | this allows gdb to unwind through our hacky call llvm-svn: 194803
* Reapply asan coverage changes 194702-194704.Bob Wilson2013-11-151-12/+0
| | | | | | | | 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. llvm-svn: 194790
* Speculatively revert asan coverage changes 194702-194704.Bob Wilson2013-11-151-0/+12
| | | | | | | | | 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. llvm-svn: 194779
* [asan] Poor man's coverage that works with ASan (compiler-rt part)Kostya Serebryany2013-11-141-12/+0
| | | | llvm-svn: 194702
* [Sanitizer] Specify a default value for each common runtime flagAlexey Samsonov2013-11-121-11/+6
| | | | llvm-svn: 194479
* [sanitizer] Avoid needless use of stringification (#symver) in ↵Evgeniy Stepanov2013-11-121-2/+2
| | | | | | | | INTERCEPT_FUNCTION_VER. This is a workaround for clang-format bug (PR17874). llvm-svn: 194468
* [sanitizer] Warn if interception fails.Evgeniy Stepanov2013-11-111-0/+1
| | | | | | This includes a clang-format pass over common interceptors. llvm-svn: 194372
* [Sanitizer] Make StackTrace::Unwind the only public way to unwind a stack trace.Alexey Samsonov2013-11-071-2/+2
| | | | llvm-svn: 194196
* [sanitizer] Intercept strptime.Evgeniy Stepanov2013-11-022-0/+2
| | | | llvm-svn: 193903
* tsna: do not call user code from within runtime (from fflush)Dmitry Vyukov2013-11-011-1/+7
| | | | llvm-svn: 193880
* [Sanitizer] Add Symbolizer::AddHooks() and use it in TSan and MSan.Alexey Samsonov2013-10-313-15/+13
| | | | | | | | | | | | | | | | | | | | | 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 llvm-svn: 193807
* [sanitizer] Intercept getline, getdelim.Evgeniy Stepanov2013-10-312-0/+4
| | | | llvm-svn: 193730
* [sanitizer] Intercept drand48_r, lrand48_r.Evgeniy Stepanov2013-10-292-0/+4
| | | | llvm-svn: 193655
* [sanitizer] Intercept sincos, remquo, lgamma, lgamma_r.Evgeniy Stepanov2013-10-292-0/+24
| | | | llvm-svn: 193645
* [tsan] Fix unused variable warnings.Evgeniy Stepanov2013-10-291-4/+9
| | | | llvm-svn: 193639
* tsan/asan: support pthread_setname_np to set thread namesDmitry Vyukov2013-10-294-0/+50
| | | | llvm-svn: 193602
* tsan: start the background thread with signals blocked, otherwise it can ↵Dmitry Vyukov2013-10-281-0/+6
| | | | | | steal users signals llvm-svn: 193519
* Overhaul the symbolizer interface.Peter Collingbourne2013-10-252-10/+10
| | | | | | | | | | | | | | | | | | | | | | 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 llvm-svn: 193448
* [sanitizer] Intercept tmpnam, tmpnam_r, tempnam.Evgeniy Stepanov2013-10-252-0/+7
| | | | llvm-svn: 193415
* [sanitizer] Remove pthread_attr_getstackaddr interceptor.Evgeniy Stepanov2013-10-252-2/+0
| | | | | | The function is deprecated. llvm-svn: 193409
* [sanitizer] Intercept pthread_attr_get*.Evgeniy Stepanov2013-10-253-3/+23
| | | | llvm-svn: 193405
* tsan: do not crash when apparently bogus fd is passed to e.g. closeDmitry Vyukov2013-10-251-2/+34
| | | | | | | | some tests test libc/filesystem error handling paths (e.g. close(INT_MAX)), currently such tests fail with this change they work as expected llvm-svn: 193400
* [sanitizer] Intercept random_r.Evgeniy Stepanov2013-10-252-0/+2
| | | | llvm-svn: 193396
* [sanitizer] Intercept shmctl.Evgeniy Stepanov2013-10-242-0/+2
| | | | llvm-svn: 193348
OpenPOWER on IntegriCloud