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

Issue 1936043002: [es6] Properly handle the case when an inlined getter/setter/constructor does a tail call. (Closed)

Created:
4 years, 7 months ago by Igor Sheludko
Modified:
4 years, 7 months ago
CC:
v8-reviews_googlegroups.com, v8-mips-ports_googlegroups.com, v8-x87-ports_googlegroups.com, v8-ppc-ports_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[es6] Properly handle the case when an inlined getter/setter/constructor does a tail call. Deoptimizer is now able to reconstruct topmost accessor and constructor frames. BUG=chromium:608278, v8:4698 LOG=N TBR=bmeurer@chromium.org Committed: https://crrev.com/e17a283f92c99d4ba7daee0dbb2e7d9e65b91197 Cr-Commit-Position: refs/heads/master@{#36075}

Patch Set 1 #

Patch Set 2 : Fixed test #

Patch Set 3 : Complete rework #

Total comments: 7

Patch Set 4 : More comments added, continuations updated #

Total comments: 6

Patch Set 5 : Addressing comments #

Patch Set 6 : Removed too much, fixing #

Unified diffs Side-by-side diffs Delta from patch set Stats (+327 lines, -332 lines) Patch
M src/crankshaft/arm/lithium-arm.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/arm64/lithium-arm64.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/hydrogen-instructions.cc View 1 chunk +5 lines, -1 line 0 comments Download
M src/crankshaft/ia32/lithium-ia32.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/lithium.h View 1 2 1 chunk +5 lines, -0 lines 0 comments Download
M src/crankshaft/lithium.cc View 1 2 3 4 2 chunks +51 lines, -1 line 0 comments Download
M src/crankshaft/mips/lithium-mips.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/mips64/lithium-mips64.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/ppc/lithium-ppc.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/s390/lithium-s390.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/x64/lithium-x64.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/crankshaft/x87/lithium-x87.cc View 1 2 1 chunk +1 line, -36 lines 0 comments Download
M src/deoptimizer.cc View 1 2 3 4 5 15 chunks +111 lines, -6 lines 0 comments Download
M test/mjsunit/es6/tail-call.js View 1 2 2 chunks +84 lines, -0 lines 0 comments Download
A test/mjsunit/regress/regress-crbug-608278.js View 1 2 1 chunk +62 lines, -0 lines 0 comments Download

Messages

Total messages: 40 (20 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1936043002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1936043002/1
4 years, 7 months ago (2016-05-02 11:26:42 UTC) #2
Igor Sheludko
PTAL
4 years, 7 months ago (2016-05-02 11:28:08 UTC) #5
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_avx2_rel_ng on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel_ng/builds/1001) v8_linux64_avx2_rel_ng_triggered on ...
4 years, 7 months ago (2016-05-02 11:41:13 UTC) #7
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1936043002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1936043002/20001
4 years, 7 months ago (2016-05-02 11:43:22 UTC) #9
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_avx2_rel_ng on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_avx2_rel_ng/builds/1002) v8_linux64_avx2_rel_ng_triggered on ...
4 years, 7 months ago (2016-05-02 11:57:53 UTC) #11
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1936043002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1936043002/60001
4 years, 7 months ago (2016-05-03 09:14:45 UTC) #15
Igor Sheludko
Michi, PTAL Crankshaft. Jaro, PTAL deoptimizer.
4 years, 7 months ago (2016-05-03 09:27:11 UTC) #17
Igor Sheludko
https://codereview.chromium.org/1936043002/diff/60001/src/crankshaft/lithium.cc File src/crankshaft/lithium.cc (right): https://codereview.chromium.org/1936043002/diff/60001/src/crankshaft/lithium.cc#newcode529 src/crankshaft/lithium.cc:529: if (hydrogen_env->frame_type() == JS_FUNCTION) { Note: this is a ...
4 years, 7 months ago (2016-05-03 09:38:16 UTC) #18
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 7 months ago (2016-05-03 09:45:00 UTC) #20
Jarin
https://codereview.chromium.org/1936043002/diff/60001/src/crankshaft/lithium.cc File src/crankshaft/lithium.cc (right): https://codereview.chromium.org/1936043002/diff/60001/src/crankshaft/lithium.cc#newcode529 src/crankshaft/lithium.cc:529: if (hydrogen_env->frame_type() == JS_FUNCTION) { On 2016/05/03 09:38:16, Igor ...
4 years, 7 months ago (2016-05-03 14:42:36 UTC) #22
Igor Sheludko
https://codereview.chromium.org/1936043002/diff/60001/src/crankshaft/lithium.cc File src/crankshaft/lithium.cc (right): https://codereview.chromium.org/1936043002/diff/60001/src/crankshaft/lithium.cc#newcode529 src/crankshaft/lithium.cc:529: if (hydrogen_env->frame_type() == JS_FUNCTION) { On 2016/05/03 14:42:36, Jarin ...
4 years, 7 months ago (2016-05-06 09:50:03 UTC) #23
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1936043002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1936043002/80001
4 years, 7 months ago (2016-05-06 09:50:16 UTC) #25
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 7 months ago (2016-05-06 10:17:09 UTC) #27
Jarin
lgtm with non-blocking suggestions/comments. https://codereview.chromium.org/1936043002/diff/80001/src/crankshaft/lithium.cc File src/crankshaft/lithium.cc (right): https://codereview.chromium.org/1936043002/diff/80001/src/crankshaft/lithium.cc#newcode535 src/crankshaft/lithium.cc:535: // So we push return ...
4 years, 7 months ago (2016-05-06 10:40:17 UTC) #28
Jarin
And thanks for the explanations! (Both in the code and in person.)
4 years, 7 months ago (2016-05-06 10:41:00 UTC) #29
Igor Sheludko
Thanks! https://codereview.chromium.org/1936043002/diff/80001/src/crankshaft/lithium.cc File src/crankshaft/lithium.cc (right): https://codereview.chromium.org/1936043002/diff/80001/src/crankshaft/lithium.cc#newcode535 src/crankshaft/lithium.cc:535: // So we push return value on top ...
4 years, 7 months ago (2016-05-06 11:56:06 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1936043002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1936043002/140001
4 years, 7 months ago (2016-05-06 12:06:06 UTC) #34
commit-bot: I haz the power
Committed patchset #6 (id:140001)
4 years, 7 months ago (2016-05-06 12:36:31 UTC) #36
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/e17a283f92c99d4ba7daee0dbb2e7d9e65b91197 Cr-Commit-Position: refs/heads/master@{#36075}
4 years, 7 months ago (2016-05-06 12:37:28 UTC) #38
Benedikt Meurer
4 years, 7 months ago (2016-05-06 17:37:44 UTC) #40
Message was sent while issue was closed.
LGTM.

Powered by Google App Engine
This is Rietveld 408576698