diff --git a/compiler-rt/lib/scudo/standalone/common.h b/compiler-rt/lib/scudo/standalone/common.h --- a/compiler-rt/lib/scudo/standalone/common.h +++ b/compiler-rt/lib/scudo/standalone/common.h @@ -109,7 +109,12 @@ #elif defined(__aarch64__) || defined(__arm__) __asm__ __volatile__("" ::: "memory"); for (u8 I = 0; I < Count; I++) +#if __ARM_ARCH >= 6 && !defined(__ARM_ARCH_6__) + // yield is supported on ARMv6K and newer __asm__ __volatile__("yield"); +#else + __asm__ __volatile__("nop"); +#endif #endif __asm__ __volatile__("" ::: "memory"); }