bunnei
a5ab85ac37
Revert "core: Switch to unique_ptr for usage of Common::Fiber."
5 years ago
bunnei
51fb0a6f96
core: Switch to unique_ptr for usage of Common::Fiber.
- With using unique_ptr instead of shared_ptr, we have more explicit ownership of the context.
- Fixes a memory leak due to circular reference of the shared pointer.
5 years ago
bunnei
1d162f28d1
hle: kernel: Migrate MemoryLayout to KMemoryLayout.
5 years ago
Chloe
37939482fb
kernel: Unify result codes ( #5890 )
* kernel: Unify result codes
Drop the usage of ERR_NAME convention in kernel for ResultName. Removed seperation between svc_results.h & errors.h as we mainly include both most of the time anyways.
* oops
* rename errors to svc_results
5 years ago
Chloe Marcec
2c6e940493
Simplify limitableresource names
5 years ago
Chloe Marcec
3be1a565f8
kernel: Rewrite resource limit to be more accurate
Matches closer to hardware
5 years ago
bunnei
e24c6dab93
hle: kernel: KThread: Release thread resource on thread exit.
5 years ago
bunnei
10738839ad
yuzu: debugger: Ignore HLE threads.
5 years ago
bunnei
6e953f7f02
hle: kernel: Allocate a dummy KThread for each host thread, and use it for scheduling.
5 years ago
bunnei
0a1449e04b
kernel: Fix build errors.
5 years ago
bunnei
cdd14b03e5
hle: kernel: Recode implementation of KThread to be more accurate.
5 years ago
bunnei
4dbf3f4880
hle: kernel: KThread: Clean up thread priorities.
5 years ago
bunnei
1e55498110
hle: kernel: KThread: Reorganize thread priority defaults.
5 years ago
bunnei
eea346ba8e
hle: kernel: KThread: Remove thread types that do not exist.
5 years ago
bunnei
c0d3aef28c
core: hle: kernel: Rename Thread to KThread.
5 years ago
bunnei
03dfc8d8e7
hle: kernel: thread: Preserve thread wait reason for debugging only.
- This is decoupled from core functionality and used for debugging only.
5 years ago
bunnei
912dd50146
core: hle: Integrate new KConditionVariable and KAddressArbiter implementations.
5 years ago
bunnei
c3c43e32fc
hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ThreadState.
- This is how the real kernel works, and is more accurate and simpler.
5 years ago
bunnei
35c3c078e3
core: hle: kernel: Update KSynchronizationObject.
5 years ago
bunnei
ccce6cb3be
hle: kernel: Migrate to KScopedSchedulerLock.
5 years ago
bunnei
4756cb203e
hle: kernel: Separate KScopedSchedulerLockAndSleep from k_scheduler.
5 years ago
bunnei
9e29e36a78
hle: kernel: Rewrite scheduler implementation based on Mesopshere.
5 years ago
bunnei
e18ee8d681
hle: kernel: Port KAffinityMask from Mesosphere.
5 years ago
bunnei
c2ad1243ba
hle: kernel: thread: Remove unused "Running" state.
5 years ago
bunnei
7b642c7781
hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.
5 years ago
Lioncash
fc6db97a09
core: Remove usage of unicorn
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.
5 years ago
bunnei
3d592972dc
Revert "core: Fix clang build"
5 years ago
Lioncash
be1954e04c
core: Fix clang build
Recent changes to the build system that made more warnings be flagged as
errors caused building via clang to break.
Fixes #4795
5 years ago
Lioncash
f0125b2be8
cpu_manager: Mark function getters as static
All these do are return std::function instances of static functions, so
these can be used without an instance of the CPU manager.
6 years ago
Lioncash
4ad69ca96e
kernel/thread: Remove global GetCurrentThread()
This is only used in one place, so we can fold it into the calling code,
eliminating a place for the global system instance to be used.
6 years ago
Fernando Sahmkow
d240143588
Kernel: Correct Host Context on Threads and Scheduler.
6 years ago
Fernando Sahmkow
48fa3b7a0f
General: Cleanup legacy code.
6 years ago
Fernando Sahmkow
f5e32935ca
SingleCore: Use Cycle Timing instead of Host Timing.
6 years ago
Fernando Sahmkow
5974e3ea33
Thread: Release the ARM Interface on exitting.
6 years ago
Fernando Sahmkow
1567824d2d
General: Move ARM_Interface into Threads.
6 years ago
Fernando Sahmkow
e6f8bde74b
General: Fix Stop function
6 years ago
Fernando Sahmkow
d494b074e8
Kernel: Preempt Single core on redudant yields.
6 years ago
Fernando Sahmkow
391f5f360d
Scheduler: Set last running time on thread.
6 years ago
Fernando Sahmkow
cd1c38be8d
ARM/Memory: Correct Exclusive Monitor and Implement Exclusive Memory Writes.
6 years ago
Fernando Sahmkow
83c7ba1ef7
SVC: Correct SetThreadActivity.
6 years ago
Fernando Sahmkow
a66c61ca2d
SCC: Small corrections to CancelSynchronization
6 years ago
Fernando Sahmkow
b4dc01f16a
Kernel: Correct Signal on Thread Death and Setup Sync Objects on Thread for Debugging
6 years ago
Fernando Sahmkow
75e10578f1
Core: Correct HLE Event Callbacks and other issues.
6 years ago
Fernando Sahmkow
d4ebb510a0
SVC: Correct WaitSynchronization, WaitProcessWideKey, SignalProcessWideKey.
6 years ago
Fernando Sahmkow
15a79eb0d7
SVC: Correct SendSyncRequest.
6 years ago
Fernando Sahmkow
203e706302
SVC: Correct ArbitrateUnlock
6 years ago
Fernando Sahmkow
3b5b950c89
SVC: Correct SignalEvent, ClearEvent, ResetSignal, WaitSynchronization, CancelSynchronization, ArbitrateLock
6 years ago
Fernando Sahmkow
589f9cf108
SVC: Correct GetThreadPriority, SetThreadPriority, GetThreadCoreMask, SetThreadCoreMask, GetCurrentProcessorNumber
6 years ago
Fernando Sahmkow
49ba563995
SVC: Correct CreateThread, StartThread, ExitThread, SleepThread.
6 years ago
Fernando Sahmkow
e31425df38
General: Recover Prometheus project from harddrive failure
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.
6 years ago