| Index: src/ia32/lithium-ia32.h
|
| diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h
|
| index d64d3626d54dbd5524e86e623fb2ede1f79646b1..db57e18c06a031bbaa85a514d6b7c7962aa10262 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) \
|
| @@ -2316,6 +2317,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) {
|
|
|