| Index: src/mips/lithium-codegen-mips.cc
 | 
| diff --git a/src/mips/lithium-codegen-mips.cc b/src/mips/lithium-codegen-mips.cc
 | 
| index 25ba16232aa5a7b70f19e86756bcd5809a590e58..2ca10d56c64f561d1866f4c21d596c32f2a7e642 100644
 | 
| --- a/src/mips/lithium-codegen-mips.cc
 | 
| +++ b/src/mips/lithium-codegen-mips.cc
 | 
| @@ -5139,80 +5139,6 @@ void LCodeGen::DoCheckPrototypeMaps(LCheckPrototypeMaps* instr) {
 | 
|  }
 | 
|  
 | 
|  
 | 
| -void LCodeGen::DoAllocateObject(LAllocateObject* instr) {
 | 
| -  class DeferredAllocateObject: public LDeferredCode {
 | 
| -   public:
 | 
| -    DeferredAllocateObject(LCodeGen* codegen, LAllocateObject* instr)
 | 
| -        : LDeferredCode(codegen), instr_(instr) { }
 | 
| -    virtual void Generate() { codegen()->DoDeferredAllocateObject(instr_); }
 | 
| -    virtual LInstruction* instr() { return instr_; }
 | 
| -   private:
 | 
| -    LAllocateObject* instr_;
 | 
| -  };
 | 
| -
 | 
| -  DeferredAllocateObject* deferred =
 | 
| -      new(zone()) DeferredAllocateObject(this, instr);
 | 
| -
 | 
| -  Register result = ToRegister(instr->result());
 | 
| -  Register scratch = ToRegister(instr->temp());
 | 
| -  Register scratch2 = ToRegister(instr->temp2());
 | 
| -  Handle<JSFunction> constructor = instr->hydrogen()->constructor();
 | 
| -  Handle<Map> initial_map = instr->hydrogen()->constructor_initial_map();
 | 
| -  int instance_size = initial_map->instance_size();
 | 
| -  ASSERT(initial_map->pre_allocated_property_fields() +
 | 
| -         initial_map->unused_property_fields() -
 | 
| -         initial_map->inobject_properties() == 0);
 | 
| -
 | 
| -  __ Allocate(instance_size, result, scratch, scratch2, deferred->entry(),
 | 
| -              TAG_OBJECT);
 | 
| -
 | 
| -  __ bind(deferred->exit());
 | 
| -  if (FLAG_debug_code) {
 | 
| -    Label is_in_new_space;
 | 
| -    __ JumpIfInNewSpace(result, scratch, &is_in_new_space);
 | 
| -    __ Abort("Allocated object is not in new-space");
 | 
| -    __ bind(&is_in_new_space);
 | 
| -  }
 | 
| -
 | 
| -  // Load the initial map.
 | 
| -  Register map = scratch;
 | 
| -  __ LoadHeapObject(map, constructor);
 | 
| -  __ lw(map, FieldMemOperand(map, JSFunction::kPrototypeOrInitialMapOffset));
 | 
| -
 | 
| -  // Initialize map and fields of the newly allocated object.
 | 
| -  ASSERT(initial_map->instance_type() == JS_OBJECT_TYPE);
 | 
| -  __ sw(map, FieldMemOperand(result, JSObject::kMapOffset));
 | 
| -  __ LoadRoot(scratch, Heap::kEmptyFixedArrayRootIndex);
 | 
| -  __ sw(scratch, FieldMemOperand(result, JSObject::kElementsOffset));
 | 
| -  __ sw(scratch, FieldMemOperand(result, JSObject::kPropertiesOffset));
 | 
| -  if (initial_map->inobject_properties() != 0) {
 | 
| -    __ LoadRoot(scratch, Heap::kUndefinedValueRootIndex);
 | 
| -    for (int i = 0; i < initial_map->inobject_properties(); i++) {
 | 
| -      int property_offset = JSObject::kHeaderSize + i * kPointerSize;
 | 
| -      __ sw(scratch, FieldMemOperand(result, property_offset));
 | 
| -    }
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -void LCodeGen::DoDeferredAllocateObject(LAllocateObject* instr) {
 | 
| -  Register result = ToRegister(instr->result());
 | 
| -  Handle<Map> initial_map = instr->hydrogen()->constructor_initial_map();
 | 
| -  int instance_size = initial_map->instance_size();
 | 
| -
 | 
| -  // TODO(3095996): Get rid of this. For now, we need to make the
 | 
| -  // result register contain a valid pointer because it is already
 | 
| -  // contained in the register pointer map.
 | 
| -  __ mov(result, zero_reg);
 | 
| -
 | 
| -  PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters);
 | 
| -  __ li(a0, Operand(Smi::FromInt(instance_size)));
 | 
| -  __ push(a0);
 | 
| -  CallRuntimeFromDeferred(Runtime::kAllocateInNewSpace, 1, instr);
 | 
| -  __ StoreToSafepointRegisterSlot(v0, result);
 | 
| -}
 | 
| -
 | 
| -
 | 
|  void LCodeGen::DoAllocate(LAllocate* instr) {
 | 
|    class DeferredAllocate: public LDeferredCode {
 | 
|     public:
 | 
| 
 |