diff options
| author | cirakg <cirakg@cirakg.xyz> | 2026-11-03 21:58:24 +0100 |
|---|---|---|
| committer | cirakg <cirakg@cirakg.xyz> | 2026-11-03 21:58:24 +0100 |
| commit | cdfb1ae93444c0aa02dfe592af36d70ab36549fd (patch) | |
| tree | 2fa8d7062d907d5ab8d85d64c66be87ea4cdf0d1 /src/common/cpu_features.cpp | |
| parent | 51341ec09b25de1d9b01d0c00ee828dd5b861d5c (diff) | |
| parent | 4383b9787afbf6c63291bf803c8330afb4f21a16 (diff) | |
# Conflicts:
# .github/workflows/release-binaries.yml
Diffstat (limited to 'src/common/cpu_features.cpp')
| -rw-r--r-- | src/common/cpu_features.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/common/cpu_features.cpp b/src/common/cpu_features.cpp index 93eecb1dc5..c7f6e6f036 100644 --- a/src/common/cpu_features.cpp +++ b/src/common/cpu_features.cpp @@ -227,8 +227,10 @@ const CPUCaps g_cpu_caps = [] { // AMD CPUs have no leaf 0x15 (Zen 4 stops at 0x10): measure their invariant TSC too, or every // guest clock read (CNTPCT, which games read thousands of times a frame) goes through the - // host's much slower QueryPerformanceCounter. - if (caps.invariant_tsc && caps.tsc_frequency == 0) { + // host's much slower QueryPerformanceCounter. Intel CPUs that have the leaf but report no + // crystal frequency (e.g. Coffee Lake) keep the OS clock: an i5-9400F crashed at launch on the + // measured RDTSC clock. + if (max_std_fn < 0x15 && caps.invariant_tsc && caps.tsc_frequency == 0) { caps.tsc_frequency = X64::EstimateRDTSCFrequency(); } |
