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

Issue 1220123004: dart2js cps: Ensure definitions are specialized before their uses. (Closed)

Created:
5 years, 5 months ago by asgerf
Modified:
5 years, 5 months ago
Reviewers:
floitsch
CC:
reviews_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

dart2js cps: Ensure definitions are specialized before their uses. Specializing a node may depend on how its operands are defined, but they may no longer depend on how its result is used. Patterns that depended on its result being converted to a boolean violated this rule, but fortunately they could be refactored to satisfy the rule, by matching the node doing doing the boolean conversion. By processing definitions before their uses, we avoid creating new redexes for a node that has already been processed. BUG= R=floitsch@google.com Committed: https://github.com/dart-lang/sdk/commit/fb8c42cbdbfb431d3b22394582b8379b05499583

Patch Set 1 #

Total comments: 8

Patch Set 2 : Address comments #

Patch Set 3 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+136 lines, -79 lines) Patch
M pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart View 1 3 chunks +10 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart View 1 3 chunks +11 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/type_propagation.dart View 8 chunks +114 lines, -57 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart View 4 chunks +1 line, -17 lines 0 comments Download

Messages

Total messages: 6 (1 generated)
asgerf
5 years, 5 months ago (2015-07-06 17:32:39 UTC) #2
floitsch
Haven't finished yet. Will continue tomorrow. https://codereview.chromium.org/1220123004/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart File pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart (right): https://codereview.chromium.org/1220123004/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart#newcode197 pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart:197: /// Concretely, this ...
5 years, 5 months ago (2015-07-06 18:18:36 UTC) #3
asgerf
https://codereview.chromium.org/1220123004/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart File pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart (right): https://codereview.chromium.org/1220123004/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart#newcode197 pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart:197: /// Concretely, this is try when [enterTry] has been ...
5 years, 5 months ago (2015-07-07 08:42:05 UTC) #4
floitsch
LGTM.
5 years, 5 months ago (2015-07-07 11:11:48 UTC) #5
asgerf
5 years, 5 months ago (2015-07-07 11:28:58 UTC) #6
Message was sent while issue was closed.
Committed patchset #3 (id:40001) manually as
fb8c42cbdbfb431d3b22394582b8379b05499583 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698