Chromium Code Reviews| Index: src/objects-inl.h | 
| diff --git a/src/objects-inl.h b/src/objects-inl.h | 
| index bc6217ba5ebe66ae613719d5c67c06a91952c363..a081b35a3831fa94e968aed59bfed286b303fe97 100644 | 
| --- a/src/objects-inl.h | 
| +++ b/src/objects-inl.h | 
| @@ -605,6 +605,7 @@ TYPE_CHECKER(Oddball, ODDBALL_TYPE) | 
| TYPE_CHECKER(JSGlobalPropertyCell, JS_GLOBAL_PROPERTY_CELL_TYPE) | 
| TYPE_CHECKER(SharedFunctionInfo, SHARED_FUNCTION_INFO_TYPE) | 
| TYPE_CHECKER(JSValue, JS_VALUE_TYPE) | 
| +TYPE_CHECKER(JSDate, JS_DATE_TYPE) | 
| TYPE_CHECKER(JSMessageObject, JS_MESSAGE_OBJECT_TYPE) | 
| @@ -800,6 +801,11 @@ double Object::Number() { | 
| } | 
| +bool Object::IsNaN() { | 
| + return this->IsHeapNumber() && isnan(HeapNumber::cast(this)->value()); | 
| +} | 
| + | 
| + | 
| MaybeObject* Object::ToSmi() { | 
| if (IsSmi()) return this; | 
| if (IsHeapNumber()) { | 
| @@ -1425,6 +1431,8 @@ int JSObject::GetHeaderSize() { | 
| return JSFunction::kSize; | 
| case JS_VALUE_TYPE: | 
| return JSValue::kSize; | 
| + case JS_DATE_TYPE: | 
| + return JSDate::kSize; | 
| case JS_ARRAY_TYPE: | 
| return JSArray::kSize; | 
| case JS_WEAK_MAP_TYPE: | 
| @@ -4118,6 +4126,24 @@ JSValue* JSValue::cast(Object* obj) { | 
| } | 
| +ACCESSORS(JSDate, value, Object, kValueOffset) | 
| +ACCESSORS(JSDate, cache_stamp, Object, kCacheStampOffset) | 
| +ACCESSORS(JSDate, year, Object, kYearOffset) | 
| +ACCESSORS(JSDate, month, Object, kMonthOffset) | 
| +ACCESSORS(JSDate, day, Object, kDayOffset) | 
| +ACCESSORS(JSDate, hour, Object, kHourOffset) | 
| +ACCESSORS(JSDate, min, Object, kMinOffset) | 
| +ACCESSORS(JSDate, sec, Object, kSecOffset) | 
| +ACCESSORS(JSDate, weekday, Object, kWeekdayOffset) | 
| 
 
rossberg
2012/03/06 15:55:50
Nit: reorder for consistency.
 
ulan
2012/03/07 10:55:21
Done.
 
 | 
| + | 
| + | 
| +JSDate* JSDate::cast(Object* obj) { | 
| + ASSERT(obj->IsJSDate()); | 
| + ASSERT(HeapObject::cast(obj)->Size() == JSDate::kSize); | 
| + return reinterpret_cast<JSDate*>(obj); | 
| +} | 
| + | 
| + | 
| ACCESSORS(JSMessageObject, type, String, kTypeOffset) | 
| ACCESSORS(JSMessageObject, arguments, JSArray, kArgumentsOffset) | 
| ACCESSORS(JSMessageObject, script, Object, kScriptOffset) |