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

Issue 979693003: Streamline the CPS IR Visitor interface. (Closed)

Created:
5 years, 9 months ago by Kevin Millikin (Google)
Modified:
5 years, 9 months ago
CC:
reviews_dartlang.org
Target Ref:
refs/remotes/git-svn
Visibility:
Public.

Description

Streamline the CPS IR Visitor interface. Previously, the visitor interface combined two things: (1) the interface for visiting concrete IR instruction classes and (2) a default implementation that called the visit function for the superclass explicitly (but not through super). For most classes that extended Visitor this inherited implementation was used to throw an exception if a visit method for a new class was forgotten. Instead, it's better to make this class purely an interface which will give a static warning when a visit method is forgotten. This change forces us to implement methods that previously had an inherited (not necessary correct) implementation. BUG= R=asgerf@google.com, karlklose@google.com Committed: https://code.google.com/p/dart/source/detail?r=44235

Patch Set 1 #

Patch Set 2 : Signal an error in visit methods that should not be called. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+287 lines, -143 lines) Patch
M pkg/analyzer2dart/test/sexpr_data.dart View 4 chunks +12 lines, -6 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart View 1 8 chunks +66 lines, -63 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_nodes_sexpr.dart View 4 chunks +46 lines, -6 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart View 1 8 chunks +104 lines, -39 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/shrinking_reductions.dart View 1 chunk +2 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/type_propagation.dart View 2 chunks +20 lines, -11 lines 0 comments Download
M pkg/compiler/lib/src/dart_backend/backend.dart View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/js_backend/codegen/task.dart View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/tree_ir/tree_ir_builder.dart View 3 chunks +35 lines, -13 lines 0 comments Download

Messages

Total messages: 7 (2 generated)
Kevin Millikin (Google)
5 years, 9 months ago (2015-03-04 11:34:59 UTC) #2
asgerf
Very nice. LGTM!
5 years, 9 months ago (2015-03-04 11:45:44 UTC) #3
karlklose
LGTM. Consider having visit-methods that are not intended to be called throw/call internalError.
5 years, 9 months ago (2015-03-04 12:58:17 UTC) #5
Kevin Millikin (Google)
On 2015/03/04 12:58:17, karlklose wrote: > LGTM. > > Consider having visit-methods that are not ...
5 years, 9 months ago (2015-03-04 13:31:04 UTC) #6
Kevin Millikin (Google)
5 years, 9 months ago (2015-03-04 14:32:17 UTC) #7
Message was sent while issue was closed.
Committed patchset #2 (id:20001) manually as 44235 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698