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

Issue 177973002: Lazy preparsing vs. lazy parsing fix. (Closed)

Created:
6 years, 10 months ago by marja
Modified:
6 years, 10 months ago
Reviewers:
ulan
CC:
v8-dev
Visibility:
Public.

Description

Lazy preparsing vs. lazy parsing fix. Preparsing is always maximally lazy (every function that can be lazy is preparsed lazily), but Parser has more complicated laziness logic. If we're going to parse eagerly, and we have preparse data from lazy preparsing, we're gonna have a bad time. The symbol stream won't contain symbols inside lazy functions, and when the Parser parses them eagerly, it will consume symbols from the symbol stream, and everything will go wrong. This bug was hidden because the symbol cache was not used for real (see https://codereview.chromium.org/172753002/ ). R=ulan@chromium.org BUG=346207 LOG=Y Committed: https://code.google.com/p/v8/source/detail?r=19532

Patch Set 1 #

Patch Set 2 : . #

Patch Set 3 : test #

Patch Set 4 : . #

Unified diffs Side-by-side diffs Delta from patch set Stats (+42 lines, -0 lines) Patch
M src/compiler.cc View 1 1 chunk +7 lines, -0 lines 0 comments Download
M test/cctest/test-debug.cc View 1 2 3 1 chunk +35 lines, -0 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
marja
ulan, ptal
6 years, 10 months ago (2014-02-24 15:22:47 UTC) #1
ulan
Is it possible to construct a regression test?
6 years, 10 months ago (2014-02-24 15:30:24 UTC) #2
marja
added a test, ptal
6 years, 10 months ago (2014-02-24 17:10:21 UTC) #3
ulan
LGTM, thanks for adding the test!
6 years, 10 months ago (2014-02-24 17:23:22 UTC) #4
marja
6 years, 10 months ago (2014-02-24 17:48:16 UTC) #5
Message was sent while issue was closed.
Committed patchset #4 manually as r19532 (tree was closed).

Powered by Google App Engine
This is Rietveld 408576698