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 #include "vm/report.h" | 15 #include "vm/report.h" |
16 | 16 |
17 namespace dart { | 17 namespace dart { |
18 | 18 |
19 #if defined(TARGET_ARCH_ARM) || defined(TARGET_ARCH_IA32) | 19 #if defined(TARGET_ARCH_ARM) || defined(TARGET_ARCH_IA32) |
20 DEFINE_FLAG(bool, trace_smi_widening, false, "Trace Smi->Int32 widening pass."); | 20 DEFINE_FLAG(bool, trace_smi_widening, false, "Trace Smi->Int32 widening pass."); |
21 #endif | 21 #endif |
22 DEFINE_FLAG(bool, prune_dead_locals, true, "optimize dead locals away"); | 22 DEFINE_FLAG(bool, prune_dead_locals, true, "optimize dead locals away"); |
23 DECLARE_FLAG(bool, emit_edge_counters); | 23 DECLARE_FLAG(bool, emit_edge_counters); |
24 DECLARE_FLAG(bool, reorder_basic_blocks); | 24 DECLARE_FLAG(bool, reorder_basic_blocks); |
25 DECLARE_FLAG(bool, trace_optimization); | |
26 DECLARE_FLAG(bool, verify_compiler); | 25 DECLARE_FLAG(bool, verify_compiler); |
27 | 26 |
28 | 27 |
29 FlowGraph::FlowGraph(const ParsedFunction& parsed_function, | 28 FlowGraph::FlowGraph(const ParsedFunction& parsed_function, |
30 GraphEntryInstr* graph_entry, | 29 GraphEntryInstr* graph_entry, |
31 intptr_t max_block_id) | 30 intptr_t max_block_id) |
32 : thread_(Thread::Current()), | 31 : thread_(Thread::Current()), |
33 parent_(), | 32 parent_(), |
34 current_ssa_temp_index_(0), | 33 current_ssa_temp_index_(0), |
35 max_block_id_(max_block_id), | 34 max_block_id_(max_block_id), |
(...skipping 1958 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1994 ReplaceCurrentInstruction(&it, current, replacement); | 1993 ReplaceCurrentInstruction(&it, current, replacement); |
1995 changed = true; | 1994 changed = true; |
1996 } | 1995 } |
1997 } | 1996 } |
1998 } | 1997 } |
1999 return changed; | 1998 return changed; |
2000 } | 1999 } |
2001 | 2000 |
2002 | 2001 |
2003 } // namespace dart | 2002 } // namespace dart |
OLD | NEW |