summarylogtreecommitdiffstats
path: root/arm64-yield.patch
blob: 0b3d3403955839b8e28ea3f3caaddb20103ed271 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
diff --git a/src/engine/Engine.cpp b/src/engine/Engine.cpp
index 9e4b452f..c97e37a3 100644
--- a/src/engine/Engine.cpp
+++ b/src/engine/Engine.cpp
@@ -25,8 +25,12 @@ inline void cpuPause() {
 #if defined ARCH_X64
 	_mm_pause();
 #elif defined ARCH_ARM64
+#if defined(__GNUC__) && !defined(__clang__)
+	asm volatile("yield");
+#else
 	__yield();
 #endif
+#endif
 }