Added shader state; WIP kernel objects

This commit is contained in:
Hamish Milne 2019-08-11 00:20:09 +01:00 committed by zhupengfei
parent 45788b9c82
commit f79c9668a3
33 changed files with 576 additions and 68 deletions

View file

@ -37,9 +37,9 @@ u32 ThreadManager::NewThreadId() {
return next_thread_id++;
}
Thread::Thread(KernelSystem& kernel)
: WaitObject(kernel), context(kernel.GetThreadManager().NewContext()),
thread_manager(kernel.GetThreadManager()) {}
Thread::Thread()
: context(g_kernel->GetThreadManager().NewContext()),
thread_manager(g_kernel->GetThreadManager()) {}
Thread::~Thread() {}
Thread* ThreadManager::GetCurrentThread() const {
@ -309,7 +309,8 @@ ResultVal<std::shared_ptr<Thread>> KernelSystem::CreateThread(std::string name,
ErrorSummary::InvalidArgument, ErrorLevel::Permanent);
}
auto thread{std::make_shared<Thread>(*this)};
auto thread{std::make_shared<Thread>()};
thread->Init(*this);
thread_manager->thread_list.push_back(thread);
thread_manager->ready_queue.prepare(priority);