diff options
author | Erik Kundiman <erik@megapahit.org> | 2025-07-18 13:52:07 +0800 |
---|---|---|
committer | Erik Kundiman <erik@megapahit.org> | 2025-07-18 13:52:07 +0800 |
commit | c6048b2a8e18877f3f8bd0a7e190c553a3caa9a5 (patch) | |
tree | 5e5b921f08012b20a5ae940d4f8ac4bd95e2f444 /indra/llcommon/llfasttimer.h | |
parent | 04081678eeaa1d56cecc1c68aa358d255addf81d (diff) | |
parent | 09a3bac9436af1b6077fb27885c8c6c645f40a8e (diff) |
Merge branch 'main' into 2025.05
Diffstat (limited to 'indra/llcommon/llfasttimer.h')
-rw-r--r-- | indra/llcommon/llfasttimer.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/indra/llcommon/llfasttimer.h b/indra/llcommon/llfasttimer.h index a69a03e419..8499655bfa 100644 --- a/indra/llcommon/llfasttimer.h +++ b/indra/llcommon/llfasttimer.h @@ -99,7 +99,11 @@ public: #if LL_FASTTIMER_USE_RDTSC static U32 getCPUClockCount32() { +#if _M_ARM64 + unsigned __int64 val = _ReadStatusReg(ARM64_PMCCNTR_EL0); +#else unsigned __int64 val = __rdtsc(); +#endif val = val >> 8; return static_cast<U32>(val); } @@ -107,7 +111,11 @@ public: // return full timer value, *not* shifted by 8 bits static U64 getCPUClockCount64() { +#if _M_ARM64 + return static_cast<U64>( _ReadStatusReg(ARM64_PMCCNTR_EL0) ); +#else return static_cast<U64>( __rdtsc() ); +#endif } #else |