| Index: test/cctest/test-heap.cc
|
| diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc
|
| index cfed57541e6034c410371472761575cefb5e9613..00738440d026d312e3c3498d26e4beaafd810ee7 100644
|
| --- a/test/cctest/test-heap.cc
|
| +++ b/test/cctest/test-heap.cc
|
| @@ -179,10 +179,10 @@ TEST(HeapObjects) {
|
| CHECK(s->IsString());
|
| CHECK_EQ(10, s->length());
|
|
|
| - String* object_symbol = String::cast(HEAP->Object_symbol());
|
| + String* object_string = String::cast(HEAP->Object_string());
|
| CHECK(
|
| Isolate::Current()->context()->global_object()->HasLocalProperty(
|
| - object_symbol));
|
| + object_string));
|
|
|
| // Check ToString for oddballs
|
| CheckOddball(HEAP->true_value(), "true");
|
| @@ -225,10 +225,10 @@ TEST(GarbageCollection) {
|
| // Check GC.
|
| HEAP->CollectGarbage(NEW_SPACE);
|
|
|
| - Handle<String> name = FACTORY->LookupUtf8Symbol("theFunction");
|
| - Handle<String> prop_name = FACTORY->LookupUtf8Symbol("theSlot");
|
| - Handle<String> prop_namex = FACTORY->LookupUtf8Symbol("theSlotx");
|
| - Handle<String> obj_name = FACTORY->LookupUtf8Symbol("theObject");
|
| + Handle<String> name = FACTORY->InternalizeUtf8String("theFunction");
|
| + Handle<String> prop_name = FACTORY->InternalizeUtf8String("theSlot");
|
| + Handle<String> prop_namex = FACTORY->InternalizeUtf8String("theSlotx");
|
| + Handle<String> obj_name = FACTORY->InternalizeUtf8String("theObject");
|
|
|
| {
|
| v8::HandleScope inner_scope;
|
| @@ -544,15 +544,15 @@ static const char* not_so_random_string_table[] = {
|
| };
|
|
|
|
|
| -static void CheckSymbols(const char** strings) {
|
| +static void CheckInternalizedStrings(const char** strings) {
|
| for (const char* string = *strings; *strings != 0; string = *strings++) {
|
| Object* a;
|
| - MaybeObject* maybe_a = HEAP->LookupUtf8Symbol(string);
|
| - // LookupUtf8Symbol may return a failure if a GC is needed.
|
| + MaybeObject* maybe_a = HEAP->InternalizeUtf8String(string);
|
| + // InternalizeUtf8String may return a failure if a GC is needed.
|
| if (!maybe_a->ToObject(&a)) continue;
|
| - CHECK(a->IsSymbol());
|
| + CHECK(a->IsInternalizedString());
|
| Object* b;
|
| - MaybeObject* maybe_b = HEAP->LookupUtf8Symbol(string);
|
| + MaybeObject* maybe_b = HEAP->InternalizeUtf8String(string);
|
| if (!maybe_b->ToObject(&b)) continue;
|
| CHECK_EQ(b, a);
|
| CHECK(String::cast(b)->IsUtf8EqualTo(CStrVector(string)));
|
| @@ -560,11 +560,11 @@ static void CheckSymbols(const char** strings) {
|
| }
|
|
|
|
|
| -TEST(SymbolTable) {
|
| +TEST(StringTable) {
|
| InitializeVM();
|
|
|
| - CheckSymbols(not_so_random_string_table);
|
| - CheckSymbols(not_so_random_string_table);
|
| + CheckInternalizedStrings(not_so_random_string_table);
|
| + CheckInternalizedStrings(not_so_random_string_table);
|
| }
|
|
|
|
|
| @@ -572,14 +572,14 @@ TEST(FunctionAllocation) {
|
| InitializeVM();
|
|
|
| v8::HandleScope sc;
|
| - Handle<String> name = FACTORY->LookupUtf8Symbol("theFunction");
|
| + Handle<String> name = FACTORY->InternalizeUtf8String("theFunction");
|
| Handle<JSFunction> function =
|
| FACTORY->NewFunction(name, FACTORY->undefined_value());
|
| Handle<Map> initial_map =
|
| FACTORY->NewMap(JS_OBJECT_TYPE, JSObject::kHeaderSize);
|
| function->set_initial_map(*initial_map);
|
|
|
| - Handle<String> prop_name = FACTORY->LookupUtf8Symbol("theSlot");
|
| + Handle<String> prop_name = FACTORY->InternalizeUtf8String("theSlot");
|
| Handle<JSObject> obj = FACTORY->NewJSObject(function);
|
| obj->SetProperty(
|
| *prop_name, Smi::FromInt(23), NONE, kNonStrictMode)->ToObjectChecked();
|
| @@ -595,14 +595,14 @@ TEST(ObjectProperties) {
|
| InitializeVM();
|
|
|
| v8::HandleScope sc;
|
| - String* object_symbol = String::cast(HEAP->Object_symbol());
|
| + String* object_string = String::cast(HEAP->Object_string());
|
| Object* raw_object = Isolate::Current()->context()->global_object()->
|
| - GetProperty(object_symbol)->ToObjectChecked();
|
| + GetProperty(object_string)->ToObjectChecked();
|
| JSFunction* object_function = JSFunction::cast(raw_object);
|
| Handle<JSFunction> constructor(object_function);
|
| Handle<JSObject> obj = FACTORY->NewJSObject(constructor);
|
| - Handle<String> first = FACTORY->LookupUtf8Symbol("first");
|
| - Handle<String> second = FACTORY->LookupUtf8Symbol("second");
|
| + Handle<String> first = FACTORY->InternalizeUtf8String("first");
|
| + Handle<String> second = FACTORY->InternalizeUtf8String("second");
|
|
|
| // check for empty
|
| CHECK(!obj->HasLocalProperty(*first));
|
| @@ -646,19 +646,19 @@ TEST(ObjectProperties) {
|
| CHECK(!obj->HasLocalProperty(*first));
|
| CHECK(!obj->HasLocalProperty(*second));
|
|
|
| - // check string and symbol match
|
| + // check string and internalized string match
|
| const char* string1 = "fisk";
|
| Handle<String> s1 = FACTORY->NewStringFromAscii(CStrVector(string1));
|
| obj->SetProperty(
|
| *s1, Smi::FromInt(1), NONE, kNonStrictMode)->ToObjectChecked();
|
| - Handle<String> s1_symbol = FACTORY->LookupUtf8Symbol(string1);
|
| - CHECK(obj->HasLocalProperty(*s1_symbol));
|
| + Handle<String> s1_string = FACTORY->InternalizeUtf8String(string1);
|
| + CHECK(obj->HasLocalProperty(*s1_string));
|
|
|
| - // check symbol and string match
|
| + // check internalized string and string match
|
| const char* string2 = "fugl";
|
| - Handle<String> s2_symbol = FACTORY->LookupUtf8Symbol(string2);
|
| + Handle<String> s2_string = FACTORY->InternalizeUtf8String(string2);
|
| obj->SetProperty(
|
| - *s2_symbol, Smi::FromInt(1), NONE, kNonStrictMode)->ToObjectChecked();
|
| + *s2_string, Smi::FromInt(1), NONE, kNonStrictMode)->ToObjectChecked();
|
| Handle<String> s2 = FACTORY->NewStringFromAscii(CStrVector(string2));
|
| CHECK(obj->HasLocalProperty(*s2));
|
| }
|
| @@ -668,14 +668,14 @@ TEST(JSObjectMaps) {
|
| InitializeVM();
|
|
|
| v8::HandleScope sc;
|
| - Handle<String> name = FACTORY->LookupUtf8Symbol("theFunction");
|
| + Handle<String> name = FACTORY->InternalizeUtf8String("theFunction");
|
| Handle<JSFunction> function =
|
| FACTORY->NewFunction(name, FACTORY->undefined_value());
|
| Handle<Map> initial_map =
|
| FACTORY->NewMap(JS_OBJECT_TYPE, JSObject::kHeaderSize);
|
| function->set_initial_map(*initial_map);
|
|
|
| - Handle<String> prop_name = FACTORY->LookupUtf8Symbol("theSlot");
|
| + Handle<String> prop_name = FACTORY->InternalizeUtf8String("theSlot");
|
| Handle<JSObject> obj = FACTORY->NewJSObject(function);
|
|
|
| // Set a propery
|
| @@ -692,7 +692,7 @@ TEST(JSArray) {
|
| InitializeVM();
|
|
|
| v8::HandleScope sc;
|
| - Handle<String> name = FACTORY->LookupUtf8Symbol("Array");
|
| + Handle<String> name = FACTORY->InternalizeUtf8String("Array");
|
| Object* raw_object = Isolate::Current()->context()->global_object()->
|
| GetProperty(*name)->ToObjectChecked();
|
| Handle<JSFunction> function = Handle<JSFunction>(
|
| @@ -739,14 +739,14 @@ TEST(JSObjectCopy) {
|
| InitializeVM();
|
|
|
| v8::HandleScope sc;
|
| - String* object_symbol = String::cast(HEAP->Object_symbol());
|
| + String* object_string = String::cast(HEAP->Object_string());
|
| Object* raw_object = Isolate::Current()->context()->global_object()->
|
| - GetProperty(object_symbol)->ToObjectChecked();
|
| + GetProperty(object_string)->ToObjectChecked();
|
| JSFunction* object_function = JSFunction::cast(raw_object);
|
| Handle<JSFunction> constructor(object_function);
|
| Handle<JSObject> obj = FACTORY->NewJSObject(constructor);
|
| - Handle<String> first = FACTORY->LookupUtf8Symbol("first");
|
| - Handle<String> second = FACTORY->LookupUtf8Symbol("second");
|
| + Handle<String> first = FACTORY->InternalizeUtf8String("first");
|
| + Handle<String> second = FACTORY->InternalizeUtf8String("second");
|
|
|
| obj->SetProperty(
|
| *first, Smi::FromInt(1), NONE, kNonStrictMode)->ToObjectChecked();
|
| @@ -801,10 +801,11 @@ TEST(StringAllocation) {
|
| non_ascii[3 * i + 2] = chars[2];
|
| }
|
| Handle<String> non_ascii_sym =
|
| - FACTORY->LookupUtf8Symbol(Vector<const char>(non_ascii, 3 * length));
|
| + FACTORY->InternalizeUtf8String(
|
| + Vector<const char>(non_ascii, 3 * length));
|
| CHECK_EQ(length, non_ascii_sym->length());
|
| Handle<String> ascii_sym =
|
| - FACTORY->LookupOneByteSymbol(OneByteVector(ascii, length));
|
| + FACTORY->InternalizeOneByteString(OneByteVector(ascii, length));
|
| CHECK_EQ(length, ascii_sym->length());
|
| Handle<String> non_ascii_str =
|
| FACTORY->NewStringFromUtf8(Vector<const char>(non_ascii, 3 * length));
|
| @@ -981,7 +982,7 @@ TEST(TestCodeFlushing) {
|
| " var z = x + y;"
|
| "};"
|
| "foo()";
|
| - Handle<String> foo_name = FACTORY->LookupUtf8Symbol("foo");
|
| + Handle<String> foo_name = FACTORY->InternalizeUtf8String("foo");
|
|
|
| // This compile will add the code to the compilation cache.
|
| { v8::HandleScope scope;
|
| @@ -1028,7 +1029,7 @@ TEST(TestCodeFlushingIncremental) {
|
| " var z = x + y;"
|
| "};"
|
| "foo()";
|
| - Handle<String> foo_name = FACTORY->LookupUtf8Symbol("foo");
|
| + Handle<String> foo_name = FACTORY->InternalizeUtf8String("foo");
|
|
|
| // This compile will add the code to the compilation cache.
|
| { v8::HandleScope scope;
|
| @@ -1098,8 +1099,8 @@ TEST(TestCodeFlushingIncrementalScavenge) {
|
| " var x = 23;"
|
| "};"
|
| "bar();";
|
| - Handle<String> foo_name = FACTORY->LookupUtf8Symbol("foo");
|
| - Handle<String> bar_name = FACTORY->LookupUtf8Symbol("bar");
|
| + Handle<String> foo_name = FACTORY->InternalizeUtf8String("foo");
|
| + Handle<String> bar_name = FACTORY->InternalizeUtf8String("bar");
|
|
|
| // Perfrom one initial GC to enable code flushing.
|
| HEAP->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| @@ -1160,7 +1161,7 @@ TEST(TestCodeFlushingIncrementalAbort) {
|
| " var z = x + y;"
|
| "};"
|
| "foo()";
|
| - Handle<String> foo_name = FACTORY->LookupUtf8Symbol("foo");
|
| + Handle<String> foo_name = FACTORY->InternalizeUtf8String("foo");
|
|
|
| // This compile will add the code to the compilation cache.
|
| { v8::HandleScope scope;
|
| @@ -2231,7 +2232,7 @@ TEST(Regress2211) {
|
|
|
| // Check values.
|
| CHECK_EQ(hash,
|
| - internal_obj->GetHiddenProperty(heap->identity_hash_symbol()));
|
| + internal_obj->GetHiddenProperty(heap->identity_hash_string()));
|
| CHECK(value->Equals(obj->GetHiddenValue(v8_str("key string"))));
|
|
|
| // Check size.
|
| @@ -2504,7 +2505,7 @@ TEST(Regression144230) {
|
| // Fourth is the tricky part. Make sure the code containing the CallIC is
|
| // visited first without clearing the IC. The shared function info is then
|
| // visited later, causing the CallIC to be cleared.
|
| - Handle<String> name = FACTORY->LookupUtf8Symbol("call");
|
| + Handle<String> name = FACTORY->InternalizeUtf8String("call");
|
| Handle<GlobalObject> global(ISOLATE->context()->global_object());
|
| MaybeObject* maybe_call = global->GetProperty(*name);
|
| JSFunction* call = JSFunction::cast(maybe_call->ToObjectChecked());
|
|
|