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

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 411 matching lines...) Expand 10 before | Expand all | Expand 10 after
422 EmitStaticCall(function, arguments_descriptor, argument_count, 422 EmitStaticCall(function, arguments_descriptor, argument_count,
423 deopt_id, token_pos, try_index, locs); 423 deopt_id, token_pos, try_index, locs);
424 } 424 }
425 425
426 426
427 void FlowGraphCompiler::GenerateNumberTypeCheck(Register kClassIdReg, 427 void FlowGraphCompiler::GenerateNumberTypeCheck(Register kClassIdReg,
428 const AbstractType& type, 428 const AbstractType& type,
429 Label* is_instance_lbl, 429 Label* is_instance_lbl,
430 Label* is_not_instance_lbl) { 430 Label* is_not_instance_lbl) {
431 GrowableArray<intptr_t> args; 431 GrowableArray<intptr_t> args;
432 if (type.IsNumberInterface()) { 432 if (type.IsNumberType()) {
433 args.Add(kDoubleCid); 433 args.Add(kDoubleCid);
434 args.Add(kMintCid); 434 args.Add(kMintCid);
435 args.Add(kBigintCid); 435 args.Add(kBigintCid);
436 } else if (type.IsIntInterface()) { 436 } else if (type.IsIntInterface()) {
437 args.Add(kMintCid); 437 args.Add(kMintCid);
438 args.Add(kBigintCid); 438 args.Add(kBigintCid);
439 } else if (type.IsDoubleInterface()) { 439 } else if (type.IsDoubleInterface()) {
440 args.Add(kDoubleCid); 440 args.Add(kDoubleCid);
441 } 441 }
442 CheckClassIds(kClassIdReg, args, is_instance_lbl, is_not_instance_lbl); 442 CheckClassIds(kClassIdReg, args, is_instance_lbl, is_not_instance_lbl);
(...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after
756 return; 756 return;
757 } 757 }
758 } 758 }
759 759
760 // This move is not blocked. 760 // This move is not blocked.
761 EmitMove(index); 761 EmitMove(index);
762 } 762 }
763 763
764 764
765 } // namespace dart 765 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698