| OLD | NEW |
| 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/flow_graph_builder.h" | 5 #include "vm/flow_graph_builder.h" |
| 6 | 6 |
| 7 #include "vm/ast_printer.h" | 7 #include "vm/ast_printer.h" |
| 8 #include "vm/flags.h" | 8 #include "vm/flags.h" |
| 9 #include "vm/intermediate_language.h" | 9 #include "vm/intermediate_language.h" |
| 10 #include "vm/longjump.h" | 10 #include "vm/longjump.h" |
| (...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 310 Bailout("EffectGraphVisitor::VisitIncrOpLocalNode"); | 310 Bailout("EffectGraphVisitor::VisitIncrOpLocalNode"); |
| 311 } | 311 } |
| 312 | 312 |
| 313 | 313 |
| 314 void EffectGraphVisitor::VisitIncrOpInstanceFieldNode( | 314 void EffectGraphVisitor::VisitIncrOpInstanceFieldNode( |
| 315 IncrOpInstanceFieldNode* node) { | 315 IncrOpInstanceFieldNode* node) { |
| 316 Bailout("EffectGraphVisitor::VisitIncrOpInstanceFieldNode"); | 316 Bailout("EffectGraphVisitor::VisitIncrOpInstanceFieldNode"); |
| 317 } | 317 } |
| 318 | 318 |
| 319 | 319 |
| 320 void EffectGraphVisitor::VisitIncrOpStaticFieldNode( | |
| 321 IncrOpStaticFieldNode* node) { | |
| 322 Bailout("EffectGraphVisitor::VisitIncrOpStaticFieldNode"); | |
| 323 } | |
| 324 | |
| 325 | |
| 326 void EffectGraphVisitor::VisitIncrOpIndexedNode(IncrOpIndexedNode* node) { | 320 void EffectGraphVisitor::VisitIncrOpIndexedNode(IncrOpIndexedNode* node) { |
| 327 ASSERT((node->kind() == Token::kINCR) || (node->kind() == Token::kDECR)); | 321 ASSERT((node->kind() == Token::kINCR) || (node->kind() == Token::kDECR)); |
| 328 if (node->prefix()) { | 322 if (node->prefix()) { |
| 329 Bailout("IncrOpIndexed prefix"); | 323 Bailout("IncrOpIndexed prefix"); |
| 330 } else { | 324 } else { |
| 331 // Leave a placeholder, evaluate receiver and index. | 325 // Leave a placeholder, evaluate receiver and index. |
| 332 // t0 <- #0 | 326 // t0 <- #0 |
| 333 // t1 <- ... receiver ... | 327 // t1 <- ... receiver ... |
| 334 // t2 <- ... index ... | 328 // t2 <- ... index ... |
| 335 const Smi& placeholder = Smi::ZoneHandle(Smi::New(0)); | 329 const Smi& placeholder = Smi::ZoneHandle(Smi::New(0)); |
| (...skipping 679 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1015 char* chars = reinterpret_cast<char*>( | 1009 char* chars = reinterpret_cast<char*>( |
| 1016 Isolate::Current()->current_zone()->Allocate(len)); | 1010 Isolate::Current()->current_zone()->Allocate(len)); |
| 1017 OS::SNPrint(chars, len, kFormat, function_name, reason); | 1011 OS::SNPrint(chars, len, kFormat, function_name, reason); |
| 1018 const Error& error = Error::Handle( | 1012 const Error& error = Error::Handle( |
| 1019 LanguageError::New(String::Handle(String::New(chars)))); | 1013 LanguageError::New(String::Handle(String::New(chars)))); |
| 1020 Isolate::Current()->long_jump_base()->Jump(1, error); | 1014 Isolate::Current()->long_jump_base()->Jump(1, error); |
| 1021 } | 1015 } |
| 1022 | 1016 |
| 1023 | 1017 |
| 1024 } // namespace dart | 1018 } // namespace dart |
| OLD | NEW |