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

Issue 11893002: Improve compilation speed on a pathological case > 2x (7 sec -> 2.7 sec) by improving local lookups. (Closed)

Created:
7 years, 11 months ago by srdjan
Modified:
7 years, 11 months ago
Reviewers:
hausner, Ivan Posva
CC:
reviews_dartlang.org, Ivan Posva
Visibility:
Public.

Description

Improve compilation speed on a pathological case > 2x (7 sec -> 2.7 sec) by improving local lookups. Committed: https://code.google.com/p/dart/source/detail?r=17085

Patch Set 1 #

Total comments: 2

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Total comments: 2

Patch Set 5 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+20 lines, -20 lines) Patch
M runtime/vm/object.h View 1 1 chunk +10 lines, -1 line 0 comments Download
M runtime/vm/object.cc View 1 1 chunk +0 lines, -11 lines 0 comments Download
M runtime/vm/object_test.cc View 1 2 1 chunk +3 lines, -3 lines 0 comments Download
M runtime/vm/scopes.cc View 1 1 chunk +3 lines, -1 line 0 comments Download
M runtime/vm/scopes_test.cc View 1 2 3 4 1 chunk +4 lines, -4 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
srdjan
7 years, 11 months ago (2013-01-15 01:41:35 UTC) #1
Ivan Posva
I do not think the introduction of StringHash is necessary. -Ivan https://codereview.chromium.org/11893002/diff/1/runtime/vm/object.h File runtime/vm/object.h (right): ...
7 years, 11 months ago (2013-01-15 06:05:15 UTC) #2
hausner
The change looks functional, but I think the changes in parser.cc are awkward. Since all ...
7 years, 11 months ago (2013-01-15 17:01:48 UTC) #3
srdjan
On 2013/01/15 17:01:48, hausner wrote: > The change looks functional, but I think the changes ...
7 years, 11 months ago (2013-01-15 18:53:24 UTC) #4
srdjan
https://codereview.chromium.org/11893002/diff/1/runtime/vm/object.h File runtime/vm/object.h (right): https://codereview.chromium.org/11893002/diff/1/runtime/vm/object.h#newcode3903 runtime/vm/object.h:3903: virtual intptr_t Hash() const { On 2013/01/15 06:05:15, Ivan ...
7 years, 11 months ago (2013-01-15 18:58:28 UTC) #5
hausner
lgtm https://codereview.chromium.org/11893002/diff/12001/runtime/vm/scopes.cc File runtime/vm/scopes.cc (right): https://codereview.chromium.org/11893002/diff/12001/runtime/vm/scopes.cc#newcode300 runtime/vm/scopes.cc:300: ASSERT(var->name().IsSymbol()); Nit: instead of checking whether the names ...
7 years, 11 months ago (2013-01-15 19:00:22 UTC) #6
srdjan
7 years, 11 months ago (2013-01-15 19:11:38 UTC) #7
Message was sent while issue was closed.
https://codereview.chromium.org/11893002/diff/12001/runtime/vm/scopes.cc
File runtime/vm/scopes.cc (right):

https://codereview.chromium.org/11893002/diff/12001/runtime/vm/scopes.cc#newc...
runtime/vm/scopes.cc:300: ASSERT(var->name().IsSymbol());
On 2013/01/15 19:00:22, hausner wrote:
> Nit: instead of checking whether the names in a scope are symbols on every
> lookup, we could assert that when the name is entered in the scope. We should
> not make debug builds unnecessarily slow.

I agree that we should keep an eye on not making debug build slow. In this case
I think is needed. Assuming that the right assert is done somewhere else would
weaken the check and add a non-obvious dependency, IMHO.

Powered by Google App Engine
This is Rietveld 408576698