| Index: src/arm/lithium-codegen-arm.cc
|
| diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc
|
| index 3c845cba296438883f75633af7084410e9528df4..8a15bd59e62108ebea0779614582ceac5fbf4e57 100644
|
| --- a/src/arm/lithium-codegen-arm.cc
|
| +++ b/src/arm/lithium-codegen-arm.cc
|
| @@ -1930,20 +1930,15 @@ void LCodeGen::DoDateField(LDateField* instr) {
|
| Register result = ToRegister(instr->result());
|
| Register scratch = ToRegister(instr->temp());
|
| Smi* index = instr->index();
|
| - Label runtime, done;
|
| DCHECK(object.is(result));
|
| DCHECK(object.is(r0));
|
| DCHECK(!scratch.is(scratch0()));
|
| DCHECK(!scratch.is(object));
|
|
|
| - __ SmiTst(object);
|
| - DeoptimizeIf(eq, instr, Deoptimizer::kSmi);
|
| - __ CompareObjectType(object, scratch, scratch, JS_DATE_TYPE);
|
| - DeoptimizeIf(ne, instr, Deoptimizer::kNotADateObject);
|
| -
|
| if (index->value() == 0) {
|
| __ ldr(result, FieldMemOperand(object, JSDate::kValueOffset));
|
| } else {
|
| + Label runtime, done;
|
| if (index->value() < JSDate::kFirstUncachedField) {
|
| ExternalReference stamp = ExternalReference::date_cache_stamp(isolate());
|
| __ mov(scratch, Operand(stamp));
|
|
|