summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorKostya Serebryany <kcc@google.com>2015-01-06 01:02:48 +0000
committerKostya Serebryany <kcc@google.com>2015-01-06 01:02:48 +0000
commit2d88f3d623e603d11fbf3b7325ed25446842b74f (patch)
tree7751bba84dccdeeca69b79e0515c3b19139d7475 /clang/lib
parent04b37c4043bf90e9986e08f23214d6080bee603e (diff)
downloadbcm5719-llvm-2d88f3d623e603d11fbf3b7325ed25446842b74f.tar.gz
bcm5719-llvm-2d88f3d623e603d11fbf3b7325ed25446842b74f.zip
Allow -fsanitize-coverage=N with ubsan, clang part
Summary: Allow -fsanitize-coverage=N with ubsan, clang part. This simply allows the flag combination. The LLVM will work out of the box, the compile-rt part will follow as a separate patch. Test Plan: check-clang Reviewers: samsonov Reviewed By: samsonov Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D6849 llvm-svn: 225229
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Driver/SanitizerArgs.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Driver/SanitizerArgs.cpp b/clang/lib/Driver/SanitizerArgs.cpp
index adffad2daad..09c2cb05f4f 100644
--- a/clang/lib/Driver/SanitizerArgs.cpp
+++ b/clang/lib/Driver/SanitizerArgs.cpp
@@ -43,7 +43,8 @@ ID = ALIAS, ID##Group = 1 << SO_##ID##Group,
NeedsUbsanRt = Undefined | Integer,
NotAllowedWithTrap = Vptr,
RequiresPIE = Memory | DataFlow,
- NeedsUnwindTables = Address | Thread | Memory | DataFlow
+ NeedsUnwindTables = Address | Thread | Memory | DataFlow,
+ SupportsCoverage = Address | Memory | Leak | Undefined | Integer
};
}
@@ -295,7 +296,7 @@ SanitizerArgs::SanitizerArgs(const ToolChain &TC,
}
// Parse -fsanitize-coverage=N. Currently one of asan/msan/lsan is required.
- if (NeedsAsan || NeedsMsan || NeedsLsan) {
+ if (hasOneOf(Sanitizers, SupportsCoverage)) {
if (Arg *A = Args.getLastArg(options::OPT_fsanitize_coverage)) {
StringRef S = A->getValue();
// Legal values are 0..4.
OpenPOWER on IntegriCloud