From 366bbbf672e2c548a5422c3edeea3c84b8b808ed Mon Sep 17 00:00:00 2001 From: lizzie Date: Tue, 21 Apr 2026 16:55:33 +0000 Subject: [PATCH] fixup nce --- src/common/wall_clock.cpp | 10 ++++++---- src/core/arm/nce/patcher.cpp | 8 ++++++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/common/wall_clock.cpp b/src/common/wall_clock.cpp index d435375267..e81c8ba5e3 100644 --- a/src/common/wall_clock.cpp +++ b/src/common/wall_clock.cpp @@ -136,10 +136,12 @@ s64 WallClock::GetGPUTick() const { s64 WallClock::GetUptime() const { s64 cntvct_el0 = 0; - asm volatile("dsb ish\n\t" - "mrs %[cntvct_el0], cntvct_el0\n\t" - "dsb ish\n\t" - : [cntvct_el0] "=r"(cntvct_el0)); + asm volatile( + "dsb ish\n\t" + "mrs %[cntvct_el0], cntvct_el0\n\t" + "dsb ish\n\t" + : [cntvct_el0] "=r"(cntvct_el0) + ); return cntvct_el0; } diff --git a/src/core/arm/nce/patcher.cpp b/src/core/arm/nce/patcher.cpp index 37b0688da6..bf72b207b9 100644 --- a/src/core/arm/nce/patcher.cpp +++ b/src/core/arm/nce/patcher.cpp @@ -3,7 +3,7 @@ #include #include -#include "common/arm64/native_clock.h" +#include "common/wall_clock.h" #include "common/alignment.h" #include "common/literals.h" #include "core/arm/nce/arm_nce.h" @@ -578,7 +578,11 @@ void Patcher::WriteMsrHandler(ModuleDestLabel module_dest, oaknut::XReg src_reg, } void Patcher::WriteCntpctHandler(ModuleDestLabel module_dest, oaknut::XReg dest_reg, oaknut::VectorCodeGenerator& cg) { - static Common::WallClock clock{}; +#if defined(HAS_NCE) + static Common::WallClock clock(false, 1); +#else + static Common::WallClock clock(true, 1); +#endif const auto factor = clock.GetGuestCNTFRQFactor(); const auto raw_factor = std::bit_cast>(factor);