OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 // | 4 // |
5 // This file contains the default options for various compiler-based dynamic | 5 // This file contains the default options for various compiler-based dynamic |
6 // tools. | 6 // tools. |
7 | 7 |
8 #include "build/build_config.h" | 8 #include "build/build_config.h" |
9 | 9 |
10 // Functions returning default options are declared weak in the tools' runtime | 10 // Functions returning default options are declared weak in the tools' runtime |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
51 #endif // GOOGLE_CHROME_BUILD | 51 #endif // GOOGLE_CHROME_BUILD |
52 | 52 |
53 #elif defined(OS_MACOSX) | 53 #elif defined(OS_MACOSX) |
54 const char *kAsanDefaultOptions = | 54 const char *kAsanDefaultOptions = |
55 "strict_memcmp=0 replace_intrin=0 check_printf=1"; | 55 "strict_memcmp=0 replace_intrin=0 check_printf=1"; |
56 #endif // OS_LINUX | 56 #endif // OS_LINUX |
57 | 57 |
58 #if defined(OS_LINUX) || defined(OS_MACOSX) | 58 #if defined(OS_LINUX) || defined(OS_MACOSX) |
59 extern "C" | 59 extern "C" |
60 __attribute__((no_sanitize_address)) | 60 __attribute__((no_sanitize_address)) |
| 61 __attribute__((visibility("default"))) |
| 62 // The function isn't referenced from the executable itself. Make sure it isn't |
| 63 // stripped by the linker. |
| 64 __attribute__((used)) |
61 const char *__asan_default_options() { | 65 const char *__asan_default_options() { |
62 return kAsanDefaultOptions; | 66 return kAsanDefaultOptions; |
63 } | 67 } |
64 #endif // OS_LINUX || OS_MACOSX | 68 #endif // OS_LINUX || OS_MACOSX |
65 #endif // ADDRESS_SANITIZER | 69 #endif // ADDRESS_SANITIZER |
OLD | NEW |