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

Issue 1276843008: dart2js cps: Change rewriting of equality operators. (Closed)

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

Description

dart2js cps: Change rewriting of equality operators. Dart == calls now are rewritten to an Identical node (if applicable), which can then be specialized further into JS == and === nodes. Previously, == calls would specialize directly to JS == and === nodes, but some of these optimizations were then missed for the cases where Identical nodes are introduced directly (e.g. for switch cases). The rules have also changed a bit to be more effective, and there are some small improvements to the utility functions. BUG= R=karlklose@google.com Committed: https://github.com/dart-lang/sdk/commit/684b83ab0543bbdd404decf91145b8b8cdc70e0d

Patch Set 1 #

Patch Set 2 : Update #

Total comments: 2

Patch Set 3 : Update test + minor improvement in logical rewriter #

Unified diffs Side-by-side diffs Delta from patch set Stats (+94 lines, -46 lines) Patch
M pkg/compiler/lib/src/cps_ir/type_propagation.dart View 1 12 chunks +89 lines, -41 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/optimization/logical_rewriter.dart View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M tests/compiler/dart2js/js_backend_cps_ir_control_flow_test.dart View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M tests/compiler/dart2js/js_backend_cps_ir_operators_test.dart View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M tests/language/language_dart2js.status View 1 2 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 5 (1 generated)
asgerf
5 years, 4 months ago (2015-08-11 13:19:30 UTC) #2
karlklose
LGTM. https://codereview.chromium.org/1276843008/diff/20001/pkg/compiler/lib/src/cps_ir/type_propagation.dart File pkg/compiler/lib/src/cps_ir/type_propagation.dart (right): https://codereview.chromium.org/1276843008/diff/20001/pkg/compiler/lib/src/cps_ir/type_propagation.dart#newcode1608 pkg/compiler/lib/src/cps_ir/type_propagation.dart:1608: } else if (lattice.isDefinitelyNum(left, allowNull: true) && Maybe ...
5 years, 4 months ago (2015-08-11 13:38:53 UTC) #3
asgerf
https://codereview.chromium.org/1276843008/diff/20001/pkg/compiler/lib/src/cps_ir/type_propagation.dart File pkg/compiler/lib/src/cps_ir/type_propagation.dart (right): https://codereview.chromium.org/1276843008/diff/20001/pkg/compiler/lib/src/cps_ir/type_propagation.dart#newcode1608 pkg/compiler/lib/src/cps_ir/type_propagation.dart:1608: } else if (lattice.isDefinitelyNum(left, allowNull: true) && On 2015/08/11 ...
5 years, 4 months ago (2015-08-11 13:41:43 UTC) #4
asgerf
5 years, 4 months ago (2015-08-11 13:47:54 UTC) #5
Message was sent while issue was closed.
Committed patchset #3 (id:40001) manually as
684b83ab0543bbdd404decf91145b8b8cdc70e0d (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698