summaryrefslogtreecommitdiffstats
path: root/src/core/core_timing_util.cpp
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-02-06 00:12:27 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2020-06-18 22:29:16 +0200
commit62e35ffc0effddfacb73ebc766735148436d7331 (patch)
tree10f765118c2f2bfd63dfc8ae0fc0f3a5aff6b1ba /src/core/core_timing_util.cpp
parentCommon: Polish Fiber class, add comments, asserts and more tests. (diff)
downloadyuzu-62e35ffc0effddfacb73ebc766735148436d7331.tar
yuzu-62e35ffc0effddfacb73ebc766735148436d7331.tar.gz
yuzu-62e35ffc0effddfacb73ebc766735148436d7331.tar.bz2
yuzu-62e35ffc0effddfacb73ebc766735148436d7331.tar.lz
yuzu-62e35ffc0effddfacb73ebc766735148436d7331.tar.xz
yuzu-62e35ffc0effddfacb73ebc766735148436d7331.tar.zst
yuzu-62e35ffc0effddfacb73ebc766735148436d7331.zip
Diffstat (limited to 'src/core/core_timing_util.cpp')
-rw-r--r--src/core/core_timing_util.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/core_timing_util.cpp b/src/core/core_timing_util.cpp
index de50d3b14..f42666b4d 100644
--- a/src/core/core_timing_util.cpp
+++ b/src/core/core_timing_util.cpp
@@ -49,6 +49,11 @@ s64 nsToCycles(std::chrono::nanoseconds ns) {
return (Hardware::BASE_CLOCK_RATE * ns.count()) / 1000000000;
}
+u64 nsToClockCycles(std::chrono::nanoseconds ns) {
+ const u128 temporal = Common::Multiply64Into128(ns.count(), CNTFREQ);
+ return Common::Divide128On32(temporal, 1000000000).first;
+}
+
u64 CpuCyclesToClockCycles(u64 ticks) {
const u128 temporal = Common::Multiply64Into128(ticks, Hardware::CNTFREQ);
return Common::Divide128On32(temporal, static_cast<u32>(Hardware::BASE_CLOCK_RATE)).first;