Chromium Code Reviews| Index: runtime/vm/flow_graph_compiler.cc |
| diff --git a/runtime/vm/flow_graph_compiler.cc b/runtime/vm/flow_graph_compiler.cc |
| index ef109ac8a8f4243658a862594c9ef8d017f26950..673d7b29fdd56fcd0473504936a4aacb00b1657d 100644 |
| --- a/runtime/vm/flow_graph_compiler.cc |
| +++ b/runtime/vm/flow_graph_compiler.cc |
| @@ -13,6 +13,7 @@ |
| #include "vm/debugger.h" |
| #include "vm/deopt_instructions.h" |
| #include "vm/exceptions.h" |
| +#include "vm/flags.h" |
| #include "vm/flow_graph_allocator.h" |
| #include "vm/il_printer.h" |
| #include "vm/intrinsifier.h" |
| @@ -39,9 +40,6 @@ DEFINE_FLAG(int, min_optimization_counter_threshold, 5000, |
| "The minimum invocation count for a function."); |
| DEFINE_FLAG(int, optimization_counter_scale, 2000, |
| "The scale of invocation count, by size of the function."); |
| -DEFINE_FLAG(bool, polymorphic_with_deopt, true, |
| - "Polymorphic calls can be generated so that failure either causes " |
| - "deoptimization or falls through to a megamorphic call"); |
| DEFINE_FLAG(bool, source_lines, false, "Emit source line as assembly comment."); |
| DEFINE_FLAG(bool, trace_inlining_intervals, false, |
| "Inlining interval diagnostics"); |
| @@ -65,10 +63,8 @@ DECLARE_FLAG(int, reoptimization_counter_threshold); |
| DECLARE_FLAG(int, stacktrace_every); |
| DECLARE_FLAG(charp, stacktrace_filter); |
| DECLARE_FLAG(bool, use_field_guards); |
| -DECLARE_FLAG(bool, use_cha_deopt); |
| DECLARE_FLAG(bool, use_osr); |
| DECLARE_FLAG(bool, print_stop_message); |
| -DECLARE_FLAG(bool, lazy_dispatchers); |
| DECLARE_FLAG(bool, interpret_irregexp); |
| DECLARE_FLAG(bool, enable_mirrors); |
| DECLARE_FLAG(bool, link_natives_lazily); |
| @@ -91,7 +87,6 @@ static void PrecompilationModeHandler(bool value) { |
| FLAG_precompilation = true; |
| FLAG_always_megamorphic_calls = true; |
| - FLAG_polymorphic_with_deopt = false; |
| FLAG_optimization_counter_threshold = -1; |
| FLAG_use_field_guards = false; |
| FLAG_use_osr = false; |
| @@ -111,7 +106,6 @@ static void PrecompilationModeHandler(bool value) { |
| // since it is done at places where no pool pointer is loaded. |
| FLAG_print_stop_message = false; |
| - FLAG_lazy_dispatchers = false; |
| FLAG_interpret_irregexp = true; |
| FLAG_enable_mirrors = false; |
| FLAG_link_natives_lazily = true; |
| @@ -136,6 +130,13 @@ static void PrecompilationModeHandler(bool value) { |
| // while precompilation has only one. |
| FLAG_background_compilation = false; |
| FLAG_collect_dynamic_function_names = true; |
| +#if !defined(DART_PRECOMPILED_RUNTIME) |
| + FLAG_lazy_dispatchers = false; |
| + FLAG_polymorphic_with_deopt = false; |
|
rmacnak
2016/02/19 23:46:04
use_cha_deopt
Florian Schneider
2016/02/23 15:27:03
Done.
|
| +#else |
| + COMPILE_ASSERT(!FLAG_lazy_dispatchers); |
| + COMPILE_ASSERT(!FLAG_polymorphic_with_deopt); |
| +#endif |
| } |
| } |