12345678910111213141516171819202122232425262728 |
- diff --git a/lzhamdecomp/lzham_platform.h b/lzhamdecomp/lzham_platform.h
- index 01704be..04b29fb 100644
- --- a/lzhamdecomp/lzham_platform.h
- +++ b/lzhamdecomp/lzham_platform.h
- @@ -24,7 +24,11 @@ void lzham_fail(const char* pExp, const char* pFile, unsigned line);
- #if defined(__GNUC__) && LZHAM_PLATFORM_PC
- extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void lzham_yield_processor()
- {
- - __asm__ __volatile__("pause");
- + #if defined(__AARCH64__)
- + __asm__ __volatile__("yield");
- + #else
- + __asm__ __volatile__("pause");
- + #endif
- }
- #elif LZHAM_PLATFORM_X360
- #define lzham_yield_processor() \
- @@ -48,7 +52,9 @@ extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void lzham_y
- LZHAM_FORCE_INLINE void lzham_yield_processor()
- {
- #if LZHAM_USE_MSVC_INTRINSICS
- - #if LZHAM_PLATFORM_PC_X64
- + #if defined(__AARCH64__)
- + __yield();
- + #elif LZHAM_PLATFORM_PC_X64
- _mm_pause();
- #else
- YieldProcessor();
|