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.h" | 5 #include "vm/flow_graph.h" |
6 | 6 |
7 #include "vm/bit_vector.h" | 7 #include "vm/bit_vector.h" |
8 #include "vm/flow_graph_builder.h" | 8 #include "vm/flow_graph_builder.h" |
9 #include "vm/flow_graph_compiler.h" | 9 #include "vm/flow_graph_compiler.h" |
10 #include "vm/flow_graph_range_analysis.h" | 10 #include "vm/flow_graph_range_analysis.h" |
11 #include "vm/il_printer.h" | 11 #include "vm/il_printer.h" |
12 #include "vm/intermediate_language.h" | 12 #include "vm/intermediate_language.h" |
13 #include "vm/growable_array.h" | 13 #include "vm/growable_array.h" |
14 #include "vm/object_store.h" | 14 #include "vm/object_store.h" |
15 | 15 |
16 namespace dart { | 16 namespace dart { |
17 | 17 |
18 #if defined(TARGET_ARCH_ARM) || defined(TARGET_ARCH_IA32) | 18 #if defined(TARGET_ARCH_ARM) || defined(TARGET_ARCH_IA32) |
19 DEFINE_FLAG(bool, trace_smi_widening, false, "Trace Smi->Int32 widening pass."); | 19 DEFINE_FLAG(bool, trace_smi_widening, false, "Trace Smi->Int32 widening pass."); |
20 #endif | 20 #endif |
21 DEFINE_FLAG(bool, prune_dead_locals, true, "optimize dead locals away"); | 21 DEFINE_FLAG(bool, prune_dead_locals, true, "optimize dead locals away"); |
22 DECLARE_FLAG(bool, emit_edge_counters); | 22 DECLARE_FLAG(bool, emit_edge_counters); |
23 DECLARE_FLAG(bool, reorder_basic_blocks); | 23 DECLARE_FLAG(bool, reorder_basic_blocks); |
24 DECLARE_FLAG(bool, trace_optimization); | |
25 DECLARE_FLAG(bool, verify_compiler); | 24 DECLARE_FLAG(bool, verify_compiler); |
26 | 25 |
27 | 26 |
28 FlowGraph::FlowGraph(const ParsedFunction& parsed_function, | 27 FlowGraph::FlowGraph(const ParsedFunction& parsed_function, |
29 GraphEntryInstr* graph_entry, | 28 GraphEntryInstr* graph_entry, |
30 intptr_t max_block_id) | 29 intptr_t max_block_id) |
31 : thread_(Thread::Current()), | 30 : thread_(Thread::Current()), |
32 parent_(), | 31 parent_(), |
33 current_ssa_temp_index_(0), | 32 current_ssa_temp_index_(0), |
34 max_block_id_(max_block_id), | 33 max_block_id_(max_block_id), |
(...skipping 1940 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1975 ReplaceCurrentInstruction(&it, current, replacement); | 1974 ReplaceCurrentInstruction(&it, current, replacement); |
1976 changed = true; | 1975 changed = true; |
1977 } | 1976 } |
1978 } | 1977 } |
1979 } | 1978 } |
1980 return changed; | 1979 return changed; |
1981 } | 1980 } |
1982 | 1981 |
1983 | 1982 |
1984 } // namespace dart | 1983 } // namespace dart |
OLD | NEW |