| Index: src/x64/lithium-x64.h | 
| diff --git a/src/x64/lithium-x64.h b/src/x64/lithium-x64.h | 
| index 15bb8941c328edb3bd94925c65f6a58013c38ac7..df74d3d20ff510f36375b2cbf86794729005a6d7 100644 | 
| --- a/src/x64/lithium-x64.h | 
| +++ b/src/x64/lithium-x64.h | 
| @@ -98,14 +98,15 @@ class LCodeGen; | 
| V(GlobalObject)                               \ | 
| V(GlobalReceiver)                             \ | 
| V(Goto)                                       \ | 
| -  V(HasInstanceType)                            \ | 
| -  V(HasInstanceTypeAndBranch)                   \ | 
| V(HasCachedArrayIndex)                        \ | 
| V(HasCachedArrayIndexAndBranch)               \ | 
| +  V(HasInstanceType)                            \ | 
| +  V(HasInstanceTypeAndBranch)                   \ | 
| V(InstanceOf)                                 \ | 
| V(InstanceOfAndBranch)                        \ | 
| V(InstanceOfKnownGlobal)                      \ | 
| V(Integer32ToDouble)                          \ | 
| +  V(InvokeFunction)                             \ | 
| V(IsNull)                                     \ | 
| V(IsNullAndBranch)                            \ | 
| V(IsObject)                                   \ | 
| @@ -1393,6 +1394,23 @@ class LCallConstantFunction: public LTemplateInstruction<1, 0, 0> { | 
| }; | 
|  | 
|  | 
| +class LInvokeFunction: public LTemplateInstruction<1, 1, 0> { | 
| + public: | 
| +  LInvokeFunction(LOperand* function) { | 
| +    inputs_[0] = function; | 
| +  } | 
| + | 
| +  DECLARE_CONCRETE_INSTRUCTION(InvokeFunction, "invoke-function") | 
| +  DECLARE_HYDROGEN_ACCESSOR(InvokeFunction) | 
| + | 
| +  LOperand* function() { return inputs_[0]; } | 
| + | 
| +  virtual void PrintDataTo(StringStream* stream); | 
| + | 
| +  int arity() const { return hydrogen()->argument_count() - 1; } | 
| +}; | 
| + | 
| + | 
| class LCallKeyed: public LTemplateInstruction<1, 1, 0> { | 
| public: | 
| explicit LCallKeyed(LOperand* key) { | 
|  |