forked from OSchip/llvm-project
Enable bunch of sanitizers on NetBSD/X86 and X86_64
Summary: Enable more sanitizers: - i386 and amd64: * SanitizerKind::Vptr; * SanitizerKind::Leak; * SanitizerKind::SafeStack; * SanitizerKind::Function; - amd64 only: * SanitizerKind::Thread; These sanitizers are in the process of upstreaming to LLVM projects. Sponsored by <The NetBSD Foundation> Reviewers: joerg, dim, vitalybuka, kcc, filcab, fjricci Reviewed By: vitalybuka Subscribers: #sanitizers, cfe-commits Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D36482 llvm-svn: 310649
This commit is contained in:
parent
99d9d24553
commit
9fef3b3948
|
@ -422,6 +422,13 @@ SanitizerMask NetBSD::getSupportedSanitizers() const {
|
|||
SanitizerMask Res = ToolChain::getSupportedSanitizers();
|
||||
if (IsX86 || IsX86_64) {
|
||||
Res |= SanitizerKind::Address;
|
||||
Res |= SanitizerKind::Function;
|
||||
Res |= SanitizerKind::Leak;
|
||||
Res |= SanitizerKind::SafeStack;
|
||||
Res |= SanitizerKind::Vptr;
|
||||
}
|
||||
if (IsX86_64) {
|
||||
Res |= SanitizerKind::Thread;
|
||||
}
|
||||
return Res;
|
||||
}
|
||||
|
|
|
@ -516,6 +516,29 @@
|
|||
// RUN: %clang -target x86_64-unknown-cloudabi -fsanitize=safe-stack %s -### 2>&1 | FileCheck %s -check-prefix=SAFESTACK-CLOUDABI
|
||||
// SAFESTACK-CLOUDABI: "-fsanitize=safe-stack"
|
||||
|
||||
// RUN: %clang -target i386--netbsd -fsanitize=address %s -### 2>&1 | FileCheck %s -check-prefix=ADDRESS-NETBSD
|
||||
// RUN: %clang -target x86_64--netbsd -fsanitize=address %s -### 2>&1 | FileCheck %s -check-prefix=ADDRESS-NETBSD
|
||||
// ADDRESS-NETBSD: "-fsanitize=address"
|
||||
|
||||
// RUN: %clang -target i386--netbsd -fsanitize=vptr %s -### 2>&1 | FileCheck %s -check-prefix=VPTR-NETBSD
|
||||
// RUN: %clang -target x86_64--netbsd -fsanitize=vptr %s -### 2>&1 | FileCheck %s -check-prefix=VPTR-NETBSD
|
||||
// VPTR-NETBSD: "-fsanitize=vptr"
|
||||
|
||||
// RUN: %clang -target i386--netbsd -fsanitize=safe-stack %s -### 2>&1 | FileCheck %s -check-prefix=SAFESTACK-NETBSD
|
||||
// RUN: %clang -target x86_64--netbsd -fsanitize=safe-stack %s -### 2>&1 | FileCheck %s -check-prefix=SAFESTACK-NETBSD
|
||||
// SAFESTACK-NETBSD: "-fsanitize=safe-stack"
|
||||
|
||||
// RUN: %clang -target i386--netbsd -fsanitize=function %s -### 2>&1 | FileCheck %s -check-prefix=FUNCTION-NETBSD
|
||||
// RUN: %clang -target x86_64--netbsd -fsanitize=function %s -### 2>&1 | FileCheck %s -check-prefix=FUNCTION-NETBSD
|
||||
// FUNCTION-NETBSD: "-fsanitize=function"
|
||||
|
||||
// RUN: %clang -target i386--netbsd -fsanitize=leak %s -### 2>&1 | FileCheck %s -check-prefix=LEAK-NETBSD
|
||||
// RUN: %clang -target x86_64--netbsd -fsanitize=leak %s -### 2>&1 | FileCheck %s -check-prefix=LEAK-NETBSD
|
||||
// LEAK-NETBSD: "-fsanitize=leak"
|
||||
|
||||
// RUN: %clang -target x86_64--netbsd -fsanitize=thread %s -### 2>&1 | FileCheck %s -check-prefix=THREAD-NETBSD
|
||||
// THREAD-NETBSD: "-fsanitize=thread"
|
||||
|
||||
// RUN: %clang -target x86_64-scei-ps4 -fsanitize=function -fsanitize=undefined %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FSAN-UBSAN-PS4
|
||||
// CHECK-FSAN-UBSAN-PS4: unsupported option '-fsanitize=function' for target 'x86_64-scei-ps4'
|
||||
// RUN: %clang -target x86_64-scei-ps4 -fsanitize=function %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FSAN-PS4
|
||||
|
|
Loading…
Reference in New Issue