diff options
| author | 2015-01-25 22:56:17 -0800 | |
|---|---|---|
| committer | 2015-02-09 21:47:12 -0800 | |
| commit | 5fcbfc06eb247c0a4c1db201ac9050d80d4e4020 (patch) | |
| tree | 4cdac59449b025c7a07e8655f29eda2fbcb423fe /src/core/arm/arm_interface.h | |
| parent | Merge pull request #551 from bunnei/mutex-fixes (diff) | |
| download | yuzu-5fcbfc06eb247c0a4c1db201ac9050d80d4e4020.tar.gz yuzu-5fcbfc06eb247c0a4c1db201ac9050d80d4e4020.tar.xz yuzu-5fcbfc06eb247c0a4c1db201ac9050d80d4e4020.zip | |
Scheduler refactor Pt. 1
* Simplifies scheduling logic, specifically regarding thread status. It should be much clearer which statuses are valid
for a thread at any given point in the system.
* Removes dead code from thread.cpp.
* Moves the implementation of resetting a ThreadContext to the corresponding core's implementation.
Other changes:
* Fixed comments in arm interfaces.
* Updated comments in thread.cpp
* Removed confusing, useless, functions like MakeReady() and ChangeStatus() from thread.cpp.
* Removed stack_size from Thread. In the CTR kernel, the thread's stack would be allocated before thread creation.
Diffstat (limited to 'src/core/arm/arm_interface.h')
| -rw-r--r-- | src/core/arm/arm_interface.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/core/arm/arm_interface.h b/src/core/arm/arm_interface.h index e612f7439..ef37ee055 100644 --- a/src/core/arm/arm_interface.h +++ b/src/core/arm/arm_interface.h | |||
| @@ -86,6 +86,15 @@ public: | |||
| 86 | virtual void AddTicks(u64 ticks) = 0; | 86 | virtual void AddTicks(u64 ticks) = 0; |
| 87 | 87 | ||
| 88 | /** | 88 | /** |
| 89 | * Initializes a CPU context for use on this CPU | ||
| 90 | * @param context Thread context to reset | ||
| 91 | * @param stack_top Pointer to the top of the stack | ||
| 92 | * @param entry_point Entry point for execution | ||
| 93 | * @param arg User argument for thread | ||
| 94 | */ | ||
| 95 | virtual void ResetContext(Core::ThreadContext& context, u32 stack_top, u32 entry_point, u32 arg) = 0; | ||
| 96 | |||
| 97 | /** | ||
| 89 | * Saves the current CPU context | 98 | * Saves the current CPU context |
| 90 | * @param ctx Thread context to save | 99 | * @param ctx Thread context to save |
| 91 | */ | 100 | */ |