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

Side by Side Diff: sdk/lib/_internal/compiler/implementation/ssa/builder.dart

Issue 11417060: Remive uses of "void operator[]() => ..." in the html library and enable return type checks for all… (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | sdk/lib/html/dart2js/html_dart2js.dart » ('j') | 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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 4
5 part of ssa; 5 part of ssa;
6 6
7 class Interceptors { 7 class Interceptors {
8 Compiler compiler; 8 Compiler compiler;
9 Interceptors(Compiler this.compiler); 9 Interceptors(Compiler this.compiler);
10 10
(...skipping 3670 matching lines...) Expand 10 before | Expand all | Expand 10 after
3681 native.handleSsaNative(this, node.expression); 3681 native.handleSsaNative(this, node.expression);
3682 return; 3682 return;
3683 } 3683 }
3684 assert(invariant(node, !node.isRedirectingFactoryBody)); 3684 assert(invariant(node, !node.isRedirectingFactoryBody));
3685 HInstruction value; 3685 HInstruction value;
3686 if (node.expression == null) { 3686 if (node.expression == null) {
3687 value = graph.addConstantNull(constantSystem); 3687 value = graph.addConstantNull(constantSystem);
3688 } else { 3688 } else {
3689 visit(node.expression); 3689 visit(node.expression);
3690 value = pop(); 3690 value = pop();
3691 if (value is HForeign) { 3691 value = potentiallyCheckType(value, returnType);
3692 // TODO(6530, 6534): remove this check.
3693 } else {
3694 value = potentiallyCheckType(value, returnType);
3695 }
3696 } 3692 }
3697 3693
3698 handleInTryStatement(); 3694 handleInTryStatement();
3699 3695
3700 if (!inliningStack.isEmpty) { 3696 if (!inliningStack.isEmpty) {
3701 localsHandler.updateLocal(returnElement, value); 3697 localsHandler.updateLocal(returnElement, value);
3702 } else { 3698 } else {
3703 close(attachPosition(new HReturn(value), node)).addSuccessor(graph.exit); 3699 close(attachPosition(new HReturn(value), node)).addSuccessor(graph.exit);
3704 } 3700 }
3705 } 3701 }
(...skipping 1222 matching lines...) Expand 10 before | Expand all | Expand 10 after
4928 new HSubGraphBlockInformation(elseBranch.graph)); 4924 new HSubGraphBlockInformation(elseBranch.graph));
4929 4925
4930 HBasicBlock conditionStartBlock = conditionBranch.block; 4926 HBasicBlock conditionStartBlock = conditionBranch.block;
4931 conditionStartBlock.setBlockFlow(info, joinBlock); 4927 conditionStartBlock.setBlockFlow(info, joinBlock);
4932 SubGraph conditionGraph = conditionBranch.graph; 4928 SubGraph conditionGraph = conditionBranch.graph;
4933 HIf branch = conditionGraph.end.last; 4929 HIf branch = conditionGraph.end.last;
4934 assert(branch is HIf); 4930 assert(branch is HIf);
4935 branch.blockInformation = conditionStartBlock.blockFlow; 4931 branch.blockInformation = conditionStartBlock.blockFlow;
4936 } 4932 }
4937 } 4933 }
OLDNEW
« no previous file with comments | « no previous file | sdk/lib/html/dart2js/html_dart2js.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698