| Index: src/hydrogen-instructions.h | 
| diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h | 
| index f977a750d946a6b24d657b08229fc4a238c368b2..25bcbda840bef5a41c031943710b7450c46698b6 100644 | 
| --- a/src/hydrogen-instructions.h | 
| +++ b/src/hydrogen-instructions.h | 
| @@ -3020,7 +3020,7 @@ class HPhi: public HValue { | 
| non_phi_uses_[i] = 0; | 
| indirect_uses_[i] = 0; | 
| } | 
| -    ASSERT(merged_index >= 0); | 
| +    ASSERT(merged_index >= 0 || merged_index == kInvalidMergedIndex); | 
| SetFlag(kFlexibleRepresentation); | 
| SetFlag(kAllowUndefinedAsNaN); | 
| } | 
| @@ -3043,6 +3043,7 @@ class HPhi: public HValue { | 
| bool HasRealUses(); | 
|  | 
| bool IsReceiver() const { return merged_index_ == 0; } | 
| +  bool HasMergedIndex() const { return merged_index_ != kInvalidMergedIndex; } | 
|  | 
| int merged_index() const { return merged_index_; } | 
|  | 
| @@ -3105,6 +3106,9 @@ class HPhi: public HValue { | 
|  | 
| void SimplifyConstantInputs(); | 
|  | 
| +  // Marker value representing an invalid merge index. | 
| +  static const int kInvalidMergedIndex = -1; | 
| + | 
| protected: | 
| virtual void DeleteFromGraph(); | 
| virtual void InternalSetOperandAt(int index, HValue* value) { | 
|  |