summaryrefslogtreecommitdiff
path: root/deps/v8/src/objects/tagged-impl-inl.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/objects/tagged-impl-inl.h')
-rw-r--r--deps/v8/src/objects/tagged-impl-inl.h44
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