aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/test/cctest/test-weaksets.cc
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2018-09-07 17:07:13 +0200
committerMichaël Zasso <targos@protonmail.com>2018-09-07 20:59:13 +0200
commit586db2414a338e1bf6eaf6e672a3adc7ce309f6a (patch)
tree139fa972aef648481ddee22a3a85b99707d28df5 /deps/v8/test/cctest/test-weaksets.cc
parent12ed7c94e5160aa6d38e3d2cb2a73dae0a6f9342 (diff)
downloadandroid-node-v8-586db2414a338e1bf6eaf6e672a3adc7ce309f6a.tar.gz
android-node-v8-586db2414a338e1bf6eaf6e672a3adc7ce309f6a.tar.bz2
android-node-v8-586db2414a338e1bf6eaf6e672a3adc7ce309f6a.zip
deps: update V8 to 6.9.427.22
PR-URL: https://github.com/nodejs/node/pull/21983 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'deps/v8/test/cctest/test-weaksets.cc')
-rw-r--r--deps/v8/test/cctest/test-weaksets.cc38
1 files changed, 20 insertions, 18 deletions
diff --git a/deps/v8/test/cctest/test-weaksets.cc b/deps/v8/test/cctest/test-weaksets.cc
index 1c12a8cdeb..8a3c1323a3 100644
--- a/deps/v8/test/cctest/test-weaksets.cc
+++ b/deps/v8/test/cctest/test-weaksets.cc
@@ -32,6 +32,7 @@
#include "src/isolate.h"
#include "src/objects-inl.h"
#include "src/objects/hash-table-inl.h"
+#include "src/objects/js-collection-inl.h"
#include "test/cctest/cctest.h"
#include "test/cctest/heap/heap-utils.h"
@@ -48,11 +49,11 @@ static Handle<JSWeakSet> AllocateJSWeakSet(Isolate* isolate) {
Factory* factory = isolate->factory();
Handle<Map> map = factory->NewMap(JS_WEAK_SET_TYPE, JSWeakSet::kSize);
Handle<JSObject> weakset_obj = factory->NewJSObjectFromMap(map);
- Handle<JSWeakSet> weakset(JSWeakSet::cast(*weakset_obj));
+ Handle<JSWeakSet> weakset(JSWeakSet::cast(*weakset_obj), isolate);
// Do not leak handles for the hash table, it would make entries strong.
{
HandleScope scope(isolate);
- Handle<ObjectHashTable> table = ObjectHashTable::New(isolate, 1);
+ Handle<EphemeronHashTable> table = EphemeronHashTable::New(isolate, 1);
weakset->set_table(*table);
}
return weakset;
@@ -95,14 +96,14 @@ TEST(WeakSet_Weakness) {
int32_t hash = key->GetOrCreateHash(isolate)->value();
JSWeakCollection::Set(weakset, key, smi, hash);
}
- CHECK_EQ(1, ObjectHashTable::cast(weakset->table())->NumberOfElements());
+ CHECK_EQ(1, EphemeronHashTable::cast(weakset->table())->NumberOfElements());
// Force a full GC.
CcTest::CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
CHECK_EQ(0, NumberOfWeakCalls);
- CHECK_EQ(1, ObjectHashTable::cast(weakset->table())->NumberOfElements());
+ CHECK_EQ(1, EphemeronHashTable::cast(weakset->table())->NumberOfElements());
CHECK_EQ(
- 0, ObjectHashTable::cast(weakset->table())->NumberOfDeletedElements());
+ 0, EphemeronHashTable::cast(weakset->table())->NumberOfDeletedElements());
// Make the global reference to the key weak.
std::pair<Handle<Object>*, int> handle_and_id(&key, 1234);
@@ -113,9 +114,9 @@ TEST(WeakSet_Weakness) {
CcTest::CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
CHECK_EQ(1, NumberOfWeakCalls);
- CHECK_EQ(0, ObjectHashTable::cast(weakset->table())->NumberOfElements());
+ CHECK_EQ(0, EphemeronHashTable::cast(weakset->table())->NumberOfElements());
CHECK_EQ(
- 1, ObjectHashTable::cast(weakset->table())->NumberOfDeletedElements());
+ 1, EphemeronHashTable::cast(weakset->table())->NumberOfDeletedElements());
}
@@ -127,7 +128,7 @@ TEST(WeakSet_Shrinking) {
Handle<JSWeakSet> weakset = AllocateJSWeakSet(isolate);
// Check initial capacity.
- CHECK_EQ(32, ObjectHashTable::cast(weakset->table())->Capacity());
+ CHECK_EQ(32, EphemeronHashTable::cast(weakset->table())->Capacity());
// Fill up weak set to trigger capacity change.
{
@@ -142,19 +143,20 @@ TEST(WeakSet_Shrinking) {
}
// Check increased capacity.
- CHECK_EQ(128, ObjectHashTable::cast(weakset->table())->Capacity());
+ CHECK_EQ(128, EphemeronHashTable::cast(weakset->table())->Capacity());
// Force a full GC.
- CHECK_EQ(32, ObjectHashTable::cast(weakset->table())->NumberOfElements());
+ CHECK_EQ(32, EphemeronHashTable::cast(weakset->table())->NumberOfElements());
CHECK_EQ(
- 0, ObjectHashTable::cast(weakset->table())->NumberOfDeletedElements());
+ 0, EphemeronHashTable::cast(weakset->table())->NumberOfDeletedElements());
CcTest::CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
- CHECK_EQ(0, ObjectHashTable::cast(weakset->table())->NumberOfElements());
+ CHECK_EQ(0, EphemeronHashTable::cast(weakset->table())->NumberOfElements());
CHECK_EQ(
- 32, ObjectHashTable::cast(weakset->table())->NumberOfDeletedElements());
+ 32,
+ EphemeronHashTable::cast(weakset->table())->NumberOfDeletedElements());
// Check shrunk capacity.
- CHECK_EQ(32, ObjectHashTable::cast(weakset->table())->Capacity());
+ CHECK_EQ(32, EphemeronHashTable::cast(weakset->table())->Capacity());
}
@@ -174,7 +176,7 @@ TEST(WeakSet_Regress2060a) {
Handle<JSWeakSet> weakset = AllocateJSWeakSet(isolate);
// Start second old-space page so that values land on evacuation candidate.
- Page* first_page = heap->old_space()->anchor()->next_page();
+ Page* first_page = heap->old_space()->first_page();
heap::SimulateFullSpace(heap->old_space());
// Fill up weak set with values on an evacuation candidate.
@@ -182,7 +184,7 @@ TEST(WeakSet_Regress2060a) {
HandleScope scope(isolate);
for (int i = 0; i < 32; i++) {
Handle<JSObject> object = factory->NewJSObject(function, TENURED);
- CHECK(!heap->InNewSpace(*object));
+ CHECK(!Heap::InNewSpace(*object));
CHECK(!first_page->Contains(object->address()));
int32_t hash = key->GetOrCreateHash(isolate)->value();
JSWeakCollection::Set(weakset, key, object, hash);
@@ -213,14 +215,14 @@ TEST(WeakSet_Regress2060b) {
factory->NewFunctionForTest(factory->function_string());
// Start second old-space page so that keys land on evacuation candidate.
- Page* first_page = heap->old_space()->anchor()->next_page();
+ Page* first_page = heap->old_space()->first_page();
heap::SimulateFullSpace(heap->old_space());
// Fill up weak set with keys on an evacuation candidate.
Handle<JSObject> keys[32];
for (int i = 0; i < 32; i++) {
keys[i] = factory->NewJSObject(function, TENURED);
- CHECK(!heap->InNewSpace(*keys[i]));
+ CHECK(!Heap::InNewSpace(*keys[i]));
CHECK(!first_page->Contains(keys[i]->address()));
}
Handle<JSWeakSet> weakset = AllocateJSWeakSet(isolate);