diff options
author | Alexey Samsonov <vonosmas@gmail.com> | 2015-06-25 00:58:02 +0000 |
---|---|---|
committer | Alexey Samsonov <vonosmas@gmail.com> | 2015-06-25 00:58:02 +0000 |
commit | 1d4cff2cdc8cd0abf3d5dda8875e4b5bfcfde56b (patch) | |
tree | a9293e786618e99e98b47117c95d21aa51772755 /clang/lib/Driver/ToolChains.cpp | |
parent | 3fa03e3e9d16197df0a22eb9bd145f43e7f07339 (diff) | |
download | bcm5719-llvm-1d4cff2cdc8cd0abf3d5dda8875e4b5bfcfde56b.tar.gz bcm5719-llvm-1d4cff2cdc8cd0abf3d5dda8875e4b5bfcfde56b.zip |
[UBSan] Allow to use -fsanitize=vptr only on Mac OS 10.9+
See https://llvm.org/bugs/show_bug.cgi?id=23539 for why this
is necessary.
llvm-svn: 240618
Diffstat (limited to 'clang/lib/Driver/ToolChains.cpp')
-rw-r--r-- | clang/lib/Driver/ToolChains.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/clang/lib/Driver/ToolChains.cpp b/clang/lib/Driver/ToolChains.cpp index 02fb343cc5f..e107126d98b 100644 --- a/clang/lib/Driver/ToolChains.cpp +++ b/clang/lib/Driver/ToolChains.cpp @@ -1067,13 +1067,13 @@ void Darwin::CheckObjCARC() const { SanitizerMask Darwin::getSupportedSanitizers() const { SanitizerMask Res = ToolChain::getSupportedSanitizers(); - if (isTargetMacOS() || isTargetIOSSimulator()) { - // ASan and UBSan are available on Mac OS and on iOS simulator. + if (isTargetMacOS() || isTargetIOSSimulator()) Res |= SanitizerKind::Address; - Res |= SanitizerKind::Vptr; - } - if (isTargetMacOS()) + if (isTargetMacOS()) { + if (!isMacosxVersionLT(10, 9)) + Res |= SanitizerKind::Vptr; Res |= SanitizerKind::SafeStack; + } return Res; } |