diff options
Diffstat (limited to 'deps/v8/src/objects/tagged-impl-inl.h')
-rw-r--r-- | deps/v8/src/objects/tagged-impl-inl.h | 44 |
1 files changed, 24 insertions, 20 deletions
diff --git a/deps/v8/src/objects/tagged-impl-inl.h b/deps/v8/src/objects/tagged-impl-inl.h index f735a241a8..909f65a959 100644 --- a/deps/v8/src/objects/tagged-impl-inl.h +++ b/deps/v8/src/objects/tagged-impl-inl.h @@ -52,11 +52,11 @@ bool TaggedImpl<kRefType, StorageType>::GetHeapObject( template <HeapObjectReferenceType kRefType, typename StorageType> bool TaggedImpl<kRefType, StorageType>::GetHeapObject( - ROOT_PARAM, HeapObject* result) const { + Isolate* isolate, HeapObject* result) const { if (kIsFull) return GetHeapObject(result); // Implementation for compressed pointers. if (!IsStrongOrWeak()) return false; - *result = GetHeapObject(ROOT_VALUE); + *result = GetHeapObject(isolate); return true; } @@ -79,14 +79,14 @@ bool TaggedImpl<kRefType, StorageType>::GetHeapObject( template <HeapObjectReferenceType kRefType, typename StorageType> bool TaggedImpl<kRefType, StorageType>::GetHeapObject( - ROOT_PARAM, HeapObject* result, + Isolate* isolate, HeapObject* result, HeapObjectReferenceType* reference_type) const { if (kIsFull) return GetHeapObject(result, reference_type); // Implementation for compressed pointers. if (!IsStrongOrWeak()) return false; *reference_type = IsWeakOrCleared() ? HeapObjectReferenceType::WEAK : HeapObjectReferenceType::STRONG; - *result = GetHeapObject(ROOT_VALUE); + *result = GetHeapObject(isolate); return true; } @@ -107,12 +107,12 @@ bool TaggedImpl<kRefType, StorageType>::GetHeapObjectIfStrong( template <HeapObjectReferenceType kRefType, typename StorageType> bool TaggedImpl<kRefType, StorageType>::GetHeapObjectIfStrong( - ROOT_PARAM, HeapObject* result) const { + Isolate* isolate, HeapObject* result) const { if (kIsFull) return GetHeapObjectIfStrong(result); // Implementation for compressed pointers. if (IsStrong()) { - *result = - HeapObject::cast(Object(DecompressTaggedPointer(ROOT_VALUE, ptr_))); + *result = HeapObject::cast( + Object(DecompressTaggedPointer(isolate, static_cast<Tagged_t>(ptr_)))); return true; } return false; @@ -132,11 +132,12 @@ HeapObject TaggedImpl<kRefType, StorageType>::GetHeapObjectAssumeStrong() template <HeapObjectReferenceType kRefType, typename StorageType> HeapObject TaggedImpl<kRefType, StorageType>::GetHeapObjectAssumeStrong( - ROOT_PARAM) const { + Isolate* isolate) const { if (kIsFull) return GetHeapObjectAssumeStrong(); // Implementation for compressed pointers. DCHECK(IsStrong()); - return HeapObject::cast(Object(DecompressTaggedPointer(ROOT_VALUE, ptr_))); + return HeapObject::cast( + Object(DecompressTaggedPointer(isolate, static_cast<Tagged_t>(ptr_)))); } // @@ -161,12 +162,12 @@ bool TaggedImpl<kRefType, StorageType>::GetHeapObjectIfWeak( template <HeapObjectReferenceType kRefType, typename StorageType> bool TaggedImpl<kRefType, StorageType>::GetHeapObjectIfWeak( - ROOT_PARAM, HeapObject* result) const { + Isolate* isolate, HeapObject* result) const { if (kIsFull) return GetHeapObjectIfWeak(result); // Implementation for compressed pointers. if (kCanBeWeak) { if (IsWeak()) { - *result = GetHeapObject(ROOT_VALUE); + *result = GetHeapObject(isolate); return true; } return false; @@ -189,11 +190,11 @@ HeapObject TaggedImpl<kRefType, StorageType>::GetHeapObjectAssumeWeak() const { template <HeapObjectReferenceType kRefType, typename StorageType> HeapObject TaggedImpl<kRefType, StorageType>::GetHeapObjectAssumeWeak( - ROOT_PARAM) const { + Isolate* isolate) const { if (kIsFull) return GetHeapObjectAssumeWeak(); // Implementation for compressed pointers. DCHECK(IsWeak()); - return GetHeapObject(ROOT_VALUE); + return GetHeapObject(isolate); } // @@ -214,17 +215,19 @@ HeapObject TaggedImpl<kRefType, StorageType>::GetHeapObject() const { } template <HeapObjectReferenceType kRefType, typename StorageType> -HeapObject TaggedImpl<kRefType, StorageType>::GetHeapObject(ROOT_PARAM) const { +HeapObject TaggedImpl<kRefType, StorageType>::GetHeapObject( + Isolate* isolate) const { if (kIsFull) return GetHeapObject(); // Implementation for compressed pointers. DCHECK(!IsSmi()); if (kCanBeWeak) { DCHECK(!IsCleared()); - return HeapObject::cast(Object( - DecompressTaggedPointer(ROOT_VALUE, ptr_ & ~kWeakHeapObjectMask))); + return HeapObject::cast(Object(DecompressTaggedPointer( + isolate, static_cast<Tagged_t>(ptr_) & ~kWeakHeapObjectMask))); } else { DCHECK(!HAS_WEAK_HEAP_OBJECT_TAG(ptr_)); - return HeapObject::cast(Object(DecompressTaggedPointer(ROOT_VALUE, ptr_))); + return HeapObject::cast( + Object(DecompressTaggedPointer(isolate, static_cast<Tagged_t>(ptr_)))); } } @@ -242,13 +245,14 @@ Object TaggedImpl<kRefType, StorageType>::GetHeapObjectOrSmi() const { } template <HeapObjectReferenceType kRefType, typename StorageType> -Object TaggedImpl<kRefType, StorageType>::GetHeapObjectOrSmi(ROOT_PARAM) const { +Object TaggedImpl<kRefType, StorageType>::GetHeapObjectOrSmi( + Isolate* isolate) const { if (kIsFull) return GetHeapObjectOrSmi(); // Implementation for compressed pointers. if (IsSmi()) { - return Object(DecompressTaggedSigned(ptr_)); + return Object(DecompressTaggedSigned(static_cast<Tagged_t>(ptr_))); } - return GetHeapObject(ROOT_VALUE); + return GetHeapObject(isolate); } } // namespace internal |