Index: src/ia32/builtins-ia32.cc |
diff --git a/src/ia32/builtins-ia32.cc b/src/ia32/builtins-ia32.cc |
index bc54b3e207f11deb306f337eb358b8407b00abc3..8cf6fa852340affd0e587bf0f134240e4bd8809c 100644 |
--- a/src/ia32/builtins-ia32.cc |
+++ b/src/ia32/builtins-ia32.cc |
@@ -800,22 +800,20 @@ static void Generate_InterpreterNotifyDeoptimizedHelper( |
// Enter an internal frame. |
{ |
FrameScope scope(masm, StackFrame::INTERNAL); |
- __ Push(kInterpreterAccumulatorRegister); // Save accumulator register. |
// Pass the deoptimization type to the runtime system. |
__ Push(Smi::FromInt(static_cast<int>(type))); |
- |
__ CallRuntime(Runtime::kNotifyDeoptimized); |
- |
- __ Pop(kInterpreterAccumulatorRegister); // Restore accumulator register. |
// Tear down internal frame. |
} |
- // Drop state (we don't use these for interpreter deopts) and push PC at top |
+ // Drop state (we don't use these for interpreter deopts) and and pop the |
+ // accumulator value into the accumulator register and push PC at top |
// of stack (to simulate initial call to bytecode handler in interpreter entry |
// trampoline). |
__ Pop(ebx); |
__ Drop(1); |
+ __ Pop(kInterpreterAccumulatorRegister); |
__ Push(ebx); |
// Enter the bytecode dispatch. |