From 6b65e909e0c698f1d641f153e27c1f2125843fe7 Mon Sep 17 00:00:00 2001 From: "palfia@homejinni.com" Date: Tue, 10 Dec 2013 23:00:10 +0000 Subject: [PATCH] MIPS: Fix patching the receiver (global object -> global proxy) after the interceptor. Port r18286 (f6277add) Original commit message: This is a temporary fix that will be replaced by loading the proxy from the target function. BUG= R=gergely@homejinni.com Review URL: https://codereview.chromium.org/103453003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/mips/stub-cache-mips.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mips/stub-cache-mips.cc b/src/mips/stub-cache-mips.cc index 0db010eb98..27b4767cf0 100644 --- a/src/mips/stub-cache-mips.cc +++ b/src/mips/stub-cache-mips.cc @@ -1007,7 +1007,7 @@ class CallInterceptorCompiler BASE_EMBEDDED { // holder haven't changed and thus we can use cached constant function. if (*interceptor_holder != lookup->holder()) { stub_compiler_->CheckPrototypes( - IC::CurrentTypeOf(interceptor_holder, masm->isolate()), receiver, + IC::CurrentTypeOf(interceptor_holder, masm->isolate()), holder, handle(lookup->holder()), scratch1, scratch2, scratch3, name, depth2, miss); } else { @@ -1024,7 +1024,7 @@ class CallInterceptorCompiler BASE_EMBEDDED { masm, optimization, arguments_.immediate(), false); } else { Handle function = optimization.constant_function(); - stub_compiler_->GenerateJumpFunctionIgnoreReceiver(function); + stub_compiler_->GenerateJumpFunction(object, function); } // Deferred code for fast API call case---clean preallocated space. @@ -1083,7 +1083,7 @@ class CallInterceptorCompiler BASE_EMBEDDED { masm, receiver, holder, name_, holder_obj, IC::kLoadPropertyWithInterceptorOnly); __ pop(name_); // Restore the name. - __ pop(receiver); // Restore the holder. + __ pop(holder); // Restore the holder. } // If interceptor returns no-result sentinel, call the constant function. __ LoadRoot(scratch, Heap::kNoInterceptorResultSentinelRootIndex);