On ARM64 use ISB to yield CPU in spinlocks.

c064b6560b
This commit is contained in:
Bartosz Taudul 2022-06-23 01:15:55 +02:00
parent 68de009e0e
commit 1625a45c31
No known key found for this signature in database
GPG Key ID: B7FE2008B7575DF3

View File

@ -16,6 +16,8 @@ static tracy_force_inline void YieldThread()
{ {
#if defined __SSE2__ || defined _M_AMD64 || _M_IX86_FP == 2 #if defined __SSE2__ || defined _M_AMD64 || _M_IX86_FP == 2
_mm_pause(); _mm_pause();
#elif defined __aarch64__
asm volatile( "isb" : : );
#else #else
std::this_thread::yield(); std::this_thread::yield();
#endif #endif