1 | // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
2 | // for details. All rights reserved. Use of this source code is governed by a |
3 | // BSD-style license that can be found in the LICENSE file. |
4 | |
5 | #include "platform/globals.h" |
6 | |
7 | #if defined(HOST_OS_LINUX) || defined(HOST_OS_MACOSX) |
8 | #if defined(__has_feature) |
9 | #if __has_feature(address_sanitizer) |
10 | |
11 | const char* kAsanDefaultOptions = |
12 | "strict_memcmp=0 symbolize=0 check_printf=1 use_sigaltstack=1 " |
13 | "detect_leaks=0 fast_unwind_on_fatal=1 handle_segv=0 " ; |
14 | |
15 | extern "C" __attribute__((no_sanitize_address)) |
16 | __attribute__((visibility("default" ))) |
17 | // The function isn't referenced from the executable itself. Make sure it isn't |
18 | // stripped by the linker. |
19 | __attribute__((used)) const char* |
20 | __asan_default_options() { |
21 | return kAsanDefaultOptions; |
22 | } |
23 | |
24 | #endif // __has_feature(address_sanitizer) |
25 | #endif // defined(__has_feature) |
26 | #endif // defined(HOST_OS_LINUX) || defined(HOST_OS_MACOSX) |
27 | |