소스 검색

kernel/physical_core: Remove unused kernel reference member variable

This isn't used within the class, so it can be removed to simplify the
overall interface.

While we're in the same area, we can simplify a unique_ptr reset() call.
Lioncash 6 년 전
부모
커밋
51927bc9dc
3개의 변경된 파일7개의 추가작업 그리고 11개의 파일을 삭제
  1. 4 4
      src/core/hle/kernel/kernel.cpp
  2. 2 3
      src/core/hle/kernel/physical_core.cpp
  3. 1 4
      src/core/hle/kernel/physical_core.h

+ 4 - 4
src/core/hle/kernel/kernel.cpp

@@ -101,7 +101,7 @@ struct KernelCore::Impl {
     void Initialize(KernelCore& kernel) {
         Shutdown();
 
-        InitializePhysicalCores(kernel);
+        InitializePhysicalCores();
         InitializeSystemResourceLimit(kernel);
         InitializeThreads();
         InitializePreemption();
@@ -131,14 +131,14 @@ struct KernelCore::Impl {
         }
         cores.clear();
 
-        exclusive_monitor.reset(nullptr);
+        exclusive_monitor.reset();
     }
 
-    void InitializePhysicalCores(KernelCore& kernel) {
+    void InitializePhysicalCores() {
         exclusive_monitor =
             Core::MakeExclusiveMonitor(system.Memory(), global_scheduler.CpuCoresCount());
         for (std::size_t i = 0; i < global_scheduler.CpuCoresCount(); i++) {
-            cores.emplace_back(system, kernel, i, *exclusive_monitor);
+            cores.emplace_back(system, i, *exclusive_monitor);
         }
     }
 

+ 2 - 3
src/core/hle/kernel/physical_core.cpp

@@ -10,16 +10,15 @@
 #include "core/arm/exclusive_monitor.h"
 #include "core/arm/unicorn/arm_unicorn.h"
 #include "core/core.h"
-#include "core/hle/kernel/kernel.h"
 #include "core/hle/kernel/physical_core.h"
 #include "core/hle/kernel/scheduler.h"
 #include "core/hle/kernel/thread.h"
 
 namespace Kernel {
 
-PhysicalCore::PhysicalCore(Core::System& system, KernelCore& kernel, std::size_t id,
+PhysicalCore::PhysicalCore(Core::System& system, std::size_t id,
                            Core::ExclusiveMonitor& exclusive_monitor)
-    : core_index{id}, kernel{kernel} {
+    : core_index{id} {
 #ifdef ARCHITECTURE_x86_64
     arm_interface = std::make_shared<Core::ARM_Dynarmic>(system, exclusive_monitor, core_index);
 #else

+ 1 - 4
src/core/hle/kernel/physical_core.h

@@ -21,9 +21,7 @@ namespace Kernel {
 
 class PhysicalCore {
 public:
-    PhysicalCore(Core::System& system, KernelCore& kernel, std::size_t id,
-                 Core::ExclusiveMonitor& exclusive_monitor);
-
+    PhysicalCore(Core::System& system, std::size_t id, Core::ExclusiveMonitor& exclusive_monitor);
     ~PhysicalCore();
 
     /// Execute current jit state
@@ -66,7 +64,6 @@ public:
 
 private:
     std::size_t core_index;
-    KernelCore& kernel;
     std::shared_ptr<Core::ARM_Interface> arm_interface;
     std::shared_ptr<Kernel::Scheduler> scheduler;
 };