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

Issue 1011403003: cps-ir: Set runtime type information for new objects that require it. (Closed)

Created:
5 years, 9 months ago by karlklose
Modified:
5 years, 9 months ago
Reviewers:
asgerf
CC:
reviews_dartlang.org
Target Ref:
refs/remotes/git-svn
Visibility:
Public.

Description

cps-ir: Set runtime type information for new objects that require it. R=asgerf@google.com Committed: https://code.google.com/p/dart/source/detail?r=44708

Patch Set 1 : #

Total comments: 6

Patch Set 2 : Add parameter for each type variable to the JS-factory. #

Total comments: 2

Patch Set 3 : Visit CreateInstance.typeInformation in the Tree IR visitor. #

Patch Set 4 : #

Patch Set 5 : cleanup #

Patch Set 6 : Update comment. #

Total comments: 16

Patch Set 7 : Rebase #

Patch Set 8 : Address comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+470 lines, -66 lines) Patch
M pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart View 1 2 3 4 5 6 7 13 chunks +105 lines, -15 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart View 1 2 3 4 5 6 7 7 chunks +63 lines, -13 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart View 1 2 3 4 5 6 7 9 chunks +52 lines, -9 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes_sexpr.dart View 1 2 3 4 5 6 7 4 chunks +23 lines, -4 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart View 1 2 3 4 5 6 7 4 chunks +17 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/shrinking_reductions.dart View 1 2 3 4 5 6 7 2 chunks +5 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/type_propagation.dart View 1 2 3 2 chunks +8 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/dart_backend/backend_ast_emitter.dart View 2 chunks +6 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/codegen/codegen.dart View 1 2 3 4 5 6 7 3 chunks +27 lines, -5 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/codegen/glue.dart View 2 chunks +15 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/js_backend/codegen/js_tree_builder.dart View 1 2 3 4 5 6 7 1 chunk +2 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/tree_ir/optimization/logical_rewriter.dart View 1 chunk +6 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/optimization/statement_rewriter.dart View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart View 1 2 3 2 chunks +12 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart View 1 2 4 5 6 7 8 chunks +36 lines, -6 lines 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_tracer.dart View 1 2 chunks +10 lines, -4 lines 0 comments Download
M tests/compiler/dart2js/js_backend_cps_ir_basic_test.dart View 1 1 chunk +2 lines, -2 lines 0 comments Download
M tests/compiler/dart2js/js_backend_cps_ir_constructor_test.dart View 1 2 3 4 5 6 1 chunk +50 lines, -0 lines 0 comments Download
M tests/compiler/dart2js/js_backend_cps_ir_runtime_types_test.dart View 1 2 3 1 chunk +23 lines, -0 lines 0 comments Download

Messages

Total messages: 11 (2 generated)
karlklose
https://codereview.chromium.org/1011403003/diff/40001/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart File pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart (right): https://codereview.chromium.org/1011403003/diff/40001/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart#newcode363 pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart:363: class InvokeConstructor extends Expression implements Invoke { Alternatively, we ...
5 years, 9 months ago (2015-03-18 08:44:51 UTC) #3
asgerf
See comment in codegen. I think the changes you made to InvokeConstructor should be made ...
5 years, 9 months ago (2015-03-18 10:18:07 UTC) #4
asgerf
https://codereview.chromium.org/1011403003/diff/60001/pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart File pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart (right): https://codereview.chromium.org/1011403003/diff/60001/pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart#newcode1104 pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart:1104: node.arguments.forEach(visitExpression); Also visit the type information expressions. This is ...
5 years, 9 months ago (2015-03-19 14:53:40 UTC) #5
karlklose
https://codereview.chromium.org/1011403003/diff/60001/pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart File pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart (right): https://codereview.chromium.org/1011403003/diff/60001/pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart#newcode1104 pkg/compiler/lib/src/tree_ir/tree_ir_nodes.dart:1104: node.arguments.forEach(visitExpression); On 2015/03/19 14:53:40, asgerf wrote: > Also visit ...
5 years, 9 months ago (2015-03-20 07:39:04 UTC) #6
karlklose
PTAL. I added a parameter for each type variable, if the class needs runtime type ...
5 years, 9 months ago (2015-03-24 09:54:47 UTC) #7
asgerf
LGTM with a few suggestions. https://codereview.chromium.org/1011403003/diff/140001/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/1011403003/diff/140001/pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart#newcode2463 pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart:2463: // TODO(karlklose): resolve effective ...
5 years, 9 months ago (2015-03-24 12:37:22 UTC) #8
karlklose
Thanks for the review, Asger! https://codereview.chromium.org/1011403003/diff/140001/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/1011403003/diff/140001/pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart#newcode2463 pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart:2463: // TODO(karlklose): resolve effective ...
5 years, 9 months ago (2015-03-26 09:50:07 UTC) #9
asgerf
Still LGTM. https://codereview.chromium.org/1011403003/diff/140001/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart File pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart (right): https://codereview.chromium.org/1011403003/diff/140001/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart#newcode2225 pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart:2225: // against [Local]. On 2015/03/26 09:50:07, karlklose ...
5 years, 9 months ago (2015-03-26 09:58:41 UTC) #10
karlklose
5 years, 9 months ago (2015-03-26 10:28:01 UTC) #11
Message was sent while issue was closed.
Committed patchset #8 (id:180001) manually as 44708 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698