Index: src/x64/lithium-x64.h |
diff --git a/src/x64/lithium-x64.h b/src/x64/lithium-x64.h |
index 8738fc4f9eed63233698924f85530ef85994796b..50e0595025a47860a1a854d0a7b3590c30fca2c4 100644 |
--- a/src/x64/lithium-x64.h |
+++ b/src/x64/lithium-x64.h |
@@ -1838,8 +1838,12 @@ class LCallWithDescriptor final : public LTemplateResultInstruction<1> { |
public: |
LCallWithDescriptor(CallInterfaceDescriptor descriptor, |
const ZoneList<LOperand*>& operands, Zone* zone) |
- : inputs_(descriptor.GetRegisterParameterCount() + 1, zone) { |
- DCHECK(descriptor.GetRegisterParameterCount() + 1 == operands.length()); |
+ : inputs_(descriptor.GetRegisterParameterCount() + |
+ kImplicitRegisterParameterCount, |
+ zone) { |
+ DCHECK(descriptor.GetRegisterParameterCount() + |
+ kImplicitRegisterParameterCount == |
+ operands.length()); |
inputs_.AddAll(operands, zone); |
} |
@@ -1847,6 +1851,10 @@ class LCallWithDescriptor final : public LTemplateResultInstruction<1> { |
DECLARE_HYDROGEN_ACCESSOR(CallWithDescriptor) |
+ // The target and context are passed as implicit parameters that are not |
+ // explicitly listed in the descriptor. |
+ static const int kImplicitRegisterParameterCount = 2; |
+ |
private: |
DECLARE_CONCRETE_INSTRUCTION(CallWithDescriptor, "call-with-descriptor") |