diff options
author | Michaël Zasso <targos@protonmail.com> | 2021-08-29 14:20:49 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2021-08-30 21:02:51 +0200 |
commit | 50930a0fa08297d0ce7e67fa6594fe47937b99ff (patch) | |
tree | 96bd30c0c63790bc1992a2f241a3df94d563b283 /deps/v8/src/heap/heap-write-barrier-inl.h | |
parent | b63e449b2eade1111b52f6559669400a4e855903 (diff) | |
download | node-new-50930a0fa08297d0ce7e67fa6594fe47937b99ff.tar.gz |
deps: update V8 to 9.3.345.16
PR-URL: https://github.com/nodejs/node/pull/39469
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'deps/v8/src/heap/heap-write-barrier-inl.h')
-rw-r--r-- | deps/v8/src/heap/heap-write-barrier-inl.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/deps/v8/src/heap/heap-write-barrier-inl.h b/deps/v8/src/heap/heap-write-barrier-inl.h index 4eaea5b461..1e651d5fc0 100644 --- a/deps/v8/src/heap/heap-write-barrier-inl.h +++ b/deps/v8/src/heap/heap-write-barrier-inl.h @@ -23,6 +23,8 @@ namespace internal { // Defined in heap.cc. V8_EXPORT_PRIVATE bool Heap_PageFlagsAreConsistent(HeapObject object); +V8_EXPORT_PRIVATE bool Heap_ValueMightRequireGenerationalWriteBarrier( + HeapObject value); V8_EXPORT_PRIVATE void Heap_GenerationalBarrierSlow(HeapObject object, Address slot, HeapObject value); @@ -135,11 +137,16 @@ inline void GenerationalBarrier(HeapObject object, ObjectSlot slot, } inline void GenerationalBarrier(HeapObject object, ObjectSlot slot, + Code value) { + if (V8_ENABLE_THIRD_PARTY_HEAP_BOOL) return; + DCHECK(!Heap_ValueMightRequireGenerationalWriteBarrier(value)); +} + +inline void GenerationalBarrier(HeapObject object, ObjectSlot slot, HeapObject value) { if (V8_ENABLE_THIRD_PARTY_HEAP_BOOL) return; DCHECK(!HasWeakHeapObjectTag(*slot)); - heap_internals::GenerationalBarrierInternal(object, slot.address(), - HeapObject::cast(value)); + heap_internals::GenerationalBarrierInternal(object, slot.address(), value); } inline void GenerationalEphemeronKeyBarrier(EphemeronHashTable table, |