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

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

Issue 1639183004: dart2js: Another bug fix in CPS term copying. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 11 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 'dart:collection'; 6 import 'dart:collection';
7 import 'cps_fragment.dart' show CpsFragment; 7 import 'cps_fragment.dart' show CpsFragment;
8 import 'cps_ir_nodes_sexpr.dart'; 8 import 'cps_ir_nodes_sexpr.dart';
9 import '../constants/values.dart' as values; 9 import '../constants/values.dart' as values;
10 import '../dart_types.dart' show DartType, InterfaceType, TypeVariableType; 10 import '../dart_types.dart' show DartType, InterfaceType, TypeVariableType;
(...skipping 2683 matching lines...) Expand 10 before | Expand all | Expand 10 after
2694 } 2694 }
2695 2695
2696 Definition visitNullCheck(NullCheck node) { 2696 Definition visitNullCheck(NullCheck node) {
2697 return new NullCheck(getCopy(node.value), node.sourceInformation, 2697 return new NullCheck(getCopy(node.value), node.sourceInformation,
2698 condition: node.condition == null ? null : getCopy(node.condition), 2698 condition: node.condition == null ? null : getCopy(node.condition),
2699 selector: node.selector, 2699 selector: node.selector,
2700 useSelector: node.useSelector); 2700 useSelector: node.useSelector);
2701 } 2701 }
2702 2702
2703 Definition visitForeignCode(ForeignCode node) { 2703 Definition visitForeignCode(ForeignCode node) {
2704 return new ForeignCode(node.codeTemplate, node.type, 2704 return new ForeignCode(node.codeTemplate, node.storedType,
2705 getList(node.arguments), 2705 getList(node.arguments),
2706 node.nativeBehavior, 2706 node.nativeBehavior,
2707 dependency: node.dependency); 2707 dependency: node.dependency);
2708 } 2708 }
2709 } 2709 }
2710 2710
2711 /// A trampolining visitor to copy [FunctionDefinition]s. 2711 /// A trampolining visitor to copy [FunctionDefinition]s.
2712 class CopyingVisitor extends TrampolineRecursiveVisitor { 2712 class CopyingVisitor extends TrampolineRecursiveVisitor {
2713 // The visitor maintains a map from original continuations to their copies. 2713 // The visitor maintains a map from original continuations to their copies.
2714 Map<Continuation, Continuation> _copies = <Continuation, Continuation>{}; 2714 Map<Continuation, Continuation> _copies = <Continuation, Continuation>{};
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
2841 plug(new Branch.loose(_definitions.getCopy(node.condition), 2841 plug(new Branch.loose(_definitions.getCopy(node.condition),
2842 _copies[node.trueContinuation.definition], 2842 _copies[node.trueContinuation.definition],
2843 _copies[node.falseContinuation.definition]) 2843 _copies[node.falseContinuation.definition])
2844 ..isStrictCheck = node.isStrictCheck); 2844 ..isStrictCheck = node.isStrictCheck);
2845 } 2845 }
2846 2846
2847 visitUnreachable(Unreachable node) { 2847 visitUnreachable(Unreachable node) {
2848 plug(new Unreachable()); 2848 plug(new Unreachable());
2849 } 2849 }
2850 } 2850 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698