Use yield, not wfe, for asm_volatile_pause on ARM and ARM64
Summary:Found this hunting down LockFreeRingBuffer iOS perf problems. `wfe` and `yield` are similar, but `yield` is the instruction meant for "hey, I'm doing a spinlock", whereas `wfe` tries to wait for certain processor events. See http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204j/Cjafcggi.html Conveniently, it's the same instruction on 32-bit and 64-bit ARM. Reviewed By: yfeldblum Differential Revision: D2986160 fb-gh-sync-id: 34671256112e605bf857f9db54a56cf6bb6f1ee2 shipit-source-id: 34671256112e605bf857f9db54a56cf6bb6f1ee2
Showing
Please register or sign in to comment