• Home
  • Raw
  • Download

Lines Matching refs:job

159   Job* job = new Job(std::make_unique<BackgroundCompileTask>(  in Enqueue()  local
165 reinterpret_cast<Address>(job)); in Enqueue()
178 all_jobs_.insert(job); in Enqueue()
180 pending_background_jobs_.push_back(job); in Enqueue()
189 Job* job = nullptr; in IsEnqueued() local
192 job = reinterpret_cast<Job*>( in IsEnqueued()
193 UncompiledDataWithPreparseDataAndJob::cast(function_data).job()); in IsEnqueued()
195 job = reinterpret_cast<Job*>( in IsEnqueued()
196 UncompiledDataWithoutPreparseDataWithJob::cast(function_data).job()); in IsEnqueued()
198 return job != nullptr; in IsEnqueued()
202 Job* job, const base::MutexGuard& lock) { in WaitForJobIfRunningOnBackground() argument
207 if (!job->is_running_on_background()) { in WaitForJobIfRunningOnBackground()
208 if (job->state == Job::State::kPending) { in WaitForJobIfRunningOnBackground()
210 pending_background_jobs_.end(), job), in WaitForJobIfRunningOnBackground()
217 pending_background_jobs_.end(), job)); in WaitForJobIfRunningOnBackground()
218 job->state = Job::State::kPendingToRunOnForeground; in WaitForJobIfRunningOnBackground()
221 DCHECK_EQ(job->state, Job::State::kReadyToFinalize); in WaitForJobIfRunningOnBackground()
223 std::count(finalizable_jobs_.begin(), finalizable_jobs_.end(), job), in WaitForJobIfRunningOnBackground()
229 std::remove(finalizable_jobs_.begin(), finalizable_jobs_.end(), job)); in WaitForJobIfRunningOnBackground()
230 job->state = Job::State::kFinalizingNow; in WaitForJobIfRunningOnBackground()
235 main_thread_blocking_on_job_ = job; in WaitForJobIfRunningOnBackground()
240 DCHECK_EQ(job->state, Job::State::kReadyToFinalize); in WaitForJobIfRunningOnBackground()
241 DCHECK_EQ(std::count(finalizable_jobs_.begin(), finalizable_jobs_.end(), job), in WaitForJobIfRunningOnBackground()
247 std::remove(finalizable_jobs_.begin(), finalizable_jobs_.end(), job)); in WaitForJobIfRunningOnBackground()
248 job->state = Job::State::kFinalizingNow; in WaitForJobIfRunningOnBackground()
261 Job* job; in FinishNow() local
265 job = GetJobFor(function, lock); in FinishNow()
266 WaitForJobIfRunningOnBackground(job, lock); in FinishNow()
269 if (job->state == Job::State::kPendingToRunOnForeground) { in FinishNow()
270 job->task->RunOnMainThread(isolate_); in FinishNow()
271 job->state = Job::State::kFinalizingNow; in FinishNow()
277 pending_background_jobs_.end(), job), in FinishNow()
280 std::count(finalizable_jobs_.begin(), finalizable_jobs_.end(), job), 0); in FinishNow()
281 DCHECK_EQ(job->state, Job::State::kFinalizingNow); in FinishNow()
285 job->task.get(), isolate_, Compiler::KEEP_EXCEPTION); in FinishNow()
286 job->state = Job::State::kFinalized; in FinishNow()
289 DeleteJob(job); in FinishNow()
310 Job* job = GetJobFor(shared_info, lock); in AbortJob() local
311 if (job->is_running_on_background()) { in AbortJob()
314 job->state = Job::State::kAbortRequested; in AbortJob()
316 if (job->state == Job::State::kPending) { in AbortJob()
318 pending_background_jobs_.end(), job), in AbortJob()
323 pending_background_jobs_.end(), job)); in AbortJob()
324 job->state = Job::State::kAbortingNow; in AbortJob()
326 } else if (job->state == Job::State::kReadyToFinalize) { in AbortJob()
328 std::count(finalizable_jobs_.begin(), finalizable_jobs_.end(), job), in AbortJob()
332 std::remove(finalizable_jobs_.begin(), finalizable_jobs_.end(), job)); in AbortJob()
333 job->state = Job::State::kAbortingNow; in AbortJob()
337 job->task->AbortFunction(); in AbortJob()
338 job->state = Job::State::kFinalized; in AbortJob()
339 DeleteJob(job, lock); in AbortJob()
349 for (Job* job : pending_background_jobs_) { in AbortAll()
350 job->task->AbortFunction(); in AbortAll()
351 job->state = Job::State::kFinalized; in AbortAll()
352 DeleteJob(job, lock); in AbortAll()
355 for (Job* job : finalizable_jobs_) { in AbortAll()
356 job->task->AbortFunction(); in AbortAll()
357 job->state = Job::State::kFinalized; in AbortAll()
358 DeleteJob(job, lock); in AbortAll()
361 for (Job* job : jobs_to_dispose_) { in AbortAll()
362 delete job; in AbortAll()
379 UncompiledDataWithPreparseDataAndJob::cast(function_data).job()); in GetJobFor()
382 UncompiledDataWithoutPreparseDataWithJob::cast(function_data).job()); in GetJobFor()
411 Job* job = nullptr; in DoBackgroundWork() local
416 job = pending_background_jobs_.back(); in DoBackgroundWork()
418 DCHECK_EQ(job->state, Job::State::kPending); in DoBackgroundWork()
420 job->state = Job::State::kRunning; in DoBackgroundWork()
432 job->task->Run(&isolate, &reusable_state); in DoBackgroundWork()
436 if (job->state == Job::State::kRunning) { in DoBackgroundWork()
437 job->state = Job::State::kReadyToFinalize; in DoBackgroundWork()
441 DCHECK_EQ(job->state, Job::State::kAbortRequested); in DoBackgroundWork()
442 job->state = Job::State::kAborted; in DoBackgroundWork()
444 finalizable_jobs_.push_back(job); in DoBackgroundWork()
447 if (main_thread_blocking_on_job_ == job) { in DoBackgroundWork()
457 Job* job = nullptr; in DoBackgroundWork() local
461 job = jobs_to_dispose_.back(); in DoBackgroundWork()
467 delete job; in DoBackgroundWork()
479 Job* job = finalizable_jobs_.back(); in PopSingleFinalizeJob() local
481 DCHECK(job->state == Job::State::kReadyToFinalize || in PopSingleFinalizeJob()
482 job->state == Job::State::kAborted); in PopSingleFinalizeJob()
483 if (job->state == Job::State::kReadyToFinalize) { in PopSingleFinalizeJob()
484 job->state = Job::State::kFinalizingNow; in PopSingleFinalizeJob()
486 DCHECK_EQ(job->state, Job::State::kAborted); in PopSingleFinalizeJob()
487 job->state = Job::State::kAbortingNow; in PopSingleFinalizeJob()
489 return job; in PopSingleFinalizeJob()
493 Job* job = PopSingleFinalizeJob(); in FinalizeSingleJob() local
494 if (job == nullptr) return false; in FinalizeSingleJob()
500 if (job->state == Job::State::kFinalizingNow) { in FinalizeSingleJob()
502 Compiler::FinalizeBackgroundCompileTask(job->task.get(), isolate_, in FinalizeSingleJob()
505 DCHECK_EQ(job->state, Job::State::kAbortingNow); in FinalizeSingleJob()
506 job->task->AbortFunction(); in FinalizeSingleJob()
508 job->state = Job::State::kFinalized; in FinalizeSingleJob()
509 DeleteJob(job); in FinalizeSingleJob()
539 void LazyCompileDispatcher::DeleteJob(Job* job) { in DeleteJob() argument
540 DCHECK(job->state == Job::State::kFinalized); in DeleteJob()
542 DeleteJob(job, lock); in DeleteJob()
545 void LazyCompileDispatcher::DeleteJob(Job* job, const base::MutexGuard&) { in DeleteJob() argument
546 DCHECK(job->state == Job::State::kFinalized); in DeleteJob()
548 all_jobs_.erase(job); in DeleteJob()
550 jobs_to_dispose_.push_back(job); in DeleteJob()
562 for (Job* job : all_jobs_) { in VerifyBackgroundTaskCount()
563 switch (job->state) { in VerifyBackgroundTaskCount()