summaryrefslogtreecommitdiff
path: root/deps/v8/src/bootstrapper.cc
diff options
context:
space:
mode:
authorisaacs <i@izs.me>2012-06-07 11:45:30 -0700
committerisaacs <i@izs.me>2012-06-07 17:54:21 -0700
commit46b09e419039d2fbfde4029606de3d3aaef7af25 (patch)
treeeeb80d063bef102429991d9cf1ca21bbe8768d09 /deps/v8/src/bootstrapper.cc
parent3116522e7c33c579bbb8ac0ee12c27ff3ff9825c (diff)
downloadnode-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.cc20
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.