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

Issue 1388473003: dart2js cps_ir: Use interceptors for is-checks. (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. 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'. New version at: https://codereview.chromium.org/1385423002

Patch Set 1 : #

Total comments: 9
Unified diffs Side-by-side diffs Delta from patch set Stats (+321 lines, -33 lines) Patch
M pkg/compiler/lib/src/cps_ir/builtin_operator.dart View 1 chunk +31 lines, -0 lines 1 comment Download
M pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart View 1 chunk +5 lines, -1 line 2 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart View 5 chunks +40 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes_sexpr.dart View 1 chunk +8 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart View 2 chunks +12 lines, -0 lines 1 comment Download
M pkg/compiler/lib/src/cps_ir/insert_refinements.dart View 1 chunk +8 lines, -0 lines 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 4 chunks +12 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/type_propagation.dart View 5 chunks +77 lines, -10 lines 4 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 chunk +12 lines, -0 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 +11 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart View 5 chunks +27 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_tracer.dart View 2 chunks +10 lines, -1 line 1 comment Download
M sdk/lib/_internal/js_runtime/lib/js_rti.dart View 1 chunk +10 lines, -4 lines 0 comments Download

Messages

Total messages: 11 (5 generated)
sra1
This is work in progress. There are a few benchmarks that catch up to SSA. ...
5 years, 2 months ago (2015-10-06 06:47:58 UTC) #4
sra1
Ping. I also have a cleaned-up version where the new Primitive is only for the ...
5 years, 2 months ago (2015-10-07 03:40:04 UTC) #5
sra1
5 years, 2 months ago (2015-10-07 03:40:51 UTC) #7
sra1
5 years, 2 months ago (2015-10-07 03:41:17 UTC) #9
sra1
https://codereview.chromium.org/1388473003/diff/40001/pkg/compiler/lib/src/cps_ir/type_propagation.dart File pkg/compiler/lib/src/cps_ir/type_propagation.dart (right): https://codereview.chromium.org/1388473003/diff/40001/pkg/compiler/lib/src/cps_ir/type_propagation.dart#newcode1897 pkg/compiler/lib/src/cps_ir/type_propagation.dart:1897: On 2015/10/06 06:47:58, sra1 wrote: > I think what ...
5 years, 2 months ago (2015-10-07 03:55:34 UTC) #10
sra1
5 years, 2 months ago (2015-10-07 04:01:06 UTC) #11
https://codereview.chromium.org/1388473003/diff/40001/pkg/compiler/lib/src/cp...
File pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart (right):

https://codereview.chromium.org/1388473003/diff/40001/pkg/compiler/lib/src/cp...
pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart:2756: if (type.isInterfaceType
&& type.isRaw) {
On 2015/10/06 06:47:58, sra1 wrote:
> I think this could me moved to type_propagation.

Done.

Powered by Google App Engine
This is Rietveld 408576698