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

Issue 1909353002: [wasm] Make wasm info available on the stack trace (Closed)

Created:
4 years, 8 months ago by Clemens Hammacher
Modified:
4 years, 7 months ago
Reviewers:
titzer, Yang
CC:
Paweł Hajdan Jr., v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@wasm-offset-table-3
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[wasm] Make wasm info available on the stack trace This changes different locations to extract the reference to the wasm object and the function index from the stack trace, and make it available through all the APIs which process stack traces. The javascript CallSite object now has the new methods isWasm(), getWasmObject() and getWasmFunctionIndex(); the byte offset is available via getPosition(). Function names of wasm frames should be fully functional with this commit, position information works reliably for calls, but not for traps like unreachable or out-of-bounds accesses. R=titzer@chromium.org, yangguo@chromium.org Committed: https://crrev.com/a4cd1eef0a08f93d64e8b2d8e566972fc23a5ef8 Cr-Commit-Position: refs/heads/master@{#36067}

Patch Set 1 #

Patch Set 2 : rebase #

Patch Set 3 : fix unused variable in release build #

Patch Set 4 : fix another signed/unsigned comparison #

Patch Set 5 : more gcmole problems #

Total comments: 8

Patch Set 6 : address titzers comments #

Patch Set 7 : rebase #

Total comments: 3

Patch Set 8 : remove changes to API #

Patch Set 9 : fix accessor function #

Patch Set 10 : rebase #

Total comments: 36

Patch Set 11 : address yang's comments #

Total comments: 4

Patch Set 12 : more beautification #

Total comments: 8

Patch Set 13 : last changes #

Unified diffs Side-by-side diffs Delta from patch set Stats (+353 lines, -257 lines) Patch
M src/compiler/wasm-compiler.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +1 line, -6 lines 0 comments Download
M src/frames.h View 1 2 3 4 5 6 7 8 9 10 5 chunks +15 lines, -23 lines 0 comments Download
M src/frames.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +26 lines, -34 lines 0 comments Download
M src/heap-symbols.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
M src/isolate.cc View 1 2 3 4 5 6 7 8 9 10 11 12 7 chunks +136 lines, -97 lines 0 comments Download
M src/js/messages.js View 1 2 3 4 5 6 7 8 9 10 11 7 chunks +32 lines, -5 lines 0 comments Download
M src/messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +6 lines, -3 lines 0 comments Download
M src/messages.cc View 1 2 3 4 5 6 7 8 9 10 11 12 10 chunks +45 lines, -23 lines 0 comments Download
M src/profiler/allocation-tracker.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M src/profiler/sampling-heap-profiler.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +2 lines, -2 lines 0 comments Download
M src/runtime/runtime.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +2 lines, -1 line 0 comments Download
M src/runtime/runtime-function.cc View 1 2 3 4 5 6 7 2 chunks +11 lines, -0 lines 0 comments Download
M src/runtime/runtime-internal.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +9 lines, -9 lines 0 comments Download
M test/cctest/wasm/test-wasm-stack.cc View 1 2 3 4 5 6 7 8 9 10 11 6 chunks +22 lines, -15 lines 0 comments Download
M test/cctest/wasm/wasm-run-utils.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +2 lines, -7 lines 0 comments Download
M test/mjsunit/wasm/stack.js View 1 2 3 4 5 6 7 8 9 10 6 chunks +40 lines, -30 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 22 (5 generated)
Clemens Hammacher
4 years, 8 months ago (2016-04-22 10:45:15 UTC) #1
titzer
https://codereview.chromium.org/1909353002/diff/80001/src/api.cc File src/api.cc (right): https://codereview.chromium.org/1909353002/diff/80001/src/api.cc#newcode2571 src/api.cc:2571: #define STACKFRAME_PROPERTY_HELPER(obj, propertyName, MAKE_SCOPE) \ As tempting as this ...
4 years, 8 months ago (2016-04-22 12:16:26 UTC) #2
Clemens Hammacher
+yangguo for src/js/messages.js https://codereview.chromium.org/1909353002/diff/80001/src/api.cc File src/api.cc (right): https://codereview.chromium.org/1909353002/diff/80001/src/api.cc#newcode2571 src/api.cc:2571: #define STACKFRAME_PROPERTY_HELPER(obj, propertyName, MAKE_SCOPE) \ On ...
4 years, 8 months ago (2016-04-26 14:00:10 UTC) #5
Clemens Hammacher
PTAL.
4 years, 7 months ago (2016-04-27 13:55:03 UTC) #6
Yang
Wow. This is a pretty intrusive change to the frame iterator. It seems to me ...
4 years, 7 months ago (2016-04-28 13:08:43 UTC) #7
Clemens Hammacher
On 2016/04/28 at 13:08:43, yangguo wrote: > Wow. This is a pretty intrusive change to ...
4 years, 7 months ago (2016-04-29 08:13:50 UTC) #8
Clemens Hammacher
I removed all changes to public APIs, and make the information available now via the ...
4 years, 7 months ago (2016-05-02 15:01:48 UTC) #9
Yang
https://codereview.chromium.org/1909353002/diff/180001/src/compiler/wasm-compiler.cc File src/compiler/wasm-compiler.cc (right): https://codereview.chromium.org/1909353002/diff/180001/src/compiler/wasm-compiler.cc#newcode3058 src/compiler/wasm-compiler.cc:3058: maybe_name = isolate_->factory()->NewStringFromUtf8( Can we have brackets around if-body ...
4 years, 7 months ago (2016-05-03 18:59:08 UTC) #10
Clemens Hammacher
Thanks for the detailed comments. I fixed most of them, and commented on the rest. ...
4 years, 7 months ago (2016-05-04 09:06:20 UTC) #11
Yang
some more comments. https://codereview.chromium.org/1909353002/diff/180001/src/frames.cc File src/frames.cc (right): https://codereview.chromium.org/1909353002/diff/180001/src/frames.cc#newcode1360 src/frames.cc:1360: Object* WasmFrame::function_name(Handle<Code> code) { On 2016/05/04 ...
4 years, 7 months ago (2016-05-04 12:04:27 UTC) #12
Clemens Hammacher
All done. On 2016/05/04 12:04:27, Yang wrote: > https://codereview.chromium.org/1909353002/diff/180001/src/js/messages.js#newcode635 > src/js/messages.js:635: IS_STRING(wasm) ? wasm : ...
4 years, 7 months ago (2016-05-04 12:44:51 UTC) #13
Yang
LGTM once comments are addressed. https://codereview.chromium.org/1909353002/diff/220001/src/frames.cc File src/frames.cc (right): https://codereview.chromium.org/1909353002/diff/220001/src/frames.cc#newcode1357 src/frames.cc:1357: Object* wasm_obj_or_string = wasm_obj(); ...
4 years, 7 months ago (2016-05-04 19:02:22 UTC) #14
Clemens Hammacher
https://codereview.chromium.org/1909353002/diff/220001/src/frames.cc File src/frames.cc (right): https://codereview.chromium.org/1909353002/diff/220001/src/frames.cc#newcode1357 src/frames.cc:1357: Object* wasm_obj_or_string = wasm_obj(); On 2016/05/04 19:02:21, Yang wrote: ...
4 years, 7 months ago (2016-05-05 12:29:16 UTC) #15
titzer
On 2016/05/05 12:29:16, Clemens Hammacher wrote: > https://codereview.chromium.org/1909353002/diff/220001/src/frames.cc > File src/frames.cc (right): > > https://codereview.chromium.org/1909353002/diff/220001/src/frames.cc#newcode1357 ...
4 years, 7 months ago (2016-05-06 08:38:28 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1909353002/240001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1909353002/240001
4 years, 7 months ago (2016-05-06 08:39:16 UTC) #19
commit-bot: I haz the power
Committed patchset #13 (id:240001)
4 years, 7 months ago (2016-05-06 09:07:36 UTC) #20
commit-bot: I haz the power
4 years, 7 months ago (2016-05-06 09:07:56 UTC) #22
Message was sent while issue was closed.
Patchset 13 (id:??) landed as
https://crrev.com/a4cd1eef0a08f93d64e8b2d8e566972fc23a5ef8
Cr-Commit-Position: refs/heads/master@{#36067}

Powered by Google App Engine
This is Rietveld 408576698