| 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 f8b9a016347e218f2df40bb8710bd648040f31e8..11bc02db2c00b7852e92c3db03510eaae692fb51 100644
|
| --- a/runtime/vm/flow_graph_compiler_arm64.cc
|
| +++ b/runtime/vm/flow_graph_compiler_arm64.cc
|
| @@ -98,12 +98,10 @@ RawTypedData* CompilerDeoptInfo::CreateDeoptInfo(FlowGraphCompiler* compiler,
|
| Zone* zone = compiler->zone();
|
|
|
| // Current PP, FP, and PC.
|
| - builder->AddPp(Function::Handle(zone, current->code().function()), slot_ix++);
|
| + builder->AddPp(current->function(), slot_ix++);
|
| builder->AddPcMarker(Function::Handle(zone), slot_ix++);
|
| builder->AddCallerFp(slot_ix++);
|
| - builder->AddReturnAddress(Function::Handle(zone, current->code().function()),
|
| - deopt_id(),
|
| - slot_ix++);
|
| + builder->AddReturnAddress(current->function(), deopt_id(), slot_ix++);
|
|
|
| // Emit all values that are needed for materialization as a part of the
|
| // expression stack for the bottom-most frame. This guarantees that GC
|
| @@ -121,16 +119,14 @@ RawTypedData* CompilerDeoptInfo::CreateDeoptInfo(FlowGraphCompiler* compiler,
|
| current = current->outer();
|
| while (current != NULL) {
|
| // PP, FP, and PC.
|
| - builder->AddPp(Function::Handle(
|
| - zone, current->code().function()), slot_ix++);
|
| - builder->AddPcMarker(Function::Handle(zone, previous->code().function()),
|
| - slot_ix++);
|
| + builder->AddPp(current->function(), slot_ix++);
|
| + builder->AddPcMarker(previous->function(), slot_ix++);
|
| builder->AddCallerFp(slot_ix++);
|
|
|
| // For any outer environment the deopt id is that of the call instruction
|
| // which is recorded in the outer environment.
|
| builder->AddReturnAddress(
|
| - Function::Handle(zone, current->code().function()),
|
| + current->function(),
|
| Isolate::ToDeoptAfter(current->deopt_id()),
|
| slot_ix++);
|
|
|
| @@ -161,8 +157,7 @@ RawTypedData* CompilerDeoptInfo::CreateDeoptInfo(FlowGraphCompiler* compiler,
|
| // For the outermost environment, set caller PC, caller PP, and caller FP.
|
| builder->AddCallerPp(slot_ix++);
|
| // PC marker.
|
| - builder->AddPcMarker(Function::Handle(zone, previous->code().function()),
|
| - slot_ix++);
|
| + builder->AddPcMarker(previous->function(), slot_ix++);
|
| builder->AddCallerFp(slot_ix++);
|
| builder->AddCallerPc(slot_ix++);
|
|
|
|
|