v8/test
Dmitry Gozman fe3d51e1b2 [inspector] Simplify async stepping
Currently, debugger pauses on async call schedule and then waits for Debugger.pauseOnAsyncCall
with parentStackTraceId to actually schedule the pause.

This CL combines these two steps:
- For local async tasks, it just stores m_taskWithScheduledBreak at the time of schedule,
  to be able to pause once this task is run.
- For external async tasks, it plumbs "should_pause" boolean in V8StackTraceId from
  the point of schedule to the point of execution, and schedules a pause once
  externalAsyncTaskStarted is called with "should_pause" set to true.

This approach greatly simplifies the implementation, and reduced frontend to a single
"breakOnAsyncCall: true" parameter in Debugger.stepInto.

Drive-by: introduce hasScheduledBreakOnNextFunctionCall() to make
SetBreakOnNextFunctionCall management more robust.

Note: artificial pauses at async call schedule time are gone from test expectations -
we now only pause when user actually wants to pause, which makes protocol much simpler.

See also design doc linked in the bug.

BUG=chromium:1000475

Change-Id: I2d16f79c599fe196b2aaeca8223c63437a2954a9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1783724
Commit-Queue: Dmitry Gozman <dgozman@chromium.org>
Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#63737}
2019-09-13 02:33:22 +00:00
..
benchmarks [test] Skip flaky test on predictable mode 2019-05-07 13:57:18 +00:00
cctest Three basic cctests for tracking of old to new pointers 2019-09-12 18:16:00 +00:00
common Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
debugger Add test for debug evaluating a previously non-whitelisted variable 2019-09-11 09:45:33 +00:00
fuzzer Replace base::make_unique by std::make_unique 2019-09-10 11:21:51 +00:00
inspector [inspector] Simplify async stepping 2019-09-13 02:33:22 +00:00
intl [Intl] Clean up by removing the following flags 2019-09-12 22:25:41 +00:00
js-perf-test [jsperf] Add benchmark for LoadConstantFromPrototype 2019-08-16 09:33:06 +00:00
memory [owners] Remove redundant OWNERS files in test/ 2019-06-24 12:44:32 +00:00
message Reland "[destructuring] Elide coercible check for simple keys" 2019-08-30 10:51:49 +00:00
mjsunit Remove redundant buffer read/write checks 2019-09-12 17:29:20 +00:00
mkgrokdump [tools] Teach v8_debug_helper where heap spaces start in ptr-compr mode 2019-09-09 16:14:12 +00:00
mozilla [CSA][cleanup] TNodify builtins constructor gen 2019-09-12 10:55:18 +00:00
preparser Add OWNERS files for src and test 2019-05-30 04:51:21 +00:00
test262 [Intl] Clean up by removing the following flags 2019-09-12 22:25:41 +00:00
torque [torque] Add HeapSlice location references to Torque 2019-08-30 11:51:32 +00:00
unittests [csa] move TNode to separate header 2019-09-12 14:48:03 +00:00
wasm-api-tests [wasm-c-api] Roll bf31edf: Fix life times of host info 2019-08-26 14:28:51 +00:00
wasm-js Reland [wasm] Stage wasm-bigint 2019-09-05 12:02:19 +00:00
wasm-spec-tests Reland [wasm] Stage wasm-bigint 2019-09-05 12:02:19 +00:00
webkit [regexp] Add missing case for EscapeRegExpPattern 2019-07-09 08:11:51 +00:00
BUILD.gn [wasm-c-api] Add tests and fixes 2019-05-28 09:57:04 +00:00
OWNERS Use relative paths to OWNERS files 2019-08-12 13:52:52 +00:00