diff options
author | Michaël Zasso <targos@protonmail.com> | 2019-03-30 15:21:26 +0100 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2019-04-03 08:29:22 +0200 |
commit | 2ea9de2e85d937c9bc5d778c623b22614c2b8a72 (patch) | |
tree | 79a3248a0be08358e092342b33250adc8f936810 /deps/v8 | |
parent | 98b5ba840e00cea1614266745fa0ccf1e6211315 (diff) | |
download | android-node-v8-2ea9de2e85d937c9bc5d778c623b22614c2b8a72.tar.gz android-node-v8-2ea9de2e85d937c9bc5d778c623b22614c2b8a72.tar.bz2 android-node-v8-2ea9de2e85d937c9bc5d778c623b22614c2b8a72.zip |
deps: V8: cherry-pick f4b860d
Original commit message:
[heap,api] Remove deprecated APIs
Bug: chromium:923361, v8:8834
Change-Id: I6ec42aeb74bea5c0629fcdc3f95c125f5de534a0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1526195
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Auto-Submit: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#60289}
Refs: https://github.com/v8/v8/commit/f4b860d9b81956fb9d6815932522f4043fef56fa
PR-URL: https://github.com/nodejs/node/pull/27013
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'deps/v8')
-rw-r--r-- | deps/v8/include/v8-internal.h | 1 | ||||
-rw-r--r-- | deps/v8/include/v8.h | 26 | ||||
-rw-r--r-- | deps/v8/src/api.cc | 9 | ||||
-rw-r--r-- | deps/v8/src/global-handles.cc | 10 | ||||
-rw-r--r-- | deps/v8/src/global-handles.h | 3 | ||||
-rw-r--r-- | deps/v8/test/cctest/heap/test-heap.cc | 20 | ||||
-rw-r--r-- | deps/v8/test/cctest/test-api.cc | 37 |
7 files changed, 0 insertions, 106 deletions
diff --git a/deps/v8/include/v8-internal.h b/deps/v8/include/v8-internal.h index 5cc62f3e72..a0d0bfb959 100644 --- a/deps/v8/include/v8-internal.h +++ b/deps/v8/include/v8-internal.h @@ -164,7 +164,6 @@ class Internals { static const int kNodeStateMask = 0x7; static const int kNodeStateIsWeakValue = 2; static const int kNodeStateIsPendingValue = 3; - static const int kNodeStateIsNearDeathValue = 4; static const int kNodeIsIndependentShift = 3; static const int kNodeIsActiveShift = 4; diff --git a/deps/v8/include/v8.h b/deps/v8/include/v8.h index 5635bd21b1..8bb2990c49 100644 --- a/deps/v8/include/v8.h +++ b/deps/v8/include/v8.h @@ -576,10 +576,6 @@ template <class T> class PersistentBase { V8_DEPRECATED("See MarkIndependent.", V8_INLINE bool IsIndependent() const); - /** Checks if the handle holds the only reference to an object. */ - V8_DEPRECATED("Garbage collection internal state should not be relied on.", - V8_INLINE bool IsNearDeath() const); - /** Returns true if the handle's reference is weak. */ V8_INLINE bool IsWeak() const; @@ -8521,17 +8517,6 @@ class V8_EXPORT Isolate { /** * Iterates through all the persistent handles in the current isolate's heap - * that have class_ids and are candidates to be marked as partially dependent - * handles. This will visit handles to young objects created since the last - * garbage collection but is free to visit an arbitrary superset of these - * objects. - */ - V8_DEPRECATED( - "Use VisitHandlesWithClassIds", - void VisitHandlesForPartialDependence(PersistentHandleVisitor* visitor)); - - /** - * Iterates through all the persistent handles in the current isolate's heap * that have class_ids and are weak to be marked as inactive if there is no * pending activity for the handle. */ @@ -9784,17 +9769,6 @@ bool PersistentBase<T>::IsIndependent() const { } template <class T> -bool PersistentBase<T>::IsNearDeath() const { - typedef internal::Internals I; - if (this->IsEmpty()) return false; - uint8_t node_state = - I::GetNodeState(reinterpret_cast<internal::Address*>(this->val_)); - return node_state == I::kNodeStateIsNearDeathValue || - node_state == I::kNodeStateIsPendingValue; -} - - -template <class T> bool PersistentBase<T>::IsWeak() const { typedef internal::Internals I; if (this->IsEmpty()) return false; diff --git a/deps/v8/src/api.cc b/deps/v8/src/api.cc index 360bb78407..eae3fd2792 100644 --- a/deps/v8/src/api.cc +++ b/deps/v8/src/api.cc @@ -8876,15 +8876,6 @@ void Isolate::VisitHandlesWithClassIds(PersistentHandleVisitor* visitor) { isolate->global_handles()->IterateAllRootsWithClassIds(visitor); } - -void Isolate::VisitHandlesForPartialDependence( - PersistentHandleVisitor* visitor) { - i::Isolate* isolate = reinterpret_cast<i::Isolate*>(this); - i::DisallowHeapAllocation no_allocation; - isolate->global_handles()->IterateAllYoungRootsWithClassIds(visitor); -} - - void Isolate::VisitWeakHandles(PersistentHandleVisitor* visitor) { i::Isolate* isolate = reinterpret_cast<i::Isolate*>(this); i::DisallowHeapAllocation no_allocation; diff --git a/deps/v8/src/global-handles.cc b/deps/v8/src/global-handles.cc index 5eb3d93f14..350380b23c 100644 --- a/deps/v8/src/global-handles.cc +++ b/deps/v8/src/global-handles.cc @@ -379,7 +379,6 @@ class GlobalHandles::Node final : public NodeBase<GlobalHandles::Node> { Internals::kNodeStateMask); STATIC_ASSERT(WEAK == Internals::kNodeStateIsWeakValue); STATIC_ASSERT(PENDING == Internals::kNodeStateIsPendingValue); - STATIC_ASSERT(NEAR_DEATH == Internals::kNodeStateIsNearDeathValue); STATIC_ASSERT(static_cast<int>(IsIndependent::kShift) == Internals::kNodeIsIndependentShift); STATIC_ASSERT(static_cast<int>(IsActive::kShift) == @@ -427,11 +426,6 @@ class GlobalHandles::Node final : public NodeBase<GlobalHandles::Node> { flags_ = NodeWeaknessType::update(flags_, weakness_type); } - bool IsNearDeath() const { - // Check for PENDING to ensure correct answer when processing callbacks. - return state() == PENDING || state() == NEAR_DEATH; - } - bool IsWeak() const { return state() == WEAK; } bool IsInUse() const { return state() != FREE; } @@ -819,10 +813,6 @@ void GlobalHandles::AnnotateStrongRetainer(Address* location, Node::FromLocation(location)->AnnotateStrongRetainer(label); } -bool GlobalHandles::IsNearDeath(Address* location) { - return Node::FromLocation(location)->IsNearDeath(); -} - bool GlobalHandles::IsWeak(Address* location) { return Node::FromLocation(location)->IsWeak(); } diff --git a/deps/v8/src/global-handles.h b/deps/v8/src/global-handles.h index 3604af1d28..8caa3c33ce 100644 --- a/deps/v8/src/global-handles.h +++ b/deps/v8/src/global-handles.h @@ -73,9 +73,6 @@ class GlobalHandles final { // Clear the weakness of a global handle. static void* ClearWeakness(Address* location); - // Tells whether global handle is near death. - static bool IsNearDeath(Address* location); - // Tells whether global handle is weak. static bool IsWeak(Address* location); diff --git a/deps/v8/test/cctest/heap/test-heap.cc b/deps/v8/test/cctest/heap/test-heap.cc index f12ba10979..1d06f46086 100644 --- a/deps/v8/test/cctest/heap/test-heap.cc +++ b/deps/v8/test/cctest/heap/test-heap.cc @@ -531,14 +531,9 @@ TEST(WeakGlobalHandlesScavenge) { // Scavenge treats weak pointers as normal roots. CcTest::CollectGarbage(NEW_SPACE); - CHECK((*h1)->IsString()); CHECK((*h2)->IsHeapNumber()); - CHECK(!WeakPointerCleared); - CHECK(!global_handles->IsNearDeath(h2.location())); - CHECK(!global_handles->IsNearDeath(h1.location())); - GlobalHandles::Destroy(h1.location()); GlobalHandles::Destroy(h2.location()); } @@ -576,11 +571,8 @@ TEST(WeakGlobalUnmodifiedApiHandlesScavenge) { &TestWeakGlobalHandleCallback, v8::WeakCallbackType::kParameter); CcTest::CollectGarbage(NEW_SPACE); - CHECK((*h1)->IsHeapNumber()); CHECK(WeakPointerCleared); - CHECK(!global_handles->IsNearDeath(h1.location())); - GlobalHandles::Destroy(h1.location()); } @@ -617,10 +609,7 @@ TEST(WeakGlobalApiHandleModifiedMapScavenge) { &TestWeakGlobalHandleCallback, v8::WeakCallbackType::kParameter); CcTest::CollectGarbage(NEW_SPACE); - CHECK(!WeakPointerCleared); - CHECK(!global_handles->IsNearDeath(h1.location())); - GlobalHandles::Destroy(h1.location()); } @@ -661,10 +650,7 @@ TEST(WeakGlobalApiHandleWithElementsScavenge) { &TestWeakGlobalHandleCallback, v8::WeakCallbackType::kParameter); CcTest::CollectGarbage(NEW_SPACE); - CHECK(!WeakPointerCleared); - CHECK(!global_handles->IsNearDeath(h1.location())); - GlobalHandles::Destroy(h1.location()); } @@ -699,17 +685,11 @@ TEST(WeakGlobalHandlesMark) { GlobalHandles::MakeWeak( h2.location(), reinterpret_cast<void*>(&handle_and_id), &TestWeakGlobalHandleCallback, v8::WeakCallbackType::kParameter); - CHECK(!GlobalHandles::IsNearDeath(h1.location())); - CHECK(!GlobalHandles::IsNearDeath(h2.location())); // Incremental marking potentially marked handles before they turned weak. CcTest::CollectAllGarbage(); - CHECK((*h1)->IsString()); - CHECK(WeakPointerCleared); - CHECK(!GlobalHandles::IsNearDeath(h1.location())); - GlobalHandles::Destroy(h1.location()); } diff --git a/deps/v8/test/cctest/test-api.cc b/deps/v8/test/cctest/test-api.cc index aae1b3674e..2edc5b5002 100644 --- a/deps/v8/test/cctest/test-api.cc +++ b/deps/v8/test/cctest/test-api.cc @@ -20545,43 +20545,6 @@ TEST(WrapperClassId) { object.Reset(); } - -TEST(PersistentHandleInNewSpaceVisitor) { - LocalContext context; - v8::Isolate* isolate = context->GetIsolate(); - v8::HandleScope scope(isolate); - v8::Persistent<v8::Object> object1(isolate, v8::Object::New(isolate)); - CHECK_EQ(0, object1.WrapperClassId()); - object1.SetWrapperClassId(42); - CHECK_EQ(42, object1.WrapperClassId()); - - CcTest::CollectAllGarbage(); - CcTest::CollectAllGarbage(); - - v8::Persistent<v8::Object> object2(isolate, v8::Object::New(isolate)); - CHECK_EQ(0, object2.WrapperClassId()); - object2.SetWrapperClassId(42); - CHECK_EQ(42, object2.WrapperClassId()); - - Visitor42 visitor(&object2); -#if __clang__ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated" -#endif - // VisitHandlesForPartialDependence is marked deprecated. This test will be - // removed with the API method. - isolate->VisitHandlesForPartialDependence(&visitor); -#if __clang__ -#pragma clang diagnostic pop -#endif - - CHECK_EQ(1, visitor.counter_); - - object1.Reset(); - object2.Reset(); -} - - TEST(RegExp) { LocalContext context; v8::HandleScope scope(context->GetIsolate()); |