Index: runtime/bin/address_sanitizer.cc |
=================================================================== |
--- runtime/bin/address_sanitizer.cc (revision 0) |
+++ runtime/bin/address_sanitizer.cc (working copy) |
@@ -0,0 +1,27 @@ |
+// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+#include "platform/globals.h" |
+ |
+#if defined(TARGET_OS_LINUX) || defined(TARGET_OS_MACOSX) |
+#if defined(__has_feature) |
+#if __has_feature(address_sanitizer) |
+ |
+const char *kAsanDefaultOptions = |
+ "strict_memcmp=0 symbolize=0 check_printf=1 use_sigaltstack=1 " |
+ "detect_leaks=0 fast_unwind_on_fatal=1 handle_segv=0 "; |
+ |
+extern "C" |
+__attribute__((no_sanitize_address)) |
+__attribute__((visibility("default"))) |
+// The function isn't referenced from the executable itself. Make sure it isn't |
+// stripped by the linker. |
+__attribute__((used)) |
+const char *__asan_default_options() { |
+ return kAsanDefaultOptions; |
+} |
+ |
+#endif // __has_feature(address_sanitizer) |
+#endif // defined(__has_feature) |
+#endif // defined(TARGET_OS_LINUX) || defined(TARGET_OS_MACOSX) |