Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index 371c4854f6108949035c9af8df91575cba9a08fa..27b832d4f566c3a95017241e88218e44c7328ac6 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -1064,6 +1064,9 @@ class Object { |
STRUCT_LIST(DECLARE_STRUCT_PREDICATE) |
#undef DECLARE_STRUCT_PREDICATE |
+ INLINE(bool IsTheHole(Isolate* isolate) const); |
+ INLINE(bool IsUndefined(Isolate* isolate) const); |
+ |
// ES6, section 7.2.2 IsArray. NOT to be confused with %_IsArray. |
MUST_USE_RESULT static Maybe<bool> IsArray(Handle<Object> object); |
@@ -1551,6 +1554,7 @@ class HeapObject: public Object { |
// Convenience method to get current isolate. |
inline Isolate* GetIsolate() const; |
+// TODO(cbruni): clean up once isolate-based versions are in place. |
#define IS_TYPE_FUNCTION_DECL(type_) INLINE(bool Is##type_() const); |
HEAP_OBJECT_TYPE_LIST(IS_TYPE_FUNCTION_DECL) |
ODDBALL_LIST(IS_TYPE_FUNCTION_DECL) |
@@ -1560,6 +1564,9 @@ class HeapObject: public Object { |
STRUCT_LIST(DECLARE_STRUCT_PREDICATE) |
#undef DECLARE_STRUCT_PREDICATE |
+ INLINE(bool IsTheHole(Isolate* isolate) const); |
+ INLINE(bool IsUndefined(Isolate* isolate) const); |
+ |
// Converts an address to a HeapObject pointer. |
static inline HeapObject* FromAddress(Address address) { |
DCHECK_TAG_ALIGNED(address); |
@@ -3875,7 +3882,7 @@ class OrderedHashTable: public FixedArray { |
int KeyToFirstEntry(Object* key) { |
Object* hash = key->GetHash(); |
// If the object does not have an identity hash, it was never used as a key |
- if (hash->IsUndefined()) return kNotFound; |
+ if (hash->IsUndefined(GetIsolate())) return kNotFound; |
return HashToEntry(Smi::cast(hash)->value()); |
} |
@@ -3884,7 +3891,7 @@ class OrderedHashTable: public FixedArray { |
return Smi::cast(next_entry)->value(); |
} |
- // use KeyAt(i)->IsTheHole() to determine if this is a deleted entry. |
+ // use KeyAt(i)->IsTheHole(isolate) to determine if this is a deleted entry. |
Object* KeyAt(int entry) { |
DCHECK_LT(entry, this->UsedCapacity()); |
return get(EntryToIndex(entry)); |