Driver: tweak CrossWindows sanitizer support
Indicate support for ASAN on the CrossWindows toolchain. Although this is insufficient, this at least permits the handling of the driver flag. llvm-svn: 251598
This commit is contained in:
parent
dbbd77921d
commit
8f431e7c4c
|
@ -107,6 +107,12 @@ AddCXXStdlibLibArgs(const llvm::opt::ArgList &DriverArgs,
|
|||
}
|
||||
}
|
||||
|
||||
clang::SanitizerMask CrossWindowsToolChain::getSupportedSanitizers() const {
|
||||
SanitizerMask Res = ToolChain::getSupportedSanitizers();
|
||||
Res |= SanitizerKind::Address;
|
||||
return Res;
|
||||
}
|
||||
|
||||
Tool *CrossWindowsToolChain::buildLinker() const {
|
||||
return new tools::CrossWindows::Linker(*this);
|
||||
}
|
||||
|
|
|
@ -937,6 +937,8 @@ public:
|
|||
void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args,
|
||||
llvm::opt::ArgStringList &CmdArgs) const override;
|
||||
|
||||
SanitizerMask getSupportedSanitizers() const override;
|
||||
|
||||
protected:
|
||||
Tool *buildLinker() const override;
|
||||
Tool *buildAssembler() const override;
|
||||
|
|
|
@ -40,5 +40,17 @@
|
|||
|
||||
// RUN: %clang -### -target armv7-windows-itanium --sysroot %S/Inputs/Windows/ARM/8.1 -B %S/Inputs/Windows/ARM/8.1/usr/bin -fuse-ld=lld-link2 -shared -o shared.dll -x c++ %s 2>&1 \
|
||||
// RUN: | FileCheck %s --check-prefix CHECK-FUSE-LD
|
||||
|
||||
// CHECK-FUSE-LD: "{{.*}}lld-link2"
|
||||
|
||||
// RUN: %clang -### -target armv7-windows-itanium --sysroot %S/Inputs/Windows/ARM/8.1 -B %S/Inputs/Windows/ARM/8.1/usr/bin -fuse-ld=lld-link2 -shared -o shared.dll -fsanitize=address -x c++ %s 2>&1 \
|
||||
// RUN: | FileCheck %s --check-prefix CHECK-SANITIZE-ADDRESS
|
||||
|
||||
// CHECK-SANITIZE-ADDRESS: "-fsanitize=address"
|
||||
|
||||
// RUN: %clang -### -target armv7-windows-itanium --sysroot %S/Inputs/Windows/ARM/8.1 -B %S/Inputs/Windows/ARM/8.1/usr/bin -fuse-ld=lld-link2 -shared -o shared.dll -fsanitize=tsan -x c++ %s 2>&1 \
|
||||
// RUN: | FileCheck %s --check-prefix CHECK-SANITIZE-TSAN
|
||||
|
||||
// CHECK-SANITIZE-TSAN: clang-3.8: error: unsupported argument 'tsan' to option 'fsanitize='
|
||||
// CHECK-SANITIZE-TSAN-NOT: "-fsanitize={{.*}}"
|
||||
|
||||
|
|
Loading…
Reference in New Issue