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

Issue 2325813002: Async/await catch prediction for "the synchronous case" (Closed)

Created:
4 years, 3 months ago by Dan Ehrenberg
Modified:
4 years, 3 months ago
Reviewers:
kozy, adamk, jgruber
CC:
caitp, Michael Starzinger, neis, v8-reviews_googlegroups.com, Yang
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Async/await catch prediction for "the synchronous case" Handle the "synchronous case" by marking try/catch blocks introduced for async functions as ASYNC_AWAIT and traversing up the stack, finding successive Promises and returning caught if any of them are predicted to be caught. BUG=v8:5167 Committed: https://crrev.com/7776370c587e59012613b4d468f0de7ad0d25a8a Cr-Commit-Position: refs/heads/master@{#39433}

Patch Set 1 #

Total comments: 2

Patch Set 2 : rebase #

Patch Set 3 : Simplify synchronous path logic #

Patch Set 4 : Formatting #

Total comments: 4

Patch Set 5 : Comment #

Total comments: 3

Patch Set 6 : rebase #

Total comments: 19

Patch Set 7 : Changes from review #

Patch Set 8 : Changes from review #

Patch Set 9 : Only exception #

Patch Set 10 : Reinstate some accidentally reverted fixes for reviews #

Patch Set 11 : Add test! #

Patch Set 12 : TryCall #

Unified diffs Side-by-side diffs Delta from patch set Stats (+218 lines, -31 lines) Patch
M src/debug/debug.h View 2 chunks +1 line, -4 lines 0 comments Download
M src/debug/debug.cc View 1 chunk +6 lines, -16 lines 0 comments Download
M src/isolate.h View 1 2 3 4 5 6 7 8 9 1 chunk +6 lines, -0 lines 0 comments Download
M src/isolate.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +45 lines, -5 lines 0 comments Download
M src/runtime/runtime-internal.cc View 1 2 3 4 5 6 8 9 2 chunks +6 lines, -6 lines 0 comments Download
A test/mjsunit/harmony/async-debug-caught-exception-cases.js View 1 2 3 4 5 6 8 9 10 1 chunk +154 lines, -0 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 61 (47 generated)
Dan Ehrenberg
4 years, 3 months ago (2016-09-08 22:34:21 UTC) #4
adamk
This lgtm, but I'd like to at least get kozyatinskiy's opinion too (on the semantics). ...
4 years, 3 months ago (2016-09-09 19:13:44 UTC) #17
Dan Ehrenberg
https://codereview.chromium.org/2325813002/diff/60001/src/isolate.h File src/isolate.h (right): https://codereview.chromium.org/2325813002/diff/60001/src/isolate.h#newcode676 src/isolate.h:676: Handle<Object> GetPromiseOnStackOnThrow(); On 2016/09/09 at 19:13:44, adamk wrote: > ...
4 years, 3 months ago (2016-09-10 01:58:03 UTC) #18
jgruber
Looking good. Some comments: https://codereview.chromium.org/2325813002/diff/1/src/runtime/runtime-internal.cc File src/runtime/runtime-internal.cc (right): https://codereview.chromium.org/2325813002/diff/1/src/runtime/runtime-internal.cc#newcode312 src/runtime/runtime-internal.cc:312: // undefined, which will be ...
4 years, 3 months ago (2016-09-12 10:27:32 UTC) #27
kozy
lgtm https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc File src/isolate.cc (right): https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc#newcode1718 src/isolate.cc:1718: if (tltop->promise_on_stack_ == NULL) return retval; Can we ...
4 years, 3 months ago (2016-09-12 18:13:56 UTC) #28
Dan Ehrenberg
https://codereview.chromium.org/2325813002/diff/1/src/runtime/runtime-internal.cc File src/runtime/runtime-internal.cc (right): https://codereview.chromium.org/2325813002/diff/1/src/runtime/runtime-internal.cc#newcode312 src/runtime/runtime-internal.cc:312: // undefined, which will be interpreted by uncaught as ...
4 years, 3 months ago (2016-09-12 22:12:12 UTC) #31
jgruber
lgtm modulo test failures and comments below https://codereview.chromium.org/2325813002/diff/80001/src/isolate.h File src/isolate.h (right): https://codereview.chromium.org/2325813002/diff/80001/src/isolate.h#newcode678 src/isolate.h:678: // Heuristically ...
4 years, 3 months ago (2016-09-13 08:17:20 UTC) #34
Dan Ehrenberg
https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc File src/isolate.cc (right): https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc#newcode1709 src/isolate.cc:1709: ASSIGN_RETURN_ON_EXCEPTION_VALUE(this, has_reject_handler, On 2016/09/13 at 08:17:20, jgruber wrote: > ...
4 years, 3 months ago (2016-09-13 22:34:56 UTC) #37
adamk
https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc File src/isolate.cc (right): https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc#newcode1709 src/isolate.cc:1709: ASSIGN_RETURN_ON_EXCEPTION_VALUE(this, has_reject_handler, On 2016/09/13 22:34:55, Dan Ehrenberg wrote: > ...
4 years, 3 months ago (2016-09-15 00:11:07 UTC) #50
Dan Ehrenberg
https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc File src/isolate.cc (right): https://codereview.chromium.org/2325813002/diff/100001/src/isolate.cc#newcode1709 src/isolate.cc:1709: ASSIGN_RETURN_ON_EXCEPTION_VALUE(this, has_reject_handler, On 2016/09/15 at 00:11:07, adamk wrote: > ...
4 years, 3 months ago (2016-09-15 00:37:40 UTC) #53
adamk
lgtm
4 years, 3 months ago (2016-09-15 00:44:11 UTC) #54
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/2325813002/220001
4 years, 3 months ago (2016-09-15 00:48:35 UTC) #58
commit-bot: I haz the power
Committed patchset #12 (id:220001)
4 years, 3 months ago (2016-09-15 01:16:21 UTC) #59
commit-bot: I haz the power
4 years, 3 months ago (2016-09-15 01:16:54 UTC) #61
Message was sent while issue was closed.
Patchset 12 (id:??) landed as
https://crrev.com/7776370c587e59012613b4d468f0de7ad0d25a8a
Cr-Commit-Position: refs/heads/master@{#39433}

Powered by Google App Engine
This is Rietveld 408576698