Index: runtime/vm/flow_graph_compiler_arm64.cc |
diff --git a/runtime/vm/flow_graph_compiler_arm64.cc b/runtime/vm/flow_graph_compiler_arm64.cc |
index e76bf3ba553069bc2fe1901f9c03bcbf6e99b1a1..326ca58579f55a36704016adca13968726247098 100644 |
--- a/runtime/vm/flow_graph_compiler_arm64.cc |
+++ b/runtime/vm/flow_graph_compiler_arm64.cc |
@@ -1020,6 +1020,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. |
@@ -1029,8 +1036,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(); |