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
11const 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
15extern "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