| Index: src/x64/macro-assembler-x64.h
 | 
| diff --git a/src/x64/macro-assembler-x64.h b/src/x64/macro-assembler-x64.h
 | 
| index d7d5af3bd33e704bc2c07291c33edef6d8b0fa70..0ed48db4fad23dc61a3ed293f10934b30379ce17 100644
 | 
| --- a/src/x64/macro-assembler-x64.h
 | 
| +++ b/src/x64/macro-assembler-x64.h
 | 
| @@ -241,26 +241,34 @@ class MacroAssembler: public Assembler {
 | 
|    // ---------------------------------------------------------------------------
 | 
|    // JavaScript invokes
 | 
|  
 | 
| +  // Setup call kind marking in rcx. The method takes rcx as an
 | 
| +  // explicit first parameter to make the code more readable at the
 | 
| +  // call sites.
 | 
| +  void SetCallKind(Register dst, CallKind kind);
 | 
| +
 | 
|    // Invoke the JavaScript function code by either calling or jumping.
 | 
|    void InvokeCode(Register code,
 | 
|                    const ParameterCount& expected,
 | 
|                    const ParameterCount& actual,
 | 
|                    InvokeFlag flag,
 | 
| -                  const CallWrapper& call_wrapper = NullCallWrapper());
 | 
| +                  const CallWrapper& call_wrapper = NullCallWrapper(),
 | 
| +                  CallKind call_kind = CALL_AS_METHOD);
 | 
|  
 | 
|    void InvokeCode(Handle<Code> code,
 | 
|                    const ParameterCount& expected,
 | 
|                    const ParameterCount& actual,
 | 
|                    RelocInfo::Mode rmode,
 | 
|                    InvokeFlag flag,
 | 
| -                  const CallWrapper& call_wrapper = NullCallWrapper());
 | 
| +                  const CallWrapper& call_wrapper = NullCallWrapper(),
 | 
| +                  CallKind call_kind = CALL_AS_METHOD);
 | 
|  
 | 
|    // Invoke the JavaScript function in the given register. Changes the
 | 
|    // current context to the context in the function before invoking.
 | 
|    void InvokeFunction(Register function,
 | 
|                        const ParameterCount& actual,
 | 
|                        InvokeFlag flag,
 | 
| -                      const CallWrapper& call_wrapper = NullCallWrapper());
 | 
| +                      const CallWrapper& call_wrapper = NullCallWrapper(),
 | 
| +                      CallKind call_kind = CALL_AS_METHOD);
 | 
|  
 | 
|    void InvokeFunction(JSFunction* function,
 | 
|                        const ParameterCount& actual,
 | 
| @@ -1147,8 +1155,9 @@ class MacroAssembler: public Assembler {
 | 
|                        Register code_register,
 | 
|                        Label* done,
 | 
|                        InvokeFlag flag,
 | 
| -                      const CallWrapper& call_wrapper,
 | 
| -                      Label::Distance near_jump = Label::kFar);
 | 
| +                      Label::Distance near_jump = Label::kFar,
 | 
| +                      const CallWrapper& call_wrapper = NullCallWrapper(),
 | 
| +                      CallKind call_kind = CALL_AS_METHOD);
 | 
|  
 | 
|    // Activation support.
 | 
|    void EnterFrame(StackFrame::Type type);
 | 
| 
 |