| OLD | NEW |
| 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 | 4 |
| 5 #include "vm/flow_graph_optimizer.h" | 5 #include "vm/flow_graph_optimizer.h" |
| 6 | 6 |
| 7 #include "vm/bit_vector.h" | 7 #include "vm/bit_vector.h" |
| 8 #include "vm/cha.h" | 8 #include "vm/cha.h" |
| 9 #include "vm/dart_entry.h" | 9 #include "vm/dart_entry.h" |
| 10 #include "vm/flow_graph_builder.h" | 10 #include "vm/flow_graph_builder.h" |
| (...skipping 971 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 982 intptr_t index_scale = FlowGraphCompiler::ElementSizeFor(array_cid); | 982 intptr_t index_scale = FlowGraphCompiler::ElementSizeFor(array_cid); |
| 983 *last = new StoreIndexedInstr(new Value(array), | 983 *last = new StoreIndexedInstr(new Value(array), |
| 984 new Value(index), | 984 new Value(index), |
| 985 new Value(stored_value), | 985 new Value(stored_value), |
| 986 needs_store_barrier, | 986 needs_store_barrier, |
| 987 index_scale, | 987 index_scale, |
| 988 array_cid, | 988 array_cid, |
| 989 call->deopt_id()); | 989 call->deopt_id()); |
| 990 flow_graph()->AppendTo(cursor, | 990 flow_graph()->AppendTo(cursor, |
| 991 *last, | 991 *last, |
| 992 NULL, | 992 call->env(), |
| 993 Definition::kEffect); | 993 Definition::kEffect); |
| 994 return true; | 994 return true; |
| 995 } | 995 } |
| 996 | 996 |
| 997 | 997 |
| 998 bool FlowGraphOptimizer::TryInlineRecognizedMethod(const Function& target, | 998 bool FlowGraphOptimizer::TryInlineRecognizedMethod(const Function& target, |
| 999 Instruction* call, | 999 Instruction* call, |
| 1000 intptr_t token_pos, | 1000 intptr_t token_pos, |
| 1001 const ICData& ic_data, | 1001 const ICData& ic_data, |
| 1002 TargetEntryInstr** entry, | 1002 TargetEntryInstr** entry, |
| (...skipping 6764 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7767 } | 7767 } |
| 7768 | 7768 |
| 7769 // Insert materializations at environment uses. | 7769 // Insert materializations at environment uses. |
| 7770 for (intptr_t i = 0; i < exits.length(); i++) { | 7770 for (intptr_t i = 0; i < exits.length(); i++) { |
| 7771 CreateMaterializationAt(exits[i], alloc, alloc->cls(), *fields); | 7771 CreateMaterializationAt(exits[i], alloc, alloc->cls(), *fields); |
| 7772 } | 7772 } |
| 7773 } | 7773 } |
| 7774 | 7774 |
| 7775 | 7775 |
| 7776 } // namespace dart | 7776 } // namespace dart |
| OLD | NEW |