aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/thread.h
Commit message (Collapse)AuthorAgeFilesLines
* core: hle: kernel: Rename Thread to KThread.bunnei2021-01-281-782/+0
|
* hle: kernel: thread: Preserve thread wait reason for debugging only.bunnei2021-01-111-0/+21
| | | | - This is decoupled from core functionality and used for debugging only.
* core: hle: Integrate new KConditionVariable and KAddressArbiter implementations.bunnei2021-01-111-121/+197
|
* hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ↵bunnei2021-01-111-41/+34
| | | | | | ThreadState. - This is how the real kernel works, and is more accurate and simpler.
* core: hle: kernel: Update KSynchronizationObject.bunnei2021-01-111-85/+46
|
* hle: kernel: Thread: Various style fixes based on code review feedback.bunnei2020-12-061-22/+25
|
* hle: kernel: Rewrite scheduler implementation based on Mesopshere.bunnei2020-12-061-27/+80
|
* hle: kernel: Port KAffinityMask from Mesosphere.bunnei2020-12-061-3/+3
|
* hle: kernel: thread: Remove unused "Running" state.bunnei2020-11-291-1/+0
|
* hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.bunnei2020-11-291-5/+0
|
* Revert "core: Fix clang build"bunnei2020-10-201-3/+3
|
* core: Fix clang buildLioncash2020-10-171-3/+3
| | | | | | | Recent changes to the build system that made more warnings be flagged as errors caused building via clang to break. Fixes #4795
* kernel/thread: Remove unimplemented function prototypeLioncash2020-07-161-2/+0
| | | | This isn't used, so it can be removed.
* kernel/thread: Remove global GetCurrentThread()Lioncash2020-07-151-5/+0
| | | | | 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.
* Kernel: Correct Host Context on Threads and Scheduler.Fernando Sahmkow2020-06-271-1/+1
|
* General: Cleanup legacy code.Fernando Sahmkow2020-06-271-55/+1
|
* HLE_IPC: Correct HLE Event behavior on timeout.Fernando Sahmkow2020-06-271-0/+9
|
* Thread: Release the ARM Interface on exitting.Fernando Sahmkow2020-06-271-0/+5
|
* General: Move ARM_Interface into Threads.Fernando Sahmkow2020-06-271-1/+7
|
* SingleCore: Move Host Timing from a sepparate thread to main cpu thread.Fernando Sahmkow2020-06-271-0/+9
|
* General: Fix microprofile on dynarmic/svc, fix wait tree showing which ↵Fernando Sahmkow2020-06-271-0/+18
| | | | threads were running.
* Kernel: Rewind on SVC change.Fernando Sahmkow2020-06-271-0/+10
|
* Kernel: Preempt Single core on redudant yields.Fernando Sahmkow2020-06-271-4/+5
|
* Scheduler: Correct yields.Fernando Sahmkow2020-06-271-0/+4
|
* SVC: Correct SetThreadActivity.Fernando Sahmkow2020-06-271-8/+14
|
* SCC: Small corrections to CancelSynchronizationFernando Sahmkow2020-06-271-0/+9
|
* SVC: Correct svcWaitForAddress and svcSignalToAddress.Fernando Sahmkow2020-06-271-0/+9
|
* Kernel: Correct Signal on Thread Death and Setup Sync Objects on Thread for ↵Fernando Sahmkow2020-06-271-7/+7
| | | | Debugging
* Core: Correct HLE Event Callbacks and other issues.Fernando Sahmkow2020-06-271-7/+9
|
* SVC: Correct SendSyncRequest.Fernando Sahmkow2020-06-271-29/+53
|
* SVC: Correct SignalEvent, ClearEvent, ResetSignal, WaitSynchronization, ↵Fernando Sahmkow2020-06-271-2/+15
| | | | CancelSynchronization, ArbitrateLock
* SVC: Correct GetThreadPriority, SetThreadPriority, GetThreadCoreMask, ↵Fernando Sahmkow2020-06-271-2/+1
| | | | SetThreadCoreMask, GetCurrentProcessorNumber
* SVC: Correct CreateThread, StartThread, ExitThread, SleepThread.Fernando Sahmkow2020-06-271-4/+8
|
* General: Recover Prometheus project from harddrive failure Fernando Sahmkow2020-06-271-14/+67
| | | | | | | 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.
* core: Implement separate A32/A64 ARM interfaces.bunnei2020-03-021-6/+16
|
* Kernel: Rename ThreadCallbackHandleTable and Setup Thread Ids on Kernel.Fernando Sahmkow2020-02-221-1/+5
|
* Kernel: Refactor synchronization to better match REFernando Sahmkow2020-02-111-0/+1
|
* Kernel: Change WaitObject to Synchronization object. In order to better ↵Fernando Sahmkow2020-02-111-11/+11
| | | | reflect RE.
* kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for ↵bunnei2019-11-241-19/+20
| | | | | | | | kernel objects. (#3154) * kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. - See https://github.com/citra-emu/citra/pull/4710 for details.
* Kernel: Correct Cancel Synchronization.Fernando Sahmkow2019-11-161-0/+9
| | | | | | This commit corrects the behavior of cancel synchronization when the thread is running/ready and ensures the next wait is cancelled as it's suppose to.
* Kernel Thread: Cleanup THREADPROCESSORID_DONT_UPDATE.Fernando Sahmkow2019-10-151-3/+0
|
* Kernel: Address Feedback 2Fernando Sahmkow2019-10-151-6/+3
|
* Kernel: Address Feedback.Fernando Sahmkow2019-10-151-4/+12
|
* Kernel: Corrections to Wait Objects clearing in which a thread could still ↵Fernando Sahmkow2019-10-151-0/+3
| | | | be signalled after a timeout or a cancel.
* Kernel: Clang FormatFernando Sahmkow2019-10-151-1/+1
|
* Scheduler: Implement Yield Count and Core migration on Thread Preemption.Fernando Sahmkow2019-10-151-0/+9
|
* Scheduler: Add protections for Yield bombingFernando Sahmkow2019-10-151-3/+3
| | | | | | In case of redundant yields, the scheduler will now idle the core for it's timeslice, in order to avoid continuously yielding the same thing over and over.
* Kernel: Style and CorrectionsFernando Sahmkow2019-10-151-5/+10
|
* Addapt thread class to the new SchedulerFernando Sahmkow2019-10-151-1/+54
|
* kernel/process: Decouple TLS handling from threadsLioncash2019-07-031-15/+1
| | | | | | | | | | | Extracts out all of the thread local storage management from thread instances themselves and makes the owning process handle the management of the memory. This brings the memory management slightly more in line with how the kernel handles these allocations. Furthermore, this also makes the TLS page management a little more readable compared to the lingering implementation that was carried over from Citra.