Do deferred migration of maps after deoptimizing once.
BUG= R=verwaest@chromium.org Review URL: https://codereview.chromium.org/50213003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17949 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
96c9095f3b
commit
df35c0e4d3
@ -2784,7 +2784,6 @@ Handle<Map> Map::GeneralizeRepresentation(Handle<Map> old_map,
|
||||
Handle<Map> new_map = split_map;
|
||||
for (; descriptor < descriptors; descriptor++) {
|
||||
new_map = Map::CopyInstallDescriptors(new_map, descriptor, new_descriptors);
|
||||
new_map->set_migration_target(true);
|
||||
}
|
||||
|
||||
new_map->set_owns_descriptors(true);
|
||||
@ -3875,6 +3874,7 @@ void JSObject::MigrateInstance(Handle<JSObject> object) {
|
||||
Handle<Map> original_map(object->map());
|
||||
GeneralizeFieldRepresentation(
|
||||
object, 0, Representation::None(), ALLOW_AS_CONSTANT);
|
||||
object->map()->set_migration_target(true);
|
||||
if (FLAG_trace_migration) {
|
||||
object->PrintInstanceMigration(stdout, *original_map, object->map());
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user