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

Issue 10704156: Bring back most of the performance lost when fixing union on types. (Closed)

Created:
8 years, 5 months ago by Mads Ager (google)
Modified:
8 years, 5 months ago
Reviewers:
floitsch
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Bring back most of the performance lost when fixing union on types. We lost the basic propagation of known field types from constructors. R=floitsch@google.com BUG= TEST= Committed: https://code.google.com/p/dart/source/detail?r=9548

Patch Set 1 #

Total comments: 4

Patch Set 2 : Address comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+34 lines, -18 lines) Patch
M lib/compiler/implementation/ssa/optimize.dart View 1 1 chunk +34 lines, -18 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Mads Ager (google)
8 years, 5 months ago (2012-07-11 12:09:28 UTC) #1
floitsch
LGTM. https://chromiumcodereview.appspot.com/10704156/diff/1/lib/compiler/implementation/ssa/optimize.dart File lib/compiler/implementation/ssa/optimize.dart (right): https://chromiumcodereview.appspot.com/10704156/diff/1/lib/compiler/implementation/ssa/optimize.dart#newcode1192 lib/compiler/implementation/ssa/optimize.dart:1192: // If there are no other field setters ...
8 years, 5 months ago (2012-07-11 12:15:31 UTC) #2
Mads Ager (google)
8 years, 5 months ago (2012-07-11 12:31:20 UTC) #3
https://chromiumcodereview.appspot.com/10704156/diff/1/lib/compiler/implement...
File lib/compiler/implementation/ssa/optimize.dart (right):

https://chromiumcodereview.appspot.com/10704156/diff/1/lib/compiler/implement...
lib/compiler/implementation/ssa/optimize.dart:1192: // If there are no other
field setters then the one in
On 2012/07/11 12:15:31, floitsch wrote:
> maybe assert, that we are not in the constructor body?

Good point. Done.

https://chromiumcodereview.appspot.com/10704156/diff/1/lib/compiler/implement...
lib/compiler/implementation/ssa/optimize.dart:1204: // guarenteed to remain
constant.
On 2012/07/11 12:15:31, floitsch wrote:
> If there are no setters then the initializer list type is
> guar*a*nteed to remain constant.

Whooops, done!

Powered by Google App Engine
This is Rietveld 408576698