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

Issue 598016: Restrict the syntax that we aggressively optimize. (Closed)

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

Description

Restrict the syntax that we aggressively optimize. Do not use the speculative compiler for functions with other than one statement in the body, and do not use it if subexpressions can have side effects. Bailing out to the beginning of the full code is not sound if side effects have already occurred. Add tests that would fail without the restrictions. Committed: http://code.google.com/p/v8/source/detail?r=3826

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+146 lines, -3 lines) Patch
M src/fast-codegen.cc View 4 chunks +19 lines, -3 lines 0 comments Download
A test/mjsunit/compiler/simple-bailouts.js View 1 chunk +127 lines, -0 lines 2 comments Download

Messages

Total messages: 2 (0 generated)
Kevin Millikin (Chromium)
10 years, 10 months ago (2010-02-09 16:24:17 UTC) #1
fschneider
10 years, 10 months ago (2010-02-09 16:59:10 UTC) #2
LGTM

http://codereview.chromium.org/598016/diff/1/3
File test/mjsunit/compiler/simple-bailouts.js (right):

http://codereview.chromium.org/598016/diff/1/3#newcode86
test/mjsunit/compiler/simple-bailouts.js:86: this.z = // (14 | 1.1) == 15
I'd align the // vertically in this function as well.

http://codereview.chromium.org/598016/diff/1/3#newcode92
test/mjsunit/compiler/simple-bailouts.js:92: | a;  // 1.0
// 1.1

Powered by Google App Engine
This is Rietveld 408576698