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

Issue 1070453002: Refactor reifier to make it less dart_codegen specific. (Closed)

Created:
5 years, 8 months ago by Leaf
Modified:
5 years, 8 months ago
Reviewers:
vsm, Jennifer Messerly
CC:
dev-compiler+reviews_dartlang.org
Base URL:
git@github.com:dart-lang/dart-dev-compiler.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Refactor reifier to make it less dart_codegen specific. This is some first steps towards hooking the reifier into the js backend. I've made the reifier operate on whole libraries instead of per compilation unit so that it can be hoisted out as a separate pass. I changed the API of the reifier to return a map from new type identifiers to information about their library of origin, so that the code generators can deal with these appropriately. Take a look, see what you think - suggestions as to how to structure this to interact well with the JS backend welcome. BUG= R=jmesserly@google.com, vsm@google.com Committed: https://github.com/dart-lang/dev_compiler/commit/2a9727503c762a148e7ff0017175a50f29e76c28

Patch Set 1 #

Total comments: 11

Patch Set 2 : Address comments, rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+297 lines, -300 lines) Patch
M lib/src/codegen/dart_codegen.dart View 1 5 chunks +39 lines, -83 lines 0 comments Download
M lib/src/codegen/reify_coercions.dart View 1 9 chunks +71 lines, -33 lines 0 comments Download
M test/dart_codegen/expect/_internal/iterable.dart View 7 chunks +15 lines, -16 lines 0 comments Download
M test/dart_codegen/expect/async/future_impl.dart View 6 chunks +13 lines, -12 lines 0 comments Download
M test/dart_codegen/expect/async/schedule_microtask.dart View 2 chunks +3 lines, -4 lines 0 comments Download
M test/dart_codegen/expect/async/stream.dart View 16 chunks +31 lines, -31 lines 0 comments Download
M test/dart_codegen/expect/async/stream_controller.dart View 3 chunks +5 lines, -5 lines 0 comments Download
M test/dart_codegen/expect/async/stream_impl.dart View 4 chunks +11 lines, -12 lines 0 comments Download
M test/dart_codegen/expect/async/stream_pipe.dart View 1 chunk +1 line, -1 line 0 comments Download
M test/dart_codegen/expect/async/stream_transformers.dart View 3 chunks +16 lines, -17 lines 0 comments Download
M test/dart_codegen/expect/async/timer.dart View 2 chunks +2 lines, -3 lines 0 comments Download
M test/dart_codegen/expect/async/zone.dart View 1 10 chunks +32 lines, -34 lines 0 comments Download
M test/dart_codegen/expect/c/c.dart View 1 chunk +4 lines, -5 lines 0 comments Download
M test/dart_codegen/expect/collection/splay_tree.dart View 8 chunks +32 lines, -20 lines 0 comments Download
M test/dart_codegen/expect/convert/json.dart View 1 chunk +1 line, -1 line 0 comments Download
M test/dart_codegen/expect/core/iterable.dart View 2 chunks +2 lines, -3 lines 0 comments Download
M test/dart_codegen/expect/core/stopwatch.dart View 1 chunk +1 line, -1 line 0 comments Download
M test/dart_codegen/expect/core/uri.dart View 9 chunks +14 lines, -14 lines 0 comments Download
M test/dart_codegen/expect/d/d.dart View 1 chunk +4 lines, -5 lines 0 comments Download

Messages

Total messages: 6 (1 generated)
Leaf
https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/dart_codegen.dart File lib/src/codegen/dart_codegen.dart (left): https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/dart_codegen.dart#oldcode162 lib/src/codegen/dart_codegen.dart:162: void visitIdentifier(Identifier id) { All of this logic is ...
5 years, 8 months ago (2015-04-07 22:29:59 UTC) #2
vsm
lgtm https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/reify_coercions.dart File lib/src/codegen/reify_coercions.dart (right): https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/reify_coercions.dart#newcode34 lib/src/codegen/reify_coercions.dart:34: // True => use/def in same library Does ...
5 years, 8 months ago (2015-04-08 15:31:02 UTC) #3
vsm
https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/reify_coercions.dart File lib/src/codegen/reify_coercions.dart (right): https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/reify_coercions.dart#newcode611 lib/src/codegen/reify_coercions.dart:611: (type.element != null && type.element is FunctionTypeAlias)) { BTW, ...
5 years, 8 months ago (2015-04-08 18:27:09 UTC) #4
Jennifer Messerly
lgtm https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/dart_codegen.dart File lib/src/codegen/dart_codegen.dart (left): https://codereview.chromium.org/1070453002/diff/1/lib/src/codegen/dart_codegen.dart#oldcode423 lib/src/codegen/dart_codegen.dart:423: void generateUnit(CompilationUnit unit, LibraryInfo info, String libraryDir) { ...
5 years, 8 months ago (2015-04-08 20:28:16 UTC) #5
Leaf
5 years, 8 months ago (2015-04-13 23:14:36 UTC) #6
Message was sent while issue was closed.
Committed patchset #2 (id:20001) manually as
2a9727503c762a148e7ff0017175a50f29e76c28 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698