v8/test
Andreas Haas d6a02c02b6 [predictable] Run worker task on the foreground task runner
On the PredictablePlatform, worker tasks were executed immediately
instead of posting them in a task queue first. This approach caused
problems because the execution of the worker task blocked progress of
the posting task, and the worker task was always executed in the
context of the posting task, e.g. with an already open HandleScope.

With this CL, worker tasks get posted into the foreground task queue
of the nullptr isolate instead of executing them immediately.
The tasks of the nullptr isolate are then executed after a task of
some other task queue is executed. As the worker tasks are thereby
executed on the same thread as foreground tasks, the behavior is
deterministic.

A consequence of this approach is that each pumping the message loop
of an Isolate may also execute other Isolate's background tasks.

This approach is needed because we don't have a BackgroundTaskRunner but
merely a CallOnWorkerThread method that doesn't know which Isolate the
task corresponds to.

R=clemensb@chromium.org, mlippautz@chromium.org

Bug: v8:9670
Change-Id: I6847ae042146431bc2376d27280be8829f529b95
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2182453
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#67616}
2020-05-06 15:49:07 +00:00
..
benchmarks [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
cctest [parser] Move Compiler::Analyze into Parser 2020-05-06 13:35:37 +00:00
common [wasm][gc] Implement struct.set and switch struct.get to optref 2020-05-05 12:57:42 +00:00
debugger [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
debugging [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
fuzzer [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
inspector [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
intl [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
js-perf-test [js-perf-test] Benchmark for sloppy equality 2020-05-04 08:29:00 +00:00
memory [owners] Remove redundant OWNERS files in test/ 2019-06-24 12:44:32 +00:00
message [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
mjsunit [predictable] Run worker task on the foreground task runner 2020-05-06 15:49:07 +00:00
mkgrokdump [heap] Enable Verify for RO_SPACE when it is shared 2019-11-04 09:55:45 +00:00
mozilla [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
test262 [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
torque [torque] improve formatting of try-label 2020-05-06 09:51:39 +00:00
unittests [wasm][gc][refactor] Decode gc types with immediates consistently. 2020-05-06 14:31:29 +00:00
wasm-api-tests [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
wasm-js [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
wasm-spec-tests [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
webkit [snapshot] Clear reconstructable data prior to d8 stress_snapshot run 2020-05-06 07:11:22 +00:00
BUILD.gn [preparser] deprecate stand-alone "preparser" test-suite 2019-11-20 08:52:59 +00:00
OWNERS Use relative paths to OWNERS files 2019-08-12 13:52:52 +00:00