diff options
| author | Matt Morehouse <mascasa@google.com> | 2018-01-10 20:27:48 +0000 |
|---|---|---|
| committer | Matt Morehouse <mascasa@google.com> | 2018-01-10 20:27:48 +0000 |
| commit | f113deaa3cf3d7d5ef2a06e96c372aeb9b748187 (patch) | |
| tree | 61f83a591134bf6b917459fdfb16d18cfb406f3d /clang/test | |
| parent | 5b6019879580a02fdedca551f405ffd1e792e2d2 (diff) | |
| download | bcm5719-llvm-f113deaa3cf3d7d5ef2a06e96c372aeb9b748187.tar.gz bcm5719-llvm-f113deaa3cf3d7d5ef2a06e96c372aeb9b748187.zip | |
[MSan] Enable use-after-dtor instrumentation by default.
Summary:
Enable the compile-time flag -fsanitize-memory-use-after-dtor by
default. Note that the run-time option MSAN_OPTIONS=poison_in_dtor=1
still needs to be enabled for destructors to be poisoned.
Reviewers: eugenis, vitalybuka, kcc
Reviewed By: eugenis, vitalybuka
Subscribers: cfe-commits, llvm-commits
Differential Revision: https://reviews.llvm.org/D37860
llvm-svn: 322221
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/CodeGenCXX/sanitize-no-dtor-callback.cpp | 6 | ||||
| -rw-r--r-- | clang/test/Driver/fsanitize.c | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/clang/test/CodeGenCXX/sanitize-no-dtor-callback.cpp b/clang/test/CodeGenCXX/sanitize-no-dtor-callback.cpp index 2c355766216..afc5382eb46 100644 --- a/clang/test/CodeGenCXX/sanitize-no-dtor-callback.cpp +++ b/clang/test/CodeGenCXX/sanitize-no-dtor-callback.cpp @@ -1,8 +1,9 @@ -// Test without the flag -fsanitize-memory-use-after-dtor, to ensure that +// Test with the flag -fno-sanitize-memory-use-after-dtor, to ensure that // instrumentation is not erroneously inserted -// RUN: %clang_cc1 -fsanitize=memory -triple=x86_64-pc-linux -emit-llvm -o - %s | FileCheck %s +// RUN: %clang_cc1 -fsanitize=memory -fno-sanitize-memory-use-after-dtor -triple=x86_64-pc-linux -emit-llvm -o - %s | FileCheck %s struct Simple { + int x; ~Simple() {} }; Simple s; @@ -10,6 +11,7 @@ Simple s; // CHECK-NOT: call void @__sanitizer_dtor_callback struct Inlined { + int x; inline ~Inlined() {} }; Inlined i; diff --git a/clang/test/Driver/fsanitize.c b/clang/test/Driver/fsanitize.c index 7870f724b6c..292ad0d99c3 100644 --- a/clang/test/Driver/fsanitize.c +++ b/clang/test/Driver/fsanitize.c @@ -184,11 +184,11 @@ // RUN: %clang -target x86_64-linux-gnu -fsanitize=memory -fsanitize-memory-use-after-dtor %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-USE-AFTER-DTOR // RUN: %clang -target x86_64-linux-gnu -fsanitize=memory -fno-sanitize-memory-use-after-dtor -fsanitize-memory-use-after-dtor %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-USE-AFTER-DTOR +// RUN: %clang -target x86_64-linux-gnu -fsanitize=memory %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-USE-AFTER-DTOR // CHECK-USE-AFTER-DTOR: -cc1{{.*}}-fsanitize-memory-use-after-dtor // RUN: %clang -target x86_64-linux-gnu -fsanitize=memory -fno-sanitize-memory-use-after-dtor %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-USE-AFTER-DTOR-OFF // RUN: %clang -target x86_64-linux-gnu -fsanitize=memory -fsanitize-memory-use-after-dtor -fno-sanitize-memory-use-after-dtor %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-USE-AFTER-DTOR-OFF -// RUN: %clang -target x86_64-linux-gnu -fsanitize=memory %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-USE-AFTER-DTOR-OFF // CHECK-USE-AFTER-DTOR-OFF-NOT: -cc1{{.*}}memory-use-after-dtor // RUN: %clang -target x86_64-linux-gnu -fsanitize=address -fsanitize-address-field-padding=0 %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-ASAN-FIELD-PADDING-0 |

