-
Andreas Haas authored
With this CL we do not spawn a FinishCompilationUnit foreground task for every WebAssembly function we compile, but instead spawn one foreground task which finishes all existing compilation units (FinishCompilationUnits). A new FinishCompilationUnits task is spawned whenever a compilation task sees that there in no FinishCompilationUnits to finish its compilation unit. In addition the FinishCompilationUnits task gets a time limit. Whenever it is executed for longer than 1ms (this value is also used by the GC), then the task stops and reschedules itself. Thereby we make sure that we do not block the main thread for too long. Change-Id: Ib4f2aed91c60f9c8952b6ba4dd7e5052301417a3 Reviewed-on: https://chromium-review.googlesource.com/508708 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#45449}
457a4a6d