| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-07-24 | core_timing: Split off utility functions into core_timing_util | MerryMage | |
| 2018-07-21 | Merge pull request #751 from Subv/tpidr_el0 | bunnei | |
| CPU: Save and restore the TPIDR_EL0 system register on every context switch | |||
| 2018-07-20 | CPU: Save and restore the TPIDR_EL0 system register on every context switch. | Subv | |
| Note that there's currently a dynarmic bug preventing this register from being written. | |||
| 2018-07-19 | thread: Convert ThreadStatus into an enum class | Lioncash | |
| Makes the thread status strongly typed, so implicit conversions can't happen. It also makes it easier to catch mistakes at compile time. | |||
| 2018-07-18 | Merge pull request #690 from lioncash/move | bunnei | |
| core/memory, core/hle/kernel: Use std::move where applicable | |||
| 2018-07-18 | core/memory, core/hle/kernel: Use std::move where applicable | Lioncash | |
| Avoids pointless copies | |||
| 2018-07-18 | core: Don't construct instance of Core::System, just to access its live instance | Lioncash | |
| This would result in a lot of allocations and related object construction, just to toss it all away immediately after the call. These are definitely not intentional, and it was intended that all of these should have been accessing the static function GetInstance() through the name itself, not constructed instances. | |||
| 2018-07-02 | Update clang format | James Rowe | |
| 2018-07-02 | Rename logging macro back to LOG_* | James Rowe | |
| 2018-06-21 | Kernel/Arbiters: Implement WaitForAddress | Michael Scire | |
| 2018-06-02 | Kernel/Threads: A thread waking up by timeout from a WaitProcessWideKey may ↵ | Subv | |
| already have an assigned lock owner. This situation may happen like so: Thread 1 with low priority calls WaitProcessWideKey with timeout. Thread 2 with high priority calls WaitProcessWideKey without timeout. Thread 3 calls SignalProcessWideKey - Thread 2 acquires the lock and awakens. - Thread 1 can't acquire the lock and is put to sleep with the lock owner being Thread 2. Thread 1's timeout expires, with the lock owner still being set to Thread 2. | |||
| 2018-05-30 | Kernel/Thread: Corrected a typo that caused the affinity mask to never be ↵ | Subv | |
| changed. | |||
| 2018-05-30 | Kernel/Thread: Corrected a typo in an assert about the processor id. | Subv | |
| 2018-05-10 | thread: Rename mask to affinity_masks. | bunnei | |
| 2018-05-10 | thread: Support core change on ResumeFromWait and improve ChangeCore. | bunnei | |
| 2018-05-10 | thread: Initialize ideal_core and mask members. | bunnei | |
| 2018-05-10 | threading: Reschedule only on cores that are necessary. | bunnei | |
| 2018-05-10 | thread: Implement ChangeCore function. | bunnei | |
| 2018-05-10 | core: Implement multicore support. | bunnei | |
| 2018-04-30 | core_timing: Namespace all functions and constants in core_timing's header | Lioncash | |
| All of these variables and functions are related to timings and should be within the namespace. | |||
| 2018-04-27 | general: Convert assertion macros over to be fmt-compatible | Lioncash | |
| 2018-04-25 | kernel: Migrate logging macros to fmt-compatible ones | Lioncash | |
| 2018-04-23 | Kernel: Implemented mutex priority inheritance. | Subv | |
| Verified with a hwtest and implemented based on reverse engineering. Thread A's priority will get bumped to the highest priority among all the threads that are waiting for a mutex that A holds. Once A releases the mutex and ownership is transferred to B, A's priority will return to normal and B's priority will be bumped. | |||
| 2018-04-20 | Kernel: Remove unused ConditionVariable class. | Subv | |
| 2018-04-20 | Kernel: Remove old and unused Mutex code. | Subv | |
| 2018-04-20 | Kernel: Corrected the implementation of svcArbitrateLock and svcArbitrateUnlock. | Subv | |
| Switch mutexes are no longer kernel objects, they are managed in userland and only use the kernel to handle the contention case. Mutex addresses store a special flag value (0x40000000) to notify the guest code that there are still some threads waiting for the mutex to be released. This flag is updated when a thread calls ArbitrateUnlock. TODO: * Fix svcWaitProcessWideKey * Fix svcSignalProcessWideKey * Remove the Mutex class. | |||
| 2018-03-31 | memory: Fix stack region. | bunnei | |
| 2018-03-18 | thread: Add THREADSTATUS_WAIT_HLE_EVENT, remove THREADSTATUS_WAIT_ARB. | bunnei | |
| 2018-03-16 | kernel: Move stack region outside of application heap. | bunnei | |
| 2018-03-16 | MemoryState: Add additional memory states and improve naming. | bunnei | |
| 2018-03-14 | core: Move process creation out of global state. | bunnei | |
| 2018-02-27 | thread: Clear the process list on shutdown. | Jules Blok | |
| 2018-02-18 | kernel: Use Scheduler class for threading. | bunnei | |
| 2018-02-18 | kernel: Remove unused address_arbiter code. | bunnei | |
| 2018-02-18 | Kernel/IPC: Add a small delay after each SyncRequest to prevent thread ↵ | Subv | |
| starvation. Ported from citra PR #3091 The delay specified here is from a Nintendo 3DS, and should be measured in a Nintendo Switch. This change is enough to prevent Puyo Puyo Tetris's main thread starvation. | |||
| 2018-02-14 | thread: Silence formatting specifier warnings | Lioncash | |
| 2018-01-08 | Kernel: Allow chaining WaitSynchronization calls inside a wakeup callback. | Subv | |
| 2018-01-08 | CoreTiming: Reworked CoreTiming (cherry-picked from Citra #3119) | B3n30 | |
| * CoreTiming: New CoreTiming; Add Test for CoreTiming | |||
| 2018-01-02 | arm: Remove SkyEye/Dyncom code that is ARMv6-only. | bunnei | |
| 2017-12-31 | thread: Keep track of the initially created handle. | bunnei | |
| This is kinda crufty, but we need it for now to update guest state variables. | |||
| 2017-12-30 | thread: Main thread should set thread handle to reg 1. | bunnei | |
| 2017-12-30 | thread: Remove THUMB mode flag. | bunnei | |
| 2017-12-30 | thread: Main thread should be ready by default, all others dormant. | bunnei | |
| 2017-12-29 | kernel: Various 64-bit fixes in memory/process/thread | bunnei | |
| 2017-10-31 | hle: Use Switch formatted result codes. | bunnei | |
| 2017-10-19 | hle: Fix QueryMemory response for MemoryInfo. | bunnei | |
| 2017-10-09 | Merge remote-tracking branch 'upstream/master' into nx | bunnei | |
| # Conflicts: # src/core/CMakeLists.txt # src/core/arm/dynarmic/arm_dynarmic.cpp # src/core/arm/dyncom/arm_dyncom.cpp # src/core/hle/kernel/process.cpp # src/core/hle/kernel/thread.cpp # src/core/hle/kernel/thread.h # src/core/hle/kernel/vm_manager.cpp # src/core/loader/3dsx.cpp # src/core/loader/elf.cpp # src/core/loader/ncch.cpp # src/core/memory.cpp # src/core/memory.h # src/core/memory_setup.h | |||
| 2017-10-09 | loader: Various improvements for NSO/NRO loaders. | bunnei | |
| 2017-10-01 | Merge pull request #2971 from Subv/per_process_memops | Sebastian Valle | |
| Memory: Add overloads for ReadBlock and WriteBlock that operate on a specific process. | |||
| 2017-10-01 | Kernel/Thread: Added a helper function to get a thread's command buffer VAddr. | Subv | |
