diff options
| author | 2018-09-25 16:04:53 -0400 | |
|---|---|---|
| committer | 2018-09-25 16:04:56 -0400 | |
| commit | 598e4d2f6ccfc3dc774a28be53d8b1d78ebbd08d (patch) | |
| tree | 1d43801463284752d6ecec43c9a1e7850caef607 | |
| parent | kernel/scheduler: Take ARM_Interface instance by reference in the constructor (diff) | |
| download | yuzu-598e4d2f6ccfc3dc774a28be53d8b1d78ebbd08d.tar.gz yuzu-598e4d2f6ccfc3dc774a28be53d8b1d78ebbd08d.tar.xz yuzu-598e4d2f6ccfc3dc774a28be53d8b1d78ebbd08d.zip | |
core_cpu: Make arm_interface instances a std::unique_ptr
This is only exposed by reference, so we can just make it a unique
pointer to get rid of the need to also use reference counting for the
pointer.
| -rw-r--r-- | src/core/core_cpu.cpp | 6 | ||||
| -rw-r--r-- | src/core/core_cpu.h | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/core/core_cpu.cpp b/src/core/core_cpu.cpp index 0140e9713..265f8ed9c 100644 --- a/src/core/core_cpu.cpp +++ b/src/core/core_cpu.cpp | |||
| @@ -55,13 +55,13 @@ Cpu::Cpu(std::shared_ptr<ExclusiveMonitor> exclusive_monitor, | |||
| 55 | 55 | ||
| 56 | if (Settings::values.use_cpu_jit) { | 56 | if (Settings::values.use_cpu_jit) { |
| 57 | #ifdef ARCHITECTURE_x86_64 | 57 | #ifdef ARCHITECTURE_x86_64 |
| 58 | arm_interface = std::make_shared<ARM_Dynarmic>(exclusive_monitor, core_index); | 58 | arm_interface = std::make_unique<ARM_Dynarmic>(exclusive_monitor, core_index); |
| 59 | #else | 59 | #else |
| 60 | arm_interface = std::make_shared<ARM_Unicorn>(); | 60 | arm_interface = std::make_unique<ARM_Unicorn>(); |
| 61 | LOG_WARNING(Core, "CPU JIT requested, but Dynarmic not available"); | 61 | LOG_WARNING(Core, "CPU JIT requested, but Dynarmic not available"); |
| 62 | #endif | 62 | #endif |
| 63 | } else { | 63 | } else { |
| 64 | arm_interface = std::make_shared<ARM_Unicorn>(); | 64 | arm_interface = std::make_unique<ARM_Unicorn>(); |
| 65 | } | 65 | } |
| 66 | 66 | ||
| 67 | scheduler = std::make_shared<Kernel::Scheduler>(*arm_interface); | 67 | scheduler = std::make_shared<Kernel::Scheduler>(*arm_interface); |
diff --git a/src/core/core_cpu.h b/src/core/core_cpu.h index 685532965..ee7e04abc 100644 --- a/src/core/core_cpu.h +++ b/src/core/core_cpu.h | |||
| @@ -76,7 +76,7 @@ public: | |||
| 76 | private: | 76 | private: |
| 77 | void Reschedule(); | 77 | void Reschedule(); |
| 78 | 78 | ||
| 79 | std::shared_ptr<ARM_Interface> arm_interface; | 79 | std::unique_ptr<ARM_Interface> arm_interface; |
| 80 | std::shared_ptr<CpuBarrier> cpu_barrier; | 80 | std::shared_ptr<CpuBarrier> cpu_barrier; |
| 81 | std::shared_ptr<Kernel::Scheduler> scheduler; | 81 | std::shared_ptr<Kernel::Scheduler> scheduler; |
| 82 | 82 | ||