Patch tracy for Windows on ARM

This commit is contained in:
2024-05-11 19:01:45 +03:00
parent ca40e6140a
commit 2f4673ce1b
2 changed files with 5 additions and 1 deletions

View File

@@ -177,6 +177,8 @@ public:
# elif defined _WIN32
# ifdef TRACY_TIMER_QPC
return GetTimeQpc();
# elif defined(_M_ARM64)
if( HardwareSupportsInvariantTSC() ) return int64_t( _ReadStatusReg(ARM64_PMCCNTR_EL0) );
# else
if( HardwareSupportsInvariantTSC() ) return int64_t( __rdtsc() );
# endif

View File

@@ -781,7 +781,9 @@ rpmalloc_set_main_thread(void) {
static void
_rpmalloc_spin(void) {
#if defined(_MSC_VER)
#if defined(_MSC_VER) && defined(_M_ARM64)
__isb(_ARM64_BARRIER_SY);
#elif defined(_MSC_VER)
_mm_pause();
#elif defined(__x86_64__) || defined(__i386__)
__asm__ volatile("pause" ::: "memory");