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

Issue 1385423002: dart2js cps_ir: Use interceptors for is-checks (version 2) (Closed)

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

Description

Use interceptors for is-checks (version 2). Use the $isXXX properties for type tests on raw (non-parameterized) types. Use special builtin operations for the weird JSArray type hierarchy. Still TODO: If the only use of an interceptor is a single 'getInterceptor(value).$isXXX', and XXX is not a supertype of a native type, replace with 'value instanceof XXX'. R=kmillikin@google.com Committed: https://github.com/dart-lang/sdk/commit/3b4e12f00bbdf2f5c16ca99c28300ebb63f794a9 Reverted: https://github.com/dart-lang/sdk/commit/89b6d8e74960dec2fd87011538227ab515d0fc8d Committed: https://github.com/dart-lang/sdk/commit/5265eeebaac65decca1b2ce489c7d12619ef82b3

Patch Set 1 #

Total comments: 22

Patch Set 2 : code review items and logical-rewriter fix #

Patch Set 3 : baseline for resubmit #

Patch Set 4 : fix analyzer warnings #

Unified diffs Side-by-side diffs Delta from patch set Stats (+304 lines, -46 lines) Patch
M pkg/compiler/lib/src/cps_ir/builtin_operator.dart View 1 2 3 1 chunk +20 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart View 1 4 chunks +38 lines, -8 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes_sexpr.dart View 1 1 chunk +9 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart View 1 2 chunks +13 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/cps_ir/shrinking_reductions.dart View 1 chunk +5 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/type_mask_system.dart View 1 3 chunks +6 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/type_propagation.dart View 1 2 3 4 chunks +82 lines, -13 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/codegen/codegen.dart View 4 chunks +23 lines, -13 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/codegen/glue.dart View 6 chunks +20 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/js_backend/codegen/unsugar.dart View 1 1 chunk +12 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/optimization/logical_rewriter.dart View 1 3 chunks +11 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/optimization/pull_into_initializers.dart View 1 chunk +5 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/optimization/statement_rewriter.dart View 1 chunk +5 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart View 2 chunks +6 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart View 1 2 6 chunks +29 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_tracer.dart View 2 chunks +10 lines, -1 line 0 comments Download
M sdk/lib/_internal/js_runtime/lib/js_rti.dart View 1 chunk +10 lines, -4 lines 0 comments Download

Messages

Total messages: 8 (2 generated)
sra1
This replaces https://codereview.chromium.org/1388473003/ https://codereview.chromium.org/1385423002/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart File pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart (right): https://codereview.chromium.org/1385423002/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart#newcode352 pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart:352: return "TypeTest ($value ${node.dartType} ($args)$interceptor)"; How ...
5 years, 2 months ago (2015-10-07 04:01:29 UTC) #2
Kevin Millikin (Google)
Comments below. I wonder if this is the sort of thing we want to move ...
5 years, 2 months ago (2015-10-07 14:10:50 UTC) #3
Kevin Millikin (Google)
LGTM with the small cleanups I noted. We can postpone the decision whether to move ...
5 years, 2 months ago (2015-10-07 16:12:07 UTC) #4
sra1
https://chromiumcodereview.appspot.com/1385423002/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart File pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart (right): https://chromiumcodereview.appspot.com/1385423002/diff/1/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart#newcode590 pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart:590: On 2015/10/07 14:10:49, Kevin Millikin (Google) wrote: > Not ...
5 years, 2 months ago (2015-10-07 17:45:58 UTC) #5
sra1
Committed patchset #2 (id:40001) manually as 3b4e12f00bbdf2f5c16ca99c28300ebb63f794a9 (presubmit successful).
5 years, 2 months ago (2015-10-07 22:47:37 UTC) #7
sra1
5 years, 2 months ago (2015-10-08 00:07:11 UTC) #8
Message was sent while issue was closed.
Committed patchset #4 (id:80001) manually as
5265eeebaac65decca1b2ce489c7d12619ef82b3 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698