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") |