Index: src/hydrogen-instructions.cc |
diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc |
index 76d6614d418569fdb84b3fda0c4de43a6f6a3b0b..6b7b47a65a349c0a2d545c414574b85be77f2f3e 100644 |
--- a/src/hydrogen-instructions.cc |
+++ b/src/hydrogen-instructions.cc |
@@ -1739,13 +1739,6 @@ void HCheckInstanceType::PrintDataTo(StringStream* stream) { |
} |
-void HCheckPrototypeMaps::PrintDataTo(StringStream* stream) { |
- stream->Add("[receiver_prototype=%p,holder=%p]%s", |
- *prototypes_.first(), *prototypes_.last(), |
- CanOmitPrototypeChecks() ? " (omitted)" : ""); |
-} |
- |
- |
void HCallStub::PrintDataTo(StringStream* stream) { |
stream->Add("%s ", |
CodeStub::MajorName(major_key_, false)); |
@@ -2753,6 +2746,14 @@ HConstant::HConstant(ExternalReference reference) |
} |
+static void PrepareConstant(Handle<Object> object) { |
+ if (!object->IsJSObject()) return; |
+ Handle<JSObject> js_object = Handle<JSObject>::cast(object); |
+ if (!js_object->map()->is_deprecated()) return; |
+ JSObject::TryMigrateInstance(js_object); |
+} |
+ |
+ |
void HConstant::Initialize(Representation r) { |
if (r.IsNone()) { |
if (has_smi_value_ && kSmiValueSize == 31) { |
@@ -2764,6 +2765,7 @@ void HConstant::Initialize(Representation r) { |
} else if (has_external_reference_value_) { |
r = Representation::External(); |
} else { |
+ PrepareConstant(handle_); |
r = Representation::Tagged(); |
} |
} |