45026a66ef
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} |
||
---|---|---|
.. | ||
console | ||
cpu-profiler | ||
debugger | ||
heap-profiler | ||
regress | ||
runtime | ||
sessions | ||
type-profiler | ||
BUILD.gn | ||
DEPS | ||
DIR_METADATA | ||
frontend-channel.h | ||
inspector-test.cc | ||
inspector.status | ||
isolate-data.cc | ||
isolate-data.h | ||
json-parse-expected.txt | ||
json-parse.js | ||
OWNERS | ||
print-method-not-found-expected.txt | ||
print-method-not-found.js | ||
protocol-test.js | ||
task-runner.cc | ||
task-runner.h | ||
tasks.cc | ||
tasks.h | ||
testcfg.py | ||
utils.cc | ||
utils.h | ||
wasm-inspector-test.js |