| Index: src/arm/deoptimizer-arm.cc
|
| ===================================================================
|
| --- src/arm/deoptimizer-arm.cc (revision 7563)
|
| +++ src/arm/deoptimizer-arm.cc (working copy)
|
| @@ -106,8 +106,9 @@
|
|
|
| // Add the deoptimizing code to the list.
|
| DeoptimizingCodeListNode* node = new DeoptimizingCodeListNode(code);
|
| - node->set_next(deoptimizing_code_list_);
|
| - deoptimizing_code_list_ = node;
|
| + DeoptimizerData* data = Isolate::Current()->deoptimizer_data();
|
| + node->set_next(data->deoptimizing_code_list_);
|
| + data->deoptimizing_code_list_ = node;
|
|
|
| // Set the code for the function to non-optimized version.
|
| function->ReplaceCode(function->shared()->code());
|
| @@ -317,7 +318,8 @@
|
| optimized_code_->entry() + pc_offset);
|
| output_[0]->SetPc(pc);
|
| }
|
| - Code* continuation = Builtins::builtin(Builtins::NotifyOSR);
|
| + Code* continuation = Isolate::Current()->builtins()->builtin(
|
| + Builtins::NotifyOSR);
|
| output_[0]->SetContinuation(
|
| reinterpret_cast<uint32_t>(continuation->entry()));
|
|
|
| @@ -491,11 +493,13 @@
|
| FullCodeGenerator::StateField::decode(pc_and_state);
|
| output_frame->SetState(Smi::FromInt(state));
|
|
|
| +
|
| // Set the continuation for the topmost frame.
|
| if (is_topmost) {
|
| + Builtins* builtins = isolate_->builtins();
|
| Code* continuation = (bailout_type_ == EAGER)
|
| - ? Builtins::builtin(Builtins::NotifyDeoptimized)
|
| - : Builtins::builtin(Builtins::NotifyLazyDeoptimized);
|
| + ? builtins->builtin(Builtins::NotifyDeoptimized)
|
| + : builtins->builtin(Builtins::NotifyLazyDeoptimized);
|
| output_frame->SetContinuation(
|
| reinterpret_cast<uint32_t>(continuation->entry()));
|
| }
|
|
|