Index: src/arm/lithium-arm.h |
diff --git a/src/arm/lithium-arm.h b/src/arm/lithium-arm.h |
index 3284d5401d64ddd4ad121cd6300a5a3ebf8a9659..1d0ce1571a7c20b8b0d8a821940f6cea7da69f0f 100644 |
--- a/src/arm/lithium-arm.h |
+++ b/src/arm/lithium-arm.h |
@@ -154,6 +154,7 @@ class LCodeGen; |
V(SubI) \ |
V(RSubI) \ |
V(TaggedToI) \ |
+ V(TailCallThroughMegamorphicCache) \ |
V(ThisFunction) \ |
V(ToFastProperties) \ |
V(TransitionElementsKind) \ |
@@ -482,6 +483,26 @@ class LCallStub FINAL : public LTemplateInstruction<1, 1, 0> { |
}; |
+class LTailCallThroughMegamorphicCache FINAL |
+ : public LTemplateInstruction<0, 3, 0> { |
+ public: |
+ explicit LTailCallThroughMegamorphicCache(LOperand* context, |
+ LOperand* receiver, |
+ LOperand* name) { |
+ inputs_[0] = context; |
+ inputs_[1] = receiver; |
+ inputs_[2] = name; |
+ } |
+ |
+ LOperand* context() { return inputs_[0]; } |
+ LOperand* receiver() { return inputs_[1]; } |
+ LOperand* name() { return inputs_[2]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(TailCallThroughMegamorphicCache, |
+ "tail-call-through-megamorphic-cache") |
+ DECLARE_HYDROGEN_ACCESSOR(TailCallThroughMegamorphicCache) |
+}; |
+ |
class LUnknownOSRValue FINAL : public LTemplateInstruction<1, 0, 0> { |
public: |
virtual bool HasInterestingComment(LCodeGen* gen) const OVERRIDE { |