Index: runtime/vm/flow_graph_compiler_arm.cc |
diff --git a/runtime/vm/flow_graph_compiler_arm.cc b/runtime/vm/flow_graph_compiler_arm.cc |
index 488b475e324233b5c303220be9506fce9f04d96e..bc1ebced22ec273007d2e5c3b63e13fdbf75941e 100644 |
--- a/runtime/vm/flow_graph_compiler_arm.cc |
+++ b/runtime/vm/flow_graph_compiler_arm.cc |
@@ -1025,6 +1025,13 @@ void FlowGraphCompiler::EmitFrameEntry() { |
// R4: arguments descriptor array. |
void FlowGraphCompiler::CompileGraph() { |
InitCompiler(); |
+ const Function& function = parsed_function().function(); |
+ |
+#ifdef DART_PRECOMPILER |
+ if (function.IsDynamicFunction()) { |
+ __ MonomorphicCheckedEntry(); |
+ } |
+#endif // DART_PRECOMPILER |
if (TryIntrinsify()) { |
// Skip regular code generation. |
@@ -1034,8 +1041,6 @@ void FlowGraphCompiler::CompileGraph() { |
EmitFrameEntry(); |
ASSERT(assembler()->constant_pool_allowed()); |
- const Function& function = parsed_function().function(); |
- |
const int num_fixed_params = function.num_fixed_parameters(); |
const int num_copied_params = parsed_function().num_copied_params(); |
const int num_locals = parsed_function().num_stack_locals(); |