| Index: src/arm/codegen-arm.cc | 
| =================================================================== | 
| --- src/arm/codegen-arm.cc	(revision 3592) | 
| +++ src/arm/codegen-arm.cc	(working copy) | 
| @@ -4455,9 +4455,6 @@ | 
| Label gc; | 
| int length = slots_ + Context::MIN_CONTEXT_SLOTS; | 
|  | 
| -  // Pop the function from the stack. | 
| -  __ pop(r3); | 
| - | 
| // Attempt to allocate the context in new space. | 
| __ AllocateInNewSpace(length + (FixedArray::kHeaderSize / kPointerSize), | 
| r0, | 
| @@ -4466,6 +4463,9 @@ | 
| &gc, | 
| TAG_OBJECT); | 
|  | 
| +  // Load the function from the stack. | 
| +  __ ldr(r3, MemOperand(sp, 0 * kPointerSize)); | 
| + | 
| // Setup the object header. | 
| __ LoadRoot(r2, Heap::kContextMapRootIndex); | 
| __ str(r2, FieldMemOperand(r0, HeapObject::kMapOffset)); | 
| @@ -4489,8 +4489,9 @@ | 
| __ str(r1, MemOperand(r0, Context::SlotOffset(i))); | 
| } | 
|  | 
| -  // Return. The on-stack parameter has already been popped. | 
| +  // Remove the on-stack argument and return. | 
| __ mov(cp, r0); | 
| +  __ pop(); | 
| __ Ret(); | 
|  | 
| // Need to collect. Call into runtime system. | 
|  |