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

Issue 6519046: Fix a bug in deoptimization after logical expressions in an effect context. (Closed)

Created:
9 years, 10 months ago by Kevin Millikin (Chromium)
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

Fix a bug in deoptimization after logical expressions in an effect context. When deoptimizing to after an expression of the form (expr0 || expr1) or (expr0 && expr1) in an effect context, the unoptimized code could incorrectly see the value of the expression. Handle the short-circuit binary operators specially in effect contexts. This fixes the issue and will generate better code when the left subexpression is boolean-valued. BUG=v8:1166 Committed: http://code.google.com/p/v8/source/detail?r=6831

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+79 lines, -23 lines) Patch
M src/hydrogen.h View 1 chunk +0 lines, -3 lines 0 comments Download
M src/hydrogen.cc View 3 chunks +44 lines, -20 lines 2 comments Download
A test/mjsunit/regress/regress-1166.js View 1 chunk +35 lines, -0 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Kevin Millikin (Chromium)
In an effect context, we can visit the left-hand subexpression for its control flow and ...
9 years, 10 months ago (2011-02-17 10:30:08 UTC) #1
Mads Ager (chromium)
LGTM http://codereview.chromium.org/6519046/diff/1/src/hydrogen.cc File src/hydrogen.cc (right): http://codereview.chromium.org/6519046/diff/1/src/hydrogen.cc#newcode5003 src/hydrogen.cc:5003: // TestContext::BuildBranch, and that they both have an ...
9 years, 10 months ago (2011-02-17 10:35:34 UTC) #2
Kevin Millikin (Chromium)
9 years, 10 months ago (2011-02-17 11:05:42 UTC) #3
http://codereview.chromium.org/6519046/diff/1/src/hydrogen.cc
File src/hydrogen.cc (right):

http://codereview.chromium.org/6519046/diff/1/src/hydrogen.cc#newcode5003
src/hydrogen.cc:5003: // TestContext::BuildBranch, and that they both have an
HSimulte
On 2011/02/17 10:35:34, Mads Ager wrote:
> HSimulte -> HSimulate.
Thanks.

Powered by Google App Engine
This is Rietveld 408576698