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

Issue 1721983005: [Interpreter] Handles stack overflow in interpreter. (Closed)

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

Description

[Interpreter] Handles stack overflow in interpreter. Handles stack overflow in interpreter. 1. When visiting function literal, if the shared function info cannot be found we should return a stack overflow. 2. When visiting the ast graph, if stack overflow happens then all the ast nodes are not visited, so we need to have appropriate handling in the AccumulatorResultScope and RegisterResultScope. 3. MakeBytecode should not return a suceess unconditionally. If there is a stack overflow, it should return false, so RangeError can be thrown. BUG=v8:4280, v8:4680 LOG=N Committed: https://crrev.com/4d325854f29c8ed498d29a5f2f343233646d2815 Cr-Commit-Position: refs/heads/master@{#34282}

Patch Set 1 #

Patch Set 2 : disabled the check to see if result is available on stack overflow. #

Total comments: 3

Patch Set 3 : Fixed comments #

Total comments: 1

Patch Set 4 : Fixes RegisterResultScope to handle stack overflow. #

Patch Set 5 : Rebased, and removes regress/regress-crbug-589472.js from skip list. #

Patch Set 6 : Fixes a bug. #

Total comments: 2

Patch Set 7 : Fixed comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+17 lines, -12 lines) Patch
M src/interpreter/bytecode-generator.cc View 1 2 3 4 5 6 4 chunks +11 lines, -3 lines 0 comments Download
M src/interpreter/interpreter.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M test/mjsunit/mjsunit.status View 1 2 3 4 2 chunks +3 lines, -9 lines 0 comments Download

Messages

Total messages: 46 (22 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/1721983005/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721983005/1
4 years, 10 months ago (2016-02-23 15:00:34 UTC) #2
mythria
PTAL. Thanks, Mythri
4 years, 10 months ago (2016-02-23 15:01:05 UTC) #4
oth
lgtm, but this'll need an additional reviewer for the test/ update.
4 years, 10 months ago (2016-02-23 15:09:38 UTC) #5
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_rel_ng on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_rel_ng/builds/1775) v8_linux64_rel_ng_triggered on ...
4 years, 10 months ago (2016-02-23 15:16:22 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/1721983005/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721983005/20001
4 years, 9 months ago (2016-02-24 11:25:13 UTC) #9
mythria
PTAL. Thanks, Mythri https://codereview.chromium.org/1721983005/diff/20001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1721983005/diff/20001/src/interpreter/bytecode-generator.cc#newcode458 src/interpreter/bytecode-generator.cc:458: if (!generator_->HasStackOverflow()) DCHECK(result_identified()); when there is ...
4 years, 9 months ago (2016-02-24 11:49:39 UTC) #11
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-02-24 11:51:51 UTC) #13
oth
Yep, looks good here. Minor comment, but still lgtm. https://codereview.chromium.org/1721983005/diff/20001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1721983005/diff/20001/src/interpreter/bytecode-generator.cc#newcode458 src/interpreter/bytecode-generator.cc:458: ...
4 years, 9 months ago (2016-02-24 13:19:47 UTC) #14
mythria
Thanks, fixed it. https://codereview.chromium.org/1721983005/diff/20001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1721983005/diff/20001/src/interpreter/bytecode-generator.cc#newcode458 src/interpreter/bytecode-generator.cc:458: if (!generator_->HasStackOverflow()) DCHECK(result_identified()); On 2016/02/24 13:19:47, ...
4 years, 9 months ago (2016-02-24 13:32:14 UTC) #15
rmcilroy
LGTM
4 years, 9 months ago (2016-02-24 16:03:03 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1721983005/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721983005/40001
4 years, 9 months ago (2016-02-24 16:04:24 UTC) #19
rmcilroy
https://codereview.chromium.org/1721983005/diff/40001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1721983005/diff/40001/src/interpreter/bytecode-generator.cc#newcode1286 src/interpreter/bytecode-generator.cc:1286: execution_result()->SetResultInAccumulator(); Do you need the SetResultInAccumulator now? I don't ...
4 years, 9 months ago (2016-02-24 16:09:30 UTC) #20
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1721983005/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721983005/80001
4 years, 9 months ago (2016-02-24 17:07:41 UTC) #26
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux_arm64_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_arm64_rel/builds/15815)
4 years, 9 months ago (2016-02-24 17:21:33 UTC) #28
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1721983005/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721983005/100001
4 years, 9 months ago (2016-02-24 17:33:32 UTC) #30
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-02-24 18:20:17 UTC) #32
mythria
The test added by Michi works as well. I updated the mjsunit.status PTAL. Thanks, Mythri.
4 years, 9 months ago (2016-02-25 10:04:31 UTC) #33
rmcilroy
Lgtm, thanks! https://codereview.chromium.org/1721983005/diff/100001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1721983005/diff/100001/src/interpreter/bytecode-generator.cc#newcode458 src/interpreter/bytecode-generator.cc:458: bool HasStackOverflow() const { return generator_->HasStackOverflow(); } ...
4 years, 9 months ago (2016-02-25 10:35:13 UTC) #34
mythria
Thanks done. https://codereview.chromium.org/1721983005/diff/100001/src/interpreter/bytecode-generator.cc File src/interpreter/bytecode-generator.cc (right): https://codereview.chromium.org/1721983005/diff/100001/src/interpreter/bytecode-generator.cc#newcode458 src/interpreter/bytecode-generator.cc:458: bool HasStackOverflow() const { return generator_->HasStackOverflow(); } ...
4 years, 9 months ago (2016-02-25 11:02:03 UTC) #35
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1721983005/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721983005/120001
4 years, 9 months ago (2016-02-25 11:02:40 UTC) #37
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-02-25 11:21:48 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1721983005/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1721983005/120001
4 years, 9 months ago (2016-02-25 11:24:54 UTC) #42
commit-bot: I haz the power
Committed patchset #7 (id:120001)
4 years, 9 months ago (2016-02-25 11:26:35 UTC) #44
commit-bot: I haz the power
4 years, 9 months ago (2016-02-25 11:27:46 UTC) #46
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/4d325854f29c8ed498d29a5f2f343233646d2815
Cr-Commit-Position: refs/heads/master@{#34282}

Powered by Google App Engine
This is Rietveld 408576698