Index: src/hydrogen-instructions.h |
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
index b1dc88aaa0c2ee7863c4b37e9763b6a3d509e764..9073ac36ca9983aa3e51550cb137b882370a511d 100644 |
--- a/src/hydrogen-instructions.h |
+++ b/src/hydrogen-instructions.h |
@@ -2651,10 +2651,10 @@ class HCheckMaps V8_FINAL : public HTemplateInstruction<2> { |
public: |
static HCheckMaps* New(Zone* zone, HValue* context, HValue* value, |
Handle<Map> map, CompilationInfo* info, |
- HValue *typecheck = NULL); |
+ HValue* typecheck = NULL); |
static HCheckMaps* New(Zone* zone, HValue* context, |
HValue* value, SmallMapList* maps, |
- HValue *typecheck = NULL) { |
+ HValue* typecheck = NULL) { |
HCheckMaps* check_map = new(zone) HCheckMaps(value, zone, typecheck); |
for (int i = 0; i < maps->length(); i++) { |
check_map->Add(maps->at(i), zone); |
@@ -2673,10 +2673,18 @@ class HCheckMaps V8_FINAL : public HTemplateInstruction<2> { |
virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE; |
HValue* value() { return OperandAt(0); } |
+ HValue* typecheck() { return OperandAt(1); } |
Unique<Map> first_map() const { return map_set_.at(0); } |
UniqueSet<Map> map_set() const { return map_set_; } |
+ void set_map_set(UniqueSet<Map>* maps, Zone *zone) { |
+ map_set_.Clear(); |
+ for (int i = 0; i < maps->size(); i++) { |
+ map_set_.Add(maps->at(i), zone); |
+ } |
+ } |
+ |
bool has_migration_target() const { |
return has_migration_target_; |
} |