Bug 948183 - OdinMonkey: don't notifyAll when starting an AsmJSParallelTask (r=sstangl)

--HG--
extra : rebase_source : ac681cb509a49b6ff84c184e4589d4e5bd4e3760
This commit is contained in:
Luke Wagner 2013-12-09 17:44:22 -06:00
Родитель 748bd61977
Коммит 25224d3b97
2 изменённых файлов: 9 добавлений и 1 удалений

Просмотреть файл

@ -73,7 +73,7 @@ js::StartOffThreadAsmJSCompile(ExclusiveContext *cx, AsmJSParallelTask *asmData)
if (!state.asmJSWorklist.append(asmData))
return false;
state.notifyAll(WorkerThreadState::PRODUCER);
state.notifyOne(WorkerThreadState::PRODUCER);
return true;
}
@ -501,6 +501,13 @@ WorkerThreadState::notifyAll(CondVar which)
PR_NotifyAllCondVar((which == CONSUMER) ? consumerWakeup : producerWakeup);
}
void
WorkerThreadState::notifyOne(CondVar which)
{
JS_ASSERT(isLocked());
PR_NotifyCondVar((which == CONSUMER) ? consumerWakeup : producerWakeup);
}
bool
WorkerThreadState::canStartAsmJSCompile()
{

Просмотреть файл

@ -95,6 +95,7 @@ class WorkerThreadState
void wait(CondVar which, uint32_t timeoutMillis = 0);
void notifyAll(CondVar which);
void notifyOne(CondVar which);
bool canStartAsmJSCompile();
bool canStartIonCompile();