From: Petr Hosek Date: Thu, 21 Dec 2017 22:04:31 +0000 (+0000) Subject: [scudo] Add -fsanitize=scudo option to Fuchsia X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7d8133d3b80a4ab3d8a047f31dff61327fa74b20;p=clang [scudo] Add -fsanitize=scudo option to Fuchsia Apparently the -fsanitize flag hadn't been added for Scudo upstream yet. Patch By: flowerhack Reviewers: cryptoad, alekseyshl, mcgrathr, phosek Reviewed By: mcgrathr, phosek Differential Revision: https://reviews.llvm.org/D41413 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@321314 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/ToolChains/Fuchsia.cpp b/lib/Driver/ToolChains/Fuchsia.cpp index 10ee7b7829..269d34d18f 100644 --- a/lib/Driver/ToolChains/Fuchsia.cpp +++ b/lib/Driver/ToolChains/Fuchsia.cpp @@ -280,5 +280,6 @@ SanitizerMask Fuchsia::getSupportedSanitizers() const { SanitizerMask Res = ToolChain::getSupportedSanitizers(); Res |= SanitizerKind::SafeStack; Res |= SanitizerKind::Address; + Res |= SanitizerKind::Scudo; return Res; } diff --git a/test/Driver/fuchsia.c b/test/Driver/fuchsia.c index eb413b7509..b6946ef406 100644 --- a/test/Driver/fuchsia.c +++ b/test/Driver/fuchsia.c @@ -79,3 +79,20 @@ // CHECK-ASAN-SHARED: "-fsanitize-address-globals-dead-stripping" // CHECK-ASAN-SHARED: "{{.*[/\\]}}libclang_rt.asan-x86_64.so" // CHECK-ASAN-SHARED-NOT: "{{.*[/\\]}}libclang_rt.asan-preinit-x86_64.a" + +// RUN: %clang %s -### --target=x86_64-fuchsia \ +// RUN: -fsanitize=scudo 2>&1 \ +// RUN: | FileCheck %s -check-prefix=CHECK-SCUDO-X86 +// CHECK-SCUDO-X86: "-fsanitize=scudo" +// CHECK-SCUDO-X86: "-pie" + +// RUN: %clang %s -### --target=aarch64-fuchsia \ +// RUN: -fsanitize=scudo 2>&1 \ +// RUN: | FileCheck %s -check-prefix=CHECK-SCUDO-AARCH64 +// CHECK-SCUDO-AARCH64: "-fsanitize=scudo" +// CHECK-SCUDO-AARCH64: "-pie" + +// RUN: %clang %s -### --target=x86_64-fuchsia \ +// RUN: -fsanitize=scudo -fPIC -shared 2>&1 \ +// RUN: | FileCheck %s -check-prefix=CHECK-SCUDO-SHARED +// CHECK-SCUDO-SHARED: "-fsanitize=scudo"