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

Side by Side Diff: pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart

Issue 1212663004: dart2js cps: Fix a couple of minor issues. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 library dart2js.ir_nodes; 4 library dart2js.ir_nodes;
5 5
6 import '../constants/expressions.dart'; 6 import '../constants/expressions.dart';
7 import '../constants/values.dart' as values show ConstantValue; 7 import '../constants/values.dart' as values show ConstantValue;
8 import '../dart_types.dart' show DartType, InterfaceType, TypeVariableType; 8 import '../dart_types.dart' show DartType, InterfaceType, TypeVariableType;
9 import '../elements/elements.dart'; 9 import '../elements/elements.dart';
10 import '../io/source_information.dart' show SourceInformation; 10 import '../io/source_information.dart' show SourceInformation;
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 /// there is used by optimization passes. This is likely to change. 282 /// there is used by optimization passes. This is likely to change.
283 class InvokeMethod extends Expression implements Invoke { 283 class InvokeMethod extends Expression implements Invoke {
284 Reference<Primitive> receiver; 284 Reference<Primitive> receiver;
285 Selector selector; 285 Selector selector;
286 TypeMask mask; 286 TypeMask mask;
287 final List<Reference<Primitive>> arguments; 287 final List<Reference<Primitive>> arguments;
288 final Reference<Continuation> continuation; 288 final Reference<Continuation> continuation;
289 final SourceInformation sourceInformation; 289 final SourceInformation sourceInformation;
290 290
291 /// If true, it is known that the receiver cannot be `null`. 291 /// If true, it is known that the receiver cannot be `null`.
292 /// 292 bool receiverIsNotNull = false;
asgerf 2015/06/29 14:09:12 The tree builder expects this to be set, but it's
293 /// This field is `null` until initialized by optimization phases.
294 bool receiverIsNotNull;
295 293
296 InvokeMethod(Primitive receiver, 294 InvokeMethod(Primitive receiver,
297 this.selector, 295 this.selector,
298 this.mask, 296 this.mask,
299 List<Primitive> arguments, 297 List<Primitive> arguments,
300 Continuation continuation, 298 Continuation continuation,
301 {this.sourceInformation}) 299 {this.sourceInformation})
302 : this.receiver = new Reference<Primitive>(receiver), 300 : this.receiver = new Reference<Primitive>(receiver),
303 this.arguments = _referenceList(arguments), 301 this.arguments = _referenceList(arguments),
304 this.continuation = new Reference<Continuation>(continuation); 302 this.continuation = new Reference<Continuation>(continuation);
(...skipping 966 matching lines...) Expand 10 before | Expand all | Expand 10 after
1271 const RemovalVisitor(); 1269 const RemovalVisitor();
1272 1270
1273 processReference(Reference reference) { 1271 processReference(Reference reference) {
1274 reference.unlink(); 1272 reference.unlink();
1275 } 1273 }
1276 1274
1277 static void remove(Node node) { 1275 static void remove(Node node) {
1278 (const RemovalVisitor()).visit(node); 1276 (const RemovalVisitor()).visit(node);
1279 } 1277 }
1280 } 1278 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698