diff options
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. |