| Index: test/cctest/test-dictionary.cc
|
| diff --git a/test/cctest/test-dictionary.cc b/test/cctest/test-dictionary.cc
|
| index a40f282960c979e4b298d0106f7a36cb95ed78e3..0f7777239650bcf9d90c94715e682c2c43c6bb8a 100644
|
| --- a/test/cctest/test-dictionary.cc
|
| +++ b/test/cctest/test-dictionary.cc
|
| @@ -50,24 +50,24 @@ static void TestHashMap(Handle<HashMap> table) {
|
| Handle<JSObject> b = factory->NewJSArray(11);
|
| table = HashMap::Put(table, a, b);
|
| CHECK_EQ(table->NumberOfElements(), 1);
|
| - CHECK_EQ(table->Lookup(*a), *b);
|
| - CHECK_EQ(table->Lookup(*b), CcTest::heap()->the_hole_value());
|
| + CHECK_EQ(table->Lookup(a), *b);
|
| + CHECK_EQ(table->Lookup(b), CcTest::heap()->the_hole_value());
|
|
|
| // Keys still have to be valid after objects were moved.
|
| CcTest::heap()->CollectGarbage(NEW_SPACE);
|
| CHECK_EQ(table->NumberOfElements(), 1);
|
| - CHECK_EQ(table->Lookup(*a), *b);
|
| - CHECK_EQ(table->Lookup(*b), CcTest::heap()->the_hole_value());
|
| + CHECK_EQ(table->Lookup(a), *b);
|
| + CHECK_EQ(table->Lookup(b), CcTest::heap()->the_hole_value());
|
|
|
| // Keys that are overwritten should not change number of elements.
|
| table = HashMap::Put(table, a, factory->NewJSArray(13));
|
| CHECK_EQ(table->NumberOfElements(), 1);
|
| - CHECK_NE(table->Lookup(*a), *b);
|
| + CHECK_NE(table->Lookup(a), *b);
|
|
|
| // Keys mapped to the hole should be removed permanently.
|
| table = HashMap::Put(table, a, factory->the_hole_value());
|
| CHECK_EQ(table->NumberOfElements(), 0);
|
| - CHECK_EQ(table->Lookup(*a), CcTest::heap()->the_hole_value());
|
| + CHECK_EQ(table->Lookup(a), CcTest::heap()->the_hole_value());
|
|
|
| // Keys should map back to their respective values and also should get
|
| // an identity hash code generated.
|
| @@ -77,7 +77,7 @@ static void TestHashMap(Handle<HashMap> table) {
|
| table = HashMap::Put(table, key, value);
|
| CHECK_EQ(table->NumberOfElements(), i + 1);
|
| CHECK_NE(table->FindEntry(*key), HashMap::kNotFound);
|
| - CHECK_EQ(table->Lookup(*key), *value);
|
| + CHECK_EQ(table->Lookup(key), *value);
|
| CHECK(key->GetIdentityHash()->IsSmi());
|
| }
|
|
|
| @@ -87,7 +87,7 @@ static void TestHashMap(Handle<HashMap> table) {
|
| Handle<JSReceiver> key = factory->NewJSArray(7);
|
| CHECK(JSReceiver::GetOrCreateIdentityHash(key)->IsSmi());
|
| CHECK_EQ(table->FindEntry(*key), HashMap::kNotFound);
|
| - CHECK_EQ(table->Lookup(*key), CcTest::heap()->the_hole_value());
|
| + CHECK_EQ(table->Lookup(key), CcTest::heap()->the_hole_value());
|
| CHECK(key->GetIdentityHash()->IsSmi());
|
| }
|
|
|
| @@ -95,7 +95,7 @@ static void TestHashMap(Handle<HashMap> table) {
|
| // should not get an identity hash code generated.
|
| for (int i = 0; i < 100; i++) {
|
| Handle<JSReceiver> key = factory->NewJSArray(7);
|
| - CHECK_EQ(table->Lookup(*key), CcTest::heap()->the_hole_value());
|
| + CHECK_EQ(table->Lookup(key), CcTest::heap()->the_hole_value());
|
| CHECK_EQ(key->GetIdentityHash(),
|
| CcTest::heap()->undefined_value());
|
| }
|
| @@ -119,7 +119,8 @@ class ObjectHashTableTest: public ObjectHashTable {
|
| }
|
|
|
| int lookup(int key) {
|
| - return Smi::cast(Lookup(Smi::FromInt(key)))->value();
|
| + Handle<Object> key_obj(Smi::FromInt(key), GetIsolate());
|
| + return Smi::cast(Lookup(key_obj))->value();
|
| }
|
|
|
| int capacity() {
|
| @@ -225,7 +226,7 @@ static void TestHashMapCausesGC(Handle<HashMap> table) {
|
| SimulateFullSpace(CcTest::heap()->old_pointer_space());
|
|
|
| // Calling Lookup() should not cause GC ever.
|
| - CHECK(table->Lookup(*key)->IsTheHole());
|
| + CHECK(table->Lookup(key)->IsTheHole());
|
|
|
| // Calling Put() should request GC by returning a failure.
|
| int gc_count = isolate->heap()->gc_count();
|
|
|