v8/test/inspector
Simon Zünd 45026a66ef [liveedit] Replace ScopeObject instead of updating positions in-place
Currently, LiveEdit updates the source positions of unchanged SFIs
in-place (the SFI could have moved due to other functions changing).

This interfere with our plans to re-use ScopeInfo-based blocklists
for debug-evaluate. Entries in the global block list cache are keyed
by ScopeInfo's source position. Any closure that escaped a
debug-evaluate will point to the old ScopeInfo in its context chain
and the block lists should stay in-place in case the escaped closure
is called again.

Rather than updating ScopeInfos in-place, this CL updates the
ScopeInfo object wholesale for unchanged SFIs. This is safe todo
given that the old and new ScopeInfo are identical modulo source
positions.

Drive-by: Take the source position of the function token from the
`FunctionLiteral` rather than doing a more expensive position
translation.

Bug: chromium:1363561
Change-Id: I2b8476edd8d7dc4c618e53551aa5692a21d6fb32
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3932724
Commit-Queue: Simon Zünd <szuend@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#83536}
2022-10-05 13:14:47 +00:00
..
console [inspector] Rename console.scheduleTask to console.createTask 2022-07-27 06:09:27 +00:00
cpu-profiler [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
debugger [liveedit] Replace ScopeObject instead of updating positions in-place 2022-10-05 13:14:47 +00:00
heap-profiler Don't run sampling-heap-profiler-flags with stress-incremental-marking 2022-09-15 12:53:28 +00:00
regress [inspector] Fix user-after-free bug around async evaluations 2022-10-04 06:21:23 +00:00
runtime [runtime] Clear array join stack when throwing uncatchable 2022-09-28 07:40:55 +00:00
sessions [inspector] Correct location for inline scripts with sourceURL. 2021-12-29 15:39:22 +00:00
type-profiler [tests] Filter out non-existent methods in inspector tests 2020-01-17 12:21:29 +00:00
BUILD.gn Include test/inspector/regress to swarming 2021-07-29 08:00:47 +00:00
DEPS [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
DIR_METADATA Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
frontend-channel.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
inspector-test.cc [inspector] Fix user-after-free bug around async evaluations 2022-10-04 06:21:23 +00:00
inspector.status [debug] Remove confusing destructuring statement positions. 2022-09-27 14:19:24 +00:00
isolate-data.cc [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
isolate-data.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
json-parse-expected.txt [inspector] Refactor protocol-test.js 2017-05-19 00:35:45 +00:00
json-parse.js [inspector] Refactor protocol-test.js 2017-05-19 00:35:45 +00:00
OWNERS Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
print-method-not-found-expected.txt [tests] Filter out non-existent methods in inspector tests 2020-01-17 12:21:29 +00:00
print-method-not-found.js [tests] Filter out non-existent methods in inspector tests 2020-01-17 12:21:29 +00:00
protocol-test.js [wasm-gc][debugger] Fix struct_index retrieval for generic references 2022-08-24 13:25:50 +00:00
task-runner.cc [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
task-runner.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
tasks.cc Fix name collision of v8::internal::IsolateData 2021-08-25 08:45:53 +00:00
tasks.h Fix name collision of v8::internal::IsolateData 2021-08-25 08:45:53 +00:00
testcfg.py [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
utils.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
utils.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
wasm-inspector-test.js [wasm-gc] Debugger: Provide type info for structs and arrays in tables 2022-08-26 14:51:20 +00:00