diff options
| author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-01-24 15:38:20 -0400 |
|---|---|---|
| committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-01-24 15:38:20 -0400 |
| commit | ab89ced244db69616d29c91470d870b73b09cc69 (patch) | |
| tree | 0c45b8298ab75d60b74448aac2857f2ead2c613b /src/core/hle/kernel/physical_core.cpp | |
| parent | deb97f6a8e48c17f8e16efadc24872a860d529a7 (diff) | |
Kernel: Implement Physical Core.
Diffstat (limited to 'src/core/hle/kernel/physical_core.cpp')
| -rw-r--r-- | src/core/hle/kernel/physical_core.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/core/hle/kernel/physical_core.cpp b/src/core/hle/kernel/physical_core.cpp new file mode 100644 index 000000000..17faef348 --- /dev/null +++ b/src/core/hle/kernel/physical_core.cpp @@ -0,0 +1,19 @@ +// Copyright 2020 yuzu Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +namespace Kernel { + +PhysicalCore::PhysicalCore(KernelCore& kernel, std::size_t id, ExclusiveMonitor& exclusive_monitor) + : core_index{id}, kernel{kernel} { +#ifdef ARCHITECTURE_x86_64 + arm_interface = std::make_unique<ARM_Dynarmic>(system, exclusive_monitor, core_index); +#else + arm_interface = std::make_unique<ARM_Unicorn>(system); + LOG_WARNING(Core, "CPU JIT requested, but Dynarmic not available"); +#endif + + scheduler = std::make_unique<Kernel::Scheduler>(system, *arm_interface, core_index); +} + +} // namespace Kernel |
