11fa409a24
This adds a {wasm::DebugInfo} struct which will hold the {wasm::DebugSideTable}s for individual Liftoff functions, and will use them to construct local scope information. R=jkummerow@chromium.org, bmeurer@chromium.org Bug: v8:10019 Change-Id: I7869cec5000e9b126c891a242fcccfc53c67662e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1975758 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#65563}
143 lines
2.8 KiB
Plaintext
143 lines
2.8 KiB
Plaintext
Test retrieving scope information from compiled Liftoff frames
|
|
Installing instantiate code.
|
|
Waiting for three wasm scripts to be parsed.
|
|
Calling instantiate function.
|
|
Got wasm script!
|
|
Got wasm script!
|
|
Got wasm script!
|
|
Setting breakpoint on line 2 (first instruction) of third function
|
|
{
|
|
columnNumber : 2
|
|
lineNumber : 2
|
|
scriptId : <scriptId>
|
|
}
|
|
Paused:
|
|
(local i32)
|
|
#local.get 0
|
|
global.set 0
|
|
|
|
Scope:
|
|
at C (interpreted) (2:2):
|
|
- scope (global):
|
|
globals: "global#0": 0 (number)
|
|
- scope (local):
|
|
locals: "i32_arg": 42 (number), "i32_local": 0 (number)
|
|
stack:
|
|
at B (liftoff) (7:2):
|
|
- scope (global):
|
|
globals: "global#0": 0 (number)
|
|
- scope (local):
|
|
at A (liftoff) (2:2):
|
|
- scope (global):
|
|
globals: "global#0": 0 (number)
|
|
- scope (local):
|
|
at (anonymous) (0:17):
|
|
- scope (global):
|
|
-- skipped globals
|
|
|
|
Paused:
|
|
local.get 0
|
|
#global.set 0
|
|
i32.const 47
|
|
|
|
Scope:
|
|
at C (interpreted) (3:2):
|
|
- scope (global):
|
|
globals: "global#0": 0 (number)
|
|
- scope (local):
|
|
locals: "i32_arg": 42 (number), "i32_local": 0 (number)
|
|
stack: "0": 42 (number)
|
|
at B (liftoff) (7:2):
|
|
- scope (global):
|
|
globals: "global#0": 0 (number)
|
|
- scope (local):
|
|
at A (liftoff) (2:2):
|
|
- scope (global):
|
|
globals: "global#0": 0 (number)
|
|
- scope (local):
|
|
at (anonymous) (0:17):
|
|
- scope (global):
|
|
-- skipped globals
|
|
|
|
Paused:
|
|
global.set 0
|
|
#i32.const 47
|
|
local.set 1
|
|
|
|
Scope:
|
|
at C (interpreted) (4:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
locals: "i32_arg": 42 (number), "i32_local": 0 (number)
|
|
stack:
|
|
at B (liftoff) (7:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
at A (liftoff) (2:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
at (anonymous) (0:17):
|
|
- scope (global):
|
|
-- skipped globals
|
|
|
|
Paused:
|
|
i32.const 47
|
|
#local.set 1
|
|
end
|
|
|
|
Scope:
|
|
at C (interpreted) (5:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
locals: "i32_arg": 42 (number), "i32_local": 0 (number)
|
|
stack: "0": 47 (number)
|
|
at B (liftoff) (7:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
at A (liftoff) (2:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
at (anonymous) (0:17):
|
|
- scope (global):
|
|
-- skipped globals
|
|
|
|
Paused:
|
|
local.set 1
|
|
#end
|
|
|
|
|
|
Scope:
|
|
at C (interpreted) (6:0):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
locals: "i32_arg": 42 (number), "i32_local": 47 (number)
|
|
stack:
|
|
at B (liftoff) (7:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
at A (liftoff) (2:2):
|
|
- scope (global):
|
|
globals: "global#0": 42 (number)
|
|
- scope (local):
|
|
at (anonymous) (0:17):
|
|
- scope (global):
|
|
-- skipped globals
|
|
|
|
Paused:
|
|
instance.exports.main(42)#
|
|
|
|
Scope:
|
|
at (anonymous) (0:25):
|
|
- scope (global):
|
|
-- skipped globals
|
|
|
|
exports.main returned. Test finished.
|