Index: src/hydrogen-instructions.cc |
diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc |
index 59b43b6bc5510ff793f6980c2191c2e888f0688b..6cc704bec7001af214cc86b6a37479e59af7c811 100644 |
--- a/src/hydrogen-instructions.cc |
+++ b/src/hydrogen-instructions.cc |
@@ -1671,9 +1671,9 @@ void HCheckInstanceType::GetCheckMaskAndTag(uint8_t* mask, uint8_t* tag) { |
void HCheckMaps::PrintDataTo(StringStream* stream) { |
value()->PrintNameTo(stream); |
- stream->Add(" [%p", *map_set_.at(0).handle()); |
- for (int i = 1; i < map_set_.size(); ++i) { |
- stream->Add(",%p", *map_set_.at(i).handle()); |
+ stream->Add(" [%p", *maps()->at(0).handle()); |
+ for (int i = 1; i < maps()->size(); ++i) { |
+ stream->Add(",%p", *maps()->at(i).handle()); |
} |
stream->Add("]%s", CanOmitMapChecks() ? "(omitted)" : ""); |
} |
@@ -3362,10 +3362,10 @@ void HLoadNamedField::PrintDataTo(StringStream* stream) { |
object()->PrintNameTo(stream); |
access_.PrintTo(stream); |
- if (map_set_.size() != 0) { |
- stream->Add(" [%p", *map_set_.at(0).handle()); |
- for (int i = 1; i < map_set_.size(); ++i) { |
- stream->Add(",%p", *map_set_.at(i).handle()); |
+ if (maps()->size() != 0) { |
+ stream->Add(" [%p", *maps()->at(0).handle()); |
+ for (int i = 1; i < maps()->size(); ++i) { |
+ stream->Add(",%p", *maps()->at(i).handle()); |
} |
stream->Add("]"); |
} |
@@ -3383,8 +3383,9 @@ HCheckMaps* HCheckMaps::New(Zone* zone, |
Handle<Map> map, |
CompilationInfo* info, |
HValue* typecheck) { |
- HCheckMaps* check_map = new(zone) HCheckMaps(value, zone, typecheck); |
- check_map->Add(map, zone); |
+ HCheckMaps* check_map = new(zone) HCheckMaps(value, new(zone) UniqueSet<Map>( |
+ Unique<Map>::CreateImmovable(map), zone), typecheck); |
+ // TODO(bmeurer): Get rid of this shit! |
if (map->CanOmitMapChecks() && |
value->IsConstant() && |
HConstant::cast(value)->HasMap(map)) { |