From: Kostya Serebryany Date: Wed, 3 Dec 2014 23:27:45 +0000 (+0000) Subject: [msan] allow -fsanitize-coverage=N together with -fsanitize=memory, clang part X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9181092ef1a9140a04b35b8fdff463f2d30a80e8;p=clang [msan] allow -fsanitize-coverage=N together with -fsanitize=memory, clang part git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@223311 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/SanitizerArgs.cpp b/lib/Driver/SanitizerArgs.cpp index 1e7487f769..4d288f75e5 100644 --- a/lib/Driver/SanitizerArgs.cpp +++ b/lib/Driver/SanitizerArgs.cpp @@ -298,7 +298,7 @@ SanitizerArgs::SanitizerArgs(const ToolChain &TC, } // Parse -fsanitize-coverage=N - if (NeedsAsan) { // Currently asan is required. + if (NeedsAsan || NeedsMsan) { // Currently asan or msan is required. if (Arg *A = Args.getLastArg(options::OPT_fsanitize_coverage)) { StringRef S = A->getValue(); // Legal values are 0..4. diff --git a/test/Driver/fsanitize.c b/test/Driver/fsanitize.c index e8e91dc947..45f8ff0daa 100644 --- a/test/Driver/fsanitize.c +++ b/test/Driver/fsanitize.c @@ -84,6 +84,7 @@ // RUN: %clang -target x86_64-linux-gnu -fsanitize=address %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-SANITIZE-COVERAGE-0 // CHECK-SANITIZE-COVERAGE-0-NOT: fsanitize-coverage // RUN: %clang -target x86_64-linux-gnu -fsanitize=address -fsanitize-coverage=1 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-SANITIZE-COVERAGE-1 +// RUN: %clang -target x86_64-linux-gnu -fsanitize=memory -fsanitize-coverage=1 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-SANITIZE-COVERAGE-1 // CHECK-SANITIZE-COVERAGE-1: fsanitize-coverage=1 // RUN: %clang -target x86_64-linux-gnu -fsanitize=address -fsanitize-coverage=4 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-SANITIZE-COVERAGE-4 // CHECK-SANITIZE-COVERAGE-4: fsanitize-coverage=4