Index: src/x64/code-stubs-x64.cc |
diff --git a/src/x64/code-stubs-x64.cc b/src/x64/code-stubs-x64.cc |
index 84630928d49ee3a256af73a9a2268d49e029d49c..e01bf5b7c176e773af36598539132372220957fe 100644 |
--- a/src/x64/code-stubs-x64.cc |
+++ b/src/x64/code-stubs-x64.cc |
@@ -2755,14 +2755,22 @@ void CallApiCallbackStub::Generate(MacroAssembler* masm) { |
// holder |
__ Push(holder); |
- __ movp(scratch, rsp); |
- // Push return address back on stack. |
- __ PushReturnAddressFrom(return_address); |
- |
- if (!this->is_lazy()) { |
+#if 0 // TEMPORARILY COMMENTED OUT: MOVED TO |
+ // PropertyHandlerCompiler::GenerateApiAccessorCall |
+ if (this->is_lazy()) { |
+ // load context from holder |
+ __ movp(scratch, FieldOperand(holder, HeapObject::kMapOffset)); |
+ __ GetMapConstructor(scratch, scratch, context); |
+ __ movp(context, FieldOperand(scratch, JSFunction::kContextOffset)); |
+ } else { |
// load context from callee |
__ movp(context, FieldOperand(callee, JSFunction::kContextOffset)); |
} |
+#endif |
+ |
+ __ movp(scratch, rsp); |
+ // Push return address back on stack. |
+ __ PushReturnAddressFrom(return_address); |
// Allocate the v8::Arguments structure in the arguments' space since |
// it's not controlled by GC. |