Index: src/x64/lithium-x64.h |
diff --git a/src/x64/lithium-x64.h b/src/x64/lithium-x64.h |
index a8291473bd31cc8f72a8db698553973093d2c86c..55c599451b406a21c1e9f67536c900026f6d5af5 100644 |
--- a/src/x64/lithium-x64.h |
+++ b/src/x64/lithium-x64.h |
@@ -151,6 +151,7 @@ class LCodeGen; |
V(StringCompareAndBranch) \ |
V(SubI) \ |
V(TaggedToI) \ |
+ V(TailCallThroughMegamorphicCache) \ |
V(ThisFunction) \ |
V(ToFastProperties) \ |
V(TransitionElementsKind) \ |
@@ -489,6 +490,27 @@ 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 { |
@@ -1886,9 +1908,10 @@ class LCallWithDescriptor FINAL : public LTemplateResultInstruction<1> { |
LOperand* target() const { return inputs_[0]; } |
+ DECLARE_HYDROGEN_ACCESSOR(CallWithDescriptor) |
+ |
private: |
DECLARE_CONCRETE_INSTRUCTION(CallWithDescriptor, "call-with-descriptor") |
- DECLARE_HYDROGEN_ACCESSOR(CallWithDescriptor) |
virtual void PrintDataTo(StringStream* stream) OVERRIDE; |