diff options
author | isaacs <i@izs.me> | 2012-06-07 11:45:30 -0700 |
---|---|---|
committer | isaacs <i@izs.me> | 2012-06-07 17:54:21 -0700 |
commit | 46b09e419039d2fbfde4029606de3d3aaef7af25 (patch) | |
tree | eeb80d063bef102429991d9cf1ca21bbe8768d09 /deps/v8/src/bootstrapper.cc | |
parent | 3116522e7c33c579bbb8ac0ee12c27ff3ff9825c (diff) | |
download | node-46b09e419039d2fbfde4029606de3d3aaef7af25.tar.gz |
Roll V8 back to 3.10.8.13
Diffstat (limited to 'deps/v8/src/bootstrapper.cc')
-rw-r--r-- | deps/v8/src/bootstrapper.cc | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/deps/v8/src/bootstrapper.cc b/deps/v8/src/bootstrapper.cc index a20f87b12..c65c68c2d 100644 --- a/deps/v8/src/bootstrapper.cc +++ b/deps/v8/src/bootstrapper.cc @@ -484,8 +484,8 @@ Handle<JSFunction> Genesis::CreateEmptyFunction(Isolate* isolate) { global_context()->set_initial_object_prototype(*prototype); SetPrototype(object_fun, prototype); - object_function_map->set_instance_descriptors( - heap->empty_descriptor_array()); + object_function_map-> + set_instance_descriptors(heap->empty_descriptor_array()); } // Allocate the empty function as the prototype for function ECMAScript @@ -516,10 +516,12 @@ Handle<JSFunction> Genesis::CreateEmptyFunction(Isolate* isolate) { function_instance_map_writable_prototype_->set_prototype(*empty_function); // Allocate the function map first and then patch the prototype later - Handle<Map> empty_function_map = CreateFunctionMap(DONT_ADD_PROTOTYPE); - empty_function_map->set_prototype( - global_context()->object_function()->prototype()); - empty_function->set_map(*empty_function_map); + Handle<Map> empty_fm = factory->CopyMapDropDescriptors( + function_without_prototype_map); + empty_fm->set_instance_descriptors( + function_without_prototype_map->instance_descriptors()); + empty_fm->set_prototype(global_context()->object_function()->prototype()); + empty_function->set_map(*empty_fm); return empty_function; } @@ -1092,7 +1094,7 @@ bool Genesis::InitializeGlobal(Handle<GlobalObject> inner_global, // Check the state of the object. ASSERT(result->HasFastProperties()); - ASSERT(result->HasFastObjectElements()); + ASSERT(result->HasFastElements()); #endif } @@ -1185,7 +1187,7 @@ bool Genesis::InitializeGlobal(Handle<GlobalObject> inner_global, // Check the state of the object. ASSERT(result->HasFastProperties()); - ASSERT(result->HasFastObjectElements()); + ASSERT(result->HasFastElements()); #endif } @@ -1635,7 +1637,7 @@ bool Genesis::InstallNatives() { array_function->initial_map()->CopyDropTransitions(); Map* new_map; if (!maybe_map->To<Map>(&new_map)) return false; - new_map->set_elements_kind(FAST_HOLEY_ELEMENTS); + new_map->set_elements_kind(FAST_ELEMENTS); array_function->set_initial_map(new_map); // Make "length" magic on instances. |