diff options
-rw-r--r-- | lib/asan/asan_rtl.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/asan/asan_rtl.cc b/lib/asan/asan_rtl.cc index 57dfa2e3..89442468 100644 --- a/lib/asan/asan_rtl.cc +++ b/lib/asan/asan_rtl.cc @@ -494,3 +494,11 @@ void __asan_init() { Report("AddressSanitizer Init done\n"); } } + +#if defined(ASAN_USE_PREINIT_ARRAY) +// On Linux, we force __asan_init to be called before anyone else +// by placing it into .preinit_array section. +// FIXME: do we have anything like this on Mac? +__attribute__((section(".preinit_array"))) + typeof(__asan_init) *__asan_preinit =__asan_init; +#endif |