diff options
-rw-r--r-- | compiler-rt/lib/asan/asan_rtl.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler-rt/lib/asan/asan_rtl.cc b/compiler-rt/lib/asan/asan_rtl.cc index 57dfa2e3fff..89442468db2 100644 --- a/compiler-rt/lib/asan/asan_rtl.cc +++ b/compiler-rt/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 |