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

Issue 2262703002: [TurboFan] Ensure value is pushed for StackOverflow in AstVisitor::Visit. (Closed)

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

Description

[TurboFan] Ensure value is pushed for StackOverflow in AstVisitor::Visit. AstGraphBuilder overrides Visit(Expression*) to ensure that even if there is a stack overflow, a value still gets produced. However, if there was no stack overflow in the overriden function, but calling AstVisitor<AstGraphBuilder>::Visit(expr) pushes us over the stack limit, then the stack overflow check in that function will return without visiting the expression, and the result will never get pushed. To fix this, we add a new VisitNoStackOverflowCheck function which avoids the inner stack check, and call that instead. Since this depends on the size of C++ stack frames, there is no reliable test I can add, however regress-635429.js exibits this behavior after https://codereview.chromium.org/2240463002/ lands. Committed: https://crrev.com/c13acc815388aff94a5694ae9ad2587fa3cf42b2 Cr-Commit-Position: refs/heads/master@{#38774}

Patch Set 1 #

Patch Set 2 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+9 lines, -5 lines) Patch
M src/ast/ast.h View 1 chunk +5 lines, -1 line 0 comments Download
M src/compiler/ast-graph-builder.cc View 1 4 chunks +4 lines, -4 lines 0 comments Download

Messages

Total messages: 14 (9 generated)
rmcilroy
Michi, PTAL, thanks.
4 years, 4 months ago (2016-08-19 14:48:33 UTC) #3
Michael Starzinger
LGTM. Nice catch!
4 years, 4 months ago (2016-08-22 07:29:33 UTC) #8
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/2262703002/20001
4 years, 4 months ago (2016-08-22 09:49:49 UTC) #10
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 4 months ago (2016-08-22 10:27:55 UTC) #12
commit-bot: I haz the power
4 years, 4 months ago (2016-08-22 10:28:12 UTC) #14
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/c13acc815388aff94a5694ae9ad2587fa3cf42b2
Cr-Commit-Position: refs/heads/master@{#38774}

Powered by Google App Engine
This is Rietveld 408576698