diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2015-10-21 21:28:49 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2015-10-21 21:28:49 +0000 |
commit | 20a4fe392e8dfaaba1dd1a2be7ddd5dbc76190e3 (patch) | |
tree | 7efe4208a63272e50a3f8b384cb284ed41b083c0 /test/Driver/fsanitize.c | |
parent | 3a551363c4cdd54c939cd9cc969d45bc8f8e93d8 (diff) |
MemorySanitizer does not require PIE.
Since r249754 MemorySanitizer should work equally well for PIE and
non-PIE executables on Linux/x86_64.
Beware, with this change -fsanitize=memory no longer adds implicit
-fPIE -pie compiler/linker flags on Linux/x86_64.
This is a re-land of r250941, limited to Linux/x86_64 + a very minor
refactoring in SanitizerArgs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@250949 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Driver/fsanitize.c')
-rw-r--r-- | test/Driver/fsanitize.c | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/test/Driver/fsanitize.c b/test/Driver/fsanitize.c index b9e525239d..499485d4b2 100644 --- a/test/Driver/fsanitize.c +++ b/test/Driver/fsanitize.c @@ -142,16 +142,20 @@ // RUN: %clang -target x86_64-linux-gnu -fsanitize=vptr -fno-sanitize=vptr -fsanitize=undefined,address %s -### 2>&1 // OK -// RUN: %clang -target x86_64-linux-gnu -fsanitize=thread %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-TSAN-NO-PIE -// CHECK-TSAN-NO-PIE: "-mrelocation-model" "static" - -// RUN: %clang -target x86_64-linux-gnu -fsanitize=memory %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-MSAN-NO-PIE -// CHECK-MSAN-NO-PIE: "-mrelocation-model" "pic" "-pic-level" "2" "-pie-level" "2" -// CHECK-MSAN-NO-PIE: "-pie" - -// RUN: %clang -target arm-linux-androideabi -fsanitize=address %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-ANDROID-ASAN-NO-PIE -// CHECK-ANDROID-ASAN-NO-PIE: "-mrelocation-model" "pic" "-pic-level" "2" "-pie-level" "2" -// CHECK-ANDROID-ASAN-NO-PIE: "-pie" +// RUN: %clang -target x86_64-linux-gnu -fsanitize=thread %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-PIE +// RUN: %clang -target x86_64-linux-gnu -fsanitize=memory %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-PIE +// RUN: %clang -target x86_64-unknown-freebsd -fsanitize=memory %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-PIE +// RUN: %clang -target aarch64-linux-gnu -fsanitize=memory %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-PIE +// RUN: %clang -target arm-linux-androideabi -fsanitize=address %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-PIE +// RUN: %clang -target x86_64-linux-gnu -fsanitize=address %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-PIE +// RUN: %clang -target i386-linux-gnu -fsanitize=address %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-PIE + +// CHECK-NO-PIE-NOT: "-pie" +// CHECK-NO-PIE: "-mrelocation-model" "static" +// CHECK-NO-PIE-NOT: "-pie" + +// CHECK-PIE: "-mrelocation-model" "pic" "-pic-level" "2" "-pie-level" "2" +// CHECK-PIE: "-pie" // RUN: %clang -target arm-linux-androideabi %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-ANDROID-NO-ASAN // CHECK-ANDROID-NO-ASAN: "-mrelocation-model" "pic" |