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