From 9181092ef1a9140a04b35b8fdff463f2d30a80e8 Mon Sep 17 00:00:00 2001
From: Kostya Serebryany <kcc@google.com>
Date: Wed, 3 Dec 2014 23:27:45 +0000
Subject: [PATCH] [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
---
 lib/Driver/SanitizerArgs.cpp | 2 +-
 test/Driver/fsanitize.c      | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/Driver/SanitizerArgs.cpp b/lib/Driver/SanitizerArgs.cpp
index 1e7487f7690..4d288f75e5a 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 e8e91dc947e..45f8ff0daa1 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
-- 
GitLab