]> granicus.if.org Git - clang/commit
SanitizerArgs: add ability to filter/diagnose unsupported sanitizers.
authorPeter Collingbourne <peter@pcc.me.uk>
Fri, 1 Nov 2013 18:16:25 +0000 (18:16 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Fri, 1 Nov 2013 18:16:25 +0000 (18:16 +0000)
commitc6911a2b1fc176e4d6053ed86506c17c3d8b0057
treedb35746cf5fce0e1f3d611834282dd01e30180ff
parent2f0754c068fb97036f2a78e56768e27e5668e3c7
SanitizerArgs: add ability to filter/diagnose unsupported sanitizers.

The thread, memory, dataflow and function sanitizers are now diagnosed if
enabled explicitly on an unsupported platform.  Unsupported sanitizers which
are enabled implicitly (as part of a larger group) are silently disabled.  As a
side effect, this makes SanitizerArgs parsing toolchain-dependent (and thus
essentially reverts r188058), and moves SanitizerArgs ownership to ToolChain.

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193875 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Driver/Driver.h
include/clang/Driver/SanitizerArgs.h
include/clang/Driver/ToolChain.h
lib/Driver/Driver.cpp
lib/Driver/SanitizerArgs.cpp
lib/Driver/ToolChain.cpp
lib/Driver/ToolChains.cpp
lib/Driver/Tools.cpp
test/Driver/fsanitize.c
test/Driver/tsan.c