aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/physical_core.cpp
AgeCommit message (Collapse)Author
2023-12-08kernel: fix single coreLiam
2023-12-04core: refactor emulated cpu core activationLiam
2023-11-25core: Define HAS_NCE macroGPUCode
2023-11-25arm: Implement native code execution backendLiam
2023-07-21core: remove remaining uses of dynamic_castLiam
2023-03-12kernel: convert miscellaneousLiam
2022-11-09Initial ARM64 supportLiam
2022-07-25kernel: unlayer CPU interrupt handlingLiam
2022-07-14kernel: fix issues with single core modeLiam
2022-04-23general: Convert source file copyright comments over to SPDXMorph
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-11hle: kernel: Use std::mutex instead of spin locks for most kernel locking.bunnei
2022-04-03dynarmic: Better interruptsmerry
2022-01-11hle: kernel: k_page_table: Update SetProcessMemoryPermission.bunnei
2021-05-16core: Make variable shadowing a compile-time errorLioncash
Now that we have most of core free of shadowing, we can enable the warning as an error to catch anything that may be remaining and also eliminate this class of logic bug entirely.
2020-12-06hle: kernel: Rewrite scheduler implementation based on Mesopshere.bunnei
2020-12-06hle: kernel: physical_core: Clear exclusive state after each run.bunnei
- This is closer to pre-multicore behavior, and works a bit better.
2020-11-29hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.bunnei
2020-11-03core: Remove usage of unicornLioncash
Unicorn long-since lost most of its use, due to dynarmic gaining support for handling most instructions. At this point any further issues encountered should be used to make dynarmic better. This also allows us to remove our dependency on Python.
2020-06-27Core/Common: Address Feedback.Fernando Sahmkow
2020-06-27General: Move ARM_Interface into Threads.Fernando Sahmkow
2020-06-27Core: Refactor ARM Interface.Fernando Sahmkow
2020-06-27CPU_Manager: Reconfigre guest threads for dynamrmic downsidesFernando Sahmkow
2020-06-27General: Recover Prometheus project from harddrive failure Fernando Sahmkow
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host Timing, Reworks the Kernel's Scheduler, Introduce Idle State and Suspended State, Recreates the bootmanager, Initializes Multicore system.
2020-04-24physical_core: Make use of std::make_unique instead of std::make_shared in ctorLioncash
We can also allow unicorn to be constructed in 32-bit mode or 64-bit mode to satisfy the need for both interpreter instances. Allows this code to compile successfully of non x86-64 architectures.
2020-03-02core: Implement separate A32/A64 ARM interfaces.bunnei
2020-01-30kernel/physical_core: Make use of std::unique_ptrLioncash
shared_ptr was used in 2d1984c20c75e03ec79eeb3806b12efa1679b977 due to a misunderstanding of how the language generates move constructors and move assignment operators. If a destructor is user-provided, then the compiler won't generate the move constructor and move assignment operators by default--they must be explicitly opted into. The reason for the compilation errors is due to the fact that the language will fall back to attempting to use the copy constructor/copy assignment operators if the respective move constructor or move assignment operator is unavailable. Given that we explicitly opt into them now, the the move constructor and move assignment operators will be generated as expected.
2020-01-30kernel/physical_core: Remove unused kernel reference member variableLioncash
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.
2020-01-27System: Address FeedbackFernando Sahmkow
2020-01-25Core: Refactor CPU Management.Fernando Sahmkow
This commit moves ARM Interface and Scheduler handling into the kernel.
2020-01-24Kernel: Implement Physical Core.Fernando Sahmkow