kernel: Remove all dependencies on the global system instance

With this, the kernel finally doesn't depend directly on the global
system instance anymore.
This commit is contained in:
Lioncash
2020-09-14 14:03:10 -04:00
parent 042567e4b2
commit ec2a6e5ba8
5 changed files with 20 additions and 11 deletions

View File

@ -18,8 +18,9 @@ class Memory;
}
namespace Core::Timing {
class CoreTiming;
struct EventType;
}
} // namespace Core::Timing
namespace Kernel {
@ -87,12 +88,14 @@ public:
/**
* Handle a sync request from the emulated application.
*
* @param thread Thread that initiated the request.
* @param memory Memory context to handle the sync request under.
* @param thread Thread that initiated the request.
* @param memory Memory context to handle the sync request under.
* @param core_timing Core timing context to schedule the request event under.
*
* @returns ResultCode from the operation.
*/
ResultCode HandleSyncRequest(std::shared_ptr<Thread> thread, Core::Memory::Memory& memory);
ResultCode HandleSyncRequest(std::shared_ptr<Thread> thread, Core::Memory::Memory& memory,
Core::Timing::CoreTiming& core_timing);
bool ShouldWait(const Thread* thread) const override;