Index: runtime/vm/flow_graph_compiler.cc |
diff --git a/runtime/vm/flow_graph_compiler.cc b/runtime/vm/flow_graph_compiler.cc |
index 3433de04a0cc693ff77918b29c3c2093968b0ca5..7254e162da2aadb807e3c38facedeb1fac5b030b 100644 |
--- a/runtime/vm/flow_graph_compiler.cc |
+++ b/runtime/vm/flow_graph_compiler.cc |
@@ -1043,7 +1043,7 @@ void FlowGraphCompiler::GenerateInstanceCall( |
return; |
} |
ASSERT(!ic_data.IsNull()); |
- uword label_address = 0; |
+ Code& target = Code::Handle(); |
StubCode* stub_code = isolate()->stub_code(); |
if (is_optimizing() && (ic_data.NumberOfUsedChecks() == 0)) { |
// Emit IC call that will count and thus may need reoptimization at |
@@ -1053,16 +1053,15 @@ void FlowGraphCompiler::GenerateInstanceCall( |
|| flow_graph().IsCompiledForOsr()); |
switch (ic_data.NumArgsTested()) { |
case 1: |
- label_address = stub_code->OneArgOptimizedCheckInlineCacheEntryPoint(); |
+ target = stub_code->OneArgOptimizedCheckInlineCacheCode(); |
break; |
case 2: |
- label_address = stub_code->TwoArgsOptimizedCheckInlineCacheEntryPoint(); |
+ target = stub_code->TwoArgsOptimizedCheckInlineCacheCode(); |
break; |
default: |
UNIMPLEMENTED(); |
} |
- ExternalLabel target_label(label_address); |
- EmitOptimizedInstanceCall(&target_label, ic_data, |
+ EmitOptimizedInstanceCall(target, ic_data, |
argument_count, deopt_id, token_pos, locs); |
return; |
} |
@@ -1080,16 +1079,15 @@ void FlowGraphCompiler::GenerateInstanceCall( |
switch (ic_data.NumArgsTested()) { |
case 1: |
- label_address = stub_code->OneArgCheckInlineCacheEntryPoint(); |
+ target = stub_code->OneArgCheckInlineCacheCode(); |
break; |
case 2: |
- label_address = stub_code->TwoArgsCheckInlineCacheEntryPoint(); |
+ target = stub_code->TwoArgsCheckInlineCacheCode(); |
break; |
default: |
UNIMPLEMENTED(); |
} |
- ExternalLabel target_label(label_address); |
- EmitInstanceCall(&target_label, ic_data, argument_count, |
+ EmitInstanceCall(target, ic_data, argument_count, |
deopt_id, token_pos, locs); |
} |