| Index: runtime/vm/flow_graph_compiler_ia32.cc
|
| ===================================================================
|
| --- runtime/vm/flow_graph_compiler_ia32.cc (revision 12860)
|
| +++ runtime/vm/flow_graph_compiler_ia32.cc (working copy)
|
| @@ -1105,11 +1105,22 @@
|
| ASSERT(!IsLeaf());
|
| __ LoadObject(ECX, function);
|
| __ LoadObject(EDX, arguments_descriptor);
|
| - GenerateDartCall(deopt_id,
|
| - token_pos,
|
| - &StubCode::CallStaticFunctionLabel(),
|
| - PcDescriptors::kFuncCall,
|
| - locs);
|
| + if (function.HasCode()) {
|
| + const Code& code = Code::Handle(function.CurrentCode());
|
| + ExternalLabel target_label(function.ToFullyQualifiedCString(),
|
| + code.EntryPoint());
|
| + GenerateDartCall(deopt_id,
|
| + token_pos,
|
| + &target_label,
|
| + PcDescriptors::kFuncCall,
|
| + locs);
|
| + } else {
|
| + GenerateDartCall(deopt_id,
|
| + token_pos,
|
| + &StubCode::CallStaticFunctionLabel(),
|
| + PcDescriptors::kFuncCall,
|
| + locs);
|
| + }
|
| __ Drop(argument_count);
|
| }
|
|
|
|
|