| Index: src/ia32/builtins-ia32.cc
 | 
| diff --git a/src/ia32/builtins-ia32.cc b/src/ia32/builtins-ia32.cc
 | 
| index e861db3acb69c708db2a4a7eaa1d08fc888d7739..08bc22784ecbb25549c1b7526161197ae58f293c 100644
 | 
| --- a/src/ia32/builtins-ia32.cc
 | 
| +++ b/src/ia32/builtins-ia32.cc
 | 
| @@ -1810,25 +1810,7 @@ void Builtins::Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm) {
 | 
|  
 | 
|  
 | 
|  void Builtins::Generate_OnStackReplacement(MacroAssembler* masm) {
 | 
| -  // Get the loop depth of the stack guard check. This is recorded in
 | 
| -  // a test(eax, depth) instruction right after the call.
 | 
| -  Label stack_check;
 | 
| -  __ mov(ebx, Operand(esp, 0));  // return address
 | 
| -  if (FLAG_debug_code) {
 | 
| -    __ cmpb(Operand(ebx, 0), Assembler::kTestAlByte);
 | 
| -    __ Assert(equal, "test eax instruction not found after loop stack check");
 | 
| -  }
 | 
| -  __ movzx_b(ebx, Operand(ebx, 1));  // depth
 | 
| -
 | 
| -  // Get the loop nesting level at which we allow OSR from the
 | 
| -  // unoptimized code and check if we want to do OSR yet. If not we
 | 
| -  // should perform a stack guard check so we can get interrupts while
 | 
| -  // waiting for on-stack replacement.
 | 
|    __ mov(eax, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset));
 | 
| -  __ mov(ecx, FieldOperand(eax, JSFunction::kSharedFunctionInfoOffset));
 | 
| -  __ mov(ecx, FieldOperand(ecx, SharedFunctionInfo::kCodeOffset));
 | 
| -  __ cmpb(ebx, FieldOperand(ecx, Code::kAllowOSRAtLoopNestingLevelOffset));
 | 
| -  __ j(greater, &stack_check);
 | 
|  
 | 
|    // Pass the function to optimize as the argument to the on-stack
 | 
|    // replacement runtime function.
 | 
| @@ -1845,23 +1827,6 @@ void Builtins::Generate_OnStackReplacement(MacroAssembler* masm) {
 | 
|    __ j(not_equal, &skip, Label::kNear);
 | 
|    __ ret(0);
 | 
|  
 | 
| -  // Insert a stack guard check so that if we decide not to perform
 | 
| -  // on-stack replacement right away, the function calling this stub can
 | 
| -  // still be interrupted.
 | 
| -  __ bind(&stack_check);
 | 
| -  Label ok;
 | 
| -  ExternalReference stack_limit =
 | 
| -      ExternalReference::address_of_stack_limit(masm->isolate());
 | 
| -  __ cmp(esp, Operand::StaticVariable(stack_limit));
 | 
| -  __ j(above_equal, &ok, Label::kNear);
 | 
| -  StackCheckStub stub;
 | 
| -  __ TailCallStub(&stub);
 | 
| -  if (FLAG_debug_code) {
 | 
| -    __ Abort("Unreachable code: returned from tail call.");
 | 
| -  }
 | 
| -  __ bind(&ok);
 | 
| -  __ ret(0);
 | 
| -
 | 
|    __ bind(&skip);
 | 
|    // Untag the AST id and push it on the stack.
 | 
|    __ SmiUntag(eax);
 | 
| 
 |