| Index: src/ia32/deoptimizer-ia32.cc
|
| diff --git a/src/ia32/deoptimizer-ia32.cc b/src/ia32/deoptimizer-ia32.cc
|
| index 82d3f1e76ccf6f88542db935646f58270ebe8239..4eaf7fee58bc591446ac51792a58dc8dd118e7b6 100644
|
| --- a/src/ia32/deoptimizer-ia32.cc
|
| +++ b/src/ia32/deoptimizer-ia32.cc
|
| @@ -510,6 +510,8 @@ void Deoptimizer::EntryGenerator::Generate() {
|
| GeneratePrologue();
|
| CpuFeatures::Scope scope(SSE2);
|
|
|
| + Isolate* isolate = masm()->isolate();
|
| +
|
| // Save all general purpose registers before messing with them.
|
| const int kNumberOfRegisters = Register::kNumRegisters;
|
|
|
| @@ -550,7 +552,7 @@ void Deoptimizer::EntryGenerator::Generate() {
|
| __ mov(Operand(esp, 2 * kPointerSize), ebx); // Bailout id.
|
| __ mov(Operand(esp, 3 * kPointerSize), ecx); // Code address or 0.
|
| __ mov(Operand(esp, 4 * kPointerSize), edx); // Fp-to-sp delta.
|
| - __ CallCFunction(ExternalReference::new_deoptimizer_function(), 5);
|
| + __ CallCFunction(ExternalReference::new_deoptimizer_function(isolate), 5);
|
|
|
| // Preserve deoptimizer object in register eax and get the input
|
| // frame descriptor pointer.
|
| @@ -598,7 +600,8 @@ void Deoptimizer::EntryGenerator::Generate() {
|
| __ push(eax);
|
| __ PrepareCallCFunction(1, ebx);
|
| __ mov(Operand(esp, 0 * kPointerSize), eax);
|
| - __ CallCFunction(ExternalReference::compute_output_frames_function(), 1);
|
| + __ CallCFunction(
|
| + ExternalReference::compute_output_frames_function(isolate), 1);
|
| __ pop(eax);
|
|
|
| // Replace the current frame with the output frames.
|
|
|