Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(371)

Issue 2069823003: [wasm] Enable wasm frame inspection for debugging (Closed)

Created:
4 years, 6 months ago by Clemens Hammacher
Modified:
4 years, 4 months ago
Reviewers:
Yang, ahaas
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@split-wasm-debug
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[wasm] Enable wasm frame inspection for debugging This changes many interfaces to accept StandardFrames instead of JavaScriptFrames, and use the StackTraceFrameIterator instead of the JavaScriptFrameIterator. Also, the detailed frame information array now contains the script in addition to the function, as wasm frames are not associated to any javascript function. R=yangguo@chromium.org, ahaas@chromium.org, titzer@chromium.org BUG=chromium:613110

Patch Set 1 #

Patch Set 2 : fix gcmole reports #

Total comments: 18

Patch Set 3 : address yang's comments #

Total comments: 4

Patch Set 4 : rebase & address andreas' comments #

Total comments: 4

Patch Set 5 : rebase & address more comments #

Total comments: 26

Patch Set 6 : Address more comments #

Patch Set 7 : Add two DCHECKs #

Unified diffs Side-by-side diffs Delta from patch set Stats (+449 lines, -153 lines) Patch
M src/debug/debug.cc View 1 2 3 4 5 6 5 chunks +30 lines, -21 lines 0 comments Download
M src/debug/debug-evaluate.cc View 2 chunks +4 lines, -4 lines 0 comments Download
M src/debug/debug-frames.h View 1 2 3 4 3 chunks +14 lines, -7 lines 0 comments Download
M src/debug/debug-frames.cc View 1 2 8 chunks +37 lines, -23 lines 0 comments Download
M src/debug/debug-scopes.h View 1 2 3 4 2 chunks +1 line, -2 lines 0 comments Download
M src/debug/debug-scopes.cc View 1 2 3 4 5 6 4 chunks +7 lines, -6 lines 0 comments Download
M src/debug/mirrors.js View 4 chunks +26 lines, -13 lines 0 comments Download
M src/frames.h View 1 2 3 6 chunks +26 lines, -9 lines 0 comments Download
M src/frames.cc View 1 2 3 10 chunks +63 lines, -16 lines 0 comments Download
M src/frames-inl.h View 1 2 3 3 chunks +0 lines, -15 lines 0 comments Download
M src/isolate.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M src/isolate.cc View 1 2 3 4 5 1 chunk +5 lines, -0 lines 0 comments Download
M src/objects.h View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M src/objects.cc View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M src/runtime/runtime-debug.cc View 1 2 3 4 5 11 chunks +93 lines, -27 lines 0 comments Download
M src/runtime/runtime-liveedit.cc View 1 chunk +6 lines, -3 lines 0 comments Download
M src/wasm/wasm-debug.h View 1 2 3 1 chunk +6 lines, -1 line 0 comments Download
M src/wasm/wasm-debug.cc View 1 2 3 3 chunks +41 lines, -1 line 0 comments Download
M src/wasm/wasm-module.h View 1 2 3 4 1 chunk +3 lines, -0 lines 0 comments Download
M src/wasm/wasm-module.cc View 1 2 3 4 5 1 chunk +6 lines, -0 lines 0 comments Download
M test/cctest/test-debug.cc View 1 chunk +2 lines, -2 lines 0 comments Download
A test/mjsunit/wasm/frame-inspection.js View 1 2 3 1 chunk +74 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 25 (5 generated)
Clemens Hammacher
4 years, 6 months ago (2016-06-15 19:08:33 UTC) #1
Yang
I would be fine with changing JavaScriptFrameIterator to StackTraceFrameIterator, but I'm very unhappy about adding ...
4 years, 6 months ago (2016-06-16 14:10:42 UTC) #2
Clemens Hammacher
Thanks for the detailed review. Looking at the code, I thought that the FrameInspector would ...
4 years, 6 months ago (2016-06-16 17:02:31 UTC) #3
ahaas
wasm looks good https://codereview.chromium.org/2069823003/diff/40001/src/wasm/wasm-debug.cc File src/wasm/wasm-debug.cc (right): https://codereview.chromium.org/2069823003/diff/40001/src/wasm/wasm-debug.cc#newcode148 src/wasm/wasm-debug.cc:148: int func_bytes_len = offset_arr->get_int(2 * func_index ...
4 years, 6 months ago (2016-06-17 07:25:44 UTC) #4
Clemens Hammacher
https://codereview.chromium.org/2069823003/diff/40001/src/wasm/wasm-debug.cc File src/wasm/wasm-debug.cc (right): https://codereview.chromium.org/2069823003/diff/40001/src/wasm/wasm-debug.cc#newcode148 src/wasm/wasm-debug.cc:148: int func_bytes_len = offset_arr->get_int(2 * func_index + 1); On ...
4 years, 6 months ago (2016-06-17 14:01:46 UTC) #5
clemensh
@Yang: PTAL
4 years, 6 months ago (2016-06-20 13:02:58 UTC) #6
Yang
I'm a bit hesitant with this CL. This changes JavaScriptFrameIterator to StackTraceFrameIterator all over the ...
4 years, 6 months ago (2016-06-20 13:43:40 UTC) #7
Yang
On 2016/06/20 13:43:40, Yang wrote: > I'm a bit hesitant with this CL. This changes ...
4 years, 6 months ago (2016-06-20 13:50:44 UTC) #8
Yang
On 2016/06/20 13:50:44, Yang wrote: > On 2016/06/20 13:43:40, Yang wrote: > > I'm a ...
4 years, 6 months ago (2016-06-21 20:09:13 UTC) #9
Clemens Hammacher
I removed some more explicit wasm checks, so the changes in debug-scopes and other unrelated ...
4 years, 6 months ago (2016-06-23 13:26:10 UTC) #10
Yang
https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc File src/debug/debug.cc (right): https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc#newcode286 src/debug/debug.cc:286: StandardFrame* frame) { Let's keep using JavaScriptFrame as argument ...
4 years, 6 months ago (2016-06-24 05:56:37 UTC) #11
Clemens Hammacher
https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc File src/debug/debug.cc (right): https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc#newcode286 src/debug/debug.cc:286: StandardFrame* frame) { On 2016/06/24 05:56:37, Yang wrote: > ...
4 years, 6 months ago (2016-06-24 09:23:32 UTC) #12
Yang
https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc File src/debug/debug.cc (right): https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc#newcode2333 src/debug/debug.cc:2333: has_frames ? it.frame()->id() : StackFrame::NO_ID; On 2016/06/24 09:23:31, Clemens ...
4 years, 6 months ago (2016-06-24 10:02:57 UTC) #13
Clemens Hammacher
https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc File src/debug/debug.cc (right): https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc#newcode2333 src/debug/debug.cc:2333: has_frames ? it.frame()->id() : StackFrame::NO_ID; On 2016/06/24 10:02:57, Yang ...
4 years, 6 months ago (2016-06-24 10:45:42 UTC) #14
Yang
lgtm with comments. https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc File src/debug/debug.cc (right): https://codereview.chromium.org/2069823003/diff/80001/src/debug/debug.cc#newcode2333 src/debug/debug.cc:2333: has_frames ? it.frame()->id() : StackFrame::NO_ID; On ...
4 years, 6 months ago (2016-06-24 10:52:25 UTC) #15
Clemens Hammacher
@ahaas: I need a proper LGTM, no "wasm looks good" ;) And can you then ...
4 years, 6 months ago (2016-06-24 15:11:58 UTC) #16
ahaas
lgtm
4 years, 5 months ago (2016-06-27 06:56:29 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2069823003/120001
4 years, 5 months ago (2016-06-27 06:56:38 UTC) #20
titzer
On 2016/06/27 06:56:38, commit-bot: I haz the power wrote: > CQ is trying da patch. ...
4 years, 5 months ago (2016-06-29 09:17:14 UTC) #22
titzer
4 years, 5 months ago (2016-06-29 09:23:08 UTC) #23
On 2016/06/29 09:17:14, titzer wrote:
> On 2016/06/27 06:56:38, commit-bot: I haz the power wrote:
> > CQ is trying da patch. Follow status at
> >  
> >
>
https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
> 
> Looks like this patch no longer applies cleanly, so we'll have to rebase it
and
> land it in another CL.

Rebased CL: https://codereview.chromium.org/2109093003/

Powered by Google App Engine
This is Rietveld 408576698