| Index: src/ia32/lithium-ia32.h
|
| diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h
|
| index 0cfed121b6f3905fdef8b473cdcf92f578e236d0..a9f321620f832239c6bde814e1581699f25e6d04 100644
|
| --- a/src/ia32/lithium-ia32.h
|
| +++ b/src/ia32/lithium-ia32.h
|
| @@ -174,7 +174,8 @@ class LCodeGen;
|
| V(CheckMapValue) \
|
| V(LoadFieldByIndex) \
|
| V(DateField) \
|
| - V(WrapReceiver)
|
| + V(WrapReceiver) \
|
| + V(Drop)
|
|
|
|
|
| #define DECLARE_CONCRETE_INSTRUCTION(type, mnemonic) \
|
| @@ -525,9 +526,15 @@ class LArgumentsLength: public LTemplateInstruction<1, 1, 0> {
|
|
|
| class LArgumentsElements: public LTemplateInstruction<1, 0, 0> {
|
| public:
|
| - LArgumentsElements() { }
|
| + explicit LArgumentsElements(bool from_inlined)
|
| + : from_inlined_(from_inlined) { }
|
| +
|
| + bool from_inlined() const { return from_inlined_; }
|
|
|
| DECLARE_CONCRETE_INSTRUCTION(ArgumentsElements, "arguments-elements")
|
| +
|
| + private:
|
| + bool from_inlined_;
|
| };
|
|
|
|
|
| @@ -1401,6 +1408,19 @@ class LPushArgument: public LTemplateInstruction<0, 1, 0> {
|
| };
|
|
|
|
|
| +class LDrop: public LTemplateInstruction<0, 0, 0> {
|
| + public:
|
| + explicit LDrop(int count) : count_(count) { }
|
| +
|
| + int count() const { return count_; }
|
| +
|
| + DECLARE_CONCRETE_INSTRUCTION(Drop, "drop")
|
| +
|
| + private:
|
| + int count_;
|
| +};
|
| +
|
| +
|
| class LThisFunction: public LTemplateInstruction<1, 0, 0> {
|
| public:
|
| DECLARE_CONCRETE_INSTRUCTION(ThisFunction, "this-function")
|
|
|