| Index: src/x64/builtins-x64.cc
 | 
| diff --git a/src/x64/builtins-x64.cc b/src/x64/builtins-x64.cc
 | 
| index aa2fdc194dee55cbf19d4c21c7ec36fcec098ac7..43ff3d6c6257183640d3919b60ca32e60d4ff130 100644
 | 
| --- a/src/x64/builtins-x64.cc
 | 
| +++ b/src/x64/builtins-x64.cc
 | 
| @@ -627,6 +627,42 @@ CODE_AGE_LIST(DEFINE_CODE_AGE_BUILTIN_GENERATOR)
 | 
|  #undef DEFINE_CODE_AGE_BUILTIN_GENERATOR
 | 
|  
 | 
|  
 | 
| +void Builtins::Generate_MarkCodeAsExecutedOnce(MacroAssembler* masm) {
 | 
| +  // For now, as in GenerateMakeCodeYoungAgainCommon, we are relying on the fact
 | 
| +  // that make_code_young doesn't do any garbage collection which allows us to
 | 
| +  // save/restore the registers without worrying about which of them contain
 | 
| +  // pointers.
 | 
| +  __ Pushad();
 | 
| +  __ movq(arg_reg_2, ExternalReference::isolate_address(masm->isolate()));
 | 
| +  __ movq(arg_reg_1, Operand(rsp, kNumSafepointRegisters * kPointerSize));
 | 
| +  __ subq(arg_reg_1, Immediate(Assembler::kShortCallInstructionLength));
 | 
| +  {  // NOLINT
 | 
| +    FrameScope scope(masm, StackFrame::MANUAL);
 | 
| +    __ PrepareCallCFunction(1);
 | 
| +    __ CallCFunction(
 | 
| +        ExternalReference::get_mark_code_as_executed_function(masm->isolate()),
 | 
| +        1);
 | 
| +  }
 | 
| +  __ Popad();
 | 
| +
 | 
| +  // Perform prologue operations usually performed by the young code stub.
 | 
| +  __ pop(r10);   // Pop return address into scratch register.
 | 
| +  __ push(rbp);  // Caller's frame pointer.
 | 
| +  __ movq(rbp, rsp);
 | 
| +  __ push(rsi);  // Callee's context.
 | 
| +  __ push(rdi);  // Callee's JS Function.
 | 
| +  __ push(r10);  // Push return address after frame prologue.
 | 
| +
 | 
| +  // Jump to point after the code-age stub.
 | 
| +  __ ret(0);
 | 
| +}
 | 
| +
 | 
| +
 | 
| +void Builtins::Generate_MarkCodeAsExecutedTwice(MacroAssembler* masm) {
 | 
| +  GenerateMakeCodeYoungAgainCommon(masm);
 | 
| +}
 | 
| +
 | 
| +
 | 
|  void Builtins::Generate_NotifyStubFailure(MacroAssembler* masm) {
 | 
|    // Enter an internal frame.
 | 
|    {
 | 
| 
 |