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

Issue 1605633003: [interpreter] First implementation of stack unwinding. (Closed)

Created:
4 years, 11 months ago by Michael Starzinger
Modified:
4 years, 11 months ago
Reviewers:
oth, rmcilroy
CC:
v8-reviews_googlegroups.com, oth, rmcilroy
Base URL:
https://chromium.googlesource.com/v8/v8.git@local_int-5
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[interpreter] First implementation of stack unwinding. This implements a first prototype of stack unwinding for interpreted frames. The unwinding machinery performs a range-based lookup in the given handler table and potentially continues dispatching at the handler offset. Note that this does not yet correctly restore the context to the correct value when the handler is being entered. R=rmcilroy@chromium.org,oth@chromium.org BUG=v8:4674 LOG=n Committed: https://crrev.com/0b3066b8f5d914bb1a8c5dd0404a866d389d7798 Cr-Commit-Position: refs/heads/master@{#33414}

Patch Set 1 #

Total comments: 6

Patch Set 2 : Addressed comments. #

Patch Set 3 : Refactor builtin helpers. #

Patch Set 4 : Ported to most architectures. #

Patch Set 5 : Rebased #

Patch Set 6 : Adapt bytecode generator tests. #

Patch Set 7 : Fix scoping issue. #

Patch Set 8 : Disable failing tests. #

Patch Set 9 : Rebase and skip one more test. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+344 lines, -150 lines) Patch
M src/arm/builtins-arm.cc View 1 2 3 3 chunks +30 lines, -19 lines 0 comments Download
M src/arm64/builtins-arm64.cc View 1 2 3 3 chunks +30 lines, -19 lines 0 comments Download
M src/builtins.h View 1 2 3 4 2 chunks +2 lines, -0 lines 0 comments Download
M src/frames.h View 1 3 chunks +19 lines, -0 lines 0 comments Download
M src/frames.cc View 1 1 chunk +27 lines, -0 lines 0 comments Download
M src/ia32/builtins-ia32.cc View 1 2 3 4 chunks +38 lines, -19 lines 0 comments Download
M src/interpreter/bytecode-generator.h View 1 2 3 4 5 6 2 chunks +4 lines, -0 lines 0 comments Download
M src/interpreter/bytecode-generator.cc View 1 2 3 4 5 6 7 8 3 chunks +30 lines, -12 lines 0 comments Download
M src/isolate.cc View 1 chunk +20 lines, -0 lines 0 comments Download
M src/mips/builtins-mips.cc View 1 2 3 4 3 chunks +30 lines, -19 lines 0 comments Download
M src/mips64/builtins-mips64.cc View 1 2 3 3 chunks +30 lines, -19 lines 0 comments Download
M src/x64/builtins-x64.cc View 1 2 3 chunks +34 lines, -23 lines 0 comments Download
M test/cctest/cctest.status View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download
M test/cctest/interpreter/test-bytecode-generator.cc View 1 2 3 4 5 6 7 chunks +25 lines, -12 lines 0 comments Download
M test/cctest/interpreter/test-interpreter.cc View 2 chunks +17 lines, -8 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 2 3 4 5 6 7 8 6 chunks +6 lines, -0 lines 0 comments Download
M test/test262/test262.status View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 12 (3 generated)
Michael Starzinger
Ports are not yet done, but I wanted to get a first round of comments ...
4 years, 11 months ago (2016-01-19 18:21:51 UTC) #1
oth
Superb! Very clean. This would be good to land as soon as other platforms are ...
4 years, 11 months ago (2016-01-20 07:49:08 UTC) #2
rmcilroy
Very nice, pleasantly surprised how little extra support you needed to add. Lgtm. https://codereview.chromium.org/1605633003/diff/1/src/frames.cc File ...
4 years, 11 months ago (2016-01-20 08:52:13 UTC) #3
Michael Starzinger
Thanks. Comments addressed. Going for ports now. https://codereview.chromium.org/1605633003/diff/1/src/frames.cc File src/frames.cc (right): https://codereview.chromium.org/1605633003/diff/1/src/frames.cc#newcode1143 src/frames.cc:1143: int raw_offset ...
4 years, 11 months ago (2016-01-20 11:45:27 UTC) #4
Michael Starzinger
PTAL, this is ready for final review. Note that I had to disable a handful ...
4 years, 11 months ago (2016-01-20 14:21:42 UTC) #5
oth
very cool, lgtm.
4 years, 11 months ago (2016-01-20 14:48:43 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1605633003/150001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1605633003/150001
4 years, 11 months ago (2016-01-20 17:49:15 UTC) #9
commit-bot: I haz the power
Committed patchset #9 (id:150001)
4 years, 11 months ago (2016-01-20 18:10:22 UTC) #10
commit-bot: I haz the power
4 years, 11 months ago (2016-01-20 18:10:48 UTC) #12
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/0b3066b8f5d914bb1a8c5dd0404a866d389d7798
Cr-Commit-Position: refs/heads/master@{#33414}

Powered by Google App Engine
This is Rietveld 408576698