https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67286
--- Comment #6 from weiguo.zhou <weiguo.zhou at spreadtrum dot com> --- (In reply to Dmitry Vyukov from comment #4) > Yes, asan should work on android/arm32. There is some ongoing work on arm64. > +eugeni can provide more details. according to official documents on Google's site: https://code.google.com/p/address-sanitizer/wiki/Android Android How to use AddressSanitizer on Android Updated Jul 20, 2015 by euge...@google.com NOTE: this document is about running Android applications built with the NDK under AddressSanitizer. For information about using AddressSanitizer on Android platform components, see AndroidPlatform. NOTE: ASan is broken on Android L. Use a K* build. This will be fixed in one of the future L updates (or the current AOSP master branch). NOTE: AddressSanitizer on Android requires a rooted device (either -eng or -userdebug build, or any other setup that allows editing the contents of the /system partition). Android NDK supports AddressSanitizer on arm, armv7 and x86 ABIs starting with version r10d. It seems Google's official docs indicate the asan only supported on Android with LLVM-based clang toolchain. in the fact, it should be supported "well" on Android with gcc-based toolchain. the keypoint to enable asan running well with gcc-based toolchain on Android as following: 1)build a cross-compile toolchain for ARM-32 Android system; 2)disable -Os optimization options in Android build system; becase the asan pass must be called in the GCC's internal to handle GENERIC/GIMPLY transformation; 3)modify the code in the gcc-4.9.2/config/arm/arm.c