diff options
author | Kostya Serebryany <kcc@google.com> | 2015-01-06 01:02:48 +0000 |
---|---|---|
committer | Kostya Serebryany <kcc@google.com> | 2015-01-06 01:02:48 +0000 |
commit | 2d88f3d623e603d11fbf3b7325ed25446842b74f (patch) | |
tree | 7751bba84dccdeeca69b79e0515c3b19139d7475 /clang/lib | |
parent | 04b37c4043bf90e9986e08f23214d6080bee603e (diff) | |
download | bcm5719-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.cpp | 5 |
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. |