• Benedikt Meurer's avatar
    [inspector][wasm] Improve Scope view and instance preview. · a23adbbc
    Benedikt Meurer authored
    This adds the following internal properties to `WasmInstanceObject`
    values in DevTools:
    
     - `[[Module]]` pointing to the `WasmModuleObject`, allowing the
       developer to find the module to an instance no matter where in
       DevTools front-end the instance is inspected.
     - `[[Functions]]`, `[[Globals]]`, `[[Memories]]`, and `[[Tables]]`
       are shown (when they aren't empty), allowing developers to inspect
       the entities within an instance no matter where in DevTools front-end
       it's inspected.
    
    This also updates the _Module_ scope for Wasm frames to show the entity
    containers (`functions`, `globals`, `memories` and `tables`) in addition
    to the `instance` and `module` to make it easier accessible (fewer
    clicks to get there), but also to align it better with the _Add property
    path to Watch_ and _Copy property path_ features (since exactly the same
    names are exposed via Debug Evaluate on Wasm frames).
    
    ```
    > Stack
    > Locals
    v Module
      > module
      > instance
      > functions
      > globals
      > memories
      > tables
    ```
    
    Drive-by-fix: Move GetWasmModuleObjectInternalProperties() logic into
    debug-wasm-support.cc
    
    Screenshot: https://imgur.com/ksEHG2I.png
    Doc: http://bit.ly/devtools-wasm-entities
    Fixed: chromium:1165294
    Bug: chromium:1071432, chromium:1164241, chromium:1165304
    Change-Id: Ia88fb2705287c79988ff2b432e4a33ac34e098f5
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2622912Reviewed-by: 's avatarPhilip Pfaffe <pfaffe@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#72042}
    a23adbbc
Name
Last commit
Last update
..
console Loading commit data...
counters Loading commit data...
cpu-profiler Loading commit data...
debugger Loading commit data...
heap-profiler Loading commit data...
regress Loading commit data...
runtime Loading commit data...
runtime-call-stats Loading commit data...
sessions Loading commit data...
type-profiler Loading commit data...
BUILD.gn Loading commit data...
DEPS Loading commit data...
DIR_METADATA Loading commit data...
OWNERS Loading commit data...
frontend-channel.h Loading commit data...
inspector-test.cc Loading commit data...
inspector.status Loading commit data...
isolate-data.cc Loading commit data...
isolate-data.h Loading commit data...
json-parse-expected.txt Loading commit data...
json-parse.js Loading commit data...
print-method-not-found-expected.txt Loading commit data...
print-method-not-found.js Loading commit data...
protocol-test.js Loading commit data...
task-runner.cc Loading commit data...
task-runner.h Loading commit data...
tasks.cc Loading commit data...
tasks.h Loading commit data...
testcfg.py Loading commit data...
utils.cc Loading commit data...
utils.h Loading commit data...
wasm-inspector-test.js Loading commit data...