diff --git a/compiler-rt/lib/tsan/rtl/tsan_rtl.h b/compiler-rt/lib/tsan/rtl/tsan_rtl.h --- a/compiler-rt/lib/tsan/rtl/tsan_rtl.h +++ b/compiler-rt/lib/tsan/rtl/tsan_rtl.h @@ -678,8 +678,8 @@ void LazyInitialize(ThreadState *thr) { // If we can use .preinit_array, assume that __tsan_init // called from .preinit_array initializes runtime before - // any instrumented code. -#if !SANITIZER_CAN_USE_PREINIT_ARRAY + // any instrumented code except ANDROID. +#if (!SANITIZER_CAN_USE_PREINIT_ARRAY || defined(__ANDROID__)) if (UNLIKELY(!is_initialized)) Initialize(thr); #endif