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

Issue 6993008: Allow closures to be optimized if outer contexts that call eval are all in strict mode. (Closed)

Created:
9 years, 7 months ago by Mads Ager (chromium)
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

Allow closures to be optimized if outer contexts that call eval are all in strict mode. R=kmillikin@chromium.org BUG= TEST=mjsunit/compiler/eval-introduced-closure.js Committed: http://code.google.com/p/v8/source/detail?r=7853

Patch Set 1 #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+180 lines, -11 lines) Patch
M src/compiler.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/contexts.h View 1 chunk +5 lines, -0 lines 0 comments Download
M src/contexts.cc View 2 chunks +23 lines, -1 line 2 comments Download
M src/scopeinfo.h View 3 chunks +5 lines, -1 line 0 comments Download
M src/scopeinfo.cc View 7 chunks +20 lines, -5 lines 0 comments Download
M src/scopes.h View 3 chunks +5 lines, -0 lines 0 comments Download
M src/scopes.cc View 5 chunks +26 lines, -3 lines 2 comments Download
A test/mjsunit/compiler/eval-introduced-closure.js View 1 chunk +95 lines, -0 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
Mads Ager (chromium)
9 years, 7 months ago (2011-05-10 14:12:38 UTC) #1
Mads Ager (chromium)
Redirecting to Florian since Kevin is busy. :-)
9 years, 7 months ago (2011-05-11 09:15:53 UTC) #2
fschneider
LGTM. http://codereview.chromium.org/6993008/diff/1/src/contexts.cc File src/contexts.cc (right): http://codereview.chromium.org/6993008/diff/1/src/contexts.cc#newcode262 src/contexts.cc:262: if (context->IsGlobalContext()) follow_chains = false; small simplification? while ...
9 years, 7 months ago (2011-05-11 10:35:11 UTC) #3
Mads Ager (chromium)
9 years, 7 months ago (2011-05-11 11:24:11 UTC) #4
http://codereview.chromium.org/6993008/diff/1/src/contexts.cc
File src/contexts.cc (right):

http://codereview.chromium.org/6993008/diff/1/src/contexts.cc#newcode262
src/contexts.cc:262: if (context->IsGlobalContext()) follow_chains = false;
On 2011/05/11 10:35:11, fschneider wrote:
> small simplification?
> 
> while (true) {
>   ...
> 
>   if (context->IsGlobalContext()) break;
>   ...
> }

Done.

http://codereview.chromium.org/6993008/diff/1/src/scopes.cc
File src/scopes.cc (right):

http://codereview.chromium.org/6993008/diff/1/src/scopes.cc#newcode880
src/scopes.cc:880: (scope_calls_eval_ && !is_strict_mode()) ||
outer_scope_calls_non_strict_eval_;
On 2011/05/11 10:35:11, fschneider wrote:
> Long line.

Done.

Powered by Google App Engine
This is Rietveld 408576698