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

Issue 1416543006: [turbofan] Unwind and jump to the catch handler in the deoptimizer. (Closed)

Created:
5 years, 1 month ago by Jarin
Modified:
4 years, 10 months ago
CC:
v8-reviews_googlegroups.com, Michael Starzinger
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[turbofan] Unwind and jump to the catch handler in the deoptimizer. The idea here is to perform the handler lookup in the deoptimizer, and then take the information from the handler table to build the catch handler frame in the deoptimizer. Specifically, we use the pc offset, context location and stack height (in full-code) to tweak the output frame. Sadly, this still requires nasty voodoo for the liveness analyzer so that it keeps variables alive if they are used in the catch handler. Committed: https://crrev.com/ab3b3bec86f2c61e3640a2a3f01b5d6d319ad7aa Cr-Commit-Position: refs/heads/master@{#33936}

Patch Set 1 #

Patch Set 2 : Init fix #

Patch Set 3 : Rebase, test #

Patch Set 4 : Rebase, fix interpreter #

Patch Set 5 : Fix context, add context tests #

Patch Set 6 : Fix #

Patch Set 7 : Tweaks, comments #

Patch Set 8 : Remove the hack signpost #

Total comments: 4

Patch Set 9 : Rebase, review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+420 lines, -44 lines) Patch
M src/compiler/ast-graph-builder.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -1 line 0 comments Download
M src/compiler/ast-graph-builder.cc View 1 2 3 4 5 6 7 8 4 chunks +19 lines, -6 lines 0 comments Download
M src/compiler/liveness-analyzer.h View 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/node-properties.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M src/deoptimizer.h View 1 2 3 4 5 6 7 8 2 chunks +5 lines, -2 lines 0 comments Download
M src/deoptimizer.cc View 1 2 3 4 5 6 7 8 18 chunks +149 lines, -33 lines 0 comments Download
M src/full-codegen/full-codegen.h View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -1 line 0 comments Download
M src/isolate.h View 1 2 2 chunks +5 lines, -0 lines 0 comments Download
M src/isolate.cc View 1 2 3 4 5 6 7 8 3 chunks +8 lines, -1 line 0 comments Download
A test/mjsunit/compiler/try-catch-deopt.js View 1 2 3 4 1 chunk +225 lines, -0 lines 0 comments Download

Messages

Total messages: 18 (10 generated)
Jarin
Could you take a look, please?
4 years, 10 months ago (2016-02-05 11:56:45 UTC) #5
Benedikt Meurer
LGTM on ast.
4 years, 10 months ago (2016-02-05 12:05:53 UTC) #6
Jarin
Michi, I believe the interpreter deopt works now, too. I have also fixed the context ...
4 years, 10 months ago (2016-02-10 08:13:58 UTC) #9
Michael Starzinger
LGTM (squinting eyes). https://codereview.chromium.org/1416543006/diff/140001/src/ast/ast-numbering.cc File src/ast/ast-numbering.cc (right): https://codereview.chromium.org/1416543006/diff/140001/src/ast/ast-numbering.cc#newcode308 src/ast/ast-numbering.cc:308: DisableCrankshaft(kTryCatchStatement); nit: Should we land this ...
4 years, 10 months ago (2016-02-12 09:32:41 UTC) #10
Jarin
Thanks! https://codereview.chromium.org/1416543006/diff/140001/src/ast/ast-numbering.cc File src/ast/ast-numbering.cc (right): https://codereview.chromium.org/1416543006/diff/140001/src/ast/ast-numbering.cc#newcode308 src/ast/ast-numbering.cc:308: DisableCrankshaft(kTryCatchStatement); On 2016/02/12 09:32:40, Michael Starzinger wrote: > ...
4 years, 10 months ago (2016-02-12 09:58:32 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1416543006/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1416543006/160001
4 years, 10 months ago (2016-02-12 09:58:42 UTC) #14
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 10 months ago (2016-02-12 10:14:46 UTC) #16
commit-bot: I haz the power
4 years, 10 months ago (2016-02-12 10:15:41 UTC) #18
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/ab3b3bec86f2c61e3640a2a3f01b5d6d319ad7aa
Cr-Commit-Position: refs/heads/master@{#33936}

Powered by Google App Engine
This is Rietveld 408576698