| Index: src/ia32/lithium-ia32.h | 
| diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h | 
| index 4d245ecb5081a356386da420d48b235007747532..c40c371a563007b0bb199a563694197d829f3f01 100644 | 
| --- a/src/ia32/lithium-ia32.h | 
| +++ b/src/ia32/lithium-ia32.h | 
| @@ -121,6 +121,7 @@ class LCodeGen; | 
| V(MathPowHalf)                             \ | 
| V(MathRound)                               \ | 
| V(MathSqrt)                                \ | 
| +  V(MaybeGrowElements)                       \ | 
| V(ModByConstI)                             \ | 
| V(ModByPowerOf2I)                          \ | 
| V(ModI)                                    \ | 
| @@ -2319,6 +2320,28 @@ class LTrapAllocationMemento final : public LTemplateInstruction<0, 1, 1> { | 
| }; | 
|  | 
|  | 
| +class LMaybeGrowElements final : public LTemplateInstruction<1, 5, 0> { | 
| + public: | 
| +  LMaybeGrowElements(LOperand* context, LOperand* object, LOperand* elements, | 
| +                     LOperand* key, LOperand* current_capacity) { | 
| +    inputs_[0] = context; | 
| +    inputs_[1] = object; | 
| +    inputs_[2] = elements; | 
| +    inputs_[3] = key; | 
| +    inputs_[4] = current_capacity; | 
| +  } | 
| + | 
| +  LOperand* context() { return inputs_[0]; } | 
| +  LOperand* object() { return inputs_[1]; } | 
| +  LOperand* elements() { return inputs_[2]; } | 
| +  LOperand* key() { return inputs_[3]; } | 
| +  LOperand* current_capacity() { return inputs_[4]; } | 
| + | 
| +  DECLARE_HYDROGEN_ACCESSOR(MaybeGrowElements) | 
| +  DECLARE_CONCRETE_INSTRUCTION(MaybeGrowElements, "maybe-grow-elements") | 
| +}; | 
| + | 
| + | 
| class LStringAdd final : public LTemplateInstruction<1, 3, 0> { | 
| public: | 
| LStringAdd(LOperand* context, LOperand* left, LOperand* right) { | 
|  |