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

Side by Side Diff: runtime/vm/flow_graph_compiler.cc

Issue 10832401: Gentle start with removing explicit interfaces (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 4 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 | Annotate | Revision Log
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 #include "vm/globals.h" // Needed here to get TARGET_ARCH_XXX. 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_XXX.
6 6
7 #include "vm/flow_graph_compiler.h" 7 #include "vm/flow_graph_compiler.h"
8 8
9 #include "vm/dart_entry.h" 9 #include "vm/dart_entry.h"
10 #include "vm/debugger.h" 10 #include "vm/debugger.h"
(...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 token_pos, 433 token_pos,
434 try_index); 434 try_index);
435 } 435 }
436 436
437 437
438 void FlowGraphCompiler::GenerateNumberTypeCheck(Register kClassIdReg, 438 void FlowGraphCompiler::GenerateNumberTypeCheck(Register kClassIdReg,
439 const AbstractType& type, 439 const AbstractType& type,
440 Label* is_instance_lbl, 440 Label* is_instance_lbl,
441 Label* is_not_instance_lbl) { 441 Label* is_not_instance_lbl) {
442 GrowableArray<intptr_t> args; 442 GrowableArray<intptr_t> args;
443 if (type.IsNumberInterface()) { 443 if (type.IsNumber()) {
444 args.Add(kDoubleCid); 444 args.Add(kDoubleCid);
445 args.Add(kMintCid); 445 args.Add(kMintCid);
446 args.Add(kBigintCid); 446 args.Add(kBigintCid);
447 } else if (type.IsIntInterface()) { 447 } else if (type.IsIntInterface()) {
448 args.Add(kMintCid); 448 args.Add(kMintCid);
449 args.Add(kBigintCid); 449 args.Add(kBigintCid);
450 } else if (type.IsDoubleInterface()) { 450 } else if (type.IsDoubleInterface()) {
451 args.Add(kDoubleCid); 451 args.Add(kDoubleCid);
452 } 452 }
453 CheckClassIds(kClassIdReg, args, is_instance_lbl, is_not_instance_lbl); 453 CheckClassIds(kClassIdReg, args, is_instance_lbl, is_not_instance_lbl);
(...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after
767 return; 767 return;
768 } 768 }
769 } 769 }
770 770
771 // This move is not blocked. 771 // This move is not blocked.
772 EmitMove(index); 772 EmitMove(index);
773 } 773 }
774 774
775 775
776 } // namespace dart 776 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698