diff options
| author | 2019-02-16 16:52:24 -0400 | |
|---|---|---|
| committer | 2019-02-16 16:52:24 -0400 | |
| commit | a8d4927e29bb1acbf5f3267f368801847acd4222 (patch) | |
| tree | a5b08502c0fce93f8ef7a429ae873571eca1f852 /src/core | |
| parent | Use u128 on Clock Cycles calculation. (diff) | |
| download | yuzu-a8d4927e29bb1acbf5f3267f368801847acd4222.tar.gz yuzu-a8d4927e29bb1acbf5f3267f368801847acd4222.tar.xz yuzu-a8d4927e29bb1acbf5f3267f368801847acd4222.zip | |
Corrections, documenting and fixes.
Diffstat (limited to 'src/core')
| -rw-r--r-- | src/core/arm/dynarmic/arm_dynarmic.cpp | 2 | ||||
| -rw-r--r-- | src/core/core_timing_util.cpp | 5 |
2 files changed, 3 insertions, 4 deletions
diff --git a/src/core/arm/dynarmic/arm_dynarmic.cpp b/src/core/arm/dynarmic/arm_dynarmic.cpp index 25f76259b..4fdc12f11 100644 --- a/src/core/arm/dynarmic/arm_dynarmic.cpp +++ b/src/core/arm/dynarmic/arm_dynarmic.cpp | |||
| @@ -152,7 +152,7 @@ std::unique_ptr<Dynarmic::A64::Jit> ARM_Dynarmic::MakeJit() const { | |||
| 152 | config.tpidr_el0 = &cb->tpidr_el0; | 152 | config.tpidr_el0 = &cb->tpidr_el0; |
| 153 | config.dczid_el0 = 4; | 153 | config.dczid_el0 = 4; |
| 154 | config.ctr_el0 = 0x8444c004; | 154 | config.ctr_el0 = 0x8444c004; |
| 155 | config.cntfrq_el0 = Timing::CNTFREQ; // Value from fusee. | 155 | config.cntfrq_el0 = Timing::CNTFREQ; |
| 156 | 156 | ||
| 157 | // Unpredictable instructions | 157 | // Unpredictable instructions |
| 158 | config.define_unpredictable_behaviour = true; | 158 | config.define_unpredictable_behaviour = true; |
diff --git a/src/core/core_timing_util.cpp b/src/core/core_timing_util.cpp index aab4aa697..7942f30d6 100644 --- a/src/core/core_timing_util.cpp +++ b/src/core/core_timing_util.cpp | |||
| @@ -62,9 +62,8 @@ s64 nsToCycles(u64 ns) { | |||
| 62 | } | 62 | } |
| 63 | 63 | ||
| 64 | u64 CpuCyclesToClockCycles(u64 ticks) { | 64 | u64 CpuCyclesToClockCycles(u64 ticks) { |
| 65 | u128 temporal = Common::Multiply64Into128(ticks, CNTFREQ); | 65 | const u128 temporal = Common::Multiply64Into128(ticks, CNTFREQ); |
| 66 | std::pair<u64, u64> result = Common::Divide128On64(temporal, BASE_CLOCK_RATE); | 66 | return Common::Divide128On32(temporal, static_cast<u32>(BASE_CLOCK_RATE)).first; |
| 67 | return result.first; | ||
| 68 | } | 67 | } |
| 69 | 68 | ||
| 70 | } // namespace Core::Timing | 69 | } // namespace Core::Timing |