| Index: runtime/vm/flow_graph_compiler_x64.cc
|
| diff --git a/runtime/vm/flow_graph_compiler_x64.cc b/runtime/vm/flow_graph_compiler_x64.cc
|
| index 4662afbb38c909847d7f07f9dd72afb79d922c7d..82d36166ee5abbbf1c4301862d1e3b25d271f874 100644
|
| --- a/runtime/vm/flow_graph_compiler_x64.cc
|
| +++ b/runtime/vm/flow_graph_compiler_x64.cc
|
| @@ -27,7 +27,7 @@ DEFINE_FLAG(bool, trap_on_deoptimization, false, "Trap on deoptimization.");
|
| DEFINE_FLAG(bool, unbox_mints, true, "Optimize 64-bit integer arithmetic.");
|
| DECLARE_FLAG(bool, enable_simd_inline);
|
| DECLARE_FLAG(bool, use_megamorphic_stub);
|
| -
|
| +DECLARE_FLAG(bool, precompilation);
|
|
|
| void MegamorphicSlowPath::EmitNativeCode(FlowGraphCompiler* compiler) {
|
| Assembler* assembler = compiler->assembler();
|
| @@ -1139,7 +1139,7 @@ void FlowGraphCompiler::CompileGraph() {
|
| // Emit function patching code. This will be swapped with the first 13 bytes
|
| // at entry point.
|
|
|
| - if (is_optimizing() && Compiler::allow_recompilation()) {
|
| + if (is_optimizing() && !FLAG_precompilation) {
|
| // Leave enough space for patching in case of lazy deoptimization from
|
| // deferred code.
|
| __ nop(ShortCallPattern::pattern_length_in_bytes());
|
| @@ -1303,7 +1303,7 @@ void FlowGraphCompiler::EmitMegamorphicInstanceCall(
|
|
|
| RecordSafepoint(locs);
|
| const intptr_t deopt_id_after = Thread::ToDeoptAfter(deopt_id);
|
| - if (Compiler::always_optimize()) {
|
| + if (FLAG_precompilation) {
|
| // Megamorphic calls may occur in slow path stubs.
|
| // If valid use try_index argument.
|
| if (try_index == CatchClauseNode::kInvalidTryIndex) {
|
|
|