diff options
author | Bartosz Taudul <wolf@nereid.pl> | 2022-06-23 02:15:55 +0300 |
---|---|---|
committer | Bartosz Taudul <wolf@nereid.pl> | 2022-06-23 02:15:55 +0300 |
commit | 1625a45c31b49f2bfbcdb533366bbc2432b41de7 (patch) | |
tree | f287e8ddb183cc4d5bb6292bbd067b25bd625fcd /common | |
parent | 68de009e0eb8e8c615107c3a13002a35d910d833 (diff) |
On ARM64 use ISB to yield CPU in spinlocks.
https://github.com/rust-lang/rust/commit/c064b6560b7ce0adeb9bbf5d7dcf12b1acb0c807
Diffstat (limited to 'common')
-rw-r--r-- | common/TracyYield.hpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/common/TracyYield.hpp b/common/TracyYield.hpp index 403ca29c..7b8ccef0 100644 --- a/common/TracyYield.hpp +++ b/common/TracyYield.hpp @@ -16,6 +16,8 @@ static tracy_force_inline void YieldThread() { #if defined __SSE2__ || defined _M_AMD64 || _M_IX86_FP == 2 _mm_pause(); +#elif defined __aarch64__ + asm volatile( "isb" : : ); #else std::this_thread::yield(); #endif |