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

Issue 2193793002: Put Scopes into temporary Zone (Closed)

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

Description

Put Scopes into temporary Zone When parsing a eagerly-parsed-but-lazily-compiled function, we used to put some of its AST nodes into a discardable Zone. This CL puts the function Scope, its inner Scopes and the related AST nodes (Declarations, VariableProxys) into the temporary Zone too. This reduces peak memory usage and enables future work to keep the temporary Zone around for later compilation. BUG= Committed: https://crrev.com/eaebdd858b466057ccc39894a172c9b66868e8f7 Cr-Commit-Position: refs/heads/master@{#38232}

Patch Set 1 #

Patch Set 2 : cleanup #

Patch Set 3 : . #

Patch Set 4 : . #

Patch Set 5 : adding tests and checks #

Patch Set 6 : fix #

Patch Set 7 : . #

Total comments: 10

Patch Set 8 : code review (adamk@) #

Patch Set 9 : ditto #

Total comments: 5

Patch Set 10 : rebased #

Total comments: 6

Patch Set 11 : code review (titzer@, adamk@) #

Patch Set 12 : rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+340 lines, -212 lines) Patch
M src/ast/ast.h View 1 2 3 4 5 6 7 8 9 10 15 chunks +97 lines, -116 lines 0 comments Download
M src/ast/ast.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +12 lines, -0 lines 0 comments Download
M src/ast/scopes.h View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +21 lines, -3 lines 0 comments Download
M src/ast/scopes.cc View 1 2 3 4 5 6 7 8 9 10 11 7 chunks +70 lines, -5 lines 0 comments Download
M src/parsing/parser.h View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -1 line 0 comments Download
M src/parsing/parser.cc View 1 2 3 4 5 6 7 8 9 10 11 5 chunks +115 lines, -84 lines 0 comments Download
M src/parsing/parser-base.h View 1 2 3 4 5 6 7 8 9 3 chunks +9 lines, -3 lines 0 comments Download
M test/mjsunit/context-variable-assignments.js View 1 2 3 4 5 6 1 chunk +16 lines, -0 lines 0 comments Download

Messages

Total messages: 45 (30 generated)
marja
Alright, here's a new version, going a bit further (so putting the actual function Scope ...
4 years, 4 months ago (2016-07-29 12:18:50 UTC) #11
adamk
This is looking good (and I'd be happy to keep doing reviews in this area!) ...
4 years, 4 months ago (2016-07-29 22:12:51 UTC) #16
marja
Thanks for comments!
4 years, 4 months ago (2016-08-01 11:01:49 UTC) #26
marja
Wut, why didn't that send my draft comments... trying again.
4 years, 4 months ago (2016-08-01 11:02:11 UTC) #27
marja
Aha, this sends my draft comments. https://codereview.chromium.org/2193793002/diff/120001/src/ast/scopes.cc File src/ast/scopes.cc (right): https://codereview.chromium.org/2193793002/diff/120001/src/ast/scopes.cc#newcode902 src/ast/scopes.cc:902: // any new ...
4 years, 4 months ago (2016-08-01 11:02:50 UTC) #28
titzer
Looks mostly good for me. Unit tests would increase confidence that this is correct. https://codereview.chromium.org/2193793002/diff/180001/src/ast/ast.h ...
4 years, 4 months ago (2016-08-01 17:58:44 UTC) #32
adamk
lgtm % nits titzer's suggestion of unittests is interesting, it'd be a new direction for ...
4 years, 4 months ago (2016-08-01 18:34:33 UTC) #33
adamk
On 2016/08/01 18:34:33, adamk wrote: > lgtm % nits > > titzer's suggestion of unittests ...
4 years, 4 months ago (2016-08-01 18:41:38 UTC) #34
marja
Thanks for comments! https://codereview.chromium.org/2193793002/diff/160001/src/ast/scopes.cc File src/ast/scopes.cc (right): https://codereview.chromium.org/2193793002/diff/160001/src/ast/scopes.cc#newcode932 src/ast/scopes.cc:932: // Recrate the VariableProxy. On 2016/08/01 ...
4 years, 4 months ago (2016-08-02 07:42:37 UTC) #35
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/2193793002/220001
4 years, 4 months ago (2016-08-02 07:43:34 UTC) #38
commit-bot: I haz the power
Committed patchset #12 (id:220001)
4 years, 4 months ago (2016-08-02 08:06:11 UTC) #40
commit-bot: I haz the power
Patchset 12 (id:??) landed as https://crrev.com/eaebdd858b466057ccc39894a172c9b66868e8f7 Cr-Commit-Position: refs/heads/master@{#38232}
4 years, 4 months ago (2016-08-02 08:08:42 UTC) #42
adamk
https://codereview.chromium.org/2193793002/diff/160001/src/ast/scopes.cc File src/ast/scopes.cc (right): https://codereview.chromium.org/2193793002/diff/160001/src/ast/scopes.cc#newcode933 src/ast/scopes.cc:933: DCHECK_EQ(proxy->is_resolved(), false); On 2016/08/02 07:42:37, marja wrote: > On ...
4 years, 4 months ago (2016-08-02 16:13:09 UTC) #43
marja
I'm going to revert this, because it broke some Node.js tests. I'll make sure to ...
4 years, 4 months ago (2016-08-02 18:11:50 UTC) #44
marja
4 years, 4 months ago (2016-08-02 18:13:55 UTC) #45
Message was sent while issue was closed.
A revert of this CL (patchset #12 id:220001) has been created in
https://codereview.chromium.org/2205013002/ by marja@chromium.org.

The reason for reverting is: Broke Node.js tests (test-require-dot etc.)

.

Powered by Google App Engine
This is Rietveld 408576698