summaryrefslogtreecommitdiff
path: root/test/tsan/lit.cfg
diff options
context:
space:
mode:
authorKuba Mracek <mracek@apple.com>2017-01-24 21:37:50 +0000
committerKuba Mracek <mracek@apple.com>2017-01-24 21:37:50 +0000
commit05a7fb8b0c3ae7e743fcba9befc1ea6c362ae0f4 (patch)
tree50fb4298b6c9036e1903be47afcd2a646e3bc613 /test/tsan/lit.cfg
parent1726b7ba1866bfe3b6d66a5228cf2cb29a3fa2be (diff)
[tsan] Enable ignore_noninstrumented_modules=1 on Darwin by default
TSan recently got the "ignore_noninstrumented_modules" flag, which disables tracking of read and writes that come from noninstrumented modules (via interceptors). This is a way of suppressing false positives coming from system libraries and other noninstrumented code. This patch turns this on by default on Darwin, where it's supposed to replace the previous solution, "ignore_interceptors_accesses", which disables tracking in *all* interceptors. The new approach should re-enable TSan's ability to find races via interceptors on Darwin. Differential Revision: https://reviews.llvm.org/D29041 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@292981 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/tsan/lit.cfg')
-rw-r--r--test/tsan/lit.cfg4
1 files changed, 4 insertions, 0 deletions
diff --git a/test/tsan/lit.cfg b/test/tsan/lit.cfg
index f9ae539ba..3c98d1fdc 100644
--- a/test/tsan/lit.cfg
+++ b/test/tsan/lit.cfg
@@ -24,6 +24,10 @@ if config.host_os == 'Darwin':
# On Darwin, we default to `abort_on_error=1`, which would make tests run
# much slower. Let's override this and run lit tests with 'abort_on_error=0'.
default_tsan_opts += ':abort_on_error=0'
+ # On Darwin, we default to ignore_noninstrumented_modules=1, which also
+ # suppresses some races the tests are supposed to find. Let's run without this
+ # setting, but turn it back on for Darwin tests (see Darwin/lit.local.cfg).
+ default_tsan_opts += ':ignore_noninstrumented_modules=0'
# Platform-specific default TSAN_OPTIONS for lit tests.
if default_tsan_opts: