| Index: src/mips/full-codegen-mips.cc
 | 
| diff --git a/src/mips/full-codegen-mips.cc b/src/mips/full-codegen-mips.cc
 | 
| index 6a697bc4f5e1250e77b1f8f1755303c4d584a61e..bfa24252b9046e2e15e275c2c613ef6b18b5ee25 100644
 | 
| --- a/src/mips/full-codegen-mips.cc
 | 
| +++ b/src/mips/full-codegen-mips.cc
 | 
| @@ -3160,21 +3160,19 @@ void FullCodeGenerator::EmitDateField(CallRuntime* expr) {
 | 
|  
 | 
|    VisitForAccumulatorValue(args->at(0));  // Load the object.
 | 
|  
 | 
| -  Label runtime, done;
 | 
| +  Label runtime, done, not_date_object;
 | 
|    Register object = v0;
 | 
|    Register result = v0;
 | 
|    Register scratch0 = t5;
 | 
|    Register scratch1 = a1;
 | 
|  
 | 
| -#ifdef DEBUG
 | 
| -  __ AbortIfSmi(object);
 | 
| +  __ JumpIfSmi(object, ¬_date_object);
 | 
|    __ GetObjectType(object, scratch1, scratch1);
 | 
| -  __ Assert(eq, "Trying to get date field from non-date.",
 | 
| -      scratch1, Operand(JS_DATE_TYPE));
 | 
| -#endif
 | 
| +  __ Branch(¬_date_object, ne, scratch1, Operand(JS_DATE_TYPE));
 | 
|  
 | 
|    if (index->value() == 0) {
 | 
|      __ lw(result, FieldMemOperand(object, JSDate::kValueOffset));
 | 
| +    __ jmp(&done);
 | 
|    } else {
 | 
|      if (index->value() < JSDate::kFirstUncachedField) {
 | 
|        ExternalReference stamp = ExternalReference::date_cache_stamp(isolate());
 | 
| @@ -3191,9 +3189,12 @@ void FullCodeGenerator::EmitDateField(CallRuntime* expr) {
 | 
|      __ li(a1, Operand(index));
 | 
|      __ Move(a0, object);
 | 
|      __ CallCFunction(ExternalReference::get_date_field_function(isolate()), 2);
 | 
| -    __ bind(&done);
 | 
| +    __ jmp(&done);
 | 
|    }
 | 
|  
 | 
| +  __ bind(¬_date_object);
 | 
| +  __ CallRuntime(Runtime::kThrowNotDateError, 0);
 | 
| +  __ bind(&done);
 | 
|    context()->Plug(v0);
 | 
|  }
 | 
|  
 | 
| @@ -3620,9 +3621,7 @@ void FullCodeGenerator::EmitGetCachedArrayIndex(CallRuntime* expr) {
 | 
|    ASSERT(args->length() == 1);
 | 
|    VisitForAccumulatorValue(args->at(0));
 | 
|  
 | 
| -  if (generate_debug_code_) {
 | 
| -    __ AbortIfNotString(v0);
 | 
| -  }
 | 
| +  __ AbortIfNotString(v0);
 | 
|  
 | 
|    __ lw(v0, FieldMemOperand(v0, String::kHashFieldOffset));
 | 
|    __ IndexFromHash(v0, v0);
 | 
| 
 |