summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKuba Brecka <kuba.brecka@gmail.com>2015-11-06 15:09:20 +0000
committerKuba Brecka <kuba.brecka@gmail.com>2015-11-06 15:09:20 +0000
commit85e01c0bdca413339ec575049e0580a80fb5f85d (patch)
treeb661bcdd8f8d1f810125e7b2e4ec611ecd8e2eb9
parent9dcecefe672696fd1021ebc5fb28a1eb2c20ea50 (diff)
downloadbcm5719-llvm-85e01c0bdca413339ec575049e0580a80fb5f85d.tar.gz
bcm5719-llvm-85e01c0bdca413339ec575049e0580a80fb5f85d.zip
[tsan] Add Clang frontend support for TSan on OS X
We're currently in process of porting TSan to OS X, and quite a few of the initial support in the runtime library has already landed in trunk. This patch actually enables "-fsanitize=thread" in the frontend. Differential Revision: http://reviews.llvm.org/D14440 llvm-svn: 252310
-rw-r--r--clang/lib/Driver/ToolChains.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Driver/ToolChains.cpp b/clang/lib/Driver/ToolChains.cpp
index 43a8ff657dd..d39bfaa4bec 100644
--- a/clang/lib/Driver/ToolChains.cpp
+++ b/clang/lib/Driver/ToolChains.cpp
@@ -389,6 +389,8 @@ void DarwinClang::AddLinkRuntimeLibArgs(const ArgList &Args,
AddLinkSanitizerLibArgs(Args, CmdArgs, "asan");
if (Sanitize.needsUbsanRt())
AddLinkSanitizerLibArgs(Args, CmdArgs, "ubsan");
+ if (Sanitize.needsTsanRt())
+ AddLinkSanitizerLibArgs(Args, CmdArgs, "tsan");
// Otherwise link libSystem, then the dynamic runtime library, and finally any
// target specific static runtime library.
@@ -1199,6 +1201,7 @@ SanitizerMask Darwin::getSupportedSanitizers() const {
if (!isMacosxVersionLT(10, 9))
Res |= SanitizerKind::Vptr;
Res |= SanitizerKind::SafeStack;
+ Res |= SanitizerKind::Thread;
}
return Res;
}
OpenPOWER on IntegriCloud