OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // Fake Address Sanitizer run-time support. | 5 // Fake Address Sanitizer run-time support. |
6 // Enough for programs to link and run, but will not find any errors. | 6 // Enough for programs to link and run, but will not find any errors. |
7 // Also, linking this to shared libraries voids the warranty. | 7 // Also, linking this to shared libraries voids the warranty. |
8 // | 8 // |
9 // We need this fake thunks if we build Chrome with ASAN support because | 9 // We need this fake thunks if we build Chrome with ASAN support because |
10 // pyautolib DSO is instrumented with ASAN and is loaded to regular python | 10 // pyautolib DSO is instrumented with ASAN and is loaded to regular python |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 void __asan_report_store16() { } | 102 void __asan_report_store16() { } |
103 void __asan_report_store2() { } | 103 void __asan_report_store2() { } |
104 void __asan_report_store4() { } | 104 void __asan_report_store4() { } |
105 void __asan_report_store8() { } | 105 void __asan_report_store8() { } |
106 void __asan_report_store_n() { } | 106 void __asan_report_store_n() { } |
107 void __asan_set_error_report_callback() { } | 107 void __asan_set_error_report_callback() { } |
108 void __asan_unregister_globals() { } | 108 void __asan_unregister_globals() { } |
109 void __sanitizer_sandbox_on_notify() { } | 109 void __sanitizer_sandbox_on_notify() { } |
110 void __asan_before_dynamic_init(const char *module_name) { } | 110 void __asan_before_dynamic_init(const char *module_name) { } |
111 void __asan_after_dynamic_init() { } | 111 void __asan_after_dynamic_init() { } |
112 | 112 int __asan_option_detect_stack_use_after_return; |
| 113 typedef unsigned long long uptr; |
| 114 uptr __asan_stack_malloc_1(uptr size, uptr real_stack) {} |
| 115 uptr __asan_stack_malloc_2(uptr size, uptr real_stack) {} |
| 116 uptr __asan_stack_malloc_3(uptr size, uptr real_stack) {} |
| 117 uptr __asan_stack_malloc_4(uptr size, uptr real_stack) {} |
| 118 uptr __asan_stack_malloc_5(uptr size, uptr real_stack) {} |
| 119 uptr __asan_stack_malloc_6(uptr size, uptr real_stack) {} |
| 120 uptr __asan_stack_malloc_7(uptr size, uptr real_stack) {} |
| 121 uptr __asan_stack_malloc_8(uptr size, uptr real_stack) {} |
| 122 uptr __asan_stack_malloc_9(uptr size, uptr real_stack) {} |
| 123 uptr __asan_stack_malloc_10(uptr size, uptr real_stack) {} |
| 124 void __asan_stack_free_1(uptr ptr, uptr size, uptr real_stack) {} |
| 125 void __asan_stack_free_2(uptr ptr, uptr size, uptr real_stack) {} |
| 126 void __asan_stack_free_3(uptr ptr, uptr size, uptr real_stack) {} |
| 127 void __asan_stack_free_4(uptr ptr, uptr size, uptr real_stack) {} |
| 128 void __asan_stack_free_5(uptr ptr, uptr size, uptr real_stack) {} |
| 129 void __asan_stack_free_6(uptr ptr, uptr size, uptr real_stack) {} |
| 130 void __asan_stack_free_7(uptr ptr, uptr size, uptr real_stack) {} |
| 131 void __asan_stack_free_8(uptr ptr, uptr size, uptr real_stack) {} |
| 132 void __asan_stack_free_9(uptr ptr, uptr size, uptr real_stack) {} |
| 133 void __asan_stack_free_10(uptr ptr, uptr size, uptr real_stack) {} |
OLD | NEW |